PHP Code:
#include <amxmodx>
#include <fakemeta>
#define OFFSET_TEAM 114
enum
{
TEAM_NULL, // LOL NULL
TEAM_T,
TEAM_CT,
TEAM_SPECTATOR
}
new g_iCounter = 0;
new p_Rounds;
new g_Msg_TeamInfo;
new g_iMaxPlayers;
// HERE HERE HERE HERE
new szText[ ] = "Text text text text"
new RoundRestartTime = 1
// HERE HERE HERE HERE
public plugin_init()
{
register_plugin( "Team Switch", "1.5", "TBagT" );
p_Rounds = register_cvar( "ats_rounds", "15" );
register_event("TextMsg", "RoundRestart_Attempt", "a", "2&#Game_C", "2&Game_W");
register_logevent("logevent_round_start2", 2, "1=Round_Start")
register_logevent("logevent_round_end2", 2, "1=Round_End")
g_iMaxPlayers = get_maxplayers();
g_Msg_TeamInfo = get_user_msgid( "TeamInfo" );
set_task(5.0, "cmdText", 0, _, _, "b")
}
public server_changelevel( map[] )
{
g_iCounter = 0;
}
public plugin_pause()
{
g_iCounter = 0;
}
public RoundRestart_Attempt()
{
g_iCounter = 0;
}
public logevent_round_end2()
{
if( get_playersnum() > 1 )
{
if ( g_iCounter >= get_pcvar_num( p_Rounds ) )
{
g_iCounter = 0;
new team, oppTeam;
for( new i = 1 ; i <= g_iMaxPlayers ; i++ )
{
if( !is_user_connected( i ) ) continue;
team = get_user_team( i );
if( team == TEAM_SPECTATOR ) continue;
set_hudmessage( 200, 0, 0, -1.0, -1.0, 1, 6.0, 12.0 );
show_hudmessage( 0, "Switching teams!" );
oppTeam = team % 2 + 1;
fm_set_user_team( i, oppTeam );
}
server_cmd("sv_restart %d", RoundRestartTime)
server_exec()
}
else
{
set_hudmessage( 0, 100, 0, -1.0, -1.0, 1, 6.0, 12.0 );
show_hudmessage( 0, "Teams will switch in: %d (rounds)", ( get_pcvar_num( p_Rounds ) - g_iCounter ) );
}
}
}
public logevent_round_start2()
{
g_iCounter++;
}
fm_set_user_team( index, iTeam )
{
static const Teams[][] =
{
"", // NULL
"TERRORIST",
"CT"
}
set_pdata_int( index, OFFSET_TEAM, iTeam );
dllfunc( DLLFunc_ClientUserInfoChanged, index, engfunc( EngFunc_GetInfoKeyBuffer, index ) );
message_begin( MSG_ONE_UNRELIABLE, g_Msg_TeamInfo, { 0, 0, 0 }, index );
write_byte( index );
write_string( Teams[ iTeam ] );
message_end();
return 1;
}
public cmdText()
{
client_print(0, print_chat, "%s", szText)
}
To change the text change the var szText. The restart is on 1, you can change it in the var RoundRestartTime
That 2 vars are marked with comments
Points 1 & 2 are made. But with the 3 i have little trouble (i don't understand)
Quote:
Originally Posted by Storas1337
3.If possible CALCULATE CT AND T SCORE with player cvar .score
|
You want to show the score when player write ".score" in chat?