Randomise players

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
2
Реакции
0
Can some one modify this plugin so that before starting of match the players are randomized in both teams and then we can select captains.
Код:
#include <amxmodx>

#include <amxmisc>

#include <cstrike>

#include <fun>

#include <fakemeta>

#include <hamsandwich>

#include <reapi>

#include <csx>

#include <engine>

#if AMXX_VERSION_NUM <183

    #include <dhudmessage>

#endif



#define MAX_PLAYERS 32

#define PLUGIN "WAR"

#define VERSION "1.0"

#define AUTHOR "anonymous"





#pragma compress 1



new iXYPos;

new const Float: HUD_XY_POS [] [] =

{

    {-1.0, 0.90},

    {-1.0, 0.80},

    {-1.0, 0.70},

    {-1.0, 0.60},

    {-1.0, 0.50},

    {-1.0, 0.40},

    {-1.0, 0.30},

    {-1.0, 0.20},

    {-1.0, 0.10}

};



new Match_Sound [4] [] =

{

"sound / match / getreadytofight.mp3",

"sound / match / firsthalf.mp3",

"sound / match / secondhalf.mp3",

"sound / match / winner.mp3"

};



new get_ready [1] [] =

{

"sound / match / getreadytofight.mp3"

}



new first_half [1] [] =

{

"sound / match / firsthalf.mp3"

}



new second_half [1] [] =

{

"sound / match / secondhalf.mp3"

}



new winner [1] [] =

{

"sound / match / winner.mp3"

}







// Set frags.

new Frags [33], Deaths [33], RestartGame





// ===================== Players Selection. ======================================



new g_PlayerSelected [MAX_PLAYERS + 1]





// Game Description

new amx_warname



// Bomb AFK Manager declarations. ======================



// comment to avoid autodisabling the plugin on maps which not contain bomb targets

// # define BOMB_MAP_CHECK



// float value, hud messages display time (in seconds)

#define MSG_TIME 7.0



// CVAR name, affects on spawned AFK bomb carrier which never moved after spawn

// new CVAR_SPAWN [] = "afk_bombtransfer_spawn"



// CVAR value, max. allowed bomb carrier AFK time (in seconds)

// new DEFAULT_SPAWN [] = "7"



// CVAR name, affects on any AFK bomb carrier except one which obey previous CVAR

// new CVAR_TIME [] = "afk_bombtransfer_time"



// CVAR value, max. allowed bomb carrier AFK time (in seconds)

// new DEFAULT_TIME [] = "7"





// initial AMXX version number supported CVAR pointers in get / set_pcvar_ * natives

#define CVAR_POINTERS_AMXX_INIT_VER_NUM 170



// determine if get / set_pcvar_ * natives can be used

#if defined AMXX_VERSION_NUM && AMXX_VERSION_NUM> = CVAR_POINTERS_AMXX_INIT_VER_NUM

    #define CVAR_POINTERS

    new g_pcvar_spawn

    new g_pcvar_time

#endif



new TEAM [] = "TERRORIST"

new WEAPON [] = "weapon_c4"



#define FL_ONGROUND (1 << 9)



new bool: g_freezetime = true

new bool: g_spawn

new bool: g_planting



new g_carrier



new g_pos [MAX_PLAYERS + 1] [3]

new g_time [MAX_PLAYERS + 1]



new g_maxplayers





// Ranking system.

new g_TotalKills [33]

new g_TotalDeaths [33]

new g_BombPlants [33]

new g_BombDefusions [33]

new gMaxPlayers

new msgToDisplay [456]

new msgToDisplaykill [456]

new msgToDisplaydeath [456]

new msgToDisplayplant [456]

new msgToDisplaydefuse [456]



// get the current status of the HALF. By default false because no half started.

new bool: isFirstHalfStarted = false

new bool: isSecondHalfStarted = false



new gCptT

new gCptCT

new CaptainCount = 0

// new bool: g_KnifeRound = false



// Is Match Initialized?

new bool: g_MatchInit = false



// Owner of: who started the match

new MatchStarterOwner = 0



// Check if captain is choosen

new bool: CaptainSChosen



// Is Match started!

new bool: g_MatchStarted = false



// Set main match started to true: useful for leaving players + Count for leaving players.

new bool: g_MainMatchStarted = false



// By default first half if the second half is false.

new bool: is_secondHalf = false



// Handle the score. By default to: 0 score.

new ScoreFtrstTeam = 0

new ScoreScondteam = 0



// Show menu to the first captain == winner

new ShowMenuFirst

new ShowMenuSecond



// Captains Chosen Teams. - 2 == CT & 1 == T

new FirstCaptainTeamName

new SecondCaptainTeamName



// Store the name of the Captains.

new FirstCaptainName [52]

new SecondCaptainName [52]



// Store the Auth ID of the captains.

new FirstCaptainAuthID [128]

new SecondCaptainAuthID [128]



// Temp captain Names!

new TempFirstCaptain [32]

new TempSecondCaptain [32]



// Store current map.

new szMapname [32]



new RoundCounter = 0



// Extra declarations

new g_iMaxPlayers



// 1 = first captain 2 = second captain.

new CaptainChoosenID

new WhoChoseThePlayer





public plugin_init ()

{

    register_plugin (PLUGIN, VERSION, AUTHOR);



    register_clcmd ("say / start", "ShowMenu", ADMIN_KICK, "Get All The players");



    gMaxPlayers = get_maxplayers ()



    // Change Game Description.

    amx_warname = register_cvar ("amx_warname", "|| Match Not Started ||");

    register_forward (FM_GetGameDescription, "GameDesc");



#if defined BOMB_MAP_CHECK

    // is current map not contain bomb targets?

    if (! engfunc (EngFunc_FindEntityByString, -1, "classname", "func_bomb_target"))

        return

#endif



    register_event ("HLTV", "event_new_round", "a", "1 = 0", "2 = 0")



    register_logevent ("logevent_round_start_bomb", 2, "1 = Round_Start")



    set_task (1.0, "task_afk_check", _, _, _, "b") // plugin's core loop



    g_maxplayers = get_maxplayers ()





    // block advertise by cs

    // set_msg_block (get_user_msgid ("HudTextArgs"), BLOCK_SET);

 

    g_iMaxPlayers = get_maxplayers ()



    // Register Death.

    register_event ("DeathMsg", "Event_DeathMsg_Knife", "a", "1> 0")



 

    // For Knife round.

    // register_event ("CurWeapon", "Event_CurWeapon_NotKnife", "be", "1 = 1", "2! 29")

 

    // Round end event.

    register_logevent ("round_end", 2, "1 = Round_End")



    // Round start event.

    register_logevent ("logevent_round_start", 2, "1 = Round_Start")



    // Do not allow clients to join the team when they manually tries to join the team.

    register_clcmd ("chooseteam", "cmdChooseTeam")

    register_clcmd ("jointeam", "cmdChooseTeam");



    // Stop or Restart the Match!

    register_clcmd ("say / stop", "StopMatch", ADMIN_KICK, "Stop the Match!");

    register_clcmd ("say / restart", "RestartMatch", ADMIN_KICK, "Restart the Match!");



    // T OR CT WIN.

    register_event ("SendAudio", "on_TerroristWin", "a", "2 =%! MRAD_terwin");

    register_event ("SendAudio", "on_CTWin", "a", "2 =%! MRAD_ctwin");



    // show score.

    register_clcmd ("say! score", "ShowScoreToUser")

    register_clcmd ("say .score", "ShowScoreToUser")







    // Get Team Players menu.

    register_clcmd ("say / getmenu", "GetMatchMenu")



    get_mapname (szMapname, charsmax (szMapname))





}





// Bomb afk transfer declarations.

public event_new_round () {

    g_freezetime = true

    g_spawn = true

    g_planting = false

    g_carrier = 0



    if (g_MatchStarted)

    {

        new Players [MAX_PLAYERS], iNum, id;

        get_players (Players, iNum, "h");

      

        for (new i = 0; i <iNum; i ++)

        {

            id = Players

        }

    }



}





public logevent_round_start_bomb ()

{



    new id [32], num

    get_players (id, num, "ae", TEAM)



    if (! num) // is server empty?

        return



    g_freezetime = false



    // update afk timers and current positions

    new x

    for (new i = 0; i <num; ++ i) {

        x = id

        get_user_origin (x, g_pos [x])

        g_time [x] = 0

    }

}



