home *** CD-ROM | disk | FTP | other *** search
/ GameStar 2006 April / Gamestar_83_2006-04_dvd.iso / Dema / demowot_english.exe / Script / Source / Chapter3 / MS10-C3L2.sma < prev    next >
Text File  |  2005-03-11  |  31KB  |  914 lines

  1. /*
  2. MISSION SPEECHES - CREDITS:
  3. Scout, British 1 - Krax
  4. British 2 - Chris
  5. British Soldier - Mozo
  6. Officer  - Reptile
  7. Bomber 1 - Buza
  8. Bomber 2 - Arthur Brown
  9. */
  10.  
  11. // TUNING PARAMETERS:
  12. // Here comes the parameters, which need fine tuning.
  13. //temp vars
  14. /*
  15. new iMS10_SP001[]="Scout: STOP! Krauts ahead!";
  16. new iMS10_SP002[]="Officer: Good job soldiers! We must place fortifications in this narrow and do it quickly. Whenever it falls back to the enemy we would be in serious trouble!";
  17. new iMS10_SP003[]="Officer: How could you let this happen?! Now our chances of securing this area are blew with the wind!";
  18. new iMS10_SP004A[]="Scout: That was easy!";
  19. new iMS10_SP004B[]="British Soldier: Hell yeah! Let's get them lads!";
  20. new iMS10_SP005A[]="Officer: Scouts reported a German offensive heading our way. Without reinforcements we're not gonna outlast them!";
  21. new iMS10_SP005B[]="British Soldier: We can't contact the HQ from here ... we must use the Radio Tower located at the hilltop, Sir! There must be a way to reach it and transmit a signal to HQ!";
  22. new iMS10_SP005C[]="Officer: Make it quick men! We've only have just a few minutes left!";
  23. new iMS10_SP006[]="Officer: Get ready gentlemen, they're upon us, we're about being doomed!";
  24. new iMS10_SP007A[]="Officer: Great job! Now it's time to call in for reinforcements!";
  25. new iMS10_SP007B[]="Officer: Sergeant Major Stampleton here! We need reinforcements at position ... as soon as possible!";
  26. new iMS10_SP008A[]="Officer: We're pinned down! We need aerial support to silence those artilleries!";
  27. new iMS10_SP008B[]="Bomber 1: You're too deep behind enemy lines, Sir! In order to prevent friendly fire we need some guidance from you!";
  28. new iMS10_SP008C[]="Bomber 1: Try to find anything that burns to mark the area for us!";
  29. new iMS10_SP009A[]="Bomber 1: Thanks for the fire, guys ... Flying Fortress is on its way ...";
  30. new iMS10_SP009B[]="Bomber 2: I am the God of Hellfire ... and I bring you";
  31. new iMS10_SP010A[]="British 1: Look! Someone's there!"
  32. new iMS10_SP010B[]="El Ifrit: These may be my last words, good soldiers. Me, who is valiant and pure of spirit, have found out that the Germans are regrouping at Mort---aaaaaagggh"
  33. new iMS10_SP010C[]="British 1: He's dead ... But where is this Fort Aaaaagh? I have the foggiest, as there's no fort around ..."
  34. new iMS10_SP010D[]="British 2: Do you suppose he meant the Camaaaaaargue?"
  35. new iMS10_SP010E[]="British 1: No, that's bloody far from here. Did he mean Mortaaaaaain then? That's probable, we must scout that area."
  36. */
  37. // TODO: ===============================================================================================
  38. // Write here tasks to be done.
  39.  
  40.  
  41. // DECLARATIONS: =======================================================================================
  42. #include "script.inc"
  43. #include antiair.inc
  44. // Write here global variable declarations and definitions. All globals should start with letter: 'g'!
  45.  
  46. new bool:gOffensiveStarted=true;
  47. new bool:gSmokeStarted=false;
  48. new bool:gSzaladhatnak=true;
  49. new bool:gIfritFound=true;
  50. new bool:gInitReinfStarted=true;
  51.  
  52. new Float:gGermanRaidMin=260.0;
  53. new Float:gGermanRaidMax=540.0;
  54.  
  55. //new gTempWav[100]="Sounds\\Game\\Speech\\Mission\\TEMPORARY.mp3";
  56. new bool:MS9HidDone=true
  57.  
  58. //======================================================================================================
  59. public main() // A palya belepesi pontja, helyette a PostGameStart fuggvenyt hasznald
  60.     CommonAKMain();
  61.  
  62.  
  63. //======================================================================================================
  64. public PostGameStart()
  65. {
  66. // Some must have stuff:
  67.     CommonAKInit();
  68.     
  69.     if(IsScenario())
  70.     {
  71.         ScenarioPrepare();
  72.     }
  73.     
  74. // Add objectives:
  75.     AddObjective( "GetRadar", OT_PRIMARY, "#iMS10_PS01#", "#iMS10_PL01#", OS_IN_PROGRESS );
  76.     AddObjective( "HoldNarrow", OT_PRIMARY, "#iMS10_PS02#", "#iMS10_PL02#", OS_SLEEPING );
  77.  
  78.     AddObjective( "GetRadio", OT_SECONDARY, "#iMS10_SS01#", "#iMS10_SL01#", OS_SLEEPING );
  79.     AddObjective( "MarkArea", OT_SECONDARY, "#iMS10_SS02#", "#iMS10_SL02#", OS_SLEEPING );        
  80.  
  81.     AddObjective( "FindIfrit", OT_HIDDEN, "#iMS10_HS01#", "#iMS10_HL01#", OS_IN_PROGRESS );
  82.  
  83.     // Add objective related events:
  84.     AddUserEvent( "TeamElimSucceed", UE_TEAMELIM_SUCC );
  85.     // AddUserEvent( "GroupSurviveFailed", UE_GROUP_SURV_FAIL );
  86.     AddUserEvent( "ObjectiveChanged", UE_OBJECTIVE_CHANGED );
  87.     HackAntiAirInit();
  88.  
  89.     AddAKEntityEvent( "SomeEntered", ANY_ENTITY, UNIT_AREA_ENTER );
  90.     AddAKEntityEvent( "SomeHQCaptured", ANY_ENTITY, HQ_TAKEOVER );
  91.     AddAKEntityEvent( "ArtilleryAttacks", GetEntity( "arti1" ), UNIT_BEGIN_COMBAT );        
  92.     AddAKEntityEvent( "ArtilleryAttacks", GetEntity( "arti2" ), UNIT_BEGIN_COMBAT );        
  93.     AddAKEntityEvent( "ArtilleryAttacks", GetEntity( "arti3" ), UNIT_BEGIN_COMBAT );        
  94.     AddAKEntityEvent( "ArtilleryAttacks", GetEntity( "arti4" ), UNIT_BEGIN_COMBAT );        
  95.     AddAKEntityEvent( "ArtilleryAttacks", GetEntity( "arti5" ), UNIT_BEGIN_COMBAT );        
  96.     AddAKEntityEvent( "SomeTeamChanged", ANY_ENTITY, UNIT_TEAM_CHANGED );
  97.  
  98.     AddAKEntityEvent( "RadarDied", GetEntity( "radar_site1" ), UNIT_DIED );
  99.  
  100.     AddTimerEvent( "AutoSendGRs", 420.0, "GameLogic", true );
  101.     // Additional Mission Objective:
  102. // Start doing some things:
  103.     StartTheMap();
  104.     MS9HidDone=(GetGlobalVariable("gvMS09_SecretDocuments")==1);
  105. //    AddTimerEvent( "MenyetEgyBuzi", 0.25, "GameLogic", true);
  106.     MakeUnSelectable(GetEntity( "ifrit" ));
  107. }
  108.  
  109. public MenyetEgyBuzi()
  110. {
  111.     if(gSmokeStarted)
  112.     {
  113.         SetShortInfo("gSmokeStarted=true");
  114.     }
  115.     else
  116.     {
  117.         SetShortInfo("gSmokeStarted=false");    
  118.     }
  119. }
  120.  
  121. public ScenarioPrepare()
  122. {
  123.     new Iterator:iti=Iterate("StartingPlayerUnits");
  124.     while(ItNext(iti))
  125.     {
  126.         AddToGroup( "starters", ItEntity(iti) );
  127.     }
  128.     ItStop(iti);
  129. }
  130.  
  131. public RadarDied()
  132. {
  133.     RemoveEvent( "RadarDied" );
  134.     SetObjectiveState( "GetRadar", OS_FAILED );
  135.     AddTimerEvent( "GameOverMan", 3.0, "GameLogic", true);
  136. }
  137.  
  138. public SomeTeamChanged(DrID:UndWho)
  139. {
  140.     if(GetPropertyInt( UndWho, "Team" )==0)
  141.     {
  142.         SetPropertyString( UndWho, "Group", "");    
  143.     }
  144. }
  145.  
  146. public AutoSendGRs()
  147. {
  148.     RemoveEvent( "AutoSendGRs" );
  149.     if(gInitReinfStarted)
  150.         AddTimerEvent( "SendGermanRaider", Float:(FloatRnd( gGermanRaidMin, gGermanRaidMax )), "GameLogic", true);
  151.     gInitReinfStarted=false;
  152. }
  153.  
  154. //Various Events...
  155. public SomeHQCaptured(DrID:UndHQ)
  156. {
  157.     if(UndHQ==GetEntity( "hq_checkpoint" ))
  158.     {
  159.         if(GetObjectiveState( "HoldNarrow" )==OS_SLEEPING
  160.         &&GetPropertyInt( UndHQ, "Team" )==gPlayerTeam)
  161.         {
  162.             AddSoundMessage("#iMS10_SP002#", "Sounds\\Game\\Speech\\Mission\\MS10_SP002.mp3");
  163.             SetObjectiveState( "HoldNarrow", OS_IN_PROGRESS );
  164.             if(gInitReinfStarted)
  165.                 AddTimerEvent( "SendGermanRaider", Float:(FloatRnd( gGermanRaidMin, gGermanRaidMax )), "GameLogic", true);
  166.             gInitReinfStarted=false;
  167.         }
  168.         if(GetObjectiveState( "HoldNarrow" )==OS_IN_PROGRESS
  169.          &&GetPropertyInt( UndHQ, "Team" )!=gPlayerTeam)
  170.         {
  171.             AddSoundMessage("#iMS10_SP003#", "Sounds\\Game\\Speech\\Mission\\MS10_SP003.mp3");
  172.             SetObjectiveState( "HoldNarrow", OS_FAILED );
  173.             TeleportCameraToEnt( GetEntity( "hq_checkpoint" ));
  174.             AddAKEntityEvent( "GameOverMan", ANY_ENTITY, MESSAGE_END );    
  175.             SetCameraActualPitch( 90.0 );
  176.             SetCameraActualDistance( 50.0 );
  177.             SetCameraRotSpeed(1.0);
  178.             SetCameraTargetRotate( GetCameraActualRotate()+100.0 );
  179.             SetCameraZoomSpeed(1.0);
  180.             SetCameraTargetDistance( 15.0 );
  181.             SetCameraPitchSpeed(5.0);
  182.             SetCameraTargetPitch( 45.0 );    
  183.         }
  184.     }
  185.     
  186.     if(UndHQ==GetEntity( "hq_radio" ))
  187.     {
  188.         if(GetPropertyInt( UndHQ, "Team" )==gPlayerTeam)
  189.         {
  190.             if(GetObjectiveState( "GetRadio" )==OS_IN_PROGRESS)
  191.             {
  192.                 AddSoundMessage("#iMS10_SP007A#", "Sounds\\Game\\Speech\\Mission\\MS10_SP007A.mp3");
  193.                 AddSoundMessage("#iMS10_SP007B#", "Sounds\\Game\\Speech\\Mission\\MS10_SP007B.mp3");
  194.                 SetObjectiveState( "GetRadio", OS_COMPLETED );
  195.                 TimeToCallReinf();
  196.             }
  197.             if(gInitReinfStarted)
  198.                 AddTimerEvent( "SendGermanRaider", Float:(FloatRnd( gGermanRaidMin, gGermanRaidMax )), "GameLogic", true);
  199.             gInitReinfStarted=false;
  200.             AddTimerEvent( "SendRadioSoldiers", Float:(FloatRnd( gGermanRaidMin, gGermanRaidMax )*0.75), "GameLogic", true );
  201.         }
  202.     }
  203.     
  204.     if(UndHQ==GetEntity( "hq_radar" )
  205.      &&(GetObjectiveState( "GetRadar" )==OS_IN_PROGRESS
  206.      &&GetPropertyInt( UndHQ, "Team" )==gPlayerTeam))
  207.     {
  208.         SetObjectiveState( "GetRadar", OS_COMPLETED );
  209.         AddTimerEvent( "GameDoneMan", 2.0, "GameLogic", true );
  210.         SetCutScene(true);
  211.     }
  212. }
  213.  
  214. public SomeEntered(DrID:UndWho)
  215. {
  216.     new DrID:UndWhere=GetMsgParamObject();
  217.     if(UndWhere==GetEntity( "offensive_trigger" )&&GetPropertyInt( UndWho, "Team" )==gPlayerTeam&&gOffensiveStarted)
  218.     {
  219.         SetCutScene(true);
  220.         gOffensiveStarted=false;
  221.         ShowTheRadio();
  222.     }
  223.     
  224.     if(UndWhere==GetEntity( "smoke_trigger" ))
  225.     {
  226.         if(GetPropertyInt( UndWho, "Team" )==gPlayerTeam&&gSmokeStarted)
  227.         {
  228.             gSmokeStarted=false;
  229.             ActivateEntity( GetEntity( "ifrit" ) );
  230.             ShowEntity( GetEntity( "ifrit" ) );
  231.             DamageEntity( GetEntity( "ifrit" ), 100.0, 49 );
  232.             gIfritFound=false;
  233.             ShowTheBombard();
  234.         }
  235.         //this is necessary to make sure noone walks into the fire
  236.         if(!gSmokeStarted&&GetObjectiveState("MarkArea")!=OS_SLEEPING)
  237.         {
  238.             new Float:lTmpVec3_1[vec3];
  239.             new Float:lTmpVec3_2[vec3];
  240.             new Float:lTmpVec3_3[vec3];
  241.             GetPropertyVec3( UndWhere, "LogicalPos_", lTmpVec3_1);
  242.             GetPropertyVec3( UndWho, "LogicalPos_", lTmpVec3_2);        
  243.             DiffVec3(lTmpVec3_1,lTmpVec3_2,lTmpVec3_3)
  244.             AddVec3( lTmpVec3_2, lTmpVec3_3, lTmpVec3_1 );
  245.             CmdMove( UndWho, Q_OVERRIDE, lTmpVec3_1, MF_DIRECT );
  246.         }
  247.     }
  248.     
  249.     if(UndWhere==GetEntity( "ifrit_trigger_s" )&&gIfritFound&&GetPropertyInt( UndWho, "Team" )==gPlayerTeam)
  250.     {
  251.         gIfritFound=false;
  252.         if(CountLivingInSelector( "ifrit_trigger_b" )>1&&CountLivingInSelector( "ifrit_trigger_s" )==1)
  253.         {
  254.             ShowElIfrit();        
  255.         }
  256.         else
  257.         {
  258.             ActivateEntity( GetEntity( "ifrit" ) );
  259.             ShowEntity( GetEntity( "ifrit" ) );
  260.             DamageEntity( GetEntity( "ifrit" ), 100.0,49 );
  261.             AddSoundMessage("#iMS10_SP010F#", "Sounds\\Game\\Speech\\Mission\\MS10_SP010F.mp3");            
  262.         }    
  263.     }
  264.     
  265.     if(UndWhere==GetEntity( "szaladjatok_trigger" )
  266.      &&(GetPropertyInt( UndWho, "Team" )==gPlayerTeam
  267.      &&gSzaladhatnak)
  268.      &&!IsInstanceOf( UndWho, GetClassID( "cAirplane" )))
  269.     {
  270.         gSzaladhatnak=false;
  271.         CmdGroupMount( "befuto_panther1", Q_OVERRIDE, GetEntity( "befut_panther1" ));
  272.         CmdGroupMount( "befuto_panther2", Q_OVERRIDE, GetEntity( "befut_panther2" ));
  273.         CmdGroupMount( "befuto_tiger", Q_OVERRIDE, GetEntity( "befut_tiger" ));
  274.         CmdGroupMount( "befuto_flame", Q_OVERRIDE, GetEntity( "befut_flame" ));
  275.         CmdMoveToEnt( GetEntity( "befut_tiger" ), GetEntity( "beas_tiger" ), Q_OVERRIDE, MF_ATTACKMOVE );
  276.         CmdMoveToEnt( GetEntity( "befut_panther1" ), GetEntity( "beas_panther1" ), Q_OVERRIDE, MF_ATTACKMOVE );
  277.         CmdMoveToEnt( GetEntity( "befut_panther2" ), GetEntity( "beas_panther2" ), Q_OVERRIDE, MF_ATTACKMOVE );
  278.         CmdMoveToEnt( GetEntity( "befut_flame" ), GetEntity( "beas_flame" ), Q_OVERRIDE, MF_ATTACKMOVE );
  279.         CmdTurnToEnt( GetEntity( "befut_tiger" ), GetEntity( "beas_flame" ), Q_ENQUEUE );
  280.         CmdTurnToEnt( GetEntity( "befut_panther1" ), GetEntity( "beas_flame" ), Q_ENQUEUE );
  281.         CmdTurnToEnt( GetEntity( "befut_panther2" ), GetEntity( "beas_flame" ), Q_ENQUEUE );
  282.         CmdDigin( GetEntity( "befut_tiger" ), Q_ENQUEUE);
  283.         CmdDigin( GetEntity( "befut_panther1" ), Q_ENQUEUE);
  284.         CmdDigin( GetEntity( "befut_panther2" ), Q_ENQUEUE);
  285.         CmdDigin( GetEntity( "befut_flame" ),Q_ENQUEUE);
  286.          AddAKEntityEvent( "TimCsendzs", GetEntity( "befut_tiger" ), UNIT_TEAM_CHANGED );
  287.          AddAKEntityEvent( "TimCsendzs", GetEntity( "befut_panther1" ), UNIT_TEAM_CHANGED );
  288.          AddAKEntityEvent( "TimCsendzs", GetEntity( "befut_panther2" ), UNIT_TEAM_CHANGED );
  289.          AddAKEntityEvent( "TimCsendzs", GetEntity( "befut_flame" ), UNIT_TEAM_CHANGED );
  290.     }
  291. }
  292.  
  293. public TimCsendzs(DrID:Tank)
  294. {
  295.     RemoveEntityEvent("TimCsendzs",Tank);
  296.     if(IsPlayer( Tank ))
  297.         CmdStop( Tank, Q_OVERRIDE );
  298. }
  299.  
  300. //INTRO--START
  301. public StartTheMap()
  302. {
  303.     SetCameraActualPitch( 75.0 );
  304.     SetCameraActualRotate( 175.0 );
  305.     SetCameraActualDistance( 35.0 );
  306.  
  307.     SetCameraRotSpeed(1.0);
  308.     SetCameraPitchSpeed(4.5);
  309.     SetCameraZoomSpeed(5.0);
  310.     SetCameraSpeed(2.5);
  311.     
  312.     SetCameraTargetPitch( 55.0 );
  313.     SetCameraTargetRotate( 167.5 );
  314.     SetCameraTargetDistance( 55.0 );
  315.  
  316.     TeleportCameraToEnt(GetEntity( "cam_intro1" ));
  317.     MoveCameraToEnt( GetEntity( "cam_intro2" ));
  318.     
  319.     
  320.     SetCutScene(true);
  321.     new Iterator:iti=Iterate("starters");
  322.     while(ItNext(iti))
  323.     {
  324.         MakeInvulnerable(ItEntity(iti));
  325.         AddAKEntityEvent( "MegalljBitang", ItEntity(iti), UNIT_ENEMY_SEEN );
  326.     }
  327.     SetSpeedInSelector( "starters", 9.0 );
  328.     FormationMoveToEnt("starters",GetEntity( "wp_startpos" ),Q_OVERRIDE, MF_DIRECT+MF_ATTACKMOVE);
  329.     CmdMoveToEnt( GetEntity( "hullajelolt" ), GetEntity( "wp_startpos" ), Q_OVERRIDE, MF_ATTACKMOVE );    
  330.     AddAKEntityEvent( "IntroOver", GetEntity( "hullajelolt" ), UNIT_DIED );
  331.     AddAKEntityEvent( "IntroOver", GetEntity( "hullajelolt" ), UNIT_TEAM_CHANGED );
  332.     AddTimerEvent( "Mittomen", 16.66, "GameLogic", true);
  333.     AddTimerEvent( "MegalljBitang", 2.5, "GameLogic",true );
  334. }
  335.  
  336. public Mittomen()
  337. {
  338.     RemoveEvent( "Mittomen" );
  339.     new Iterator:iti=Iterate("starters");
  340.     while(ItNext(iti))
  341.     {
  342.         MakeVulnerable(ItEntity(iti));
  343.         CmdAttack( ItEntity(iti), Q_OVERRIDE, GetEntity( "hullajelolt" ) );
  344.     }
  345. }
  346.  
  347. public ArtilleryAttacks()
  348. {
  349.     static ArtiPT=0;
  350.     static FowBacaName[100];
  351.     static Float:CamPos[vec3];
  352.     static Float:CamRot;
  353.     static Float:CamZoom;
  354.     static Float:CamPitch;
  355.     switch(ArtiPT)
  356.     {
  357.     case 0:
  358.         {
  359.             RemoveEvent( "ArtilleryAttacks" );
  360.             SetCutScene(true);
  361.             SetGameSpeed( 0.25 );
  362.             GetCameraActualPos( CamPos );
  363.             CamRot=GetCameraActualRotate();
  364.             CamZoom=GetCameraActualDistance();
  365.             CamPitch=GetCameraActualPitch();
  366.             AddSoundMessage("#iMS10_SP008A#", "Sounds\\Game\\Speech\\Mission\\MS10_SP008A.mp3");
  367.             new Float:lTmpVec3[vec3];
  368.             GetPropertyVec3( GetEntity( "arti3" ), "LogicalPos_", lTmpVec3 );
  369.             new DrID:FowBaca=CreateEntity( "fowbacon_40", lTmpVec3 );
  370.             SetPropertyInt( FowBaca, "Team", gPlayerTeam );
  371.             GetPropertyString( FowBaca, "StringID", 100, FowBacaName );
  372.             AddAKEntityEvent( "ArtilleryAttacks", ANY_ENTITY, MESSAGE_END );
  373.         }    
  374.     case 1:
  375.         {
  376.             SetGameSpeed( 0.05 );
  377.             MoveCameraToEnt( GetEntity( "arti3" ) );
  378.             AddSoundMessage("#iMS10_SP008B#", "Sounds\\Game\\Speech\\Mission\\MS10_SP008B.mp3");
  379.         }
  380.     case 2:
  381.         {
  382.             AddSoundMessage("#iMS10_SP008C#", "Sounds\\Game\\Speech\\Mission\\MS10_SP008C.mp3");
  383.         }
  384.     case 3:
  385.         {
  386.             RemoveEvent( "ArtilleryAttacks" );            
  387.             SetCutScene(false);
  388.             ResetCameraSpeed();   
  389.             SetCameraTargetPos( CamPos );
  390.             SetCameraTargetDistance( CamZoom );
  391.             SetCameraTargetPitch( CamPitch );
  392.             SetCameraTargetRotate( CamRot );
  393.             SetGameSpeed( 1.0 );
  394.             SetObjectiveState( "MarkArea", OS_IN_PROGRESS );
  395.             ActivateEntity( GetEntity("ifrit") );            
  396.             ShowEntity( GetEntity("ifrit") );
  397.             CmdSetMS(  GetEntity("ifrit") , Q_OVERRIDE, MS_CRAWL );
  398.             SetPropertyInt( GetEntity( FowBacaName ), "Team", 0 );
  399.             gSmokeStarted=true;
  400.         }
  401.     }
  402.     ArtiPT++;
  403. }
  404.  
  405. public MegalljBitang()
  406. {
  407.     RemoveEvent( "MegalljBitang" );
  408.     CmdGroupStop( "starters", Q_OVERRIDE );
  409.     AddSoundMessage("#iMS10_SP001#", "Sounds\\Game\\Speech\\Mission\\MS10_SP001.mp3" );
  410. }
  411.  
  412. public IntroOver()
  413. {
  414.     static IntroPt=0;
  415.     switch(IntroPt)
  416.     {
  417.     case 0:
  418.             {
  419.                 DamageEntity( GetEntity( "hullajelolt" ), 666.666, 49 );
  420.                 FormationMoveToEnt("starters",GetEntity( "wp_startpos" ),Q_OVERRIDE, MF_DIRECT);
  421.                 new Iterator:iti=Iterate("starters");
  422.                 while(ItNext(iti))
  423.                 {
  424.                     MakeVulnerable(ItEntity(iti));
  425.                 }
  426.                 RemoveEvent( "IntroOver" );
  427.                 AddSoundMessage("#iMS10_SP004A#", "Sounds\\Game\\Speech\\Mission\\MS10_SP004A.mp3");
  428.                 AddAKEntityEvent( "IntroOver", ANY_ENTITY, MESSAGE_END );                
  429.             }
  430.     case 1:
  431.             {
  432.                 AddSoundMessage("#iMS10_SP004B#", "Sounds\\Game\\Speech\\Mission\\MS10_SP004B.mp3");
  433.             }
  434.     case 2:
  435.             {    
  436.                 RemoveEvent( "IntroOver" );
  437.                 SetCutScene(false);
  438.                 AddMapTickToEnt( GetEntity( "hq_radar" ), 60.0, MAPTICK_CROSS );
  439.                 ResetCameraSpeed();    
  440.                 SetSpeedInSelector( "starters", 0.0 );
  441.                 AddTimerEvent( "MoveHalottz", 6.66, "GameLogic",true );
  442.             }
  443.     }
  444.     IntroPt++;
  445. }
  446. //INTRO--END
  447.  
  448. public ShowTheRadio()
  449. {
  450.     static RadioPT=0;
  451.     static FowBacaName[100];
  452.     static Float:CamPos[vec3];
  453.     static Float:CamRot;
  454.     static Float:CamZoom;
  455.     static Float:CamPitch;
  456.     switch(RadioPT)
  457.     {
  458.     case 0:
  459.         {
  460.             RemoveEvent( "SendGermanRaider");
  461.             SetGameSpeed( 0.25 );
  462.             GetCameraActualPos( CamPos );
  463.             CamRot=GetCameraActualRotate();
  464.             CamZoom=GetCameraActualDistance();
  465.             CamPitch=GetCameraActualPitch();
  466.             AddSoundMessage("#iMS10_SP005A#", "Sounds\\Game\\Speech\\Mission\\MS10_SP005A.mp3");
  467.             new Float:lTmpVec3[vec3];
  468.             GetPropertyVec3( GetEntity( "hq_radio" ), "LogicalPos_", lTmpVec3 );
  469.             new DrID:FowBaca=CreateEntity( "fowbacon_40", lTmpVec3 );
  470.             SetPropertyInt( FowBaca, "Team", gPlayerTeam );
  471.             GetPropertyString( FowBaca, "StringID", 100, FowBacaName );
  472.             AddAKEntityEvent( "ShowTheRadio", ANY_ENTITY, MESSAGE_END );
  473.             if(GetPropertyInt( GetEntity( "hq_radio" ), "Team" )==gPlayerTeam)
  474.             {
  475.                 RadioPT+=10;
  476.             }
  477.             if(GetDifficulty()==0)//Easy
  478.             {
  479.                 Reinforcement( "easy_extra", GetEntity( "player_reinf_deploy" ), GetEntity( "wp_startpos" ));
  480.             }
  481.         }
  482. //ha meg nem a mienk a radio.
  483.     case 1:
  484.         {
  485.             AddSoundMessage("#iMS10_SP005B#", "Sounds\\Game\\Speech\\Mission\\MS10_SP005B.mp3");
  486.             MoveCameraToEnt( GetEntity( "hq_radio" ) );
  487.             SetCameraRotSpeed(1.0);
  488.             SetCameraTargetRotate( CamRot+100.0 );
  489.             SetCameraZoomSpeed(1.0);
  490.             SetCameraTargetDistance( 15.0 );
  491.             SetCameraPitchSpeed(5.0);
  492.             SetCameraTargetPitch( 45.0 );
  493.         }
  494.     case 2:
  495.         {
  496.             AddSoundMessage("#iMS10_SP005C#", "Sounds\\Game\\Speech\\Mission\\MS10_SP005C.mp3");
  497.         }
  498.     case 3:
  499.         {
  500.             SetPropertyInt( GetEntity( FowBacaName), "Team", 0 );
  501.             RemoveEvent( "ShowTheRadio" );            
  502.             SetCountDown( Rnd(175,380) );
  503.             AddAKEntityEvent( "StartTheOffensive", ANY_ENTITY, COUNTDOWN_DONE );
  504.             SetCutScene(false);
  505.             ResetCameraSpeed();   
  506.             SetCameraTargetPos( CamPos );
  507.             SetCameraTargetDistance( CamZoom );
  508.             SetCameraTargetPitch( CamPitch );
  509.             SetCameraTargetRotate( CamRot );
  510.             SetObjectiveState( "GetRadio", OS_IN_PROGRESS );
  511.         }
  512. //ha mar a mienk a radio
  513.     case 11:
  514.         {
  515.             MoveCameraToEnt( GetEntity( "hq_radio" ) );
  516.             SetCameraRotSpeed(1.0);
  517.             SetCameraTargetRotate( CamRot+100.0 );
  518.             SetCameraZoomSpeed(1.0);
  519.             SetCameraTargetDistance( 15.0 );
  520.             SetCameraPitchSpeed(5.0);
  521.             SetCameraTargetPitch( 45.0 );
  522.             SetObjectiveState( "GetRadio", OS_IN_PROGRESS );
  523.             AddSoundMessage("#iMS10_SP007B#", "Sounds\\Game\\Speech\\Mission\\MS10_SP007B.mp3");
  524.             SetObjectiveState( "GetRadio", OS_COMPLETED );
  525.             TimeToCallReinf();
  526.         }
  527.     case 12:
  528.         {
  529.             RemoveEvent( "ShowTheRadio" );            
  530.             SetCountDown( Rnd(245,380) );
  531.             AddAKEntityEvent( "StartTheOffensive", ANY_ENTITY, COUNTDOWN_DONE );
  532.             SetCutScene(false);
  533.             ResetCameraSpeed();   
  534.             SetCameraTargetPos( CamPos );
  535.             SetCameraTargetDistance( CamZoom );
  536.             SetCameraTargetPitch( CamPitch );
  537.             SetCameraTargetRotate( CamRot );
  538.         }
  539.     }
  540.     RadioPT++;
  541. }
  542.  
  543. public ShowTheBombard()
  544. {
  545.     static BombPT=0;
  546.     static FowBacaName[100];
  547.     static Float:CamPos[vec3];
  548.     static Float:CamRot;
  549.     static Float:CamZoom;
  550.     static Float:CamPitch;
  551.     switch(BombPT)
  552.     {
  553.     case 0:
  554.         {
  555.             SetCutScene(true,false,false);
  556.             new DrID:Bombazo=GetEntity( "szonyegezo" );
  557.             ActivateEntity( Bombazo );
  558.             ShowEntity( Bombazo );
  559.             MakeInvulnerable( Bombazo );
  560. //            CmdMoveToEnt( Bombazo, GetEntity( "szonyeg1" ), Q_OVERRIDE, MF_DIRECT );
  561.             new Float:lTmpVec3[vec3];
  562.             GetPropertyVec3( GetEntity( "szonyeg2" ),  "LogicalPos_", lTmpVec3 );
  563.             CmdAttackPos( Bombazo, Q_ENQUEUE, lTmpVec3, AF_FORCE );
  564.             CmdMoveToEnt( Bombazo, GetEntity( "szonyeg3" ), Q_ENQUEUE, MF_DIRECT );
  565.             GetPropertyVec3( GetEntity( "farakas" ), "LogicalPos_", lTmpVec3 );            
  566. //            CreateEntity( "particle_smoke", lTmpVec3 );
  567.             CreateEntity( "particle_fire_big", lTmpVec3, 0.0 );
  568.             CmdGroupMoveToEnt( "megnezok", GetEntity( "megnezni" ), Q_OVERRIDE, MF_ATTACKMOVE );
  569.             GetCameraActualPos( CamPos );
  570.             CamRot=GetCameraActualRotate();
  571.             CamZoom=GetCameraActualDistance();
  572.             CamPitch=GetCameraActualPitch();
  573.             GetPropertyVec3( GetEntity( "wp_bombtarget" ), "LogicalPos_", lTmpVec3 );
  574.             new DrID:FowBaca=CreateEntity( "fowbacon_40", lTmpVec3 );
  575.             SetPropertyInt( FowBaca, "Team", gPlayerTeam );
  576.             GetPropertyString( FowBaca, "StringID", 100, FowBacaName );
  577.             AddSoundMessage("#iMS10_SP009A#", "Sounds\\Game\\Speech\\Mission\\MS10_SP009A.mp3");
  578.             AddAKEntityEvent( "ShowTheBombard", Bombazo, UNIT_BEGIN_COMBAT );
  579.         }
  580.     case 1:
  581.         {
  582.             RemoveEvent( "ShowTheBombard" );
  583.             MoveCameraToEnt( GetEntity( FowBacaName ));
  584.             CameraSet(-100.0, 45.0, 65.0, true)
  585.             AddSoundMessage("#iMS10_SP009B#", "Sounds\\Game\\Speech\\Mission\\MS10_SP009B.mp3");
  586.             AddAKEntityEvent( "ShowTheBombard", GetEntity( "arti2" ), UNIT_DAMAGED );
  587.         }
  588.     case 2:
  589.         {
  590.             RemoveEvent( "ShowTheBombard" );
  591.             SetGameSpeed( 0.15 );
  592.             AddTimerEvent( "ShowTheBombard", 0.5, "GameLogic", true );
  593.         }
  594.     case 3:
  595.         {
  596.             RemoveEvent( "ShowTheBombard" );
  597.             SetGameSpeed( 1.0 );
  598.             AddTimerEvent( "ShowTheBombard", 6.5, "GameLogic", true );
  599.         }
  600.     case 4:
  601.         {
  602.             RemoveEvent( "ShowTheBombard" );
  603.             CmdMoveToEnt( GetEntity( "szonyegezo" ), GetEntity( "szonyeg3" ), Q_OVERRIDE, MF_TELEPORT );
  604.             CmdMoveToEnt( GetEntity( "szonyegezo" ), GetEntity( "szonyeg3" ), Q_CYCLE, MF_NONE );
  605.             AddTimerEvent( "ShowTheBombard", 1.5,"GameLogic",true );                
  606.         }
  607.     case 5:
  608.         {
  609.             CmdStop( GetEntity( "szonyegezo" ),Q_OVERRIDE );
  610.             DeActivateEntity( GetEntity( "szonyegezo" ));
  611.             SetPropertyInt( GetEntity( "fowbacon_201" ), "Team", 0 );
  612.             SetPropertyInt( GetEntity( "fowbacon_202" ), "Team", 0 );
  613.             SetPropertyInt( GetEntity( "fowbacon_203" ), "Team", 0 );
  614.             SetPropertyInt( GetEntity( "fowbacon_204" ), "Team", 0 );
  615.             SetPropertyInt( GetEntity( "fowbacon_205" ), "Team", 0 );
  616.             if(IsAlive(GetEntity( "arti1" )))
  617.             {
  618.                 DamageEntity( GetEntity( "arti1" ), 290.1, 49 );
  619.             }
  620.             if(IsAlive(GetEntity( "arti2" )))
  621.             {
  622.                 DamageEntity( GetEntity( "arti2" ), 290.1, 49 );
  623.             }
  624.             if(IsAlive(GetEntity( "arti3" )))
  625.             {
  626.                 DamageEntity( GetEntity( "arti3" ), 290.1, 49 );
  627.             }
  628.             if(IsAlive(GetEntity( "arti4" )))
  629.             {
  630.                 DamageEntity( GetEntity( "arti4" ), 290.1, 49 );
  631.             }
  632.             if(IsAlive(GetEntity( "arti5" )))
  633.             {
  634.                 DamageEntity( GetEntity( "arti5" ), 290.1, 49 );
  635.             }
  636.             RemoveEvent( "ShowTheBombard" );            
  637.             SetGameSpeed( 1.0 );
  638.             ResetCameraSpeed();   
  639.             SetCameraTargetPos( CamPos );
  640.             SetCameraTargetDistance( CamZoom );
  641.             SetCameraTargetPitch( CamPitch );
  642.             SetCameraTargetRotate( CamRot );
  643.             SetObjectiveState( "MarkArea", OS_COMPLETED );
  644.             SetPropertyInt( GetEntity( FowBacaName ) , "Team", 0 );
  645.             SetCutScene(false,false,false);
  646.         }
  647.     }
  648.     BombPT++;
  649. }
  650.  
  651. public TimeToCallReinf()
  652. {
  653.     RemoveEvent( "TimeToCallReinf" );
  654.     new Float:TimeTillReinf=190.0;
  655.     if(MS9HidDone)
  656.     {
  657.         TimeTillReinf-=120.0;    
  658.     }
  659.     AddTimerEvent( "LetsCallReinf", TimeTillReinf, "GameLogic",true );
  660. }
  661.  
  662. public LetsCallReinf()
  663. {
  664.     if(MS9HidDone)
  665.     {
  666.             AddSoundMessage("#iMS10_SP011#", "Sounds\\Game\\Speech\\Mission\\MS10_SP011.mp3");
  667.     }
  668.     RemoveEvent( "LetsCallReinf" );
  669.     Reinforcement( "player_reinf", GetEntity( "player_reinf_deploy" ), GetEntity( "wp_startpos" ));
  670. }
  671.  
  672. public MoveHalottz()
  673. {
  674.     RemoveEvent( "MoveHalottz" );
  675.     CmdGroupMoveToEnt( "hullajeloltz" , GetEntity( "wp_startpos" ), Q_OVERRIDE, MF_ATTACKMOVE );
  676. }
  677.  
  678. public StartTheOffensive()
  679. {
  680.     Reinforcement( "ger_offensive", GetEntity( "ger_off_deploy" ), GetEntity( "geroff1" ));    
  681.     AddTimerEvent( "IgyTalanMukodik1", 2.0, "GameLogic", true );    
  682.     AddSoundMessage("#iMS10_SP006#", "Sounds\\Game\\Speech\\Mission\\MS10_SP006.mp3");
  683.     AddAKEntityEvent( "RemoveTimer", ANY_ENTITY, MESSAGE_END );
  684. }
  685.  
  686. public SendGermanRaider()
  687. {
  688.     new Tibor=Rnd(0,4);
  689.     new ReinfName[24];
  690.     switch(Tibor)
  691.     {
  692.         case 2:
  693.             {
  694.                 ReinfName="ger_raid2";
  695.             }
  696.         case 3:
  697.             {
  698.                 ReinfName="ger_raid3";
  699.             }
  700.         default:
  701.             {
  702.                 ReinfName="ger_raid1";
  703.             }
  704.     }
  705.     Reinforcement( ReinfName, GetEntity( "ger_off_deploy" ), GetEntity( "geroff1" ));    
  706.     AddTimerEvent( "IgyTalanMukodik2", 2.0, "GameLogic", true );
  707. //    ShowShortMessage( "German Reinforcement has arrived." );
  708. }
  709.  
  710. public IgyTalanMukodik1()
  711. {
  712.     RemoveEvent( "IgyTalanMukodik1" );
  713.     CmdGroupMoveToEnt( "ger_offensive", GetEntity( "geroff1" ), Q_OVERRIDE, MF_PINPOINT+MF_KEEP_FORMATION+MF_ATTACKMOVE );
  714.     CmdGroupMoveToEnt( "ger_offensive", GetEntity( "geroff2" ), Q_ENQUEUE, MF_KEEP_FORMATION+MF_ATTACKMOVE );
  715.     CmdGroupMoveToEnt( "ger_offensive", GetEntity( "geroff3" ), Q_ENQUEUE, MF_KEEP_FORMATION+MF_ATTACKMOVE );
  716.     CmdGroupMoveToEnt( "ger_offensive", GetEntity( "geroff4" ), Q_ENQUEUE, MF_KEEP_FORMATION+MF_ATTACKMOVE );
  717.     CmdGroupMoveToEnt( "ger_offensive", GetEntity( "geroff5" ), Q_ENQUEUE, MF_KEEP_FORMATION+MF_ATTACKMOVE );
  718. }
  719.  
  720. public IgyTalanMukodik2()
  721. {
  722.     RemoveEvent( "IgyTalanMukodik2" );
  723.     CmdGroupMoveToEnt( "ger_raid", GetEntity( "geroff1" ), Q_OVERRIDE, MF_PINPOINT+MF_KEEP_FORMATION+MF_ATTACKMOVE );
  724.     CmdGroupMoveToEnt( "ger_raid", GetEntity( "geroff2" ), Q_ENQUEUE, MF_KEEP_FORMATION+MF_ATTACKMOVE );
  725.     CmdGroupMoveToEnt( "ger_raid", GetEntity( "geroff3" ), Q_ENQUEUE, MF_KEEP_FORMATION+MF_ATTACKMOVE );
  726.     CmdGroupMoveToEnt( "ger_raid", GetEntity( "geroff4" ), Q_ENQUEUE, MF_KEEP_FORMATION+MF_ATTACKMOVE );
  727.     CmdGroupMoveToEnt( "ger_raid", GetEntity( "geroff5" ), Q_ENQUEUE, MF_KEEP_FORMATION+MF_ATTACKMOVE );
  728.     new Iterator:iti=Iterate("ger_raid");
  729.     while(ItNext(iti))
  730.     {
  731.         RemoveFromGroup( "ger_raid", ItEntity(iti) );        
  732.     }
  733.     ItStop(iti);
  734. }
  735.  
  736. public ShowElIfrit()
  737. {
  738.     static IfritPT=0;
  739.     static Float:CamPos[vec3];
  740.     static Float:CamRot;
  741.     static Float:CamZoom;
  742.     static Float:CamPitch;
  743.     static Brit1Name[100];
  744.     static Brit2Name[100];
  745.     new DrID:Brit1=GetEntity( Brit1Name );
  746.     new DrID:Brit2=GetEntity( Brit2Name );
  747.     
  748.     switch(IfritPT)
  749.     {
  750.     case 0:
  751.         {
  752.             SetCutScene(true);
  753.             ActivateEntity( GetEntity( "ifrit" ) );
  754.             ShowEntity( GetEntity( "ifrit" ) );
  755.             GetCameraActualPos( CamPos );
  756.             CamRot=GetCameraActualRotate();
  757.             CamZoom=GetCameraActualDistance();
  758.             CamPitch=GetCameraActualPitch();
  759.             
  760.             new Iterator:iti=Iterate("ifrit_trigger_b");
  761.             if(ItNext(iti))
  762.                 Brit1=ItEntity(iti);
  763.                         
  764.             if(ItNext(iti))
  765.                 Brit2=ItEntity(iti);
  766.             
  767.             ItStop(iti);
  768.             
  769.             GetPropertyString( Brit1, "StringID", 100, Brit1Name );
  770.             GetPropertyString( Brit2, "StringID", 100, Brit2Name );
  771.                         
  772.             AddSoundMessage("#iMS10_SP010A#", "Sounds\\Game\\Speech\\Mission\\MS10_SP010A.mp3");
  773.             CmdMoveToEnt( Brit1 , GetEntity( "ifrit_trigger_s" ), Q_OVERRIDE, MF_NONE );
  774.             CmdMoveToEnt( Brit2 , GetEntity( "ifrit_trigger_b" ), Q_OVERRIDE, MF_NONE );
  775.             AddAKEntityEvent( "ShowElIfrit", Brit1, UNIT_COMMAND_QUEUE_EMPTY );
  776.             AddAKEntityEvent( "ShowElIfrit", Brit2, UNIT_COMMAND_QUEUE_EMPTY );
  777.         }
  778.     case 1:
  779.         {
  780.             MoveCameraToEnt( GetEntity( "ifrit" ));
  781.         }
  782.     case 2:
  783.         {
  784.             RemoveEvent( "ShowElIfrit" );
  785.             AddSoundMessage("#iMS10_SP010B#", "Sounds\\Game\\Speech\\Mission\\MS10_SP010B.mp3");
  786.             AddAKEntityEvent( "ShowElIfrit", ANY_ENTITY, MESSAGE_END );
  787.         }
  788.     case 3:
  789.         {
  790.             DamageEntity( GetEntity( "ifrit" ), 100.0,49 );
  791.             MoveCameraToEnt( Brit1);
  792.             AddSoundMessage("#iMS10_SP010C#", "Sounds\\Game\\Speech\\Mission\\MS10_SP010C.mp3");
  793.         }
  794.     case 4:
  795.         {
  796.             MoveCameraToEnt( Brit2);
  797.             AddSoundMessage("#iMS10_SP010D#", "Sounds\\Game\\Speech\\Mission\\MS10_SP010D.mp3");        
  798.         }
  799.     case 5:
  800.         {
  801.             MoveCameraToEnt( Brit1);
  802.             AddSoundMessage("#iMS10_SP010E#", "Sounds\\Game\\Speech\\Mission\\MS10_SP010E.mp3");        
  803.         }
  804.     case 6:
  805.         {        
  806.             SetCutScene(false);
  807.             ResetCameraSpeed();   
  808.             SetCameraTargetPos( CamPos );
  809.             SetCameraTargetDistance( CamZoom );
  810.             SetCameraTargetPitch( CamPitch );
  811.             SetCameraTargetRotate( CamRot );
  812.             SetGameSpeed( 1.0 );
  813.             SetObjectiveState( "FindIfrit", OS_COMPLETED );
  814.         }    
  815.     }
  816.     IfritPT++;
  817. }
  818.  
  819. public RemoveTimer()
  820. {
  821.     RemoveEvent( "RemoveTimer" );
  822.     SetCountDown( -1 );
  823. }
  824.  
  825. //======================================================================================================
  826. public TeamElimSucceed( )
  827. {
  828.     new Team=GetMsgParamInt();      
  829.     if(Team==123)
  830.     {
  831.         GameOverMan();
  832.         SetObjectiveState( "GetRadar", OS_FAILED );        
  833.         SetObjectiveState( "HoldNarrow", OS_FAILED );        
  834.     }
  835.     if(Team==666&&GetDifficulty()==0)
  836.     {
  837.         Reinforcement( "easy_extra", GetEntity( "player_reinf_deploy" ), GetEntity( "wp_startpos" ));
  838.     }
  839. }
  840.  
  841. public GameOverMan()
  842. {
  843.     RemoveEvent( "GameOverMan" );
  844.     SetCutScene(true);
  845.     AddDebriefing("#iMISSION_DB_F#");
  846.     EndMission( MS_FAILED );
  847. }
  848.  
  849. public GameDoneMan()
  850. {
  851.     SetObjectiveState( "HoldNarrow", OS_COMPLETED );
  852.     if(    GetObjectiveState( "FindIfrit") != OS_COMPLETED )
  853.     {
  854.         SetGlobalVariable("gvMS10_Elifrit",0)        
  855.         SetObjectiveState( "FindIfrit", OS_FAILED );
  856.     }
  857.     else
  858.     {
  859.         SetGlobalVariable("gvMS10_Elifrit",1)        
  860.     }
  861.     RemoveEvent( "GameDoneMan" );
  862.     SetCutScene(true);
  863.     AddDebriefing("#iMISSION10_DB_P#");
  864.     if(GetObjectiveState( "FindIfrit" )==OS_COMPLETED)
  865.     {
  866.         AddDebriefing("#iMISSION10_DB_H#");
  867.     }
  868.     EndMission( MS_ACCOMPLISHED );
  869. }
  870.  
  871. public SendRadioSoldiers()
  872. {
  873.     RemoveEvent( "SendRadioSoldiers" );
  874. //    ShowShortMessage( "Radio tower is reinforced" );
  875.     Reinforcement( "radio_reinf", GetEntity( "radio_reinf_deploy" ), GetEntity( "radio_reinf_arrive" ) );
  876.     CmdGroupMoveToEnt( "radio_reinf", GetEntity( "radio_reinf_arrive" ), Q_OVERRIDE, MF_NONE );
  877.     new Iterator:iti=Iterate("radio_reinf");
  878.     while(ItNext(iti))
  879.     {
  880.         if(IsMounted( ItEntity(iti)))
  881.         { //Gyalog
  882.             SetBehav2Ent( ItEntity(iti),MB_MOVE_FREELY,FB_FIRE_AT_WILL,UB_NEVER);
  883.         }
  884.         else
  885.         { //kocsi
  886.             SetBehav2Ent( ItEntity(iti),_,FB_FIRE_AT_WILL,UB_NEVER);
  887.             CmdUnmount( ItEntity(iti), Q_ENQUEUE, UMTF_UNMOUNT_ALL );
  888.             AddAKEntityEvent( "RadioReinfDmgd", ItEntity(iti), UNIT_DAMAGED );
  889.         }
  890.         ItStop(iti);
  891.     }
  892. }
  893.  
  894. public RadioReinfDmgd(DrID:Hu)
  895. {
  896.     RemoveEvent( "RadioReinfDmgd" );
  897.     CmdUnmount( Hu, Q_OVERRIDE );
  898.     AddTimerEvent( "RRDMGD2", 1.0, "GameLogic", true);
  899. }
  900.  
  901. public RRDMGD2()
  902. {
  903.     RemoveEvent( "RRDMGD2" );
  904.     CmdGroupMoveToEnt( "radio_reinf", GetEntity( "radio_reinf_arrive" ), Q_OVERRIDE, MF_ATTACKMOVE );
  905. }
  906. //======================================================================================================
  907. // Add your functions here:
  908.  
  909. //======================================================================================================
  910. public ObjectiveChanged()
  911. {
  912.     // Check objectives here
  913. }
  914.