Įƒ*žDw@ÓH‰“Ŗą®ÓVŌJ‡w‹?S+…€wNone MultiSkins Activated BlackBombTick RemoteRoleSystem Destroyed TakeDamageCoreEngine DrawScale UnrealShare RotationRate explodedRotatorBeginbFixedRotationDirDeleteInventoryFatnessPickupViewScaleIconTimerHitWallTouchPickupViewMeshCharge NextItem DetonatedRWbStasisPhysics bProjTarget bBlockActorsMeshbBlockPlayers BecomePickupbCollideActorsCollisionRadiusCollisionHeightPickupMessageVXYCBiPickupZ LevelInfo Inventory Decoration DamageTypeLevelFActorbCollideWorldPawnSoundTextureClassPackage TextBufferObject FunctionLightBrightnessState bMovableVector AmbientGlow LightTypeLightSaturation LightRadiusStructbBounceUnrealI HurtRadius Location AmbientSoundStructPropertyClassProperty Momentum HitLocation HitNormalNewRotBaseOwner LightHueNetMode NameProperty instigatedBy S_Corpse VelocityObjectPropertyFloatPropertyActivateSound NumCopiesWall ViewRotation SelectedItemUWindow BlackTexture BoolPropertyRingExplosion3Flare SmallWirePickupsNDamageflarel1 bFirstTick bDamagedChunk3Moon1 IntProperty BytePropertydtnlSWbHasSpawnedFuse¦’’’’’’’’B™’’’’’’’’’’—DŅ¦H¤Č™’£r ™’£r „tžE‚zx2› ‡S $)\>–%S SŠŠ ™€Š ŠĮ€€œ  Cw§*§ Œø6”?,œ a  œ  2²œ °„š:—:$š:—:$°‚Ś‰# -Œø6”?,a  "€’’a*-'  ± Ī”± P#€?%{–,a ™ Œ Ōü?,Čo‚$ ‰ „!·a „ Œ ¤ ?  …’’’’’’’’€’’’’’’’’’’2vU……‘žl†Ņ”õ‚zx2›……‘žl……‘žl†Ņ”õ‚zx2›†Ņ”õ†Ņ”õ‚zx2›……‘žl……‘žl†Ņ”õ†Ņ”õ†Ņ”õ†Ņ”õ‹0ÅŹ’‹0ÅŹ’—DŅ‹0ÅŹ’‹0ÅŹ’—DŅ ‡(]You found a bomb²$š™>"³"² $š™>˜…˜…˜…˜&$0A'$0A!Ó#ÓS :¼i„ O‰Õš™?×ŌÕŪ‰Ą‰M°į‰?,-«(-»( ŸBīD¢—”%¦”å.†ˆ – ’“a¬ˆ!Ų׈ ŒŌ’?, Ō“?,”ö’’’q!q!0Sš”ö’’’v!å.†ˆ – ’“o‚$‰×ˆ ‰Ō9.†ˆ –įCø6”‰?,da€>'-ž'$-ŗ(-«'-æ'0å.†ˆ – ’“a¬ˆ!Ų׈ ŒŌ’?, Ō“?,”ö’’’q!.†ˆr.†ˆ­.†ˆ­*.†ˆ ’’’’’’’’’’4Å<}7 -® -®'½šBC!Œa €ŠBHh)//============================================================================= // BlackBomb. //============================================================================= class BlackBomb expands Flare; var rw SW; var vector NL; var bool bHasSpawnedFuse; Simulated Event Tick( Float DT ) { Super.Tick(DT); If( Level.netmode == nm_Client || Level.netmode == nm_StandAlone ) { If( Velocity != (Vect(0,0,0)) && !bHasSpawnedFuse ) { //Create the fuse. NL=Location; NL.Z += 16; SW = Spawn(class'rw',,,nL,Rot( -32768, 0, 0 )); SW.SetBase(Self); bHasSpawnedFuse = True; } } } Simulated Event Destroyed() { Super.Destroyed(); If( Level.netmode == nm_Client || Level.netmode == NM_StandAlone ) { SW.Destroy(); } } state Activated // Delete from inventory and toss in front of player. { function Timer() { if( bFirstTick ) { bFirstTick=False; Drawscale = 0.12; PlaySound(ActivateSound); LightType = LT_Steady; LightBrightness = 250; LightRadius = 33; LightSaturation = 89; LightHue = 0; AmbientGlow = 200; SetTimer(1.0,True); AmbientSound = sound'flarel1'; } Charge--; if (Charge<=0) TakeDamage(10,None, Vect(0,0,0), Vect(0,0,0), 'Detonated'); } function TakeDamage( int NDamage, Pawn instigatedBy, Vector hitlocation, Vector momentum, name damageType) { if (bDamaged) Return; bDamaged = True; HurtRadius(120, 130, 'exploded', 0, Location); Destroy(); } Begin: if (NumCopies>0) { NumCopies--; GetAxes(Pawn(Owner).ViewRotation,X,Y,Z); f=Spawn(class, Owner, '', Owner.Location+Y*10-Z*20 ); f.NumCopies=-10; f.GoToState('Activated'); GoToState(''); } else if( NumCopies == -10 ) { Disable('Touch'); GetAxes(Pawn(Owner).ViewRotation,X,Y,Z); SetPhysics(PHYS_Falling); Velocity = Owner.Velocity + Vector(Pawn(Owner).ViewRotation) * 450.0; Velocity.z += 100; SetTimer(0.25,True); bFirstTick=True; BecomePickup(); bStasis = false; bBounce=True; bCollideWorld=True; } Else { GetAxes(Pawn(Owner).ViewRotation,X,Y,Z); f=Spawn(class, Owner, '', Owner.Location+Y*10-Z*20 ); f.NumCopies=-10; f.GoToState('Activated'); Pawn(Owner).NextItem(); if (Pawn(Owner).SelectedItem == Self) Pawn(Owner).SelectedItem=None; Pawn(Owner).DeleteInventory(Self); } } simulated function HitWall( vector HitNormal, actor Wall ) { Velocity = 0.6*(( Velocity dot HitNormal ) * HitNormal * (-2.0) + Velocity); // Reflect off Wall w/damping If (VSize(Velocity) < 5) { bBounce = False; bMovable = False; } } €°•D°B„š:—:$š:—:$a  €Š€†€Ä(p¤h-ž-ž(¤Āõ=aČ¾$·$ś“$!µ$Y¶$ø$Ča€?'Ą Ć¦Æ¢˜Æ%, *##! €‚^l //============================================================================= // RW. //============================================================================= class RW expands SmallWire; Simulated function Tick( float DT ) { local vector b; if( base != none ) b = base.location; b.z += 14; Super.Tick(DT); SetLocation(B); } Simulated event Destroyed() { local int i; local chunk3 c; local vector v; local rotator NewRot; Super.Destroyed(); NewRot = Rotator( Vect(0,0,1) ); For( I = 0; I < 5; I++ ) { c = spawn(class'chunk3',,,Location); V = VRand() * 200; c.setphysics(phys_falling); c.velocity = v; } Spawn(class'RingExplosion3',,,Location, NewRot).Drawscale /= 1.25; } = <’’’’7 = = <ü’’’h <’’’’9 <ż’’’? ]ž’’’V Ož’’’\ Ił’’’D <’’’’1 Ož’’’M <ż’’’@ <ż’’’O =K ]ū’’’6 <’’’’2 Oū’’’+ Oū’’’0 qė’’’` <’’’’/ Oś’’’b ]ž’’’5 ;å’’’e <ń’’’o <ż’’’] =d @ž’’’ rõ’’’X fū’’’m Bū’’’ Oū’’’* ^ö’’’0 <ż’’’q <ż’’’< ^ž’’’ <ü’’’g <ü’’’i ]ž’’’U <ż’’’^ <ż’’’> <’’’’3 fž’’’J Pł’’’< ]ś’’’c fū’’’n qļ’’’ @ļ’’’ @Ö’’’ "ń’’’p ;’’’’[ rž’’’H rž’’’G rž’’’W rž’’’A rž’’’E =ü’’’j fž’’’ fž’’’C @ž’’’ @ž’’’L rž’’’F fž’’’8 ]ž’’’N Ił’’’ <ż’’’B :Ē’’’l @į’’’ @į’’’ <ż’’’f <ż’’’Y ]ļ’’’_¦$R`šu rŽ - Žt Lš, Y¢. fŽS rĘv Ž) KŽTXØs fØ s rœA~œX ±GW#…$y^%¼PW+ĀŸNg,ÅBu2ŽR w3©4s)D4Ē4 w]°KC^ŽQ N_šZ [_¢k h_ÄQt_ša Eb©4w Rb