Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ||
- XX************************************X
- XX******XXX*************************X
- XX*******XXXX****XXX**************X
- XX*********XXX*XXX**************X
- XX**********XXXXXX************X
- XX*********XXX**XXX************X
- XX********XXX****XXXX************X
- XX****XXXX*********XXXXX************X
- XX******************XXXXXXX***********X
- XX**************************************X
- XX
- XX
- XX
- XX
- XXXX
- XXXXXX
- */
- #include a_samp
- #include zcmd
- #include sscanf2
- #include dof2
- enum pInfo
- {
- pArma01,
- pArma02,
- pArma03,
- pArma04,
- pBalas01,
- pBalas02,
- pBalas03,
- pBalas04
- }
- new status[MAX_PLAYERS][pInfo];
- public OnFilterScriptExit(){DOF2_Exit();}
- public OnPlayerConnect(playerid){CarregarBconta(playerid);return 1;}
- public OnPlayerDisconnect(playerid){SalvarContas(playerid);return 1;}
- CMD:inventario(playerid)
- {
- new Arma1[128];
- new Arma2[128];
- new Arma3[128];
- new Arma4[128];
- new armaBala[4];
- switch(status[pInfo][pArma01])
- {
- case 3: Arma1 = "Cassetete";case 4: Arma1 = "Faca";case 5: Arma1 = "Taco de Baseball";
- case 6: Arma1 = "Pá";case 7: Arma1 = "Espada";case 8: Arma1 = "Katana";
- case 14: Arma1 = "Flores";case 16: Arma1 = "Granadas";case 17: Arma1 = "Granada Gás";
- case 18: Arma1 = "Molotovs";case 22: Arma1 = "Pistola";case 23: Arma1 = "Pistola com Silenciador";
- case 24: Arma1 = "Eagle";case 25: Arma1 = "Escopeta";case 29: Arma1 = "MP5";
- case 30: Arma1 = "AK47";case 31: Arma1 = "M4";case 33: Arma1 = "Rifle";
- case 34: Arma1 = "Sniper";case 37: Arma1 = "Lança Chamas";case 41: Arma1 = "spray";
- case 42: Arma1 = "extintor";case 43: Arma1 = "Camera";case 46: Arma1 = "Paraquedas";
- }
- switch(status[pInfo][pArma02])
- {
- case 3: Arma2 = "Cassetete";case 4: Arma2 = "Faca";case 5: Arma2 = "Taco de Baseball";
- case 6: Arma2 = "Pá";case 7: Arma2 = "Espada";case 8: Arma2 = "Katana";
- case 14: Arma2 = "Flores";case 16: Arma2 = "Granadas";case 17: Arma2 = "Granada Gás";
- case 18: Arma2 = "Molotovs";case 22: Arma2 = "Pistola";case 23: Arma2 = "Pistola com Silenciador";
- case 24: Arma2 = "Eagle";case 25: Arma2 = "Escopeta";case 29: Arma2 = "MP5";
- case 30: Arma2 = "AK47";case 31: Arma2 = "M4";case 33: Arma2 = "Rifle";
- case 34: Arma2 = "Sniper";case 37: Arma2 = "Lança Chamas";case 41: Arma2 = "spray";
- case 42: Arma2 = "extintor";case 43: Arma2 = "Camera";case 46: Arma2 = "Paraquedas";
- }
- switch(status[pInfo][pArma03])
- {
- case 3: Arma3 = "Cassetete";case 4: Arma3 = "Faca";case 5: Arma3 = "Taco de Baseball";
- case 6: Arma3 = "Pá";case 7: Arma3 = "Espada";case 8: Arma3 = "Katana";
- case 14: Arma3 = "Flores";case 16: Arma3 = "Granadas";case 17: Arma3 = "Granada Gás";
- case 18: Arma3 = "Molotovs";case 22: Arma3 = "Pistola";case 23: Arma3 = "Pistola com Silenciador";
- case 24: Arma3 = "Eagle";case 25: Arma3 = "Escopeta";case 29: Arma3 = "MP5";
- case 30: Arma3 = "AK47";case 31: Arma3 = "M4";case 33: Arma3 = "Rifle";
- case 34: Arma3 = "Sniper";case 37: Arma3 = "Lança Chamas";case 41: Arma3 = "spray";
- case 42: Arma3 = "extintor";case 43: Arma3 = "Camera";case 46: Arma3 = "Paraquedas";
- }
- switch(status[pInfo][pArma04])
- {
- case 3: Arma4 = "Cassetete";case 4: Arma4 = "Faca";case 5: Arma4 = "Taco de Baseball";
- case 6: Arma4 = "Pá";case 7: Arma4 = "Espada";case 8: Arma4 = "Katana";
- case 14: Arma4 = "Flores";case 16: Arma4 = "Granadas";case 17: Arma4 = "Granada Gás";
- case 18: Arma4 = "Molotovs";case 22: Arma4 = "Pistola";case 23: Arma4 = "Pistola com Silenciador";
- case 24: Arma4 = "Eagle";case 25: Arma4 = "Escopeta";case 29: Arma4 = "MP5";
- case 30: Arma4 = "AK47";case 31: Arma4 = "M4";case 33: Arma4 = "Rifle";
- case 34: Arma4 = "Sniper";case 37: Arma4 = "Lança Chamas";case 41: Arma4 = "spray";
- case 42: Arma4 = "extintor";case 43: Arma4 = "Camera";case 46: Arma4 = "Paraquedas";
- }
- armaBala[0] = status[pInfo][pBalas01];
- armaBala[1] = status[pInfo][pBalas02];
- armaBala[2] = status[pInfo][pBalas03];
- armaBala[3] = status[pInfo][pBalas04];
- new _string[128];
- format(_string, 128, "[INV]{00FF00} SLOT 1 - Arma: {FF0000}%s {FFFFFF}|{00FF00} Munição: {FF0000}%d",Arma1, armaBala[0]);
- SendClientMessage(playerid, -1, _string);
- format(_string, 128, "[INV]{00FF00} SLOT 2 - Arma: {FF0000}%s {FFFFFF}|{00FF00} Munição: {FF0000}%d",Arma2, armaBala[1]);
- SendClientMessage(playerid, -1, _string);
- format(_string, 128, "[INV]{00FF00} SLOT 3 - Arma: {FF0000}%s {FFFFFF}|{00FF00} Munição: {FF0000}%d",Arma3, armaBala[2]);
- SendClientMessage(playerid, -1, _string);
- format(_string, 128, "[INV]{00FF00} SLOT 4 - Arma: {FF0000}%s {FFFFFF}|{00FF00} Munição: {FF0000}%d",Arma4, armaBala[3]);
- SendClientMessage(playerid, -1, _string);
- return true;
- }
- CMD:colocararma(playerid, params[])
- {
- new _string[128];
- new SLOT;
- if(sscanf(params,"i",SLOT)) return SendClientMessage(playerid, -1, "{FF0000}[INV-Modo] {00FF00}/colocararma {FF0000}[SLOT]");
- {
- new
- pMinhaArma,
- pMinhasBalas;
- if(!GetPlayerWeapon(playerid)) return SendClientMessage(playerid, -1, "{FF0000}Você não tem uma arma !");
- pMinhaArma = GetPlayerWeapon(playerid);
- pMinhasBalas = GetPlayerAmmo(playerid);
- switch(SLOT)
- {
- case 1:
- {
- if(status[pInfo][pArma01] > 0) return SendClientMessage(playerid, -1, "{FF0000}Não há nenhuma arma nessa vaga.");
- status[pInfo][pArma01] = pMinhaArma;
- status[pInfo][pBalas01] = pMinhasBalas;
- format(_string, 128, "{00FF00}Você colocou uma arma no slot 1.");
- SendClientMessage(playerid, -1, _string);
- RemovePlayerWeapon(playerid, GetPlayerWeapon(playerid));
- return 1;
- }
- case 2:
- {
- if(status[pInfo][pArma02] > 0) return SendClientMessage(playerid, -1, "{FF0000}Esse slot já está preenchido.");
- status[pInfo][pArma02] = pMinhaArma;
- status[pInfo][pBalas02] = pMinhasBalas;
- format(_string, 128, "{00FF00}Você colocou uma arma no slot 2.");
- SendClientMessage(playerid, -1, _string);
- RemovePlayerWeapon(playerid, GetPlayerWeapon(playerid));
- return 1;
- }
- case 3:
- {
- if(status[pInfo][pArma03] > 0) return SendClientMessage(playerid, -1, "{FF0000}Esse slot já está preenchido.");
- status[pInfo][pArma03] = pMinhaArma;
- status[pInfo][pBalas03] = pMinhasBalas;
- format(_string, 128, "{00FF00}Você colocou uma arma no slot 3.");
- SendClientMessage(playerid, -1, _string);
- RemovePlayerWeapon(playerid, GetPlayerWeapon(playerid));
- return 1;
- }
- case 4:
- {
- if(status[pInfo][pArma04] > 0) return SendClientMessage(playerid, -1, "{FF0000}Esse slot já está preenchido.");
- status[pInfo][pArma04] = pMinhaArma;
- status[pInfo][pBalas04] = pMinhasBalas;
- format(_string, 128, "{00FF00}Você colocou uma arma no slot 4.");
- SendClientMessage(playerid, -1, _string);
- RemovePlayerWeapon(playerid, GetPlayerWeapon(playerid));
- return 1;
- }
- default: SendClientMessage(playerid, -1, "Use numeros de 1 a 4.");
- }
- }
- return 1;
- }
- CMD:retirararma(playerid, params[])
- {
- new _string[128];
- new SLOT;
- if(sscanf(params,"i",SLOT)) return SendClientMessage(playerid, -1, "{FF0000}[INV-Modo] {00FF00}/retirararma {FF0000}[SLOT]");
- {
- switch(SLOT)
- {
- case 1:
- {
- if(status[pInfo][pArma01] == 0) return SendClientMessage(playerid, -1, "{FF0000}Voce não possue uma arma neste SLOT.");
- GivePlayerWeapon(playerid, status[pInfo][pArma01], status[pInfo][pBalas01]);
- status[pInfo][pArma01] = 0;
- status[pInfo][pBalas01] = 0;
- format(_string, 128, "{00FF00}Você retirou uma arma do slot 2!");
- SendClientMessage(playerid, -1, _string);
- return 1;
- }
- case 2:
- {
- if(status[pInfo][pArma01] == 0) return SendClientMessage(playerid, -1, "{FF0000}Voce não possue uma arma neste SLOT.");
- GivePlayerWeapon(playerid, status[pInfo][pArma02], status[pInfo][pBalas02]);
- status[pInfo][pArma02] = 0;
- status[pInfo][pBalas02] = 0;
- format(_string, 128, "{00FF00}Você retirou uma arma do slot 2!");
- SendClientMessage(playerid, -1, _string);
- return 1;
- }
- case 3:
- {
- if(status[pInfo][pArma03] == 0) return SendClientMessage(playerid, -1, "{FF0000}Voce não possue uma arma neste SLOT.");
- GivePlayerWeapon(playerid, status[pInfo][pArma03], status[pInfo][pBalas03]);
- status[pInfo][pArma03] = 0;
- status[pInfo][pBalas03] = 0;
- format(_string, 128, "{00FF00}Você retirou uma arma do slot 2!");
- SendClientMessage(playerid, -1, _string);
- return 1;
- }
- case 4:
- {
- if(status[pInfo][pArma04] == 0) return SendClientMessage(playerid, -1, "{FF0000}Voce não possue uma arma neste SLOT.");
- GivePlayerWeapon(playerid, status[pInfo][pArma04], status[pInfo][pBalas04]);
- status[pInfo][pArma04] = 0;
- status[pInfo][pBalas04] = 0;
- format(_string, 128, "{00FF00}Você retirou uma arma do slot 2!");
- SendClientMessage(playerid, -1, _string);
- return 1;
- }
- default: SendClientMessage(playerid, -1, "Use de 1 a 4.");
- }
- }
- return 1;
- }
- forward RemovePlayerWeapon(playerid, weaponid);
- public RemovePlayerWeapon(playerid, weaponid)
- {
- if(!IsPlayerConnected(playerid) || weaponid < 0 || weaponid > 50) return;
- new saveweapon[13], saveammo[13];
- for(new slot = 0; slot < 13; slot++)
- GetPlayerWeaponData(playerid, slot, saveweapon[slot], saveammo[slot]);
- ResetPlayerWeapons(playerid);
- for(new slot; slot < 13; slot++)
- {
- if(saveweapon[slot] == weaponid || saveammo[slot] == 0)
- continue;
- GivePlayerWeapon(playerid, saveweapon[slot], saveammo[slot]);
- }
- GivePlayerWeapon(playerid, 0, 1);
- }
- stock CarregarBconta(playerid)
- {
- status[pInfo][pArma01] = DOF2_GetInt(PlayersB(playerid), "pArma01");
- status[pInfo][pArma02] = DOF2_GetInt(PlayersB(playerid), "pArma02");
- status[pInfo][pArma03] = DOF2_GetInt(PlayersB(playerid), "pArma03");
- status[pInfo][pArma04] = DOF2_GetInt(PlayersB(playerid), "pArma04");
- status[pInfo][pBalas01] = DOF2_GetInt(PlayersB(playerid), "pBalas01");
- status[pInfo][pBalas02] = DOF2_GetInt(PlayersB(playerid), "pBalas02");
- status[pInfo][pBalas03] = DOF2_GetInt(PlayersB(playerid), "pBalas03");
- status[pInfo][pBalas04] = DOF2_GetInt(PlayersB(playerid), "pBalas04");
- return 1;
- }
- stock PlayersB(playerid)
- {
- new arquivo[40], name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, 32);
- format(arquivo, 40, "Inventario/%s.ini", name);
- return arquivo;
- }
- stock SalvarContas(playerid)
- {
- if(!DOF2_FileExists(PlayersB(playerid))) DOF2_CreateFile(PlayersB(playerid));
- else
- {
- DOF2_SetInt(PlayersB(playerid), "pArma01", status[pInfo][pArma01]);
- DOF2_SetInt(PlayersB(playerid), "pArma02", status[pInfo][pArma02]);
- DOF2_SetInt(PlayersB(playerid), "pArma03", status[pInfo][pArma03]);
- DOF2_SetInt(PlayersB(playerid), "pArma04", status[pInfo][pArma04]);
- DOF2_SetInt(PlayersB(playerid), "pBalas01", status[pInfo][pBalas01]);
- DOF2_SetInt(PlayersB(playerid), "pBalas02", status[pInfo][pBalas02]);
- DOF2_SetInt(PlayersB(playerid), "pBalas03", status[pInfo][pBalas03]);
- DOF2_SetInt(PlayersB(playerid), "pBalas04", status[pInfo][pBalas04]);
- DOF2_SaveFile();
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement