1 #using scripts\codescripts\struct;
3 #using scripts\shared\callbacks_shared;
4 #using scripts\shared\rank_shared;
5 #using scripts\shared\system_shared;
7 #insert scripts\shared\shared.gsh;
9 #using scripts\mp\gametypes\_globallogic;
11 #using scripts\mp\_util;
13 #precache( "menu", MENU_TEAM );
14 #precache( "menu", MENU_CLASS );
15 #precache( "menu", MENU_CHANGE_CLASS );
16 #precache( "menu", MENU_CONTROLS );
17 #precache( "menu", MENU_OPTIONS );
18 #precache( "menu", MENU_LEAVEGAME );
19 #precache( "menu", MENU_SPECTATE );
20 #precache( "string", "MP_HOST_ENDED_GAME" );
21 #precache( "string", "MP_HOST_ENDGAME_RESPONSE" );
22 #precache( "eventstring", "open_ingame_menu" );
42 foreach( team
in level.teams )
59 self endon(
"disconnect");
63 self waittill(
"menuresponse", menu, response);
69 if ( response ==
"back" )
71 self closeInGameMenu();
75 if( menu == game[
"menu_changeclass"] || menu == game[
"menu_changeclass_offline"] || menu == game[
"menu_team"] || menu == game[
"menu_controls"] )
78 if( isdefined( level.teams[
self.pers[
"team"]] ) )
79 self openMenu( game[
"menu_start_menu" ] );
85 if(response ==
"changeteam" && level.allow_teamchange ==
"1")
87 self closeInGameMenu();
88 self openMenu(game[
"menu_team"]);
91 if(response ==
"endgame")
98 level.skipVote =
true;
100 if ( !level.gameEnded )
109 if(response ==
"killserverpc")
116 if ( response ==
"endround" )
118 if ( !level.gameEnded )
125 self closeInGameMenu();
126 self iprintln( &
"MP_HOST_ENDGAME_RESPONSE" );
131 if(menu == game[
"menu_team"] && level.allow_teamchange ==
"1")
136 self [[level.autoassign]]( true );
140 self [[level.spectator]]();
144 self [[level.teamMenu]](response);
148 else if( menu == game[
"menu_changeclass"] || menu == game[
"menu_changeclass_offline"] )
150 if ( response !=
"cancel" )
152 self closeInGameMenu();
154 if( level.rankedMatch && isSubstr(response,
"custom") )
156 if (
self IsItemLocked( rank::GetItemIndex(
"feature_cac" ) ) )
157 kick(
self getEntityNumber() );
160 self.selectedClass =
true;
161 self [[level.curClass]](response);
164 else if ( menu ==
"spectate" )
167 if ( isdefined ( player ) )
169 self SetCurrentSpectatorClient( player );