I don't know which code was related to y_utils.inc since I did not include ysi in this filterscript. So, I will post the code that use an include to run.
Top of script :
PHP код:
new bool:IsVotekickStarted;
new bool:HasPlayerVoted[MAX_PLAYERS];
new vktargetid = -1, vkreason, vkplayername[MAX_PLAYER_NAME], vktargetname[MAX_PLAYER_NAME], vkyes, vkno;
Code :
PHP код:
CMD:votekick(playerid, params[])
{
if(sscanf(params, "us[128]", vktargetid, vkreason))
{
return SendClientMessage(playerid, -1, "[Error:] /votekick <id> <reason>");
}
if(IsVotekickStarted == true)
{
return SendClientMessage(playerid, -1,"[Error:] {BBBBBB}A votekick has been already started. Wait until it finish to ask for a new one");
}
if(vktargetid == -1)
{
return SendClientMessage(playerid, -1, "[Error:] Player is not connected!");
}
new string[128];
vktargetid = playerid;
GetPlayerName(playerid, vkplayername, sizeof(vkplayername));
GetPlayerName(vktargetid, vktargetname, sizeof(vktargetname));
format(string, sizeof(string), "{C14124}%s{BBBBBB} has started a votekick for {C14124}%s{BBBBBB} reason: %s. Type {60B149}Yes{BBBBBB} or {B35349}No{BBBBBB} to vote.", vkplayername, vktargetname, vkreason);
SendClientMessageToAll(-1, string);
IsVotekickStarted = true;
foreach(new i : Player)
{
HasPlayerVoted[i] = false;
}
SetTimer("VotekickTimer", 60000, false);
return 1;
}
Maybe this?
PHP код:
forward KickTimer();
public KickTimer()
{
Kick(vktargetid);
return 1;
}
forward VotekickTimer();
public VotekickTimer()
{
GetPlayerName(vktargetid, vktargetname, sizeof(vktargetname));
if(vkyes > vkno)
{
new string[128];
format(string, sizeof(string), "{C14124}%s {BBBBBB}has been votekicked reason: %s. [%d Yes | %d No]", vktargetname, vkreason, vkyes, vkno);
SendClientMessageToAll(-1, string);
SetTimer("KickTimer", 1000, false);
}
else
{
new string[128];
format(string, sizeof(string), "{C14124}%s {BBBBBB}has not been kicked. [%d Yes | %d No]", vktargetname, vkyes, vkno);
SendClientMessageToAll(-1, string);
}
vkyes = 0, vkno = 0, vktargetid = -1, IsVotekickStarted = false;
return 1;
}