Core.Object | +--Engine.Actor | +--Engine.Info | +--XIII.MapInfo | +--XIDMaps.Map16_SSH1 | +--XIDMaps.SSH101a
int
eNbVivants
void
FirstFrame()
00001 //----------------------------------------------------------- 00002 // 00003 //----------------------------------------------------------- 00004 class SSH101a extends Map16_SSH1; 00005 00006 // 0 - Trouver un accès au centre de commandes de SSH1 00007 // 1*- Ne pas se faire repérer par les GI 00008 // 2*- Neutraliser les GI sans les tuer 00009 // 3*- Ne pas utiliser d'armes à feu 00010 00011 //VAR(SSH101a) float DelayAlarm; 00012 VAR(SSH101a) XIIIPawn CoffeeMachineSoldier; 00013 //VAR Pawn Soldier; 00014 VAR(SSH101a) Array<Pawn> PatrolSoldiers; 00015 VAR int eNbVivants; 00016 00017 //_____________________________________________________________________________ 00018 event ParseDynamicLoading(LevelInfo MyLI) 00019 { 00020 Super.ParseDynamicLoading(MyLI); 00021 MyLI.ForcedMeshes[MyLI.ForcedMeshes.Length] = Mesh( DynamicLoadObject("XIIIPersos.XIIIGalM",class'Mesh') ); 00022 } 00023 00024 FUNCTION FirstFrame() 00025 { 00026 Super.FirstFrame(); 00027 00028 // changement du skin du perso principal 00029 XIIIPawn.Mesh = Mesh( DynamicLoadObject("XIIIPersos.XIIIGalM",class'Mesh') ); 00030 00031 eNbVivants = PatrolSoldiers.Length; 00032 log(self@"---> NOMBRE DE SOLDATS :"@eNbVivants); 00033 GotoState('STA_TestMortSoldats'); 00034 } 00035 00036 State STA_TestMortSoldats 00037 { 00038 event Tick (float dt) 00039 { 00040 // on teste si les soldats sont morts ou simplement assommes 00041 00042 local int i; 00043 00044 i = 0; 00045 while (i<eNbVivants) 00046 { 00047 if ( PatrolSoldiers[i]!=none && PatrolSoldiers[i].bIsDead ) 00048 { 00049 if ( PatrolSoldiers[i].HitDamageType.default.bCanKillStunnedCorspes ) 00050 { 00051 TriggerEvent(Event,self,PatrolSoldiers[i]); 00052 SetGoalComplete( 2 ); 00053 } 00054 // on retire le soldat du tableau 00055 PatrolSoldiers[i] = PatrolSoldiers[eNbVivants-1]; 00056 eNbVivants --; 00057 if (eNbVivants < 1) 00058 { 00059 GotoState(''); 00060 } 00061 } 00062 else 00063 { 00064 i ++; 00065 } 00066 } 00067 } 00068 } 00069 00070 00071 //_____________________________________________________________________________ 00072 // DelayAlarm=2.0 00073 00074 00075 defaultproperties 00076 { 00077 iLoadSpecificValue=130 00078 }