BUG no /assaltar -
LeoFigueiredo - 12.12.2013
Galera, quando o marginal vai assaltar, ele dб o /assaltar, atй ai tudo bem.
O problema й que, se ele botar 999999999999999999999999999999999 e a vitima nгo tiver, a vitima fica devendo o valor e o marginal ganha a grana.
Por favor me dкm uma luz.
pawn Код:
if(strcmp(cmd,"/assaltar",true)==0)
{
if(PlayerInfo[playerid][pJailed] != 0 || PlayerPaintballing[playerid] != 0)
{
SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode assaltar agora!");
return 1;
}
if(PlayerInfo[playerid][pMembro] != 5 && PlayerInfo[playerid][pLider] != 5 && PlayerInfo[playerid][pMembro] != 14 && PlayerInfo[playerid][pLider] != 14
&& PlayerInfo[playerid][pMembro] != 17 && PlayerInfo[playerid][pLider] != 17 && PlayerInfo[playerid][pMembro] != 18 && PlayerInfo[playerid][pLider] != 18
&& PlayerInfo[playerid][pMembro] != 19 && PlayerInfo[playerid][pLider] != 19 && PlayerInfo[playerid][pMembro] != 20 && PlayerInfo[playerid][pLider] != 20
&& PlayerInfo[playerid][pMembro] == 21 && PlayerInfo[playerid][pLider] == 21)
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode usar esse comando!" );
return 1;
}
if(IsPlayerConnected(playerid))
{
if(UsouComando[playerid] == 1) return SendClientMessage(playerid, COLOR_GREY, "Vocк jб usou esse comando uma vez, espere mais 5 minutos!");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /assaltar [id] [Quantia]");
return 1;
}
//giveplayerid = strval(tmp);
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /assaltar [id] [Quantia]");
return 1;
}
new money = strval(tmp);
if(money < 1|| money > 99999999) { SendClientMessage(playerid, COLOR_GREY, " O Preзo Tem que ser entre R$ 1 e R$ 99999999!"); return 1; }
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pLevel] == 2)
{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo pode assaltar novatos!");
return 1;
}
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* Vocк estб assaltando $%d de %s.", money, giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* %s: Isso й um assalto,pague $%d! nгo seja Ant-RPG.", sendername, money);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, "/aceitar assalto para aceitar");
format(string, sizeof(string), "*%s estб assaltando %s!", sendername,giveplayer);
ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
OfAssalto[giveplayerid] = playerid;
precoassalto[giveplayerid] = money;
SetPlayerCriminal(playerid,255, "Tentativa de Assalto");
UsouComando[playerid] = 1;
SetTimerEx("UsarNovamente",300000,0,"d",playerid);
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Esse jogador nгo estб perto de vocк!");
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " ID/Nome Invalido !");
return 1;
}
}
}
return 1;
}
Re: BUG no /assaltar -
NurbWill - 12.12.2013
pawn Код:
if(strcmp(cmd,"/assaltar",true)==0)
{
if(PlayerInfo[playerid][pJailed] != 0 || PlayerPaintballing[playerid] != 0)
{
SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode assaltar agora!");
return 1;
}
if(PlayerInfo[playerid][pMembro] != 5 && PlayerInfo[playerid][pLider] != 5 && PlayerInfo[playerid][pMembro] != 14 && PlayerInfo[playerid][pLider] != 14
&& PlayerInfo[playerid][pMembro] != 17 && PlayerInfo[playerid][pLider] != 17 && PlayerInfo[playerid][pMembro] != 18 && PlayerInfo[playerid][pLider] != 18
&& PlayerInfo[playerid][pMembro] != 19 && PlayerInfo[playerid][pLider] != 19 && PlayerInfo[playerid][pMembro] != 20 && PlayerInfo[playerid][pLider] != 20
&& PlayerInfo[playerid][pMembro] == 21 && PlayerInfo[playerid][pLider] == 21)
{
SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode usar esse comando!" );
return 1;
}
if(IsPlayerConnected(playerid))
{
if(UsouComando[playerid] == 1) return SendClientMessage(playerid, COLOR_GREY, "Vocк jб usou esse comando uma vez, espere mais 5 minutos!");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /assaltar [id] [Quantia]");
return 1;
}
//giveplayerid = strval(tmp);
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /assaltar [id] [Quantia]");
return 1;
}
new money = strval(tmp);
if(money < 1|| money > 99999999) { SendClientMessage(playerid, COLOR_GREY, " O Preзo Tem que ser entre R$ 1 e R$ 99999999!"); return 1; }
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pLevel] == 2)
{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo pode assaltar novatos!");
return 1;
}
if(GetPlayerMoney(giveplayerid) < money)
return SendClientMessage(playerid, COLOR_GRAD1, "A vitima nгo tem esse dinheiro.");
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* Vocк estб assaltando $%d de %s.", money, giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* %s: Isso й um assalto,pague $%d! nгo seja Ant-RPG.", sendername, money);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, "/aceitar assalto para aceitar");
format(string, sizeof(string), "*%s estб assaltando %s!", sendername,giveplayer);
ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
OfAssalto[giveplayerid] = playerid;
precoassalto[giveplayerid] = money;
SetPlayerCriminal(playerid,255, "Tentativa de Assalto");
UsouComando[playerid] = 1;
SetTimerEx("UsarNovamente",300000,0,"d",playerid);
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Esse jogador nгo estб perto de vocк!");
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " ID/Nome Invalido !");
return 1;
}
}
}
return 1;
}
@Edit - Pronto agora sim : )
Re: BUG no /assaltar -
LeoFigueiredo - 12.12.2013
Obrigado NurbWill !!
Funcionou direitinho;
Re: BUG no /assaltar -
Input - 12.12.2013
Sу um jeito de organizar melhor seu script!
pawn Код:
if(!strcmp(cmd,"/assaltar",true))
{
if(PlayerInfo[playerid][pJailed] != 0 || PlayerPaintballing[playerid] != 0)
return SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode assaltar agora!");
if(PlayerInfo[playerid][pMembro] != 5 && PlayerInfo[playerid][pLider] != 5 && PlayerInfo[playerid][pMembro] != 14 && PlayerInfo[playerid][pLider] != 14
&& PlayerInfo[playerid][pMembro] != 17 && PlayerInfo[playerid][pLider] != 17 && PlayerInfo[playerid][pMembro] != 18 && PlayerInfo[playerid][pLider] != 18
&& PlayerInfo[playerid][pMembro] != 19 && PlayerInfo[playerid][pLider] != 19 && PlayerInfo[playerid][pMembro] != 20 && PlayerInfo[playerid][pLider] != 20
&& PlayerInfo[playerid][pMembro] == 21 && PlayerInfo[playerid][pLider] == 21)
return SendClientMessage(playerid, COLOR_GREY, "Vocк nгo pode usar esse comando!" );
if(IsPlayerConnected(playerid))
{
if(UsouComando[playerid] == 1) return SendClientMessage(playerid, COLOR_GREY, "Vocк jб usou esse comando uma vez, espere mais 5 minutos!");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GRAD2, "USE: /assaltar [id] [Quantia]");
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GRAD2, "USE: /assaltar [id] [Quantia]");
new money = strval(tmp);
if(money < 1|| money > 99999999) { SendClientMessage(playerid, COLOR_GREY, " O Preзo Tem que ser entre R$ 1 e R$ 99999999!"); return 1; }
if (IsPlayerConnected(giveplayerid)) {
if(giveplayerid != INVALID_PLAYER_ID) {
if(PlayerInfo[giveplayerid][pLevel] == 2)
return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo pode assaltar novatos!");
if(GetPlayerMoney(giveplayerid) < money)
return SendClientMessage(playerid, COLOR_GRAD1, "A vitima nгo tem esse dinheiro.");
if (ProxDetectorS(5.0, playerid, giveplayerid)) {
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* Vocк estб assaltando $%d de %s.", money, giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* %s: Isso й um assalto,pague $%d! nгo seja Ant-RPG.", sendername, money);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, "/aceitar assalto para aceitar");
format(string, sizeof(string), "*%s estб assaltando %s!", sendername,giveplayer);
ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
OfAssalto[giveplayerid] = playerid;
precoassalto[giveplayerid] = money;
SetPlayerCriminal(playerid,255, "Tentativa de Assalto");
UsouComando[playerid] = 1;
SetTimerEx("UsarNovamente",300000,0,"d",playerid);
}
else
return SendClientMessage(playerid, COLOR_GREY, "Esse jogador nгo estб perto de vocк!");
}
else
return SendClientMessage(playerid, COLOR_GREY, " ID/Nome Invalido !");
}
}
return 1;
}