*?R<70,0G!V*NoneFireRocketsPickupMessageCoreDTGModsUseAmmoTakeDamageSystemEnginePawnUnrealShareUnrealIProcessTraceHitBeginAltFiringdecapitatedLoadingScriptedPawnBeginStateTickEjectStealthRifleCarcassPlayerPawnshotSuperEightballClientInstantFlashStructLevelLevelInfoWeaponXActorInventoryGameInfoSYCollisionHeightDrawScaleAmmoObjectPropertyIntPropertyBoolPropertyTextBufferZVectorStructPropertyCalcDrawOffsetStateSoundDampeningClassDifficultyRifleOtherHitLocationInstigatorEnemyDeltaTimeOwnerHitNormalGamebAltFireSkillAmmoTypebLockedOnFireOffsetCockingSoundAmmoAmountPackageLocationObjectBytePropertyFunctionEightballSpriteSmokePuffHeavyWallHitEffectWeaponLightShellCasebIsBossRocketsLoadedbFireLoadFloatProperty ZC Dw.*.̾#"DC>Ca .! ?,ծ333@6@?&+w*@Tծ>>ծL>L>ծ>??,.=a ! A"ra ?, PAAw w w*a/! 766 R?)a/!?&/a/!.-),d.?!(,-.`F!Aa/! a/!a ?, @ 2 Ҝ@&xoidVdVQ=dVz12Q=dVQ=Q= Ғ`8R{z12 Ғ`8R{Q= W You got the Super Eightball gun2 i 7Lz12u ıu ıQ=z12z12z12z12Q=Q=z12~uz12z12z12z12 WYou got the Stealth Rifle $D-(1,/%q!a$.a!̌?a&r.*%?r.*.$.:%7b><. 4,53:.% ,q! T&-'R,8%q!&\]//============================================================================= // StealthRifle. // By Dylan T Gladstone // dgladstone@planetunreal.com // http://www.planetunreal.com/dylan/ // This was based on a suggestion by Aza on Epic's Megaboard Forum. // // This is a simple mod of the rifle that doesn't flash when using the dampener. //============================================================================= class StealthRifle expands Rifle; function ProcessTraceHit(Actor Other, Vector HitLocation, Vector HitNormal, Vector X, Vector Y, Vector Z) { local shellcase s; if ( PlayerPawn(Owner) != None ) PlayerPawn(Owner).ClientInstantFlash( -0.4, vect(650, 450, 190)); s = Spawn(class'ShellCase',Pawn(Owner), '', Owner.Location + CalcDrawOffset() + 30 * X + (2.8 * FireOffset.Y+5.0) * Y - Z * 1); if ( s != None ) { s.DrawScale = 2.0; s.Eject(((FRand()*0.3+0.4)*X + (FRand()*0.2+0.2)*Y + (FRand()*0.3+1.0) * Z)*160); } // Don't flash if the sound dampener's on (DTG) if ( Pawn(Owner).SoundDampening != 0.1 ) { spawn(class'WeaponLight', self, '', Owner.Location + CalcDrawOffset() + 30.0 * X,rot(0,0,0)); } if (Other == Level) Spawn(class'HeavyWallHitEffect',,, HitLocation+HitNormal*9, Rotator(HitNormal)); else if ( (Other != self) && (Other != Owner) && (Other != None) ) { if ( Other.IsA('Pawn') && (HitLocation.Z - Other.Location.Z > 0.62 * Other.CollisionHeight) && (instigator.IsA('PlayerPawn') || (instigator.skill > 1)) && (!Other.IsA('ScriptedPawn') || !ScriptedPawn(Other).bIsBoss) ) Other.TakeDamage(100, Pawn(Owner), HitLocation, 35000 * X, 'decapitated'); else Other.TakeDamage(45, Pawn(Owner), HitLocation, 30000.0*X, 'shot'); if ( !Other.IsA('Pawn') && !Other.IsA('Carcass') ) spawn(class'SpriteSmokePuff',,,HitLocation+HitNormal*9); } } t//============================================================================= // SuperEightball. // By Dylan T Gladstone // dgladstone@planetunreal.com // http://www.planetunreal.com/dylan/ // This was based on a suggestion by Aza on Epic's Megaboard Forum. // // This is a simple mod of the eightball that launches six missles at once when // alt-firing. // //============================================================================= class SuperEightball expands Eightball; state AltFiring { function Tick( float DeltaTime ) { if( (pawn(Owner).bAltFire==0) || (RocketsLoaded > 5) ) // If if Fire button down, load up another GoToState('FireRockets'); } function BeginState() { RocketsLoaded = 1; bFireLoad = True; While ( RocketsLoaded < 6 ) { if (AmmoType.AmmoAmount<=0) GoToState('FireRockets'); RocketsLoaded++; AmmoType.UseAmmo(1); } } Begin: bLockedOn = False; While ( RocketsLoaded < 6 ) { if (AmmoType.AmmoAmount<=0) GoToState('FireRockets'); Owner.PlaySound(CockingSound, SLOT_None, Pawn(Owner).SoundDampening); PlayAnim('Loading', 1.1,0.0); FinishAnim(); RocketsLoaded++; AmmoType.UseAmmo(1); if ( (PlayerPawn(Owner) == None) && ((FRand() > 0.5) || (Pawn(Owner).Enemy == None)) ) Pawn(Owner).bAltFire = 0; if ( Level.Game.Difficulty > 0 ) Owner.MakeNoise(0.15 * Level.Game.Difficulty * Pawn(Owner).SoundDampening); } } D2 D2 D (:2I2F-2)O2'2.2"(?22M22H24(.E20D Q1Q,(<H/G3G=(72()C222!2+20.AQ>2J2QQ$(B2KQ%*P*N2L*@HHQ&(8H 5 P6 ] j# w; D, Q$ ^ e k$@P$LP! F\% Db) Wf* 9 }+4hI,4qI