Botpack
Class ImpactMark

source: e:\games\UnrealTournament\Botpack\Classes\ImpactMark.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Effects
         |
         +--Botpack.BulletImpact
            |
            +--Botpack.UT_WallHit
               |
               +--Botpack.ImpactMark
Direct Known Subclasses:None

class ImpactMark
extends Botpack.UT_WallHit

//============================================================================= // ImpactMark. //=============================================================================

Function Summary
 
simulated
SpawnEffects()
 
simulated
SpawnSound()



Source Code


00001	//=============================================================================
00002	// ImpactMark.
00003	//=============================================================================
00004	class ImpactMark extends UT_WallHit;
00005	
00006	simulated function SpawnSound()
00007	{
00008	}
00009	
00010	simulated function SpawnEffects()
00011	{
00012		local Actor A;
00013		local int j;
00014		local int NumSparks;
00015		local vector Dir;
00016	
00017		NumSparks = rand(MaxSparks);
00018		for ( j=0; j<MaxChips; j++ )
00019			if ( FRand() < ChipOdds ) 
00020			{
00021				NumSparks--;
00022				A = spawn(class'Chip');
00023				if ( A != None )
00024					A.RemoteRole = ROLE_None;
00025			}
00026	
00027		Dir = Vector(Rotation);
00028		if ( !Level.bHighDetailMode )
00029			return;
00030		Spawn(class'ImpactHole');
00031		A = Spawn(class'UT_SpriteSmokePuff',,,Location + 8 * Vector(Rotation));
00032		A.RemoteRole = ROLE_None;
00033		if ( Region.Zone.bWaterZone || Level.bDropDetail )
00034			return;
00035		if ( FRand() < 0.4 )
00036			Spawn(class'UT_Sparks');
00037		if ( NumSparks > 0 ) 
00038			for (j=0; j<NumSparks; j++) 
00039				spawn(class'UT_Spark',,,Location + 8 * Vector(Rotation));
00040	}
00041	
00042	defaultproperties
00043	{
00044	     MaxSparks=4
00045	     ChipOdds=0.500000
00046	}

End Source Code