14.12.2012, 15:04
Porque nгo estб chamando a callback CancelarLixo(playerid)
O que deveria acontecer й quando o player estivesse em um Raio de 40 perto do lixo, executasse a callback CancelarLixo, mas isso nгo estб acontecendo :S
Agora o else ele executa certo :S
O que deveria acontecer й quando o player estivesse em um Raio de 40 perto do lixo, executasse a callback CancelarLixo, mas isso nгo estб acontecendo :S
Agora o else ele executa certo :S
PHP код:
public OnPlayerExitVehicle(playerid, vehicleid)
{
if(VDaOrg(V_Lixeiro,0,6) && InfoEmprego[playerid][PegandoLixo] == true)
{
if(IsPlayerInRangeOfPoint(playerid, 40, CoordLixeiro[InfoEmprego[playerid][Lixo]][0], CoordLixeiro[InfoEmprego[playerid][Lixo]][1], CoordLixeiro[InfoEmprego[playerid][Lixo]][2]))
{
SendClientMessage(playerid, COR_CYAN, "Pegue seu Lixo e volte para o Caminhгo ou vocк irб perder a marcaзгo de seu Lixo e terб que voltar para HQ!");
InfoEmprego[playerid][TempoCancelar] = 10;
CancelarLixo(playerid);
}
else
{
DestroyPickup(InfoEmprego[playerid][PickupLixo]);
InfoEmprego[playerid][PegandoLixo] = false;
InfoEmprego[playerid][PegouLixo] = 0;
InfoEmprego[playerid][Lixo] = -1;
InfoEmprego[playerid][PickupLixo] = 0;
DisablePlayerCheckpoint(playerid);
EsconderTextInfo(playerid);
SendClientMessage(playerid, COR_GOLD, "Vocк saiu do veнculo, sua marcaзгo foi cancelada! Vб a sua HQ e marque outra!");
}
}
return true;
}
For_Public::CancelarLixo(playerid)
{
if(VDaOrg(V_Lixeiro,0,6))
return InfoEmprego[playerid][TempoCancelar] = 0;
if(InfoEmprego[playerid][TempoCancelar] == 0)
{
InfoEmprego[playerid][TempoCancelar] = 0;
EsconderTextInfo(playerid);
InfoEmprego[playerid][PegandoLixo] = false;
InfoEmprego[playerid][PegouLixo] = 0;
InfoEmprego[playerid][Lixo] = -1;
InfoEmprego[playerid][PickupLixo] = 0;
DisablePlayerCheckpoint(playerid);
DestroyPickup(InfoEmprego[playerid][PickupLixo]);
SendClientMessage(playerid, COR_VAGOS, "Vocк nгo voltou a tempo para o Caminhгo, sendo assim foi cancelado seu Lixo!");
return true;
}
format(Str, sizeof(Str), "~p~Lixo(s) Coletado(s):~w~ %d/%d~n~~p~Distancia ao Lixo:~w~ %dm~n~~p~Tempo p/ Entrar no Caminhгo: ~w~%d", InfoEmprego[playerid][PegouLixo], Player[playerid][LevelLix]*5, floatround(GetPlayerDistanceFromPoint(playerid, CoordLixeiro[InfoEmprego[playerid][Lixo]][0], CoordLixeiro[InfoEmprego[playerid][Lixo]][1], CoordLixeiro[InfoEmprego[playerid][Lixo]][2])), InfoEmprego[playerid][TempoCancelar]);
TextDrawSetString(infoe[playerid][1], Str);
InfoEmprego[playerid][TempoCancelar]--;
return SetTimerEx("CancelarLixo", 1000, false, "i", playerid);
}