public task_afk_check () {

    if (g_freezetime) // is freezetime right now?

        return



    // afk check

    new id [32], num, x, origin [3]

    get_players (id, num, "ae", TEAM)

    for (new i = 0; i <num; ++ i) {

        x = id

        get_user_origin (x, origin)

        if (origin [0]! = g_pos [x] [0] || origin [1]! = g_pos [x] [1] || (x == g_carrier && g_planting)) {

            g_time [x] = 0

            g_pos [x] [0] = origin [0]

            g_pos [x] [1] = origin [1]

            if (g_spawn && x == g_carrier)

                g_spawn = false

        }

        else

            g_time [x] ++

    }



    // is bomb not currently carried or Ts number less than 2?

    if (! g_carrier || num <2)

        return



#if defined CVAR_POINTERS

    new max_time = get_pcvar_num (g_spawn? g_pcvar_spawn: g_pcvar_time)

#else

    new max_time = get_cvar_num (g_spawn? CVAR_SPAWN: CVAR_TIME)

#endif



    // is plugin disabled (cvar <= 0) or carrier isn't afk?

    if (max_time <= 0 || g_time [g_carrier] <max_time)

        return



    // find who from non-afk Ts is the closest to the afk carrier

    get_user_origin (g_carrier, origin)

    new min_dist = 999999, dist, recipient, origin2 [3]

    for (new i = 0; i <num; ++ i) {

        x = id

        if (g_time [x] <max_time) {

            get_user_origin (x, origin2)

            dist = get_distance (origin, origin2)

            if (dist <min_dist) {

                min_dist = dist

                recipient = x

            }

        }

    }



    if (! recipient) // is all Ts afk?

        return



    new carrier = g_carrier

    engclient_cmd (carrier, "drop", WEAPON) // drop the backpack

    new c4 = engfunc (EngFunc_FindEntityByString, -1, "classname", WEAPON) // find weapon_c4 entity

    if (! c4)

        return



    new backpack = pev (c4, pev_owner) // get backpack entity

    if (backpack <= g_maxplayers)

        return



    // my backpack transfer trick (improved)

    set_pev (backpack, pev_flags, pev (backpack, pev_flags) | FL_ONGROUND)

    dllfunc (DLLFunc_Touch, backpack, recipient)



    // hud messages stuff below

    set_hudmessage (0, 255, 0, 0.35, 0.8, _, _, MSG_TIME)

    new message [128], c_name [32], r_name [32]

    get_user_name (carrier, c_name, 31)

    get_user_name (recipient, r_name, 31)

    format (message, 127, "Bomb Transferred To ^"% s ^ "^ nsince ^"% s ^ "is AFK", r_name, c_name)

    for (new i = 0; i <num; ++ i)

        show_hudmessage (id , "% s", message)



    set_hudmessage (255, 255, 0, 0.42, 0.3, _, _, MSG_TIME, _, _, 3)

    show_hudmessage (recipient, "[[You Got The Bomb]]")

}



// Game description forward.

public GameDesc ()

{

    static gamename [32];

    get_pcvar_string (amx_warname, gamename, 31);

    forward_return (FMV_STRING, gamename);

    return FMRES_SUPERCEDE;

}



public plugin_precache () {     

    for (new i = 0; i <sizeof Match_Sound; i ++) {

        precache_generic (Match_Sound );

    }

}







// Event death.

public Event_DeathMsg_Knife ()

{

    if (! g_MatchStarted)

    return



    new attacker = read_data (1)

    new victim = read_data (2)



    if (victim! = attacker && cs_get_user_team (attacker)! = cs_get_user_team (victim))

    {

        g_TotalKills [attacker] ++

        g_TotalDeaths [victim] ++



    }





}





public bomb_planted (id)

{

    if (g_MatchStarted)

    {

        g_BombPlants [id] ++

    }

}







public bomb_defused (id)

{



    if (g_MatchStarted)

    {

        g_BombDefusions [id] ++

    }

}





public GetMatchMenu (id)

{

    if (CaptainSChosen)

    {

        if (id! = CaptainChoosenID)

        {

          

            if (WhoChoseThePlayer == 1)

            {

                LetsSecondChoosePlayers (ShowMenuSecond)

            }



            if (WhoChoseThePlayer == 2)

            {

                LetsFirstChoosePlayers (ShowMenuFirst)

            }

        }

      

    }



    return PLUGIN_HANDLED

}



public RestartMatch (id, lvl, cid)

{

    if (! cmd_access (id, lvl, cid, 0))

        return PLUGIN_HANDLED

    

    if (g_MatchInit || g_MatchStarted / * || g_KnifeRound * /)

    {

        // Log AMX, Who stopped the match !.

        new MatchRestarterName [32]

        get_user_name (id, MatchRestarterName, charsmax (MatchRestarterName))



        new MatchRestarterAuthID [128]

        get_user_authid (id, MatchRestarterAuthID, 127)



        log_amx ("Admin% s with ID =% i and AuthID% s has restarted the Match!", MatchRestarterName, id, MatchRestarterAuthID)

        chatcolor (0, "! g [MATCH]! t% s! ghas Restarted The! tWAR! y !!! gCaptains! ywill be! gchosen by! tHim! y !!", MatchRestarterName)



        server_cmd ("mp_freezetime 999");



        set_dhudmessage (0, 255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        show_dhudmessage (0, "% s has Restarted the Match !! ^ n Captains will be chosen shortly .... !!", MatchRestarterName)



        set_task (8.0, "RestartMatchTask", id)



        return PLUGIN_HANDLED



    }

    return PLUGIN_HANDLED

}



public RestartMatchTask (id)

{



    LoadPubSettings ()

    ShowMenuSpecial (id)   

}



public HUD_firstLive (index)

{

    if (iXYPos> = sizeof (HUD_XY_POS)) iXYPos = 0;

    set_dhudmessage (random_num (0, 255), random_num (0, 255), random_num (0, 255), HUD_XY_POS [iXYPos] [0], HUD_XY_POS [iXYPos] [1], 0, 50.0, 0.4, 0.2, 0.3);

    show_dhudmessage (index, "[F I R S T] [H A L F] [S T A R T E D]");

    iXYPos ++;

}



public HUD_secondLive (index)

{

    if (iXYPos> = sizeof (HUD_XY_POS)) iXYPos = 0;

    set_dhudmessage (random_num (0, 255), random_num (0, 255), random_num (0, 255), HUD_XY_POS [iXYPos] [0], HUD_XY_POS [iXYPos] [1], 0, 50.0, 0.4, 0.2, 0.3);

    show_dhudmessage (index, "[S E C O N D] [H A L F] [S T A R T E D]");

    iXYPos ++;

}





// Stop the Match.

public StopMatch (id, lvl, cid)

{

     set_cvar_string ("amx_warname", "|| Match Not Started ||")

    

    if (! cmd_access (id, lvl, cid, 0))

        return PLUGIN_HANDLED;





    if (g_MatchInit || g_MatchStarted / * || g_KnifeRound * /)

    {

        // Log AMX, Who stopped the match !.

        new MatchStopperName [32]

        get_user_name (id, MatchStopperName, charsmax (MatchStopperName))



        new MatchStopperAuthID [128]

        get_user_authid (id, MatchStopperAuthID, 128)



        log_amx ("Admin% s with AuthID% s has stopped the Match!", MatchStopperName, MatchStopperAuthID)



        server_cmd ("mp_freezetime 999");

        LoadPubSettings ()



        set_dhudmessage (0, 255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        show_dhudmessage (0, "% s has Stopped The Match !! ^ n Server will Restart now !!", MatchStopperName)

        chatcolor (0, "! g [MATCH]! t% s! ghas Stopped The! tWAR! y !!! gServer will Restart Now! y !!", MatchStopperName)



        set_task (8.0, "RestartServerForStoppingMatch")



        return PLUGIN_HANDLED



    }

    return PLUGIN_HANDLED

}





// Stop match special when owner is not there.

public StopMatchSpecial()

{



    if (g_MatchInit || g_MatchStarted / * || g_KnifeRound * /)

    {

        



        server_cmd ("mp_freezetime 4");



        set_dhudmessage (0, 255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        show_dhudmessage (0, "Match Owner has Left the Game !! ^ n Server will Restart Now !!")



        set_task (4.0, "RestartServerForStoppingMatch")



    }

    return PLUGIN_HANDLED

}



public RestartServerForStoppingMatch ()

{

    new CurrentMap [33]

    get_mapname (CurrentMap, 32)



    server_cmd ("changelevel% s", CurrentMap)



    return PLUGIN_HANDLED

}





// public GoToTheSpec (id)

// {

// if (g_MatchInit || g_KnifeRound)

// {   

// if (is_user_connected (id))

// {

// set_task (3.0, "TransferToSpec", id)

//}

//}

//}



// Terrorist Win event.

public on_TerroristWin ()

{



    // Terrorrist Knife round winner.

    / * if (g_KnifeRound == true)

    {

        

        // T WOWN.

        ShowMenuFirst = gCptT

        ShowMenuSecond = gCptCT



        // Set Names of the Captain. because captain may leave the game.

        get_user_name (ShowMenuFirst, FirstCaptainName, charsmax (FirstCaptainName))

        get_user_name (ShowMenuSecond, SecondCaptainName, charsmax (SecondCaptainName))



        



        set_task (3.0, "GiveRestartRound", _, _, _, "a", 1);



        set_task (2.0, "FirstCaptainWonKnifeRoundMsg", gCptT)



        g_KnifeRound = false

        LoadMatchSettings ()

    } * /



    if (g_MatchStarted)

    {



        if (isFirstHalfStarted)

        {

            if (FirstCaptainTeamName == 1)

            {

                ScoreFtrstTeam ++

            }

            else

            {

                ScoreScondteam ++

            }

            // Change description of the game.

            if (ScoreFtrstTeam> ScoreScondteam)

            {

                new GameDescBuffer [32]

              

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "1st Half: [% d] || [% d]", ScoreFtrstTeam, ScoreScondteam)

                

                

                set_cvar_string ("amx_warname", GameDescBuffer)

            }



            if (ScoreScondteam> ScoreFtrstTeam)

            {

                new GameDescBuffer [32]

              

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "1st Half: [% d] || [% d]", ScoreScondteam, ScoreFtrstTeam)

                

                set_cvar_string ("amx_warname", GameDescBuffer)

            }



            if (ScoreFtrstTeam == ScoreScondteam)

            {

                new GameDescBuffer [32]

                

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "1st Half: [% d] || [% d]", ScoreScondteam, ScoreFtrstTeam)

                

                set_cvar_string ("amx_warname", GameDescBuffer)

            }



        }

        if (isSecondHalfStarted)

        {

            if (FirstCaptainTeamName == 1)

            {

                ScoreScondteam ++

            }

            else

            {

                ScoreFtrstTeam ++

            }



            // Change description of the game.

            if (ScoreFtrstTeam> ScoreScondteam)

            {

                new GameDescBuffer [32]

                

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "2nd Half: [% d] || [% d]", ScoreFtrstTeam, ScoreScondteam)

                



                set_cvar_string ("amx_warname", GameDescBuffer)

            }



            if (ScoreScondteam> ScoreFtrstTeam)

            {

                new GameDescBuffer [32]

                

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "2nd Half: [% d] || [% d]", ScoreScondteam, ScoreFtrstTeam)

                

                set_cvar_string ("amx_warname", GameDescBuffer)

            }



            if (ScoreFtrstTeam == ScoreScondteam)

            {

                new GameDescBuffer [32]



                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "2nd Half: [% d] || [% d]", ScoreScondteam, ScoreFtrstTeam)

                

                set_cvar_string ("amx_warname", GameDescBuffer)

            }

        }

    }

}



