Guest User

raw/maps/mp/gametypes/_quickmessages.gsc

a guest
Oct 15th, 2017
7
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 6.50 KB | None | 0 0
  1. init()
  2. {
  3.     game["menu_quickcommands"] = "quickcommands";
  4.     game["menu_quickstatements"] = "quickstatements";
  5.     game["menu_quickresponses"] = "quickresponses";
  6.  
  7.     precacheMenu(game["menu_quickcommands"]);
  8.     precacheMenu(game["menu_quickstatements"]);
  9.     precacheMenu(game["menu_quickresponses"]);
  10.     precacheHeadIcon("talkingicon");
  11.  
  12.     precacheString( &"QUICKMESSAGE_FOLLOW_ME" );
  13.     precacheString( &"QUICKMESSAGE_MOVE_IN" );
  14.     precacheString( &"QUICKMESSAGE_FALL_BACK" );
  15.     precacheString( &"QUICKMESSAGE_SUPPRESSING_FIRE" );
  16.     precacheString( &"QUICKMESSAGE_ATTACK_LEFT_FLANK" );
  17.     precacheString( &"QUICKMESSAGE_ATTACK_RIGHT_FLANK" );
  18.     precacheString( &"QUICKMESSAGE_HOLD_THIS_POSITION" );
  19.     precacheString( &"QUICKMESSAGE_REGROUP" );
  20.     precacheString( &"QUICKMESSAGE_ENEMY_SPOTTED" );
  21.     precacheString( &"QUICKMESSAGE_ENEMIES_SPOTTED" );
  22.     precacheString( &"QUICKMESSAGE_IM_IN_POSITION" );
  23.     precacheString( &"QUICKMESSAGE_AREA_SECURE" );
  24.     precacheString( &"QUICKMESSAGE_GRENADE" );
  25.     precacheString( &"QUICKMESSAGE_SNIPER" );
  26.     precacheString( &"QUICKMESSAGE_NEED_REINFORCEMENTS" );
  27.     precacheString( &"QUICKMESSAGE_HOLD_YOUR_FIRE" );
  28.     precacheString( &"QUICKMESSAGE_YES_SIR" );
  29.     precacheString( &"QUICKMESSAGE_NO_SIR" );
  30.     precacheString( &"QUICKMESSAGE_IM_ON_MY_WAY" );
  31.     precacheString( &"QUICKMESSAGE_SORRY" );
  32.     precacheString( &"QUICKMESSAGE_GREAT_SHOT" );
  33.     precacheString( &"QUICKMESSAGE_TOOK_LONG_ENOUGH" );
  34.     precacheString( &"QUICKMESSAGE_ARE_YOU_CRAZY" );   
  35.     precacheString( &"QUICKMESSAGE_WATCH_SIX" );   
  36.     precacheString( &"QUICKMESSAGE_COME_ON" ); 
  37. }
  38.  
  39. quickcommands(response)
  40. {
  41.     self endon ( "disconnect" );
  42.    
  43.     if(!isdefined(self.pers["team"]) || self.pers["team"] == "spectator" || isdefined(self.spamdelay))
  44.         return;
  45.  
  46.     self.spamdelay = true;
  47.    
  48.     switch(response)       
  49.     {
  50.         case "1":
  51.             soundalias = "mp_cmd_followme";
  52.             saytext = &"QUICKMESSAGE_FOLLOW_ME";
  53.             //saytext = "Follow Me!";
  54.             break;
  55.  
  56.         case "2":
  57.             soundalias = "mp_cmd_movein";
  58.             saytext = &"QUICKMESSAGE_MOVE_IN";
  59.             //saytext = "Move in!";
  60.             break;
  61.  
  62.         case "3":
  63.             soundalias = "mp_cmd_fallback";
  64.             saytext = &"QUICKMESSAGE_FALL_BACK";
  65.             //saytext = "Fall back!";
  66.             break;
  67.  
  68.         case "4":
  69.             soundalias = "mp_cmd_suppressfire";
  70.             saytext = &"QUICKMESSAGE_SUPPRESSING_FIRE";
  71.             //saytext = "Suppressing fire!";
  72.             break;
  73.  
  74.         case "5":
  75.             soundalias = "mp_cmd_attackleftflank";
  76.             saytext = &"QUICKMESSAGE_ATTACK_LEFT_FLANK";
  77.             //saytext = "Attack left flank!";
  78.             break;
  79.  
  80.         case "6":
  81.             soundalias = "mp_cmd_attackrightflank";
  82.             saytext = &"QUICKMESSAGE_ATTACK_RIGHT_FLANK";
  83.             //saytext = "Attack right flank!";
  84.             break;
  85.  
  86.         case "7":
  87.             soundalias = "mp_cmd_holdposition";
  88.             saytext = &"QUICKMESSAGE_HOLD_THIS_POSITION";
  89.             //saytext = "Hold this position!";
  90.             break;
  91.  
  92.         default:
  93.             assert(response == "8");
  94.             soundalias = "mp_cmd_regroup";
  95.             saytext = &"QUICKMESSAGE_REGROUP";
  96.             //saytext = "Regroup!";
  97.             break;
  98.     }
  99.  
  100.     self saveHeadIcon();
  101.     self doQuickMessage(soundalias, saytext);
  102.  
  103.     wait 2;
  104.     self.spamdelay = undefined;
  105.     self restoreHeadIcon();
  106. }
  107.  
  108. quickstatements(response)
  109. {
  110.     if(!isdefined(self.pers["team"]) || self.pers["team"] == "spectator" || isdefined(self.spamdelay))
  111.         return;
  112.  
  113.     self.spamdelay = true;
  114.    
  115.     switch(response)       
  116.     {
  117.         case "1":
  118.             soundalias = "mp_stm_enemyspotted";
  119.             saytext = &"QUICKMESSAGE_ENEMY_SPOTTED";
  120.             //saytext = "Enemy spotted!";
  121.             break;
  122.  
  123.         case "2":
  124.             soundalias = "mp_stm_enemiesspotted";
  125.             saytext = &"QUICKMESSAGE_ENEMIES_SPOTTED";
  126.             //saytext = "Enemy down!";
  127.             break;
  128.  
  129.         case "3":
  130.             soundalias = "mp_stm_iminposition";
  131.             saytext = &"QUICKMESSAGE_IM_IN_POSITION";
  132.             //saytext = "I'm in position.";
  133.             break;
  134.  
  135.         case "4":
  136.             soundalias = "mp_stm_areasecure";
  137.             saytext = &"QUICKMESSAGE_AREA_SECURE";
  138.             //saytext = "Area secure!";
  139.             break;
  140.  
  141.         case "5":
  142.             soundalias = "mp_stm_watchsix";
  143.             saytext = &"QUICKMESSAGE_WATCH_SIX";
  144.             //saytext = "Grenade!";
  145.             break;
  146.  
  147.         case "6":
  148.             soundalias = "mp_stm_sniper";
  149.             saytext = &"QUICKMESSAGE_SNIPER";
  150.             //saytext = "Sniper!";
  151.             break;
  152.  
  153.         default:
  154.             assert(response == "7");
  155.             soundalias = "mp_stm_needreinforcements";
  156.             saytext = &"QUICKMESSAGE_NEED_REINFORCEMENTS";
  157.             //saytext = "Need reinforcements!";
  158.             break;
  159.     }
  160.  
  161.     self saveHeadIcon();
  162.     self doQuickMessage(soundalias, saytext);
  163.  
  164.     wait 2;
  165.     self.spamdelay = undefined;
  166.     self restoreHeadIcon();
  167. }
  168.  
  169. quickresponses(response)
  170. {
  171.     if(!isdefined(self.pers["team"]) || self.pers["team"] == "spectator" || isdefined(self.spamdelay))
  172.         return;
  173.  
  174.     self.spamdelay = true;
  175.  
  176.     switch(response)       
  177.     {
  178.         case "1":
  179.             soundalias = "mp_rsp_yessir";
  180.             saytext = &"QUICKMESSAGE_YES_SIR";
  181.             //saytext = "Yes Sir!";
  182.             break;
  183.  
  184.         case "2":
  185.             soundalias = "mp_rsp_nosir";
  186.             saytext = &"QUICKMESSAGE_NO_SIR";
  187.             //saytext = "No Sir!";
  188.             break;
  189.  
  190.         case "3":
  191.             soundalias = "mp_rsp_onmyway";
  192.             saytext = &"QUICKMESSAGE_IM_ON_MY_WAY";
  193.             //saytext = "On my way.";
  194.             break;
  195.  
  196.         case "4":
  197.             soundalias = "mp_rsp_sorry";
  198.             saytext = &"QUICKMESSAGE_SORRY";
  199.             //saytext = "Sorry.";
  200.             break;
  201.  
  202.         case "5":
  203.             soundalias = "mp_rsp_greatshot";
  204.             saytext = &"QUICKMESSAGE_GREAT_SHOT";
  205.             //saytext = "Great shot!";
  206.             break;
  207.  
  208.         default:
  209.             assert(response == "6");
  210.             soundalias = "mp_rsp_comeon";
  211.             saytext = &"QUICKMESSAGE_COME_ON";
  212.             //saytext = "Took long enough!";
  213.             break;
  214.     }
  215.  
  216.     self saveHeadIcon();
  217.     self doQuickMessage(soundalias, saytext);
  218.  
  219.     wait 2;
  220.     self.spamdelay = undefined;
  221.     self restoreHeadIcon();
  222. }
  223.  
  224. doQuickMessage( soundalias, saytext )
  225. {
  226.     if(self.sessionstate != "playing")
  227.         return;
  228.  
  229.     prefix = maps\mp\gametypes\_teams::getTeamVoicePrefix( self.team );
  230.  
  231.     if(isdefined(level.QuickMessageToAll) && level.QuickMessageToAll)
  232.     {
  233.         self.headiconteam = "none";
  234.         self.headicon = "talkingicon";
  235.  
  236.         self playSound( prefix+soundalias );
  237.         self sayAll(saytext);
  238.     }
  239.     else
  240.     {
  241.         if(self.sessionteam == "allies")
  242.             self.headiconteam = "allies";
  243.         else if(self.sessionteam == "axis")
  244.             self.headiconteam = "axis";
  245.        
  246.         self.headicon = "talkingicon";
  247.  
  248.         self playSound( prefix+soundalias );
  249.         self sayTeam( saytext );
  250.         self pingPlayer();
  251.     }
  252. }
  253.  
  254. saveHeadIcon()
  255. {
  256.     if(isdefined(self.headicon))
  257.         self.oldheadicon = self.headicon;
  258.  
  259.     if(isdefined(self.headiconteam))
  260.         self.oldheadiconteam = self.headiconteam;
  261. }
  262.  
  263. restoreHeadIcon()
  264. {
  265.     if(isdefined(self.oldheadicon))
  266.         self.headicon = self.oldheadicon;
  267.  
  268.     if(isdefined(self.oldheadiconteam))
  269.         self.headiconteam = self.oldheadiconteam;
  270. }
Add Comment
Please, Sign In to add comment