[Ajuda] Bug no /contrato. -
ChrisRock - 18.03.2012
Eu mexi aqui olhei e aparentemente n vi nenhum erro no cmd, mas eu sou burro e posso n ter percebido..
o valor minimo do contrato eu coloquei 200 e o maximo 2000.. sу que quando tento dar um /contrato com 400 reais ou mais, da o erro no jogo: O valor de transiзгo do contrato estб invalido..
Avaliem ae e vejam oq tem de errado pra mim ? + REP.
pawn Код:
dcmd_contrato(playerid, params[])
{
new tmp[24], idx; tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GREY, "[USO] /contrato [id/nick] [amount]");
new giveid = ReturnUser(tmp);
tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GREY, "[USO] /contrato [id/nick] [amount]");
if(Player[playerid][pMember] == TEAM_HITMAN)
return SendClientMessage(playerid, COLOR_RED, "[ERRO] Hitmans nгo podem fazer contratos.");
new moneys = strval(tmp);
if(moneys < 200 || moneys > 2000)
return SendClientMessage(playerid, COLOR_RED, "[ERRO] O contrato deve ser entre R$200 e R$2000)");
if(IsPlayerConnected(giveid))
{
if(Player[giveid][pLeader] == TEAM_HITMAN && Player[playerid][pMember] == TEAM_HITMAN)
return SendClientMessage(playerid,COLOR_RED, "[ERRO] Vocк nгo pode criar os contratos sobre o lнder.");
else if(Player[giveid][pMember] == TEAM_HITMAN||Player[giveid][pLeader] == TEAM_HITMAN)
return SendClientMessage(playerid,COLOR_RED, "[ERRO] Vocк nгo pode fazer contrato em um Hitman.");
else if(gTeam[giveid] == 2 && moneys != 1000)
return SendClientMessage(playerid, COLOR_RED, "[ERRO] Contrato para cabeca de oficiais somente no valor de R$1000.");
else if(giveid == playerid)
return SendClientMessage(playerid, COLOR_RED, "[ERRO] Vocк nгo pode fazer um contrato sobre si mesmo.");
new playermoney = GetPlayerGP(playerid);
if(moneys > 0 && playermoney >= moneys)
{
if(Player[giveid][pMember] == TEAM_HITMAN)
{
format(thestring, sizeof(thestring), "Vocк criou um contrato sobre %s, por R$ %d.",Player[giveid][pName], moneys);
SendClientMessage(playerid, COLOR_DRIFTERS, thestring);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
return 1;
}
GivePlayerGP(playerid, (-moneys));
Player[giveid][pHeadValue] += moneys;
format(thestring, sizeof(thestring), "<< %s criou um contrato sobre %s, por R$ %d. >>",Player[playerid][pName],Player[giveid][pName], moneys);
SendTeamMessage(8, COLOR_DRIFTERS, thestring);
format(thestring, sizeof(thestring), "Vocк criou um contrato sobre %s, por R$ %d.",Player[giveid][pName], moneys);
SendClientMessage(playerid, COLOR_DRIFTERS, thestring);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
}
else
SendClientMessage(playerid, COLOR_RED, "[ERRO] O valor de transiзгo do contrato estб invбlido.");
}
else
SendClientMessage(playerid, COLOR_RED, "[ERRO] Jogador nгo encontrado.");
return 1;
}
Re: [Ajuda] Bug no /contrato. -
Sampizito - 18.03.2012
pawn Код:
dcmd_contrato(playerid, params[])
{
new tmp[24], idx; tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GREY, "[USO] /contrato [id/nick] [amount]");
new giveid = ReturnUser(tmp);
tmp = strtok(params, idx);
if(!strlen(tmp))
return SendClientMessage(playerid, COLOR_GREY, "[USO] /contrato [id/nick] [amount]");
if(Player[playerid][pMember] == TEAM_HITMAN)
return SendClientMessage(playerid, COLOR_RED, "[ERRO] Assassinos nгo podem fazer contratos.");
new moneys = strval(tmp);
if(moneys < 200 || moneys > 2000)
return SendClientMessage(playerid, COLOR_RED, "[ERRO] O contrato deve ser entre R$200 e R$2000)");
if(IsPlayerConnected(giveid))
{
if(Player[giveid][pAdmin] > 0)
return SendClientMessage(playerid,COLOR_RED, "[ERRO] Vocк nгo pode fazer contrato em um admin.");
if(Player[giveid][pLeader] == TEAM_HITMAN && Player[playerid][pMember] == TEAM_HITMAN)
return SendClientMessage(playerid,COLOR_RED, "[ERRO] Vocк nгo pode criar os contratos sobre o lнder.");
else if(Player[giveid][pMember] == TEAM_HITMAN||Player[giveid][pLeader] == TEAM_HITMAN)
return SendClientMessage(playerid,COLOR_RED, "[ERRO] Vocк nгo pode fazer contrato em um assassino.");
else if(gTeam[giveid] == 2 && moneys != 1000)
return SendClientMessage(playerid, COLOR_RED, "[ERRO] Contrato para cabeca de oficiais somente no valor de R$1000.");
else if(giveid == playerid)
return SendClientMessage(playerid, COLOR_RED, "[ERRO] Vocк nгo pode fazer um contrato sobre si mesmo.");
new playermoney = GetPlayerGP(playerid);
if(moneys > 0 && playermoney >= moneys)
{
if(Player[giveid][pMember] == TEAM_HITMAN)
{
format(thestring, sizeof(thestring), "Vocк criou um contrato sobre %s, por R$ %d.",Player[giveid][pName], moneys);
SendClientMessage(playerid, COLOR_LIGHTBLUE, thestring);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
return 1;
}
GivePlayerGP(playerid, (-moneys));
Player[giveid][pHeadValue] += moneys;
format(thestring, sizeof(thestring), "<< Alguйm criou um contrato sobre %s, por R$ %d. >>",Player[giveid][pName], moneys);
SendTeamMessage(8, COLOR_LIGHTBLUE, thestring);
format(thestring, sizeof(thestring), "Vocк criou um contrato sobre %s, por R$ %d.",Player[giveid][pName], moneys);
SendClientMessage(playerid, COLOR_LIGHTBLUE, thestring);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
}
else
SendClientMessage(playerid, COLOR_RED, "[ERRO] O valor de transiзгo do contrato estб invбlido.");
}
else
SendClientMessage(playerid, COLOR_RED, "[ERRO] Jogador nгo encontrado.");
return 1;
}
Compile , com f5..
Caso nгo der, desative os filter scripters, do servidor e tente..
Re: [Ajuda] Bug no /contrato. -
ChrisRock - 18.03.2012
Nгo deu.
Mesma coisa os 2 pow. Unica coisa que mudei nesta biroska ae й que aparece qm criou os contrato pros hitman.
No meu backup sem mostrar qm fez o contrato funfa normal, dae botei isso e da erro no valor da transiзгo.
pawn Код:
format(thestring, sizeof(thestring), "<< %s criou um contrato sobre %s, por R$ %d. >>",Player[playerid][pName],Player[giveid][pName], moneys);
SendTeamMessage(8, COLOR_DRIFTERS, thestring);
Re: [Ajuda] Bug no /contrato. -
Sampizito - 18.03.2012
Estranho ._.
Re: [Ajuda] Bug no /contrato. -
ChrisRock - 18.03.2012
nй..
Re: [Ajuda] Bug no /contrato. -
ChrisRock - 20.03.2012
Up
ngm sabe mano ?
Re: [Ajuda] Bug no /contrato. -
paulor - 20.03.2012
Corrigindo! Estб dando o erro pois vc esta colocando um valor menor que 0 ou nгo tem o dinheiro q coloca no contrato. Pois o CMD esta correto!
Re: [Ajuda] Bug no /contrato. -
ChrisRock - 20.03.2012
Uai, tava com 2kk na mгo, tentei colocar /contrato id 500.. nгo funfa auheauheu
vou tentar de novo