07.02.2017, 23:25
Boa noite, nгo to achando o erro onde somente recebe a mensagem "Player removeu todas barreiras de sua organizaзгo". Mas nгo remove as barreiras.
Cуdigo para criar a barreira:
Cуdigo para remover a barreira:
E esse й o cуdigo que nгo estб funcionando corretamente, somente a mensagem й enviada:
Alguйm poderia me ajudar a reparar isso? Agradeзo desde jб.
Cуdigo para criar a barreira:
PHP Code:
CMD:br(playerid)
{
if(PlayerInfo[playerid][pJailed] != 0)return SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode usar esse comando na cadeia!");
if (!IsACop(playerid) && GetPlayerOrg(playerid) != 20) return SendClientMessage(playerid, COLOR_GREY, "Vocк nгo й COP/Bombeiro!");
if(GetPlayerInterior(playerid) > 0 || IsPlayerInAnyVehicle(playerid))
return SendClientMessage(playerid, AMARELO_COR, "Vocк nгo pode colocar uma barreira dentro de um veiculo ou em algum interior!");
new prid = 999;
new string[128];
for(new i; i < MAX_BARREIRAS; i++){
if(BarreiraInfo[i][brCreated]){
if (BarreiraInfo[i][brID] == playerid) return SendClientMessage(playerid, COLOR_GREY, "Vocк sу pode implantar 1 barreira por vez, /rbr - para remover a sua.");
}
}
for(new i; i < MAX_BARREIRAS; i++){
if(!BarreiraInfo[i][brCreated]){
prid = i;
break;
}
}
if (prid == 999) return SendClientMessage(playerid, COLOR_GREY, " Hб muitas barreiras plantados no servidor!");
new Float:X, Float:Y, Float:Z, Float:A;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, A);
BarreiraInfo[prid][brID]=playerid;
BarreiraInfo[prid][brCreated]=1;
BarreiraInfo[prid][brObject] = CreateDynamicObject(981, X, Y, Z, 0.0, 0.0, A+180);
GameTextForPlayer(playerid, "~w~Barreira ~r~Plantada", 5000, 5);
SetPlayerPos(playerid, X, Y, Z+3);
format(string, sizeof string, "[Barreira]\nCriada por: %s[ID: %d]", NomePlayer(playerid), playerid);
BarreiraInfo[prid][brText] = Create3DTextLabel(string,0x77BBFFFF,X, Y, Z ,10.0, 0);
format(string, sizeof(string), "[%s] %s plantou uma barreira e fez um bloqueio.", NomeORG(playerid),PlayerName(playerid));
foreach(Player, i)
{
if(IsACop(i) || GetPlayerOrg(i) == 20)
{
SendClientMessage(i, TEAM_BLUE_COLOR, string);
}
}
return true;
}
PHP Code:
CMD:rbr(playerid)
{
if (!IsACop(playerid) && GetPlayerOrg(playerid) != 20) return SendClientMessage(playerid, COLOR_GREY, "Vocк nгo й um Policial/bombeiro!");
for(new i; i < MAX_BARREIRAS; i++)
{
if(BarreiraInfo[i][brCreated] && BarreiraInfo[i][brID] == playerid)
{
new string[128];
SendClientMessage(playerid, COLOR_GREY, "Vocк retirou sua barreira!");
BarreiraInfo[i][brID]=999;
BarreiraInfo[i][brCreated]=0;
DestroyDynamicObject(BarreiraInfo[i][brObject]);
Delete3DTextLabel(BarreiraInfo[i][brText]);
format(string, sizeof(string), "[%s] %s removeu sua barreira.", NomeORG(playerid),PlayerName(playerid));
foreach(Player, p)
{
if(IsACop(p) || GetPlayerOrg(p) == 20)
{
SendClientMessage(p, TEAM_BLUE_COLOR, string);
}
}
return true;
}
}
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo plantou nenhuma barreira!");
return true;
}
PHP Code:
CMD:dbr(playerid)
{
if(PlayerInfo[playerid][pJailed] != 0)return SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode usar esse comando na cadeia!");
if ((!IsACop(playerid) && GetPlayerOrg(playerid) != 20||PlayerInfo[playerid][pCargo] < 5) && !PlayerInfo[playerid][pAdmin]) return SendClientMessage(playerid, COLOR_GREY, "Vocк nгo й um Policial e ter cargo maior que 5.");
//new tpt = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(GetPlayerOrg(playerid) == GetPlayerOrg(i))
{
if(BarreiraInfo[i][brCreated])
{
RemoveRoadblock(i);
//tpt = 1;
}
}
}
//if(tpt == 0)return SendClientMessage(playerid, COLOR_GRAD1, "Nenhuma barreira foi plantada.");
new string[128];
format(string, sizeof(string), "[%s] %s removeu todas as barreiras de sua organizaзгo.", NomeORG(playerid),PlayerName(playerid));
foreach(Player, p)
{
if(IsACop(p) || GetPlayerOrg(p) == 20)
{
SendClientMessage(p, TEAM_BLUE_COLOR, string);
}
}
return true;
}