Core.Object | +--Engine.Actor | +--Engine.Decoration | +--RuneI.DecorationRune | +--SarkBall.SarkBallGong
SarkBallGameReplicationInfo
GR
int
GlowChange
MaxAmbientGlow
Class
ScoreEvent
Int
Team
void
Bump(Actor Other)
bool
JointDamaged(int Damage, Pawn EventInstigator, vector HitLoc, vector Momentum, name DamageType, int joint)
Touch(Actor Other)
Timer()
00001 //============================================================================= 00002 // SarkBallGong. 00003 //============================================================================= 00004 class SarkBallGong expands DecorationRune; //gong 00005 00006 var Int Team; 00007 var SarkBallGameReplicationInfo GR; 00008 var int MaxAmbientGlow; 00009 var int GlowChange; 00010 00011 var() Class<Actor> ScoreEvent; 00012 00013 00014 //GetTeamVectorColor 00015 event BeginPlay(){ 00016 //BroadcastMessage("Setting up team goal: "$team,true); 00017 If (Team==0){ 00018 DesiredColorAdjust.X = 0; 00019 DesiredColorAdjust.Y = 200; 00020 DesiredColorAdjust.Z = 0; 00021 //DesiredColorAdjust=SarkBallGame(level.game).GetTeamVectorColor(0); 00022 00023 }else{ 00024 //DesiredColorAdjust=SarkBallGame(level.game).GetTeamVectorColor(2); 00025 DesiredColorAdjust.X = 200; 00026 DesiredColorAdjust.Y = 0; 00027 DesiredColorAdjust.Z = 0; 00028 00029 00030 } 00031 00032 00033 } 00034 00035 00036 function bool JointDamaged(int Damage, Pawn EventInstigator, vector HitLoc, vector Momentum, name DamageType, int joint){ 00037 Return False; 00038 00039 } 00040 00041 00042 00043 function Bump(actor Other){ 00044 //BroadcastMessage("SarkBallGong.Bump"$Other.Name,True); 00045 Super.Bump(Other); 00046 } 00047 00048 function Touch(Actor Other){ 00049 local class<Actor> tempClass; 00050 local Actor ScoreEffect; 00051 00052 If (Other.ISA('SarkBall')){ 00053 //BroadcastMessage("Gong_Touch:"$Other.Name,True); 00054 //Log("SarkBallBot_Touch_State:"$Other.GetStateName()); 00055 tempClass=ScoreEvent; 00056 ScoreEffect=Spawn(tempClass,,,Other.Location); 00057 SarkBallGame(level.game).AddScore(Team,Other); 00058 } 00059 Super.Touch(Other); 00060 //Log("SarkBallBot_AfterTouch:"$Other.Name); 00061 } 00062 00063 Auto State Startup{ 00064 00065 function Timer(){ 00066 00067 //If (AmbientGlow>=MaxAmbientGlow){ 00068 // GlowChange=-GlowChange; 00069 // } 00070 //If (AmbientGlow<=0){ 00071 // GlowChange=-GlowChange; 00072 //} 00073 //AmbientGlow=255; 00074 //BroadcastMessage("SarkBallGoal_Timer:"$AmbientGlow,True); 00075 00076 00077 //SetPhysics(PHYS_Rotating); 00078 //RotationRate.Yaw = 40000; 00079 //bFixedRotationDir = true; 00080 00081 //DesiredRotation.Yaw = Rotation.Yaw + Rand(2000) - 1000; 00082 00083 //DesiredRotation.Pitch = Rotation.Pitch + Rand(2000) - 1000; 00084 //RotationRate.Pitch = 64000; 00085 //bRotateToDesired=True; 00086 00087 00088 00089 } 00090 00091 Begin: 00092 SetTimer(5, true); 00093 00094 00095 } 00096 00097 defaultproperties 00098 { 00099 MaxAmbientGlow=1000 00100 GlowChange=5 00101 DestroyedSound=Sound'MurmurSnd.Rocks.rock09' 00102 bStatic=False 00103 DrawType=DT_SkeletalMesh 00104 AmbientGlow=200 00105 CollisionRadius=55.00 00106 CollisionHeight=61.00 00107 bCollideActors=True 00108 bCollideWorld=True 00109 bBlockActors=True 00110 bBlockPlayers=True 00111 bJointsBlock=True 00112 bJointsTouch=True 00113 Mass=200.00 00114 Skeletal=SkelModel'objects.Gong' 00115 }