11.10.2011, 01:21
Bom no gm que eu uso tem /procurar para localizar alguem e ficar seguindo um checkpoint, mas aconteceu 1 poblemгo
um deles e quando eu uso o /procurar tal id e relogo no server apos eu logar o checkpoint fica marcado na pessoa sem eu usar o cmd.O outro Bug e que quando uso o comando /procurar e chego no [ID] que marquei o checkpoint nao desativa vou postar o cmd abaixo:
um deles e quando eu uso o /procurar tal id e relogo no server apos eu logar o checkpoint fica marcado na pessoa sem eu usar o cmd.O outro Bug e que quando uso o comando /procurar e chego no [ID] que marquei o checkpoint nao desativa vou postar o cmd abaixo:
Код:
} if(strcmp(cmd, "/procurar", true) == 0) { if(IsPlayerConnected(playerid)) { if(PlayerInfo[playerid][pEmprego] != 1 && !IsACop(playerid) && !IsAHit(playerid)) { SendClientMessage(playerid, COLOR_GREY, " Vocк nгo й Detetive!"); return 1; } if(UsedFind[playerid] != 0 && PlayerInfo[playerid][pDetSkill] < 401) { SendClientMessage(playerid, COLOR_GREY, " Vocк sу pode procurar novamente, daqui a 1 Minuto!"); return 1; } tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "USE: /procurar [ id ]"); return 1; } giveplayerid = ReturnUser(tmp); if(IsPlayerConnected(giveplayerid)) { if(giveplayerid != INVALID_PLAYER_ID) { if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode se procurar!"); return 1; } new points; new level = PlayerInfo[playerid][pDetSkill]; if(level >= 0 && level <= 50) { points = 35; } else if(level >= 51 && level <= 100) { points = 40; } else if(level >= 101 && level <= 200) { points = 45; } else if(level >= 201 && level <= 400) { points = 50; } else if(level >= 401) { points = 55; } GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer)); KillTimer(GetPVarInt(playerid,"TimerProcura")); DisablePlayerCheckpoint(playerid); DeletePVar(playerid,"TimerProcura"); new TimerProcura; TimerProcura = SetTimerEx("GivePlayerIDCheckpoint", 1000, true, "di", playerid, giveplayerid); SetPVarInt(playerid,"TimerProcura",TimerProcura); FindTime[playerid] = 1; FindTimePoints[playerid] = points; PlayerInfo[playerid][pDetSkill] ++; UsedFind[playerid] = 1; if(PlayerInfo[playerid][pDetSkill] == 50) { SendClientMessage(playerid, COLOR_YELLOW, "* Seu nivel de detetive agora й 2, Vocк pode procurar mais rapido e encontrar mais rapido."); } else if(PlayerInfo[playerid][pDetSkill] == 100) { SendClientMessage(playerid, COLOR_YELLOW, "* Seu nivel de detetive agora й 3, Vocк pode procurar mais rapido e encontrar mais rapido."); } else if(PlayerInfo[playerid][pDetSkill] == 200) { SendClientMessage(playerid, COLOR_YELLOW, "* Seu nivel de detetive agora й 4, Vocк pode procurar mais rapido e encontrar mais rapido."); } else if(PlayerInfo[playerid][pDetSkill] == 400) { SendClientMessage(playerid, COLOR_YELLOW, "* Seu nivel de detetive agora й 5, Vocк pode procurar mais rapido e encontrar mais rapido."); } } } else { SendClientMessage(playerid, COLOR_GREY, " Invalido NICK/ID !"); } } return 1; } =================================================================================== } if(IsPlayerInRangeOfPoint(playerid,10.0,GetPVarFloat(playerid,"FocoX"), GetPVarFloat(playerid,"FocoY"), GetPVarFloat(playerid,"FocoZ"))) { DisablePlayerCheckpoint(playerid); DeletePVar(playerid,"FocoX"); DeletePVar(playerid,"FocoY"); DeletePVar(playerid,"FocoZ"); KillTimer(GetPVarInt(playerid,"TimerProcura")); } =================================================================================== } } if(FindTime[i] > 0) { if(FindTime[i] == FindTimePoints[i]) { FindTime[i] = 0; FindTimePoints[i] = 0; DisablePlayerCheckpoint(i); DeletePVar(i,"TimerProcura"); PlayerPlaySound(i, 1056, 0.0, 0.0, 0.0); GameTextForPlayer(i, "~r~Checkpoin Desativado", 2500, 1); } else { new string[256]; format(string, sizeof(string), "%d", FindTimePoints[i] - FindTime[i]); GameTextForPlayer(i, string, 1500, 6); FindTime[i] += 1; } }