Как изменить плагин "Leader",чтобы он давался рандомно на 2 раунде,и кто его убивает,тот лидером и становится,а не тот кто на 1 месте.
- Код: Выделить всё
/*
Plugin : Leader Model
Version: 1.1
Author : epic
Link: Вы должны зарегистрироваться, чтобы видеть ссылки.
Description:
* This plugin can change the model of leader (top score player) in each team to a special one.
* I have a CS server which use Warcraft3 plugin, so I made this plugin, in order to show the differ model of the leader in each team, such as the heroes in Warcraft3.
* If the player in your server less than 8, the plugins will not run.(cvar: LeaderModel_minplayers 8)
* Make sure your "cl_minmodel" is set to 0
* This plugin is simple, enjoy it !
Thanks:
* xPaw - Tell me how to approve
* Nextra - Give me nice suggestions
* Thanks the file of .mdl maker
Changelog:
* v1.1: (2009.10.9)
Use "switch" to check player`s team
*/
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
new g_Version[] = "1.1";
new g_MinPlayers;
new g_Lead_CT = -1
new g_Lead_T = -1
public plugin_init()
{
register_plugin("LeaderModel", g_Version, "epic");
register_logevent("roundStart", 2, "1=Round_Start")
register_logevent("EventEndRound", 2, "0=World triggered", "1=Round_Draw", "1=Round_End")
g_MinPlayers = register_cvar( "LeaderModel_minplayers", "8" );
}
public plugin_precache()
{
precache_model("models/player/gaoda/gaoda.mdl")
precache_model("models/player/end/end.mdl");
}
public roundStart()
{
ModelLeaders()
}
public EventEndRound()
{
new nums, players[32];
get_players(players, nums);
for(new i = 0; i < nums; i++)
{
cs_reset_user_model(players[i])
}
}
ModelLeaders()
{
new i_numplayers = get_playersnum(0);
if (i_numplayers < get_pcvar_num(g_MinPlayers)) return
i_numplayers = get_playersnum(1);
new i_Lead_CT_frags = -100
new i_Lead_T_frags = -100
new i_Lead_CT_deaths = -100
new i_Lead_T_deaths = -100
new i_frags
new i_deaths
g_Lead_CT = -1
g_Lead_T = -1
for (new i_player = 0; i_player < i_numplayers; i_player++)
{
i_frags = get_user_frags(i_player)
i_deaths = get_user_deaths(i_player)
switch(get_user_team(i_player))
{
case 2:
{
if ((i_frags > i_Lead_CT_frags) || ((i_frags == i_Lead_CT_frags) && (i_deaths < i_Lead_CT_deaths)))
{
i_Lead_CT_frags = i_frags
i_Lead_CT_deaths = i_deaths
g_Lead_CT = i_player
}
}
case 1:
{
if ((i_frags > i_Lead_T_frags) || ((i_frags == i_Lead_T_frags) && (i_deaths < i_Lead_T_deaths)))
{
i_Lead_T_frags = i_frags
i_Lead_T_deaths = i_deaths
g_Lead_T = i_player
}
}
}
}
if (g_Lead_CT != -1) cs_set_user_model(g_Lead_CT, "gaoda")
if (g_Lead_T != -1) cs_set_user_model(g_Lead_T, "end")
}