25.07.2012, 22:40
O sistema de loja de armas que eu uso й em dialog, queria saber como faзo pro player comprar colete na loja.
SetPlayerArmour(playerid, percentagem);
// exemplo
SetPlayerArmour(playerid, 100); // 100%
SetPlayerArmour(playerid, 75); // 75%
if(dialogid == 6)
{
if(response == 0)
{
RodrigoInfo[playerid][PLojaA1] = 0;
RodrigoInfo[playerid][PLojaA2] = 0;
return 1;
}
if(response == 1)
{
if(listitem == 0)
{
ShowPlayerDialog(playerid, 8, DIALOG_STYLE_LIST, "Escolha seu KitVip", "Kit Vip Bronze\nKit Vip Prata\nKit Vip Ouro", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 1)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "eagle", 0, strlen("eagle"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 2)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "mp5", 0, strlen("mp5"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 3)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "shotgun", 0, strlen("shotgun"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 4)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "ak47", 0, strlen("ak47"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 5)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "m4", 0, strlen("m4"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 6)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "rifle", 0, strlen("rifle"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 7)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "parachute", 0, strlen("parachute"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 8)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "golfclub", 0, strlen("golfclub"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 9)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "nightstick", 0, strlen("nightstick"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 10)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "baseballbat", 0, strlen("baseballbat"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 11)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "shovel", 0, strlen("shovel"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 12)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "poolcue", 0, strlen("poolcue"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 13)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "purpledildo", 0, strlen("purpledildo"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 14)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "whitedildo", 0, strlen("whitedildo"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 15)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "longwhitedildo", 0, strlen("longwhitedildo"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 16)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "whitedildo2", 0, strlen("whitedildo2"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 17)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "flowers", 0, strlen("flowers"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
if(listitem == 18)
{
strmid(RodrigoInfo[playerid][ArmaLoja], "cane", 0, strlen("cane"), 255);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_INPUT, "Escolha a quantidade de Muniзгo", "Digite a quantidade de Muniзгo que vocк deseja!", "Confirmar", "Cancelar");
return 1;
}
RodrigoInfo[playerid][PLojaA1] = 0;
RodrigoInfo[playerid][PLojaA2] = 0;
return 1;
}
return 1;
}
if (strcmp(cmd, "/comprararma", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(GetPlayerMoney(playerid) < 1)
{
SendClientMessage(playerid, COLOR_GREY, " Vocк nгo tem todo esse dinheiro!!");
return 1;
}
new gun;
new gunid[16];
new guncharge;
new ammocharge;
new location = PlayerInfo[playerid][pLocal];
if(location == 99 || location == 100 || location == 102)
{
new mod = 100;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "|______________ Armas ______________|");
SendClientMessage(playerid, COLOR_GRAD2,"USE: /comprararma [arma] [muniзгo]");
format(gstring, 128, "Armas: parachute (R$%d) golfclub (R$%d) nightstick (R$%d) baseballbat (R$%d) shovel (R$%d) poolcue (R$%d)",
GunPrice[0][0]/100*mod,GunPrice[1][0]/100*mod,GunPrice[2][0]/100*mod,GunPrice[3][0]/100*mod,GunPrice[4][0]/100*mod,GunPrice[5][0]/100*mod,GunPrice[6][0]/100*mod);
SendClientMessage(playerid, COLOR_GRAD3, gstring);
format(gstring, 128, "Armas: purpledildo (R$%d) whitedildo (R$%d) longwhitedildo (R$%d) whitedildo2 (R$%d) flowers (R$%d) cane",
GunPrice[7][0]/100*mod,GunPrice[8][0]/100*mod,GunPrice[9][0]/100*mod,GunPrice[10][0]/100*mod,GunPrice[11][0]/100*mod,GunPrice[12][0]/100*mod);
SendClientMessage(playerid, COLOR_GRAD3, gstring);
format(gstring, 128, "Armas: eagle (R$%d) pistola (R$%d) mp5 (R$%d)",
GunPrice[13][0]/100*mod,GunPrice[14][0]/100*mod,GunPrice[15][0]/100*mod,GunPrice[16][0]/100*mod,GunPrice[17][0]/100*mod,GunPrice[18][0]/100*mod);
SendClientMessage(playerid, COLOR_GRAD3, gstring);
format(gstring, 128, "Armas: shotgun (R$%d) ak47 (R$%d) m4 (R$%d) rifle (R$%d)",
GunPrice[19][0]/100*mod,GunPrice[20][0]/100*mod,GunPrice[21][0]/100*mod,GunPrice[22][0]/100*mod,GunPrice[23][0]/100*mod,GunPrice[24][0]/100*mod);
SendClientMessage(playerid, COLOR_GRAD3, gstring);
format(gstring, 128, "Armas: pistolammo (R$%d) shotgunammo (R$%d) smgammo (R$%d) assaultammo (R$%d) rifleammo (R$%d)",
GunPrice[25][0],GunPrice[26][0],GunPrice[27][0],GunPrice[28][0],GunPrice[29][0]);
SendClientMessage(playerid, COLOR_GRAD3, gstring);
return 1;
}
strmid(gunid, tmp, 0, strlen(cmdtext), 255);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /comprararma [arma] [muniзгo]");
return 1;
}
new ammo = strval(tmp);
if(ammo < 1 || ammo > 999) { SendClientMessage(playerid, COLOR_GREY, " Muniзгo tem que ser entre 1 e 999 !"); return 1; }
if (strcmp(gunid, "parachute", true, strlen(gunid)) == 0)
{
gun = 46;
guncharge = GunPrice[0][0]/100*mod;
ammocharge = 0;
}
else if (strcmp(gunid, "golfclub", true, strlen(gunid)) == 0)
{
gun = 2; guncharge = GunPrice[1][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "nightstick", true, strlen(gunid)) == 0)
{
gun = 3; guncharge = GunPrice[2][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "baseballbat", true, strlen(gunid)) == 0)
{
gun = 5; guncharge = GunPrice[4][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "shovel", true, strlen(gunid)) == 0)
{
gun = 6; guncharge = GunPrice[5][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "poolcue", true, strlen(gunid)) == 0)
{
gun = 7; guncharge = GunPrice[6][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "purpledildo", true, strlen(gunid)) == 0)
{
gun = 10; guncharge = GunPrice[7][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "whitedildo", true, strlen(gunid)) == 0)
{
gun = 11; guncharge = GunPrice[8][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "longwhitedildo", true, strlen(gunid)) == 0)
{
gun = 12; guncharge = GunPrice[9][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "whitedildo2", true, strlen(gunid)) == 0)
{
gun = 13; guncharge = GunPrice[10][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "flowers", true, strlen(gunid)) == 0)
{
gun = 14; guncharge = GunPrice[11][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "cane", true, strlen(gunid)) == 0)
{
gun = 15; guncharge = GunPrice[12][0]/100*mod; ammocharge = 0;
}
else if (strcmp(gunid, "eagle", true, strlen(gunid)) == 0)
{
gun = 24; guncharge = GunPrice[15][0]/100*mod; ammocharge = GunPrice[25][0]*ammo;
}
else if (strcmp(gunid, "mp5", true, strlen(gunid)) == 0)
{
gun = 29; guncharge = GunPrice[18][0]/100*mod; ammocharge = GunPrice[27][0]*ammo;
}
else if (strcmp(gunid, "shotgun", true, strlen(gunid)) == 0)
{
gun = 25; guncharge = GunPrice[19][0]/100*mod; ammocharge = GunPrice[26][0]*ammo;
}
else if (strcmp(gunid, "ak47", true, strlen(gunid)) == 0)
{
gun = 30; guncharge = GunPrice[22][0]/100*mod; ammocharge = GunPrice[28][0]*ammo;
}
else if (strcmp(gunid, "m4", true, strlen(gunid)) == 0)
{
gun = 31; guncharge = GunPrice[23][0]/100*mod; ammocharge = GunPrice[28][0]*ammo;
}
else if (strcmp(gunid, "rifle", true, strlen(gunid)) == 0)
{
gun = 33; guncharge = GunPrice[24][0]/100*mod; ammocharge = GunPrice[29][0]*ammo;
}
else
{
SendClientMessage(playerid, COLOR_GRAD6, "Vendedor: Nunca ouvi falar dessa arma.");
return 1;
}
if((guncharge+ammocharge) > GetPlayerMoney(playerid))
{
format(gstring, 128, " Vocк nгo tem R$%d para pagar !",guncharge+ammocharge);
SendClientMessage(playerid, COLOR_GRAD3, gstring);
return 1;
}
new payout = guncharge + ammocharge;
format(gstring, 128, "Vocк comprou um(a) %s com %d bala(s) por R$%d",gunid,ammo,payout);
SendClientMessage(playerid, COLOR_GRAD3, gstring);
if(location == 102 && IsACop(playerid)) { }
else { GivePlayerMoney(playerid, - payout); }
BizzInfo[location-99][bTill] += payout;
ExtortionBiz(location-99, payout);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
GivePlayerWeapon(playerid, gun, ammo);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(gstring, sizeof(gstring), "%s comprou armas por R$%d na empresa %d", sendername, payout, location-99);
printf("%s", gstring);
//PayLog(gstring);
}
else
{
SendClientMessage(playerid, COLOR_WHITE,"Vocк nгo estб em uma loja de armas.");
return 1;
}
}
return 1;
}