14.11.2014, 14:40
I have reaction system with random letters.
Sometimes it start several times two three.
OnFilterScriptInit
OnPlayerText
Function Callback
Sometimes it start several times two three.
OnFilterScriptInit
Код:
xReactionTimer = SetTimer("xReactionTest", TIME, 1);
Код:
switch(xTestBusy) { case true: { if(!strcmp(xChars, text, false)) { new string[128], pName[MAX_PLAYER_NAME] ; GetPlayerName(playerid, pName, sizeof(pName)); format(string, sizeof(string), "{56ff00}%s спечели теста за бързо реагиране. Той получава %d$", pName, xCash); SendClientMessageToAll(GREEN, string); GivePlayerMoney(playerid, xCash); xReactionTimer = SetTimer("xReactionTest", TIME, 1); xTestBusy = false; } } }
Код:
function xReactionProgress() { switch(xTestBusy) { case true: { new string[128] ; format(string, sizeof(string), "Никой не спечели теста за бързо реагиране!"); SendClientMessageToAll(WHITE, string); xReactionTimer = SetTimer("xReactionTest", TIME, 1); } } return 1; } function xReactionTest() { new xLength = (random(8) + 3), string[128] ; xCash = 8400; format(xChars, sizeof(xChars), ""); Loop(x, xLength) format(xChars, sizeof(xChars), "%s%s", xChars, xCharacters[random(sizeof(xCharacters))][0]); format(string, sizeof(string), "{ff00db}Който първи напише в чата {56ff00}%s {ff00db}печели {56ff00}%d$", xChars, xCash); SendClientMessageToAll(YELLOW, string); KillTimer(xReactionTimer); xTestBusy = true; SetTimer("xReactionProgress", 30000, 0); return 1; }