23.11.2009, 05:33
Quote:
Originally Posted by ExoSanty
Quote:
Код:
new CmdTimer[MAX_PLAYERS]; new bool:CanUseCmd[MAX_PLAYERS]; forward releasecmd(playerid); Код:
CanUseCmd[playerid] = true; Код:
if (strcmp("/yourcommand", cmdtext, true) == 0) { if(CanUseCmd[playerid] == true) { // let your command do what is must do... + CanUseCmd[playerid] = false; CmdTimer[playerid] = SetTimerEx("releasecmd", 15000, false, "i", 1, playerid); } else { //let the player know he has to wait... } return 1; } Код:
stock releasecmd(playerid) { CanUseCmd[playerid] = true; KillTimer(CmdTimer[playerid]); //suggest you place this line in the onplayerdisconnect as well } ![]() |
pawn Код:
// Top of Script
new bool:CommandAvailable[MAX_PLAYERS];
forward CommandTimer(playerid);
pawn Код:
public OnPlayerConnect(playerid)
{
CommandAvailable[playerid] = true;
return true;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
if (CommandAvailable[playerid] == true) return GameTextForPlayer(playerid, "~r~Wait 15 seconds", 1000, 1);
else if (CommandAvailable[playerid] == true)
{
//effect
SetTimerEx("CommandTimer(playerid)", 15000, false, "i", playerid); // Not sure of the placeholder, sorry :3
}
return true;
}
return false;
}
pawn Код:
// Bottom of script
public CommandTimer(playerid)
{
CommandAvailable[playerid] = true;
return true;
}