home *** CD-ROM | disk | FTP | other *** search
/ Classic Fond 54 / ClassicFond54.iso / games / stars.rar / multiplayer / CTF_Circular_Logic.cs < prev    next >
Text File  |  1999-02-19  |  5KB  |  147 lines

  1. // FILENAME:    CTF_Circular_Logic.cs
  2. //
  3. // AUTHORS:      Cupie Doll & Youth in Asia
  4. //------------------------------------------------------------------------------
  5.  
  6. $missionName = "CTF_Circular_Logic";
  7.  
  8. $maxFlagCount  = 8;           // no of flags required by a team to end the game
  9. $flagValue     = 5;          // points your team gets for capturing
  10. $carrierValue  = 2;          //  "      "    "    "    " killing carrier
  11. $killPoints    = 1;
  12. $deathPoints   = 1;
  13. $flagTime = 300;
  14.  
  15. exec("multiplayerStdLib.cs");
  16. exec("CTFstdLib.cs");
  17.  
  18. function setDefaultMissionOptions()
  19. {
  20.     $server::TeamPlay = true;
  21.     $server::AllowDeathmatch = false;
  22.     $server::AllowTeamPlay = true;    
  23.  
  24.     $server::AllowTeamRed = false;
  25.     $server::AllowTeamBlue = true;
  26.     $server::AllowTeamYellow = false;
  27.     $server::AllowTeamPurple = true;
  28.  
  29.    // what can the server admin choose for available teams
  30.    $server::disableTeamRed = true;
  31.    $server::disableTeamBlue = false;
  32.    $server::disableTeamYellow = true;
  33.    $server::disableTeamPurple = false;
  34. }
  35.  
  36. function onMissionStart()
  37. {
  38.     initGlobalVars();
  39.   
  40.     
  41.     $lastVehicleOnZen = "";
  42.     $lastVehicleOnRedZen = "";
  43.     $lastVehicleOnBlueZen = "";
  44.     $secondsToGain = 0;
  45.     $secondsToGainRedZen = 0;
  46.     $secondsToGainBlueZen = 0;
  47.     
  48.     titanSounds();
  49. }
  50.  
  51. function onMissionLoad(){
  52.    cdAudioCycle("Purge", "Cyberntx", "Yougot"); 
  53. }
  54.  
  55. // ZenAll Pad Functionality
  56. //------------------------------------------------------------------------------
  57. function ZenAll::trigger::onEnter(%this, %object)
  58. {
  59.        Zen::onEnter(%this, %object, *IDMULT_CHAT_ALLPAD, true, true);  
  60. }
  61. function ZenAll::trigger::onContact(%this, %object)
  62. {
  63.        Zen::work(%this, %object, $yellowZenHealRate, $yellowZenAmmoRate, $zenWaitTime, true);
  64.     if(isShutDown(%object)){
  65.         if(%object != $lastVehicleOnZen){
  66.             $lastVehicleOnZen = %object;
  67.             $secondsToGain = 1;
  68.         }
  69.         else{
  70.             $secondsToGain = $secondsToGain + 1;
  71.         }
  72.         if($secondsToGain >= 4)
  73.             giveTurretsToThisGuy(%object);
  74.     }
  75. }
  76. // ZenAll Pad Functionality
  77. //------------------------------------------------------------------------------
  78. function RedZen::trigger::onEnter(%this, %object)
  79. {
  80.        Zen::onEnter(%this, %object, *IDMULT_CHAT_ALLPAD, true, true);  
  81. }
  82. function RedZen::trigger::onContact(%this, %object)
  83. {
  84.        Zen::work(%this, %object, $redZenHealRate, $redZenAmmoRate, $zenWaitTime, true);
  85.     if(isShutDown(%object)){
  86.         if(%object != $lastVehicleOnRedZen){
  87.             $lastVehicleOnRedZen = %object;
  88.             $secondsToGainRedZen = 1;
  89.         }
  90.         else{
  91.             $secondsToGainRedZen = $secondsToGainRedZen + 1;
  92.         }
  93.         if($secondsToGainRedZen >= 4)
  94.             giveRedTurretsToThisGuy(%object);
  95.     }
  96. }
  97. // ZenAll Pad Functionality
  98. //------------------------------------------------------------------------------
  99. function BlueZen::trigger::onEnter(%this, %object)
  100. {
  101.        Zen::onEnter(%this, %object, *IDMULT_CHAT_ALLPAD, true, true);  
  102. }
  103. function BlueZen::trigger::onContact(%this, %object)
  104. {
  105.        Zen::work(%this, %object, $blueZenHealRate, $blueZenAmmoRate, $zenWaitTime, true);
  106.     if(isShutDown(%object)){
  107.         if(%object != $lastVehicleOnBlueZen){
  108.             $lastVehicleOnBlueZen = %object;
  109.             $secondsToGainBlueZen = 1;
  110.         }
  111.         else{
  112.             $secondsToGainBlueZen = $secondsToGainBlueZen + 1;
  113.         }
  114.         if($secondsToGainBlueZen >= 4)
  115.             giveBlueTurretsToThisGuy(%object);
  116.     }
  117. }
  118.  
  119. // Turret Code
  120. // -----------------------------------------------------------------------------------
  121.  
  122. function giveTurretsToThisGuy(%vehicleId){
  123.     %team = getTeam(%vehicleId);
  124.     setTeam("MissionGroup\\CenterStructures\\T1", %team);
  125.     setTeam("MissionGroup\\CenterStructures\\T2", %team);
  126.     setTeam("MissionGroup\\CenterStructures\\T3", %team);
  127.     setTeam("MissionGroup\\CenterStructures\\T4", %team);
  128.     setTeam("MissionGroup\\CenterStructures\\NavZen", %team);
  129.     order("MissionGroup\\CenterStructures", Shutdown, false);    
  130. }
  131. function giveRedTurretsToThisGuy(%vehicleId){
  132.     %team = getTeam(%vehicleId);
  133.     setTeam("MissionGroup\\CenterStructures\\T5", %team);
  134.     setTeam("MissionGroup\\CenterStructures\\T6", %team);
  135.     setTeam("MissionGroup\\CenterStructures\\NavZenRed", %team);
  136.     order("MissionGroup\\CenterStructures", Shutdown, false);    
  137. }
  138. function giveBlueTurretsToThisGuy(%vehicleId){
  139.     %team = getTeam(%vehicleId);
  140.     setTeam("MissionGroup\\CenterStructures\\T7", %team);
  141.     setTeam("MissionGroup\\CenterStructures\\T8", %team);
  142.     setTeam("MissionGroup\\CenterStructures\\NavZenBlue", %team);
  143.     order("MissionGroup\\CenterStructures", Shutdown, false);    
  144. }
  145.  
  146.  
  147.