CMD:venderarma(playerid,params[])
{
new id,string[128],arma,pname[MAX_PLAYER_NAME];
if(sscanf(params, "ud",id,arma))return SendClientMessage(playerid,Vermelho,"| ERRO | /VenderArma [id] [ID Arma]");
if(arma < 24 || arma > 30)return SendClientMessage(playerid,Vermelho,"| ERRO | ID Invбlido de Arma!");
if(!IsPlayerConnected(id))return SendClientMessage(playerid,Vermelho,"| ERRO | Jogador(a) nгo Conectado(a)!");
if(id == playerid)return SendClientMessage(playerid, Vermelho, "| ERRO | Vocк Nгo Pode Utilizar Este Comando em si Mesmo!");
if(GetDistanceBetweenPlayers(playerid, id) > 6)return SendClientMessage(playerid,Vermelho,"| ERRO | Vocк Estб Muito Longe, Chegue Mais Perto!");
if(GetPlayerMoney(id) < 1000)return SendClientMessage(playerid, Vermelho, "| ERRO | Esse(a) Jogador(a) Nгo tem Dinheiro Suficiente Para Compra!");
GetPlayerName(id, pname, MAX_PLAYER_NAME);
vendendo[id] = playerid;
vendendo[id] = 1;
format(string,sizeof(string),"| INFO | {FFFFFF}Vocк Ofereceu a Arma ID:{710C0C}%d {FFFFFF}ao Jogador(a) {710C0C}%s{FFFFFF} !",arma,pName[id]);
SendClientMessage(playerid,C_VendedordArmas,string);
format(string,sizeof(string),"| INFO | {FFFFFF}O(A) Jogador(a) {710C0C}%s {FFFFFF}te Ofereceu a Arma ID:{710C0C}%d{FFFFFF} !",pName[playerid],arma);
SendClientMessage(id,C_VendedordArmas,string);
SendClientMessage(id,C_VendedordArmas,"| INFO | {FFFFFF}Vocк Tem 20 Segundos Para Aceitar ou Recusar! ( {710C0C}/Aceitar & {710C0C}/Recusar {FFFFFF})");
aceit[id] = SetTimerEx("demorou",20000, false, "i", id);
return 1;
}
CMD:aceitar(playerid)
{
new id,arma,string[128];
if(vendendo[playerid] == 1)
{
Dinheiro[playerid] = random_number(500,1000);
format(string,sizeof(string),"| INFO | {FFFFFF}Vocк Aceitou a Arma e Pagou {227E2C}$%d{FFFFFF}!",Dinheiro[playerid]);
SendClientMessage(playerid,C_VendedordArmas,string);
GivePlayerWeapon(playerid, arma, 1000);
GivePlayerMoney(playerid,-Dinheiro[playerid]);
format(string,sizeof(string),"| INFO | {FFFFFF}O(A) Jogador(a) {710C0C}%s {FFFFFF}Aceitou a Arma e Vocк Ganhou {227E2C}$%d {FFFFFF}!",pName[playerid],Dinheiro[playerid]);
SendClientMessage(vendendo[id],C_VendedordArmas,string);
GivePlayerMoney(vendendo[id],Dinheiro[playerid]);
KillTimer(aceit[id]);
vendendo[id] = 0;
vendendo[playerid] = 0;
}else{
SendClientMessage(playerid,Vermelho,"| ERRO | Ninguйm lhe Ofereceu Nada!!");
}
return 1;
}
vendendo[id] = playerid;
vendendo[id] = 1;
new bool:comprando[MAX_PLAYERS] = false, vendedor[MAX_PLAYERS], valorcompra[MAX_PLAYERS], objetocomprado[MAX_PLAYERS];
CMD:venderarma(playerid, params[]) {
new id, arma, valor, string[128], pname[MAX_PLAYER_NAME];
if(sscanf(params, "udd", id, arma, valor)) return SendClientMessage(playerid,Vermelho,"| ERRO | /VenderArma [id player] [ID Arma] [valor]");
if(arma < 24 || arma > 30) return SendClientMessage(playerid,Vermelho,"| ERRO | ID Invбlido de Arma!");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid,Vermelho,"| ERRO | Jogador(a) nгo Conectado(a)!");
if(id == playerid) return SendClientMessage(playerid, Vermelho, "| ERRO | Vocк Nгo Pode Utilizar Este Comando em si Mesmo!");
if(GetDistanceBetweenPlayers(playerid, id) > 6) return SendClientMessage(playerid,Vermelho,"| ERRO | Vocк Estб Muito Longe, Chegue Mais Perto!");
if(GetPlayerMoney(id) < valor) return SendClientMessage(playerid, Vermelho, "| ERRO | Esse(a) Jogador(a) Nгo tem Dinheiro Suficiente Para Compra!");
GetPlayerName(id, pname, MAX_PLAYER_NAME);
comprando[id] = true, vendedor[id] = playerid, valorcompra[id] = valor, objetocomprado[id] = arma;
format(string,sizeof(string), "| INFO | {FFFFFF}Vocк Ofereceu a Arma ID:{710C0C}%d {FFFFFF}ao Jogador(a) {710C0C}%s{FFFFFF} !", arma, pName[id]);
SendClientMessage(playerid, C_VendedordArmas, string);
format(string,sizeof(string), "| INFO | {FFFFFF}O(A) Jogador(a) {710C0C}%s {FFFFFF}te Ofereceu a Arma ID:{710C0C}%d{FFFFFF} por %d R$!",pName[playerid], arma, valor);
SendClientMessage(id, C_VendedordArmas, string);
SendClientMessage(id, C_VendedordArmas, "| INFO | {FFFFFF}Vocк Tem 20 Segundos Para Aceitar ou Recusar! ( {710C0C}/Aceitar & {710C0C}/Recusar {FFFFFF})");
aceit[id] = SetTimerEx("demorou",20000, false, "i", id);
return 1;
}
CMD:aceitar(playerid) {
new string[128];
if(comprando[playerid] != true) return SendClientMessage(playerid,Vermelho,"| ERRO | Ninguйm lhe Ofereceu Nada!!");
if(GetPlayerMoney(playerid) < valorcompra[playerid]) return SendClientMessage(playerid, Vermelho, "| ERRO | Vocк nгo possui mais dinheiro suficiente para fazer esta compra !");
format(string,sizeof(string),"| INFO | {FFFFFF}Vocк Aceitou a Arma ID: %d e Pagou {227E2C}$%d{FFFFFF}!", objetocomprado[playerid], valorcompra[playerid]);
SendClientMessage(playerid, C_VendedordArmas, string);
GivePlayerWeapon(playerid, objetocomprado[playerid], 100);
GivePlayerMoney(playerid, -valorcompra[playerid]);
format(string,sizeof(string),"| INFO | {FFFFFF}O(A) Jogador(a) {710C0C}%s {FFFFFF}Aceitou a Arma e Vocк Ganhou {227E2C}$%d {FFFFFF}!",pName[playerid], valorcompra[playerid]);
SendClientMessage(vendedor[playerid], C_VendedordArmas,string);
GivePlayerMoney(vendedor[playerid], valorcompra[playerid]);
KillTimer(aceit[playerid]);
comprando[playerid] = false, valorcompra[playerid] = 0, objetocomprado[playerid] = 0, vendedor[playerid] = 0;
return 1;
}
comprando[playerid] = false, valorcompra[playerid] = 0, objetocomprado[playerid] = 0, vendedor[playerid] = 0;
PHP Code:
Code:
comprando[playerid] = false, valorcompra[playerid] = 0, objetocomprado[playerid] = 0, vendedor[playerid] = 0; |
Bom pessoal eu consegui resolver esse pequeno problema com armazenamento, sу que agora estou tendo outro pequeno problema que nгo estou conseguindo resolver com esses mesmos comandos, o seguinte problema й que sу consigo vender arma pro jogador que tiver no id 0, oque eu faзo quanto a isso??
Se um jogador oferecer arma pro id 1 e eu der /aceitar manda a mensagem de erro, oque nгo era pra acontecer. Desde jб agradeзo. |