// CT WIN Event.

public on_CTWin ()

{



    / * if (g_KnifeRound)

    {

            

            // CT WON.

            ShowMenuFirst = gCptCT

            ShowMenuSecond = gCptT



             // Set Names of the Captain. because captain may leave the game.

            get_user_name (ShowMenuFirst, FirstCaptainName, charsmax (FirstCaptainName))

            get_user_name (ShowMenuSecond, SecondCaptainName, charsmax (SecondCaptainName))



            get_user_authid (ShowMenuFirst, FirstCaptainAuthID, 127)

            get_user_authid (ShowMenuSecond, SecondCaptainAuthID, 127)



             g_KnifeRound = false

        



            set_task (3.0, "GiveRestartRound", _, _, _, "a", 1);



            set_task (2.0, "SecondCaptWonKnifeRoundWonMsg", gCptCT)

            

            LoadMatchSettings ()

    } * /

    

    if (g_MatchStarted)

    {

        if (isFirstHalfStarted)

        {

            if (FirstCaptainTeamName == 2)

            {

                ScoreFtrstTeam ++

            }

            else

            {

                ScoreScondteam ++

            }



            // Change description of the game.

            if (ScoreFtrstTeam> ScoreScondteam)

            {

                new GameDescBuffer [32]

                

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "1st Half: [% d] || [% d]", ScoreFtrstTeam, ScoreScondteam)

                

                

                set_cvar_string ("amx_warname", GameDescBuffer)

            }



            if (ScoreScondteam> ScoreFtrstTeam)

            {

                new GameDescBuffer [32]

                

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "1st Half: [% d] || [% d]", ScoreScondteam, ScoreFtrstTeam)

                

                set_cvar_string ("amx_warname", GameDescBuffer)

            }



            if (ScoreFtrstTeam == ScoreScondteam)

            {

                new GameDescBuffer [32]

                

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "1st Half: [% d] || [% d]", ScoreScondteam, ScoreFtrstTeam)

                

                

                set_cvar_string ("amx_warname", GameDescBuffer)

            }

        }



        if (isSecondHalfStarted)

        {

            if (FirstCaptainTeamName == 2)

            {

                ScoreScondteam ++

            }

            else

            {

                ScoreFtrstTeam ++

            }



            // Change description of the game.

            if (ScoreFtrstTeam> ScoreScondteam)

            {

                new GameDescBuffer [32]

                

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "2nd Half: [% d] || [% d]", ScoreFtrstTeam, ScoreScondteam)

                



                set_cvar_string ("amx_warname", GameDescBuffer)

            }



            if (ScoreScondteam> ScoreFtrstTeam)

            {

                new GameDescBuffer [32]

                formatex (GameDescBuffer, charsmax (GameDescBuffer), "2nd Half: [% d] || [% d]", ScoreScondteam, ScoreFtrstTeam)

                set_cvar_string ("amx_warname", GameDescBuffer)

            }



            if (ScoreFtrstTeam == ScoreScondteam)

            {

                new GameDescBuffer [32]

                

                    formatex (GameDescBuffer, charsmax (GameDescBuffer), "2nd Half: [% d] || [% d]", ScoreScondteam, ScoreFtrstTeam)

        

                set_cvar_string ("amx_warname", GameDescBuffer)

            }



        }



    }

}



// ROUND START Event.

public logevent_round_start ()

