Core.Object | +--Engine.Actor | +--Engine.Effects | +--UnrealShare.AnimSpriteEffect | +--UnrealShare.SpriteSmokePuff | +--UnrealShare.GreenSmokePuff | +--UnrealShare.GreenGelPuff
vector
SurfaceNormal
int
numBlobs
simulated
PostBeginPlay()
Timer()
00001 //============================================================================= 00002 // GreenGelPuff. 00003 //============================================================================= 00004 class GreenGelPuff extends GreenSmokePuff; 00005 00006 var int numBlobs; 00007 var vector SurfaceNormal; 00008 00009 replication 00010 { 00011 unreliable if( Role==ROLE_Authority ) 00012 numBlobs, SurfaceNormal; 00013 } 00014 00015 simulated function PostBeginPlay() 00016 { 00017 Super.PostBeginPlay(); 00018 SetTimer(0.01, false); 00019 } 00020 00021 simulated function Timer() 00022 { 00023 Local GreenBlob GB; 00024 local int j; 00025 00026 if ( (Level.NetMode != NM_DedicatedServer) && (numBlobs > 0) ) 00027 { 00028 numBlobs = FMin(numBlobs, 10); 00029 for (j=0; j<numBlobs; j++) 00030 { 00031 GB = Spawn(class'GreenBlob',,,Location+SurfaceNormal*(FRand()*8-4)); 00032 GB.SetUp(SurfaceNormal); 00033 GB.RemoteRole = ROLE_None; 00034 } 00035 } 00036 } 00037 00038 defaultproperties 00039 { 00040 numBlobs=3 00041 }