Core.Object | +--Engine.Actor | +--Engine.Decal
float
LastRenderedTime
int
MultiDecalLevel
array
SurfList
bool
bBloodyDecal
AttachDecal(float TraceDistance, optional vector)
simulated
AttachToSurface()
void
DetachDecal()
// trace forward and attach this decal to surfaces.
DirectionalAttach(vector Dir, vector Norm)
00001 class Decal expands Actor 00002 native; 00003 00004 // properties 00005 var int MultiDecalLevel; 00006 var float LastRenderedTime; 00007 var() bool bBloodyDecal; 00008 00009 // native stuff. 00010 var const array<int> SurfList; 00011 00012 simulated native function bool AttachDecal( float TraceDistance, optional vector DecalDir ); // trace forward and attach this decal to surfaces. 00013 simulated native function DetachDecal(); // detach this decal from all surfaces. 00014 00015 simulated event PostBeginPlay() 00016 { 00017 AttachToSurface(); 00018 } 00019 00020 simulated function AttachToSurface() 00021 { 00022 if(!AttachDecal(100)) // trace 100 units ahead in direction of current rotation 00023 Destroy(); 00024 } 00025 00026 simulated function DirectionalAttach(vector Dir, vector Norm) {} 00027 00028 simulated event Destroyed() 00029 { 00030 DetachDecal(); 00031 Super.Destroyed(); 00032 } 00033 00034 event Update(Actor L); 00035 00036 defaultproperties 00037 { 00038 MultiDecalLevel=4 00039 bHighDetail=True 00040 bNetTemporary=True 00041 bNetOptional=True 00042 RemoteRole=ROLE_None 00043 DrawType=DT_None 00044 bUnlit=True 00045 bGameRelevant=True 00046 CollisionRadius=0.000000 00047 CollisionHeight=0.000000 00048 }