{

/ *

    if (g_KnifeRound)

    {

        

     set_dhudmessage (0, 255, 0, -1.0, 0.30, 0, 2.0, 6.0, 0.8, 0.8);

    show_dhudmessage (0, "|| Knife Round Begins ||");

    // set_dhudmessage (0, 212, 255, 0.30, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        // show_dhudmessage (0, "Captain - [% s]", TempFirstCaptain);

    // set_dhudmessage (255, 0, 0, 0.60, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        // show_dhudmessage (0, "Captain - [% s]", TempSecondCaptain);

    set_dhudmessage (255, 255, 255, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        show_dhudmessage (0, "[Captain:% s] ^ n ^ n <------- | v / s | -------> ^ n ^ n [Captain:% s]", TempFirstCaptain, TempSecondCaptain)

        // show_dhudmessage (0, "|| Knife Round Begins || ^ n ^ n [Captain:% s] ^ n ^ n <------- | v / s | -------> ^ n ^ n [Captain:% s] ", TempFirstCaptain, TempSecondCaptain)

        chatcolor (0, "! t [MATCH]! tKnife Round! yhas! gbeen Started !!")

        chatcolor (0, "! t [MATCH]! gKnife War ::! yCaptain! g--! t% s! g || v / s ||! yCaptain! g--! t% s", TempFirstCaptain, TempSecondCaptain)

    

    }

* /   

    if (g_MatchStarted)

    {

        // Show Score info in Hud on every round start.

        ShowScoreHud ()

        set_task (3.0, "ShowScoreOnRoundStart")

    }

}



// When Client join the server and if match is initialized or Knife round is running transfer player to spec.

public client_putinserver (id)

{



    if (g_MainMatchStarted)

    {

        Frags [id] = 0

        Deaths [id] = 0

    }



    g_TotalKills [id] = 0

    g_TotalDeaths [id] = 0

    g_BombPlants [id] = 0

    g_BombDefusions [id] = 0



    // if (g_MatchInit || g_KnifeRound)

    // {

    // set_task (7.0, "TransferToSpec", id)

    //}



}



// Menu for restart!

public ShowMenuSpecial (id)

{

    



    // Store who started the match !.

    MatchStarterOwner = id



    // Log AMX, Who stopped the match !.

    new MatchStarterName [32]

    get_user_name (id, MatchStarterName, charsmax (MatchStarterName))



    new MatchStarterAuthID [128]

    get_user_authid (id, MatchStarterAuthID, 127)





    // Match has been initialized!

    g_MatchInit = true





    // TASK 1 - To Move All the players in Spec.

    // cmdTransferAllInSpec ();



    // Send message to players about message.

    MatchInitHudMessage ()





    // Task 2 - Show Players Menu to who started the match.

    set_task (5.0, "ShowMenuPlayers", id)

    



    return PLUGIN_HANDLED;

}







// Choose Captains and Initialize Match.

public ShowMenu (id, lvl, cid)

{

    if (! cmd_access (id, lvl, cid, 0))

        return PLUGIN_HANDLED;



    if (g_MatchInit || g_MatchStarted)

    return PLUGIN_HANDLED





    MatchStarterOwner = id



    // Match initialized.

    set_cvar_string ("amx_warname", "[[MATCH]]")



    // Log AMX, Who stopped the match !.

    new MatchStarterName [32]

    get_user_name (id, MatchStarterName, charsmax (MatchStarterName))



    new MatchStarterAuthID [128]

    get_user_authid (id, MatchStarterAuthID, 127)

    

    log_amx ("Admin% s with ID =% i and AuthID% s has started the Match !!", MatchStarterName, id, MatchStarterAuthID)

    chatcolor (0, "! g [MATCH]! t% s! ghas Initialized The! tWAR! y !!! gCaptains! ywill be! gchosen by! tHim! y !!", MatchStarterName)



    // Match has been initialized!

    g_MatchInit = true



    // TASK 1 - To Move All the players in Spec.

    // cmdTransferAllInSpec ();



    // Send message to players about message.

    MatchInitHudMessage ()





    // Task 2 - Show Players Menu to who started the match.

    set_task (3.0, "ShowMenuPlayers", id)

    



    return PLUGIN_HANDLED;

}



// Show HUD Message and Print message to inform player about match started!

public MatchInitHudMessage ()

{

    set_dhudmessage (random (256), random (256), random (256), -1.0, 0.30, 1, 2.0, 6.0, 0.8, 0.8)

    show_dhudmessage (0, "|| - >> Who wants To be the Captain ?? << - ||")



}



public ShowMenuPlayers (id)

{

    set_cvar_string ("amx_warname", "| = Captain Selection = |")



    new iMenu = MakePlayerMenu (id, "- = [Choose a Captain] = -", "PlayersMenuHandler");

    menu_setprop (iMenu, MPROP_NUMBER_COLOR, "\ y");

    menu_display (id, iMenu);



    return PLUGIN_CONTINUE;

}



MakePlayerMenu (id, const szMenuTitle [], const szMenuHandler [])

{

    new iMenu = menu_create (szMenuTitle, szMenuHandler);

    new iPlayers [32], iNum, iPlayer, szPlayerName [32], szUserId [33];

    get_players (iPlayers, iNum, "h");



    new PlayerWithPoints [128]



    for (new i = 0; i <iNum; i ++)

    {

        iPlayer = iPlayers ;

        

            // Add user in the menu if - CONNECTED and TEAM IS T.

        if (gCptCT! = iPlayer)

        {

            get_user_name (iPlayer, szPlayerName, charsmax (szPlayerName));



            formatex (PlayerWithPoints, 127, "% s", szPlayerName)



            formatex (szUserId, charsmax (szUserId), "% d", get_user_userid (iPlayer));

            menu_additem (iMenu, PlayerWithPoints, szUserId, 0);



        }

    }

    return iMenu;

}



public PlayersMenuHandler (id, iMenu, iItem)

{

    if (iItem == MENU_EXIT)

    {

        // Recreate menu because user's team has been changed.

        new iMenu = MakePlayerMenu (id, "- = [Choose a Captain] = -", "PlayersMenuHandler");

        menu_setprop (iMenu, MPROP_NUMBER_COLOR, "\ y");

        menu_display (id, iMenu);



        return PLUGIN_HANDLED;

    }



    new szUserId [32], szPlayerName [32], iPlayer, iCallback;



    menu_item_getinfo (iMenu, iItem, iCallback, szUserId, charsmax (szUserId), szPlayerName, charsmax (szPlayerName), iCallback);



    if ((iPlayer = find_player ("k", str_to_num (szUserId))))

    {

      

        if (CaptainCount == 0)

        {

            

            // cs_set_user_team (iPlayer, CS_TEAM_CT)

            rg_set_user_team (iPlayer, TEAM_CT, MODEL_AUTO, true)



            new ChosenCaptain [32]

            get_user_name (iPlayer, ChosenCaptain, charsmax (ChosenCaptain))

            chatcolor (0, "! g [MATCH]! t% s! gchosen! yas! t [! g >>! tCT! g <<! t]! gCaptain! y !!", ChosenCaptain)



            CaptainCount ++



            // Temp captain name.

            get_user_name (iPlayer, TempFirstCaptain, charsmax (TempFirstCaptain))

          

            // Assign CT Captain

            gCptCT = iPlayer



            // Recreate menu.

            menu_destroy (iMenu)

            new iMenu = MakePlayerMenu (id, "- = [Choose a Captain] = -", "PlayersMenuHandler");

            menu_setprop (iMenu, MPROP_NUMBER_COLOR, "\ y");

            menu_display (id, iMenu);



            return PLUGIN_HANDLED;



        }



        if (CaptainCount == 1)

        {

            

            // cs_set_user_team (iPlayer, CS_TEAM_T)

            rg_set_user_team (iPlayer, TEAM_TERRORIST, MODEL_AUTO, true)





            new ChosenCaptain [32]

            get_user_name (iPlayer, ChosenCaptain, charsmax (ChosenCaptain))

            chatcolor (0, "! g [MATCH]! t% s! gchosen! yas! t [! g >>! tT! g <<! t]! gCaptain! y !!", ChosenCaptain)



            CaptainCount ++





             // Temp captain name.

            get_user_name (iPlayer, TempSecondCaptain, charsmax (TempSecondCaptain))



            // Assign T Captain

            gCptT = iPlayer



            // Set it to true because captains have been chosen.

            CaptainSChosen = true



            // Announcement.

            // set_dhudmessage (0, 255, 255, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

            // show_dhudmessage (0, "|| - Get Ready Captains - || ^ n ** The Knife Round Will Begin in 5 seconds **")

            chatcolor (0, "! t [MATCH]! gAttention !!! yThe! tMatch! gWill Start in! t5! gseconds !!")



      

            ShowMenuFirst = gCptCT

            ShowMenuSecond = gCptT



            // Set Names of the Captain. because captain may leave the game.

            get_user_name (ShowMenuFirst, FirstCaptainName, charsmax (FirstCaptainName))

            get_user_name (ShowMenuSecond, SecondCaptainName, charsmax (SecondCaptainName))



            get_user_authid (ShowMenuFirst, FirstCaptainAuthID, 127)

            get_user_authid (ShowMenuSecond, SecondCaptainAuthID, 127)

            

            // Side

            FirstCaptainTeamName = 2

            SecondCaptainTeamName = 1

      

            // Start knife round.

            //set_task(5.0,"Knife_Round ")

            LoadMatchSettings ()

            set_task (5.0, "StartMatch");





            // Captain choosing is over so destroy menu.

            menu_destroy (iMenu)

            return PLUGIN_HANDLED;

        }

    }



    // Recreate menu because user's team has been changed.

    new iMenu = MakePlayerMenu (id, "- = [Choose a Captain] = -", "PlayersMenuHandler");

    menu_setprop (iMenu, MPROP_NUMBER_COLOR, "\ y");

    menu_display (id, iMenu);



    return PLUGIN_HANDLED;

}



/ *

public Knife_Round ()

{



    set_cvar_string ("amx_warname", "|| Captain's Knife War ||")

    server_cmd ("mp_autokick 0")

    server_cmd ("mp_autoteambalance 0")

    server_cmd ("afk_transfer_time 100")

    set_task (3.0, "GiveRestartRound", _, _, _, "a", 3);

    set_task (10.0, "SetKnifeRoundTrue")

}



public SetKnifeRoundTrue ()

{

    g_KnifeRound = true

} * /



// Round end Checker

public round_end ()

{



    new Players [MAX_PLAYERS], iNum, id;

    get_players (Players, iNum, "h");



    if (g_MatchStarted)

    {

       // Increment rounds.

        RoundCounter ++





        ShowScoreHud ()

        CheckForWinningTeam ()



            if (RoundCounter == 15)

            {

                

                // Loop through users and set user score + death.

                new players [32], num

                get_players (players, num, "h")

                

                new player

                for (new i = 0; i <num; i ++)

                {

                    player = players

                    if (is_user_connected (player))

                    {

                        Frags [player] = get_user_frags (player)

                        Deaths [player] = cs_get_user_deaths (player)

                    }



                }



                server_cmd ("mp_freezetime 999")

                set_task (7.0, "SwapTeamsMessage")



                

            }

        }



    }





// Choose the team.

public ChooseTeam (id)

{

   set_cvar_string ("amx_warname", "|| = Side Selection = ||")



    set_dhudmessage (255, 255, 0, -1.0, -1.0, 0, 2.0, 2.0, 0.8, 0.8)

    show_dhudmessage (0, "- || Captain <<<<% s >>>> will Choose Side and his Team Mates First || -", FirstCaptainName)

    

    new TeamChooser = MakeTeamSelectorMenu (id, "[Choose Your Side]", "TeamHandler");

    menu_setprop (TeamChooser, MPROP_NUMBER_COLOR, "\ y");

    menu_display (id, TeamChooser);



}



MakeTeamSelectorMenu (id, const szMenuTitle [], const szMenuHandler [])

{

     new TeamChooser = menu_create (szMenuTitle, szMenuHandler);

     menu_additem (TeamChooser, "Counter-Terrorist");

     menu_additem (TeamChooser, "Terrorist");



     return TeamChooser;

}



public TeamHandler (id, TeamChooser, iItem)

{

    if (iItem == MENU_EXIT)

    {

        // Recreate menu because user's team has been changed.

        new TeamChooser = MakeTeamSelectorMenu (id, "[Choose Your Side]", "TeamHandler");

        menu_setprop (TeamChooser, MPROP_NUMBER_COLOR, "\ y");

        menu_display (id, TeamChooser);



        return PLUGIN_HANDLED;

    }





    switch (iItem)

    {

        // Chosen CT.

        case 0:

        {

            chatcolor (0, "! t [MATCH]! gCaptain! t% s! ychosen side! g - >>! tCounter-Terrorist", FirstCaptainName)

        

        set_dhudmessage (0, 0, 255, -1.0, -1.0, 0, 2.0, 4.0, 0.8, 0.8)

            show_dhudmessage (0, "|||| Captain% s chose To be a Savior ||||", FirstCaptainName)



            FirstCaptainTeamName = 2

            SecondCaptainTeamName = 1



            if (get_user_team (id)! = 2)

            {

                SwapPlayer ()

            

            }

            set_cvar_string ("amx_warname", "|| Players Selection ||")

            set_task (5.0, "LetsFirstChoosePlayers", id)





        }

        // Chosen T.

        case 1:

        {



            FirstCaptainTeamName = 1

            SecondCaptainTeamName = 2



            chatcolor (0, "! t [MATCH]! gCaptain! t% s! ychosen side! g - >>! tTerrorist", FirstCaptainName)

        

        set_dhudmessage (255, 0, 0, -1.0, -1.0, 0, 2.0, 4.0, 0.8, 0.8)

            show_dhudmessage (0, "|||| Captain% s chose To Spread Terrorism ||||", FirstCaptainName)



            if (get_user_team (id)! = 1)

            {

                SwapPlayer ()

            }



            set_cvar_string ("amx_warname", "|| Players Selection ||")

            set_task (5.0, "LetsFirstChoosePlayers", id)

        }

    }

    return PLUGIN_HANDLED;

}



// MENU TO CHOOSE PLAYERS !!!

public LetsFirstChoosePlayers (id)

{

    



    new players [32], count;     

    get_players (players, count, "eh", "SPECTATOR");



    if (count> 0)

    {

        new iChoosePlayers = LetsFirstChoosePlayersMenu (id, "|| = Choose A Team Mate = ||", "LetsFirstChoosePlayersHandler");

        menu_setprop (iChoosePlayers, MPROP_NUMBER_COLOR, "\ y");

        menu_display (id, iChoosePlayers);

        

        return PLUGIN_HANDLED;

    }

    else

    {

    

        set_cvar_string ("amx_warname", "[Teams Ready]")

        client_cmd (0, "mp3 play% s", get_ready);

        set_dhudmessage (0.255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        show_dhudmessage (0, "* || - All Teams are SET - || * ^ n ^ n ---- >> First HALF will Start Now << ----")



             set_task (5.0, "StartMatch")



        return PLUGIN_HANDLED;

    }

}



LetsFirstChoosePlayersMenu (id, const szMenuTitle [], const szMenuHandler [])

{





    new iChoosePlayers = menu_create (szMenuTitle, szMenuHandler);

    new iPlayers [32], iNum, iPlayer, szPlayerName [32], szUserId [32];

    get_players (iPlayers, iNum, "h");





    for (new i = 0; i <iNum; i ++)

    {

        iPlayer = iPlayers ;

      

        // Add user in the menu if - CONNECTED and TEAM IS T.

        if (get_user_team (iPlayer) == 3)

        {             

            get_user_name (iPlayer, szPlayerName, charsmax (szPlayerName));



            

            formatex (szUserId, charsmax (szUserId), "% d", get_user_userid (iPlayer));

            menu_additem (iChoosePlayers, szPlayerName, szUserId, 0);



        }

        

    

    }

    return iChoosePlayers;

}



public LetsFirstChoosePlayersHandler (id, iChoosePlayers, iItem)

{

    if (iItem == MENU_EXIT)

    {

        new iChoosePlayers = LetsFirstChoosePlayersMenu (id, "|| = Choose A Team Mate = ||", "LetsFirstChoosePlayersHandler");

        menu_setprop (iChoosePlayers, MPROP_NUMBER_COLOR, "\ y");

        menu_display (id, iChoosePlayers);

        

        return PLUGIN_HANDLED;

    }



    new szUserId [32], szPlayerName [32], iPlayer, iCallback;

    menu_item_getinfo (iChoosePlayers, iItem, iCallback, szUserId, charsmax (szUserId), szPlayerName, charsmax (szPlayerName), iCallback);



    if ((iPlayer = find_player ("k", str_to_num (szUserId))))

    {





        new ChoosenPlayer [32]

        get_user_name (iPlayer, ChoosenPlayer, charsmax (ChoosenPlayer))

    



         chatcolor (0, "! t [MATCH]! gCaptain! t% s! gselected! t% s! gas his Team Mate! y !!", FirstCaptainName, ChoosenPlayer);



        



        if (! is_user_connected (iPlayer))

        {

            new iChoosePlayers = LetsFirstChoosePlayersMenu (id, "|| = Choose A Team Mate = ||", "LetsFirstChoosePlayersHandler");

            menu_setprop (iChoosePlayers, MPROP_NUMBER_COLOR, "\ y");

            menu_display (id, iChoosePlayers);

            

            return PLUGIN_HANDLED;

        }

        else

        {

            CaptainChoosenID = id

            WhoChoseThePlayer = 1

            // cs_set_user_team (iPlayer, cs_get_user_team (id))

            

            new CsTeams: team = cs_get_user_team (id)



            if (team == CS_TEAM_CT)

            {

                // transfer player to ct.

                rg_set_user_team (iPlayer, TEAM_CT, MODEL_AUTO, true)

            }



            if (team == CS_TEAM_T)

            {

                // transfer player to Terrorist.

                rg_set_user_team (iPlayer, TEAM_TERRORIST, MODEL_AUTO, true)

            }



            

            LetsSecondChoosePlayers (ShowMenuSecond)

            return PLUGIN_HANDLED;

        }

    }

return PLUGIN_HANDLED;



}







// MENU TO CHOOSE PLAYERS !!!

public LetsSecondChoosePlayers (id)

{





    new players [32], count;     

    get_players (players, count, "eh", "SPECTATOR");



    if (count> 0)

    {

        new iChoosePlayers = LetsSecondChoosePlayersMenu (id, "|| = Choose A Team Mate = ||", "LetsSecondChoosePlayersHandler");

        menu_setprop (iChoosePlayers, MPROP_NUMBER_COLOR, "\ y");

        menu_display (id, iChoosePlayers);



        return PLUGIN_HANDLED;

    }

    else

    {

        // TEAMS ARE SET BECAUSE NO PLAYERS IN SPEC!

         client_cmd (0, "mp3 play% s", get_ready);

        set_dhudmessage (0.255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        show_dhudmessage (0, "* || - All Teams are SET - || * ^ n ^ n ---- >> First HALF will Start Now << ----")

        

         set_task (5.0, "StartMatch")

        

        return PLUGIN_HANDLED;

    }

    

}



LetsSecondChoosePlayersMenu (id, const szMenuTitle [], const szMenuHandler [])

{

    new iChoosePlayers = menu_create (szMenuTitle, szMenuHandler);

    new iPlayers [32], iNum, iPlayer, szPlayerName [32], szUserId [32];

    get_players (iPlayers, iNum, "h");



    for (new i = 0; i <iNum; i ++)

    {

        iPlayer = iPlayers ;   



        // Add user in the menu if - CONNECTED and TEAM IS T.

        if (get_user_team (iPlayer) == 3)

        {

            

            get_user_name (iPlayer, szPlayerName, charsmax (szPlayerName));



            formatex (szUserId, charsmax (szUserId), "% d", get_user_userid (iPlayer));

            menu_additem (iChoosePlayers, szPlayerName, szUserId, 0);



        }

      

        

    }

    return iChoosePlayers;

}



public LetsSecondChoosePlayersHandler (id, iChoosePlayers, iItem)

{

    if (iItem == MENU_EXIT)

    {

        new iChoosePlayers = LetsSecondChoosePlayersMenu (id, "|| = Choose A Team Mate = ||", "LetsSecondChoosePlayersHandler");

        menu_setprop (iChoosePlayers, MPROP_NUMBER_COLOR, "\ y");

        menu_display (id, iChoosePlayers);

        return PLUGIN_HANDLED;

    }



    new szUserId [32], szPlayerName [32], iPlayer, iCallback;

    menu_item_getinfo (iChoosePlayers, iItem, iCallback, szUserId, charsmax (szUserId), szPlayerName, charsmax (szPlayerName), iCallback);



    if ((iPlayer = find_player ("k", str_to_num (szUserId))))

    {

      



        new ChoosenPlayer [32]

        get_user_name (iPlayer, ChoosenPlayer, charsmax (ChoosenPlayer))

    



        chatcolor (0, "! t [MATCH]! gCaptain! t% s! gselected! t% s! gas his Team Mate! y !!", SecondCaptainName, ChoosenPlayer);



        if (! is_user_connected (iPlayer))

        {

            new iChoosePlayers = LetsSecondChoosePlayersMenu (id, "|| = Choose A Team Mate = ||", "LetsSecondChoosePlayersHandler");

            menu_setprop (iChoosePlayers, MPROP_NUMBER_COLOR, "\ y");

            menu_display (id, iChoosePlayers);

            return PLUGIN_HANDLED;

        }

        else

        {   

            WhoChoseThePlayer = 2

            CaptainChoosenID = id

            // cs_set_user_team (iPlayer, cs_get_user_team (id))

            

            new CsTeams: team = cs_get_user_team (id)



            if (team == CS_TEAM_CT)

            {

                // transfer player to ct.

                rg_set_user_team (iPlayer, TEAM_CT, MODEL_AUTO, true)

            }



            if (team == CS_TEAM_T)

            {

                // transfer player to Terrorist.

                rg_set_user_team (iPlayer, TEAM_TERRORIST, MODEL_AUTO, true)

            }



            

            LetsFirstChoosePlayers (ShowMenuFirst);

            return PLUGIN_HANDLED;

        }

        

    }



    return PLUGIN_HANDLED;

}





public client_disconnected (id)

{

    if (CaptainSChosen / * || g_KnifeRound * /)

    {

        if (id == gCptCT || id == gCptT)

        {



            if (is_user_connected (MatchStarterOwner))

            {

                set_hudmessage (0, 255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8, -1)

                show_hudmessage (0, "[Match Restarting] ^ n ^ n As One of the Captain Left The Match")



                RestartMatchTask (MatchStarterOwner)

            }

            else

            {



                StopMatchSpecial()

            }



        }

    }





    if (g_MainMatchStarted)

    {



        // Set score and death to zero.

        Frags [id] = 0

        Deaths [id] = 0



        

    }

    

    

}





public DoRanking ()

{

    new KillerName [256], DeathsName [256], BombPName [256], BombDName [256]

    new players [32], pnum, tempid

    new topKillerID, topDeathsID, topBombPID, topBombDID

    new topKills, topDeaths, topBombP, topBombD



    get_players (players, pnum)



    for (new i; i <pnum; i ++)

    {

        tempid = players

        

        if (g_TotalKills [tempid]> = topKills && g_TotalKills [tempid])

        {

            topKills = g_TotalKills [tempid]

            topKillerID = temps

        }

        

        if (g_TotalDeaths [tempid]> = topDeaths && g_TotalDeaths [tempid])

        {

            topDeaths = g_TotalDeaths [tempid]

            topDeathsID = tempid

        }

        

        if (g_BombPlants [tempid]> = topBombP && g_BombPlants [tempid])

        {

            topBombP = g_BombPlants [tempid]

            topBombPID = tempid

        }

        

        if (g_BombDefusions [tempid]> = topBombD && g_BombDefusions [tempid])

        {

            topBombD = g_BombDefusions [tempid]

            topBombDID = temps

        }

    }

    

    if (1 <= topKillerID <= gMaxPlayers)

        get_user_name (topKillerID, KillerName, charsmax (KillerName))

    if (1 <= topDeathsID <= gMaxPlayers)

        get_user_name (topDeathsID, DeathsName, charsmax (DeathsName))

    if (1 <= topBombPID <= gMaxPlayers)

        get_user_name (topBombPID, BombPName, charsmax (BombPName))

    if (1 <= topBombDID <= gMaxPlayers)

        get_user_name (topBombDID, BombDName, charsmax (BombDName))

    

    for (new i; i <pnum; i ++)

    {

        tempid = players

        

        if (g_TotalKills [tempid] == topKills && tempid! = topKillerID && g_TotalKills [tempid])

        {

            new lineToAdd [65] = ","

            new pName [64]

            get_user_name (tempid, pName, charsmax (pName))

            add (lineToAdd, charsmax (lineToAdd), pName)

            add (KillerName, charsmax (KillerName) - strlen (BombDName), lineToAdd)

        }

        

        if (g_TotalDeaths [tempid] == topDeaths && tempid! = topDeathsID && g_TotalDeaths [tempid])

        {

            new lineToAdd [65] = ","

            new pName [64]

            get_user_name (tempid, pName, charsmax (pName))

            add (lineToAdd, charsmax (lineToAdd), pName)

            add (DeathsName, charsmax (DeathsName) - strlen (DeathsName), lineToAdd)

        }

        

        if (g_BombPlants [tempid] == topBombP && tempid! = topBombPID && g_BombPlants [tempid])

        {

            new lineToAdd [65] = ","

            new pName [64]

            get_user_name (tempid, pName, charsmax (pName))

            add (lineToAdd, charsmax (lineToAdd), pName)

            add (BombPName, charsmax (BombPName) - strlen (BombPName), lineToAdd)

        }

        

        if (g_BombDefusions [tempid] == topBombD && tempid! = topBombDID && g_BombDefusions [tempid])

        {

            new lineToAdd [65] = ","

            new pName [64]

            get_user_name (tempid, pName, charsmax (pName))

            add (lineToAdd, charsmax (lineToAdd), pName)

            add (BombDName, charsmax (BombDName) - strlen (BombDName), lineToAdd)

        }

    }

    

    msgToDisplay = "|| Match Player Stats || ^ n ---------------------- ^ n ^ nTop Kills -% s [% d Kills] ^ nTop Deaths -% s [% d Deaths] ^ nTop Bomb Plants -% s [% d Bomb Plants] ^ nTop Bomb Defusions -% s [% d Bomb Defusions] "

    format (msgToDisplay, charsmax (msgToDisplay), msgToDisplay, strlen (KillerName)? KillerName: "NONE", topKills, strlen (DeathsName)? DeathsName: "NONE", topDeaths,

            strlen (BombPName)? BombPName: "NONE", topBombP, strlen (BombDName)? BombDName: "NONE", topBombD)

            

    new taskId = 6969       

    set_task (1.0, "displayRankingTable", taskId, msgToDisplay, strlen (msgToDisplay), "b")



}



public displayRankingTable (msgToDisplay [], taskId)

{

    set_hudmessage (135, 135, 135, -1.0, -1.0, 1, 6.0, 6.0, 0.5, 0.15, -1)

    show_hudmessage (0, msgToDisplay)

}

// ====================== FUNCTIONS !! ================================================== ==========================================



// Prevent from choosing team while match is going on.

public cmdChooseTeam (id)

{

    if (g_MatchInit || / * g_KnifeRound || * / g_MatchStarted)

    {

        

        // if (cs_get_user_team (id) == CS_TEAM_SPECTATOR)

        // return PLUGIN_HANDLED;

        chatcolor (id, "! g ||! y - =! gMATCH! y = -! g ||! tYou Cannot! gchoose! ta Team! ywhile! gMatch! yis! tin Progress !!");

        return PLUGIN_HANDLED;

    }

    

    return PLUGIN_CONTINUE;

}



// Checking for knife

/ * public Event_CurWeapon_NotKnife (id)

{

    if (! g_KnifeRound)

        return



    if (! user_has_weapon (id, CSW_KNIFE))

        give_item (id, "weapon_knife")

        engclient_cmd (id, "weapon_knife")

} * /





// Swap teams.

public cmdTeamSwap ()

{

    

    new players [32], num

    get_players (players, num)

    

    new player

    for (new i = 0; i <num; i ++)

    {

        player = players



        

        // rg_set_user_team (iPlayer, TEAM_CT, MODEL_AUTO, true)

        rg_set_user_team (player, cs_get_user_team (player) == CS_TEAM_T? TEAM_CT: TEAM_TERRORIST, MODEL_AUTO, true)

    }

    

    return PLUGIN_HANDLED

}



public SwapPlayer ()

{



    new players [32], num

    get_players (players, num)

    

    new player

    for (new i = 0; i <num; i ++)

    {

        player = players

        if (get_user_team (player)! = 3)

        {



            rg_set_user_team (player, cs_get_user_team (player) == CS_TEAM_T? TEAM_CT: TEAM_TERRORIST, MODEL_AUTO, true)

             // cs_set_user_team (player, cs_get_user_team (player) == CS_TEAM_T? CS_TEAM_CT: CS_TEAM_T)

        }

    }

    

    return PLUGIN_HANDLED

}



// public cmdTransferAllInSpec ()

// {



// new Players [32]

// new playerCount, player

// get_players (Players, playerCount, "h")



// for (new i = 0; i <playerCount; i ++)

// {

// player = Players



// if (is_user_connected (player))

// {

// new CsTeams: team = cs_get_user_team (player)



// if (! (team == CS_TEAM_UNASSIGNED) ||! (team == CS_TEAM_SPECTATOR))

// {

// user_kill (player)

// // cs_set_user_team (player, CS_TEAM_SPECTATOR)

// set_task (3.0, "DoTransferSpec", player)

          

//}

// else

// {

// user_kill (player)

//}

//}



//}



// return PLUGIN_HANDLED;

//}





// public DoTransferSpec (id)

// {

// if (is_user_connected (id))

// {

// user_kill (id)

// rg_set_user_team (id, TEAM_SPECTATOR, MODEL_AUTO, true)

//}

    

//}



public StartMatch ()

{



    server_cmd ("mp_forcechasecam 2")

    server_cmd ("mp_forcecamera 2")

    server_cmd ("mp_freezetime 4")

    server_cmd ("afk_transfer_time 20")

    set_cvar_string ("amx_warname", "|| --WAR STARTED-- ||")

    

    set_task (2.0, "LiveOnThreeRestart");



    set_task (3.0, "GiveRestartRound", _, _, _, "a", 3);



    g_MatchInit = false

    

    CaptainSChosen = false

    

    chatcolor (0, "! t [MATCH]! yPlease! gTry! yNot to! tLeave! gThe Match! y !!")

    chatcolor (0, "! t [MATCH]! gFirst Half! tHas been! gStarted! y !!")

    chatcolor (0, "! t [MATCH]! gAttention !!! yThe! tMatch! yHas Been! g STARTED !!")



    new ServerName [512]



    // change server name

    formatex (ServerName, charsmax (ServerName), "[MATCH] -% s || v / s ||% s Live", FirstCaptainName, SecondCaptainName)



    server_cmd ("hostname ^"% s ^ "", ServerName)



    ServerName [0] = 0



    set_task (11.0, "MatchStartedTrue")





    // Set the status of half to first half.

    isFirstHalfStarted = true



    set_task (12.0, "FirstHalfHUDMessage")



}





// Swap Team Message!.

public SwapTeamsMessage ()

{



    GiveRestartRound ()



    set_task (3.0, "TeamSwapMessage")



    set_task (7.0, "FirstHalfCompletedHUDMessage")



    set_task (12.0, "SwapTeamsAndRestartMatch")

}





// Swap teams and restart the match.

public SwapTeamsAndRestartMatch ()

{

    // Swap Teams.

    cmdTeamSwap ()



    GiveRestartRound ();



    set_task (2.0, "LiveOnThreeRestart");



    // Give Restart

    set_task (4.0, "GiveRestartRound", _, _, _, "a", 3);



    chatcolor (0, "! t [MATCH]! gTeams! yHave Been! gSwapped !!");

    chatcolor (0, "! t [MATCH]! gSecond Half! yhas been! gStarted !!");

    

    is_secondHalf = true



    // Set first half status to zero.

    isFirstHalfStarted = false

    isSecondHalfStarted = true

    set_task (14.0, "SecondHalfHUDMessage")



    LoadMatchSettings ()



}



// For color chat

stock chatcolor (const id, const input [], any: ...)

{

        new count = 1, players [32]

        static msg [191]

        vformat (msg, 190, input, 3)

      

        replace_all (msg, 190, "! g", "^ 4") // Green Color

        replace_all (msg, 190, "! y", "^ 1") // Default Color

        replace_all (msg, 190, "! t", "^ 3") // Team Color   



        if (id) players [0] = id; else get_players (players, count, "ch")

        {

                for (new i = 0; i <count; i ++)

                {

                        if (is_user_connected (players ))

                        {

                                message_begin (MSG_ONE_UNRELIABLE, get_user_msgid ("SayText"), _, players )

                                write_byte (players );

                                write_string (msg);

                                message_end ();

                        }

                }

        }

}



public ShowScoreHud ()

{



    new score_message [1024]



    if (ScoreFtrstTeam> ScoreScondteam)

        {

            format (score_message, 1023, "Team% s ^ n [% i] - |||| - [% i]", FirstCaptainName, ScoreFtrstTeam, ScoreScondteam)



            set_dhudmessage (random (256), random (256), random (256), -1.0, 0.05, 0, 2.0, 5.0, 0.8, 0.8)

            show_dhudmessage (0, score_message)

       set_dhudmessage (random (256), random (256), random (256), -1.0, 0.0, 0, 2.0, 5.0, 0.8, 0.8)

            show_dhudmessage (0, "----- || MATCH LEADER || ------")

        }



        if (ScoreScondteam> ScoreFtrstTeam)

        {

            format (score_message, 1023, "Team% s ^ n [% i] - |||| - [% i]", SecondCaptainName, ScoreScondteam, ScoreFtrstTeam)



            set_dhudmessage (random (256), random (256), random (256), -1.0, 0.05, 0, 2.0, 5.0, 0.8, 0.8)

            show_dhudmessage (0, score_message)

       set_dhudmessage (random (256), random (256), random (256), -1.0, 0.0, 0, 2.0, 5.0, 0.8, 0.8)

            show_dhudmessage (0, "----- || MATCH LEADER || ------")

        }



        if (ScoreFtrstTeam == ScoreScondteam)

        {

            format (score_message, 1023, "Both Teams ^ n [% i] - |||| - [% i]", ScoreScondteam, ScoreFtrstTeam)



            set_dhudmessage (random (256), random (256), random (256), -1.0, 0.05, 0, 2.0, 5.0, 0.8, 0.8)

            show_dhudmessage (0, score_message)

        set_dhudmessage (random (256), random (256), random (256), -1.0, 0.0, 0, 2.0, 5.0, 0.8, 0.8)

            show_dhudmessage (0, "----- || SCORES TIE || ------")

        }

}



public CheckForWinningTeam ()

{



        if (ScoreFtrstTeam> = 16)

        {

            // Change description of the game.

            

            new GameDescBuffer [32]

            formatex (GameDescBuffer, charsmax (GameDescBuffer), "|| - GG% d To% d - ||", ScoreFtrstTeam, ScoreScondteam)



            // set_task (8.0, "StartSongForAll")

            client_cmd (0, "mp3 play% s", winner);



            set_cvar_string ("amx_warname", GameDescBuffer)

            

            server_cmd ("mp_freezetime 99999");

            set_task (7.0, "FirstTeamWinnerMessage")

            

        }



        if (ScoreScondteam> = 16)

        {   



            new GameDescBuffer [32]

            formatex (GameDescBuffer, charsmax (GameDescBuffer), "|| - GG% d To% d - ||", ScoreScondteam, ScoreFtrstTeam)

            set_cvar_string ("amx_warname", GameDescBuffer)

        client_cmd (0, "mp3 play% s", winner);





            

            server_cmd ("mp_freezetime 99999");

            set_task (7.0, "SecondTeamWinnerMessage")

        }

    

      

    }



// Transfer a player to spec.

// public TransferToSpec (id)

// {

// if (is_user_connected (id))

// {

// new CsTeams: team = cs_get_user_team (id)

 

// if (is_user_connected (id) && (team! = CS_TEAM_UNASSIGNED) && (team! = CS_TEAM_SPECTATOR))

// {

// new TransferedName [32]

// get_user_name (id, TransferedName, charsmax (TransferedName))



// user_silentkill (id)

// // cs_set_user_team (id, CS_TEAM_SPECTATOR)

// // rg_set_user_team (id, TEAM_SPECTATOR, MODEL_AUTO, true)



// set_task (3.0, "DoTransferSpec", id)

// chatcolor (0, "! y [MATCH]! t% s! ghas been transferred to! tSPEC! gas he Cannot join During the! tSelection! y !!", TransferedName)



//}

//}

    

    

// return PLUGIN_HANDLED

//}



// Winner message. - First team won!

public FirstTeamWonTheMatch ()

{

    set_dhudmessage (255, 255, 255, -1.0, 0.40, 0, 2.0, 6.0, 0.8, 0.8)

    show_dhudmessage (0, "O == [] ====== - || Match Winner || - ===== [] == O")

    set_dhudmessage (0, 255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

    show_dhudmessage (0, "[Team -% s]", FirstCaptainName)



    set_cvar_string ("amx_warname", "|| Match Not Started ||")

}



// Winner message. - Second team won!

public SecondTeamWonTheMatch ()

{

    set_dhudmessage (255, 255, 255, -1.0, 0.40, 0, 2.0, 6.0, 0.8, 0.8)

    show_dhudmessage (0, "O == [] ====== - || Match Winner || - ===== [] == O")

    set_dhudmessage (0, 255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

    show_dhudmessage (0, "[Team -% s]", SecondCaptainName)



    set_cvar_string ("amx_warname", "|| Match Not Started ||")

}



// Load Match settings because match has been started!

public LoadMatchSettings ()

{



    server_cmd ("sv_alltalk 0")

    server_cmd ("mp_autoteambalance 2")

    server_cmd ("mp_freezetime 4")

    server_cmd ("exec match.cfg")

    server_cmd ("mp_roundmoney 16000")

}



// Load PuB settings because Match is over!

public LoadPubSettings ()

{



    set_cvar_string ("amx_warname", "|| Match Not Started ||")



    // Set some zero.

    CaptainChoosenID = 0

    WhoChoseThePlayer = 0

    g_TotalKills [0] = 0

    g_TotalDeaths [0] = 0

    g_BombPlants [0] = 0

    g_BombDefusions [0] = 0

    msgToDisplay [0] = 0

    msgToDisplaykill [0] = 0

    msgToDisplaydeath [0] = 0

    msgToDisplayplant [0] = 0

    msgToDisplaydefuse [0] = 0

    remove_task (6969)



    // ALL HALF STATUS TO FALSE.

    isFirstHalfStarted = false

    isSecondHalfStarted = false



    FirstCaptainTeamName = 0

    SecondCaptainTeamName = 0



    MatchStarterOwner = 0

    CaptainSChosen = false



    // g_KnifeRound = false



    is_secondHalf = false

    g_MatchInit = false

    g_MatchStarted = false

    g_MainMatchStarted = false

    RoundCounter = 0



    gCptT = 0

    gCptCT = 0

    CaptainCount = 0



    ScoreFtrstTeam = 0

    ScoreScondteam = 0



    ShowMenuFirst = 0

    ShowMenuSecond = 0





 

    FirstCaptainName [0] = 0

    SecondCaptainName [0] = 0



    TempFirstCaptain [0] = 0

    TempSecondCaptain [0] = 0

    

    server_cmd ("exec server.cfg")

    server_cmd ("mp_roundmoney 16000")

    set_task (3.0, "GiveRestartRound", _, _, _, "a", 1);

    



}



public FirstTeamWinnerMessage ()

{



    GiveRestartRound ()





    set_task (3.0, "MatchIsOverHUDMessage")

    set_task (7.0, "SecondHalfCompletedHUDMessage")

    set_task (13.0, "FirstTeamWonTheMatch")

    set_task (20.0, "DoRanking")

    set_task (32.0, "LoadPubSettings")

}



public SecondTeamWinnerMessage ()

{

    GiveRestartRound ()



    set_task (3.0, "MatchIsOverHUDMessage")

    set_task (7.0, "SecondHalfCompletedHUDMessage")

    set_task (13.0, "SecondTeamWonTheMatch")

    set_task (20.0, "DoRanking")

    set_task (32.0, "LoadPubSettings")

}



/ * public SecondCaptWonKnifeRoundWonMsg (id)

{

    set_dhudmessage (0, 255, 0, -1.0, 0.40, 0, 2.0, 4.0, 0.8, 0.8)

    show_dhudmessage (0, "|| Knife Round Winner || ^ n =================")

    set_dhudmessage (255, 255, 255, -1.0, -1.0, 0, 2.0, 3.0, 0.8, 0.8)

    show_dhudmessage (0, "Captain -% s", FirstCaptainName)



    chatcolor (0, "! t [MATCH]! gCaptain! t% s! gWon the! tKnife Round! y !!", FirstCaptainName)



    set_task (5.0, "ChooseTeam", gCptCT)

    

} * /



/ * public FirstCaptainWonKnifeRoundMsg (id)

{

    set_dhudmessage (0, 255, 0, -1.0, 0.40, 0, 2.0, 4.0, 0.8, 0.8)

    show_dhudmessage (0, "|| Knife Round Winner || ^ n =================")

    set_dhudmessage (255, 255, 255, -1.0, -1.0, 0, 2.0, 3.0, 0.8, 0.8)

    show_dhudmessage (0, "Captain -% s", FirstCaptainName)



    chatcolor (0, "! t [MATCH]! gCaptain! t% s! gWon the! tKnife Round! y !!", FirstCaptainName)



    set_task (5.0, "ChooseTeam", gCptT)

    

} * /



public ShowScoreToUser (id)

{

    if (g_MatchStarted)

    {



        if (isFirstHalfStarted)

        {

            if ((FirstCaptainTeamName == 1) && (get_user_team (id) == 2))

            {

                chatcolor (id, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreScondteam, ScoreFtrstTeam)

            }

            

            if ((FirstCaptainTeamName == 1) && (get_user_team (id) == 1))

            {   

                chatcolor (id, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreFtrstTeam, ScoreScondteam)

            }



            if ((FirstCaptainTeamName == 2) && (get_user_team (id)) == 2)

            {

                chatcolor (id, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreFtrstTeam, ScoreScondteam)

            }



            if ((FirstCaptainTeamName == 2) && (get_user_team (id) == 1))

            {

                chatcolor (id, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreScondteam, ScoreFtrstTeam)

            }

        }



        if (isSecondHalfStarted)

        {

            if ((FirstCaptainTeamName == 1) && (get_user_team (id) == 2))

            {

                chatcolor (id, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreFtrstTeam, ScoreScondteam)

            }

            

            if ((FirstCaptainTeamName == 1) && (get_user_team (id) == 1))

            {   

                chatcolor (id, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreScondteam, ScoreFtrstTeam)

            }



            if ((FirstCaptainTeamName == 2) && (get_user_team (id)) == 2)

            {

                chatcolor (id, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreScondteam, ScoreFtrstTeam)

            }



            if ((FirstCaptainTeamName == 2) && (get_user_team (id) == 1))

            {

                chatcolor (id, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreFtrstTeam, ScoreScondteam)

            }

        }

    }

}





public ShowScoreOnRoundStart ()

{



    new players [32], num, iPlayer

    get_players (players, num, "h");

    



    for (new i = 0; i <num; i ++)

    {

        iPlayer = players ;



        if (isFirstHalfStarted)

        {

            if ((FirstCaptainTeamName == 1) && (get_user_team (iPlayer) == 2))

            {

                chatcolor (iPlayer, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreScondteam, ScoreFtrstTeam)

            }

            

            if ((FirstCaptainTeamName == 1) && (get_user_team (iPlayer) == 1))

            {   

                chatcolor (iPlayer, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreFtrstTeam, ScoreScondteam)

            }



            if ((FirstCaptainTeamName == 2) && (get_user_team (iPlayer)) == 2)

            {

                chatcolor (iPlayer, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreFtrstTeam, ScoreScondteam)

            }



            if ((FirstCaptainTeamName == 2) && (get_user_team (iPlayer) == 1))

            {

                chatcolor (iPlayer, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreScondteam, ScoreFtrstTeam)

            }

        }



        if (isSecondHalfStarted)

        {

            if ((FirstCaptainTeamName == 1) && (get_user_team (iPlayer) == 2))

            {

                chatcolor (iPlayer, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreFtrstTeam, ScoreScondteam)

            }

            

            if ((FirstCaptainTeamName == 1) && (get_user_team (iPlayer) == 1))

            {   

                chatcolor (iPlayer, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreScondteam, ScoreFtrstTeam)

            }



            if ((FirstCaptainTeamName == 2) && (get_user_team (iPlayer)) == 2)

            {

                chatcolor (iPlayer, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreScondteam, ScoreFtrstTeam)

            }



            if ((FirstCaptainTeamName == 2) && (get_user_team (iPlayer) == 1))

            {

                chatcolor (iPlayer, "! y [! tScoreboard! y]! gYour Team's Score! y - >>! t [! g% i! t]! y- || -! gOpponent Team's Score! y - >>! t [! g% i! t] ", ScoreFtrstTeam, ScoreScondteam)

            }

        }

    }

    

}



// To restart the round.

public GiveRestartRound ()

{

    server_cmd ("sv_restartround ^" 1 ^ "");

}



// All MESSAGES.

public FirstHalfHUDMessage ()

{client_cmd (0, "mp3 play% s", first_half);

       set_dhudmessage (255, 255, 255, -1.0, 0.34, 0, 2.0, 4.0, 0.8, 0.8)

       show_dhudmessage (0, "|| SERVER ||")

       set_dhudmessage (0, 255, 0, -1.0, 0.42, 0, 2.0, 4.0, 0.8, 0.8)

       show_dhudmessage (0, "// START //")

       set_dhudmessage (random (256), random (256), random (256), -1.0, 0.50, 0, 2.0, 4.0, 0.8, 0.8)

       show_dhudmessage (0, "FIRST HALF STARTE D")

    

}





public SecondHalfHUDMessage ()

{



    new players [32], num

    get_players (players, num, "h")

    

    new player

    for (new i = 0; i <num; i ++)

    {

        player = players

        if (is_user_connected (player))

        {

            set_user_frags (player, Frags [player])

            cs_set_user_deaths (player, Deaths [player])

        }



    }

     client_cmd (0, "mp3 play% s", second_half);

     set_dhudmessage (255, 255, 255, -1.0, 0.34, 0, 2.0, 4.0, 0.8, 0.8)

       show_dhudmessage (0, "|| SERVER ||")

       set_dhudmessage (0, 255, 0, -1.0, 0.42, 0, 2.0, 4.0, 0.8, 0.8)

       show_dhudmessage (0, "// START //")

       set_dhudmessage (random (256), random (256), random (256), -1.0, 0.50, 0, 2.0, 4.0, 0.8, 0.8)

       show_dhudmessage (0, "SECOND HALF STARTE D")

    

}





public FirstHalfCompletedHUDMessage ()

{

    new score_message [1024]



    if (ScoreFtrstTeam> ScoreScondteam)

    {

        format (score_message, 1023, "- = || First Half Score || = - ^ n ^ n ^ n% s - - [% i] ^ n ^ n LEADING TO ^ n ^ n% s - [% i] ", FirstCaptainName, ScoreFtrstTeam, SecondCaptainName, ScoreScondteam)



        set_dhudmessage (0.255, 0, -1.0, -1.0, 0, 2.0, 4.0, 0.8, 0.8)

        show_dhudmessage (0, score_message)

    }



    if (ScoreScondteam> ScoreFtrstTeam)

    {

        format (score_message, 1023, "- = || First Half Score || = - ^ n ^ n ^ n% s - - [% i] ^ n ^ n LEADING TO ^ n ^ n% s - [% i] ", SecondCaptainName, ScoreScondteam, FirstCaptainName, ScoreFtrstTeam)



        set_dhudmessage (0.255, 0, -1.0, -1.0, 0, 2.0, 4.0, 0.8, 0.8)

        show_dhudmessage (0, score_message)

    }



    if (ScoreFtrstTeam == ScoreScondteam)

    {

        format (score_message, 1023, "[[Both teams have Won [% i] rounds till now]]", ScoreScondteam)



        set_dhudmessage (0.255, 0, -1.0, -1.0, 0, 2.0, 4.0, 0.8, 0.8)

        show_dhudmessage (0, score_message)

    }

}



public SecondHalfCompletedHUDMessage ()

{



    new score_message [1024]



    if (ScoreFtrstTeam> ScoreScondteam)

    {

        format (score_message, 1023, "- = || Second Half Score || = - ^ n ^ n ^ n% s - - [% i] ^ n ^ n LEADING TO ^ n ^ n% s - [% i] ", FirstCaptainName, ScoreFtrstTeam, SecondCaptainName, ScoreScondteam)

    

        set_dhudmessage (0.255, 0, -1.0, -1.0, 0, 2.0, 4.0, 0.8, 0.8)

        show_dhudmessage (0, score_message)

    }



    if (ScoreScondteam> ScoreFtrstTeam)

    {

        format (score_message, 1023, "- = || Second Half Score || = - ^ n ^ n ^ n% s - - [% i] ^ n ^ n LEADING TO ^ n ^ n% s - [% i] ", SecondCaptainName, ScoreScondteam, FirstCaptainName, ScoreFtrstTeam)

    

        set_dhudmessage (0.255, 0, -1.0, -1.0, 0, 2.0, 4.0, 0.8, 0.8)

        show_dhudmessage (0, score_message)

    }



    if (ScoreFtrstTeam == ScoreScondteam)

    {

        format (score_message, 1023, "[[Both teams have Won [% i] rounds till now]]", ScoreScondteam)

    

        set_dhudmessage (0.255, 0, -1.0, -1.0, 0, 2.0, 6.0, 0.8, 0.8)

        show_dhudmessage (0, score_message)

    }



}



public MatchIsOverHUDMessage ()

{

    set_dhudmessage (213,255, 0, -1.0, -1.0, 0, 2.0, 3.0, 0.8, 0.8)

    show_dhudmessage (0, "|||| ----------------------------- |||| ^ nM ATCH - OVER ^ n |||| ----------------------------- |||| ")

}





public TeamSwapMessage ()

{

    set_dhudmessage (255, 255, 0, -1.0, -1.0, 0, 2.0, 3.0, 0.8, 0.8)

    show_dhudmessage (0, "[- First Half Is Over -]] ^ n || Teams will be Swapped Automatically || ^ n || Second Half will Begin Now ||")

}



public MatchStartedTrue ()

{

    server_cmd ("mp_autokick 0")

    g_MatchStarted = true



    set_task (30.0, "SetMainMatchStartedTrue")



}





public SetMainMatchStartedTrue ()

{

    g_MainMatchStarted = true

}





public LiveOnThreeRestart ()

{



    set_dhudmessage (random (256), random (256), random (256), -1.0, -1.0, 0, 2.0, 3.0, 0.8, 0.8)

    show_dhudmessage (0, ">> -------------------------------- << ^ n Live On Three Restarts ^ n> > -------------------------------- << ")

}

/ * AMXX-Studio Notes - DO NOT MODIFY BELOW HERE

{\\ rtf1 \\ ansi \\ deff0 {\\ fonttbl {\\ f0 \\ fnil Tahoma;}} \ n \\ viewkind4 \\ uc1 \\ pard \\ lang1033 \\ f0 \\ fs16 \ n \\ par } [/ CODE]
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу