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