[Ajuda] Arquivo nгo salva
#1

Olб pessoal,estou tentando criar um sistema de inventбrio,e por enquanto to tentando salvar so a quantidade de muniзгo da eagle.
Porйm o arquivo sempre fica eagle = 0.

O codigo do dialogo para guardar:
pawn Код:
if(dialogid == guardaritens)
    {
    new arquivo[60], name[MAX_PLAYER_NAME];
            if(DOF2_FileExists(arquivo)) //Verifica se a pasta existe
    {
       
        GetPlayerName(playerid, name, 32); //Para pegar o nome do playerid
        format(arquivo, 40, "inventario/%s.ini", name);
       
            DOF2_SetInt(arquivo, "eagle", Player[playerid][eagle]); //Vai salvar a eagle
            DOF2_SetInt(arquivo, "shotgun", Player[playerid][shotgun]); //Vai salvar shot
            DOF2_SetInt(arquivo, "mp5", Player[playerid][mp5]); //Vai salvar mp5
            DOF2_SetInt(arquivo, "m4", Player[playerid][m4]); //Vai salvar m4
            DOF2_SetInt(arquivo, "ak47", Player[playerid][ak47]); //Vai salvar ak47
            DOF2_SaveFile(); //E finalmente salvando o arquivo, sem essa funзгo o arquivo nгo serб salvo!
            return 1;
    }else{
     
    GetPlayerName(playerid, name, 32); //Para pegar o nome do playerid
    format(arquivo, 40, "inventario/%s.ini", name);
                DOF2_CreateFile(arquivo); //Vai criar o arquvivo na pasta inventario
                DOF2_SetInt(arquivo, "eagle", Player[playerid][eagle]); //Vai salvar a eagle
                DOF2_SetInt(arquivo, "shotgun", Player[playerid][shotgun]); //Vai salvar shot
                DOF2_SetInt(arquivo, "mp5", Player[playerid][mp5]); //Vai salvar mp5
                DOF2_SetInt(arquivo, "m4", Player[playerid][m4]); //Vai salvar m4
                DOF2_SetInt(arquivo, "ak47", Player[playerid][ak47]); //Vai salvar ak47
                DOF2_SaveFile(); //E finalmente salvando o arquivo, sem essa funзгo o arquivo nгo serб salvo!
           
            return 1;
            }
    if(response)
        {
       
           
            if(listitem == 0)
            {
             
             balas[playerid] = GetPlayerAmmo(playerid);
             
              DOF2_SetInt(arquivo, "eagle", balas[playerid]);
              DOF2_SaveFile();
             
            }
            if(listitem == 1)
            {
           
           
              return 1;
            }
            if(listitem == 2)
            {
           
           
            return 1;
            }
            if(listitem == 3)
           
           
              return 1;
            }
            if(listitem == 4)
            {
           
           
            return 1;
            }
           
           
           
        }
   
    return 1;
    }
Obrigado pela atenзгo.onde estб o erro pra nao tar salvando ?
Reply
#2

O Certo seria:
pawn Код:
new ammo = GetPlayerAmmo(playerid);
new infoString[16];
format(infoString, sizeof(infoString), "%s", ammo);
DOF2_SetInt(arquivo, "eagle", infoString);
Tente assim, leia a Wiki:
https://sampwiki.blast.hk/wiki/GetPlayerAmmo
https://sampwiki.blast.hk/wiki/GetPlayerWeaponData
Reply
#3

Vocк estб pegando a quantidade de balas com o GetPlayerWeapon?
Reply
#4

Quote:
Originally Posted by CLANdok
Посмотреть сообщение
O Certo seria:
pawn Код:
new ammo = GetPlayerAmmo(playerid);
new infoString[16];
format(infoString, sizeof(infoString), "%s", ammo);
DOF2_SetInt(arquivo, "eagle", ammo);
Acredito que este format seja desnecessбrio mais.. lк a Wiki: https://sampwiki.blast.hk/wiki/GetPlayerAmmo
Errado. DOF2_SetInt irб salvar nъmeros inteiros e nгo strings.
Reply
#5

Quote:
Originally Posted by CLANdok
Посмотреть сообщение
O Certo seria:
pawn Код:
new ammo = GetPlayerAmmo(playerid);
new infoString[16];
format(infoString, sizeof(infoString), "%s", ammo);
DOF2_SetInt(arquivo, "eagle", infoString);
Tente assim, leia a Wiki:
https://sampwiki.blast.hk/wiki/GetPlayerAmmo
https://sampwiki.blast.hk/wiki/GetPlayerWeaponData
nгo pegou =s
Reply
#6

Quote:
Originally Posted by xCR7
Посмотреть сообщение
Vocк estб pegando a quantidade de balas com o GetPlayerWeapon?
nгo,com o GetPlayerAmmo.
Reply
#7

Tente usar GetPlayerWeaponData.
Reply
#8

Й GetPlayerAmmo, mas tambйm tem GetPlayerWeaponData.

Olha um exemplo de inventбrio: link

Crйditos: Axll
Reply
#9

Quote:
Originally Posted by xCR7
Посмотреть сообщение
Й GetPlayerAmmo, mas tambйm tem GetPlayerWeaponData.

Olha um exemplo de inventбrio: link

Crйditos: Axll
consegui fazer desta maneira :

pawn Код:
if(dialogid == guardaritens)
    {
   
    if(response)
        {
            if(listitem == 0)
            {
             new arquivo[60], name[MAX_PLAYER_NAME];
            if(DOF2_FileExists(arquivo)) //Verifica se a pasta existe
    {
       
        GetPlayerName(playerid, name, 32); //Para pegar o nome do playerid
        format(arquivo, 40, "inventario/%s.ini", name);
       
            DOF2_SetInt(arquivo, "eagle", Player[playerid][eagle]); //Vai salvar a eagle
            DOF2_SetInt(arquivo, "shotgun", Player[playerid][shotgun]); //Vai salvar shot
            DOF2_SetInt(arquivo, "mp5", Player[playerid][mp5]); //Vai salvar mp5
            DOF2_SetInt(arquivo, "m4", Player[playerid][m4]); //Vai salvar m4
            DOF2_SetInt(arquivo, "ak47", Player[playerid][ak47]);
 
            DOF2_SaveFile(); //E finalmente salvando o arquivo, sem essa funзгo o arquivo nгo serб salvo!
            return 1;
    }else{
     
    GetPlayerName(playerid, name, 32); //Para pegar o nome do playerid
    format(arquivo, 40, "inventario/%s.ini", name);
                DOF2_CreateFile(arquivo); //Vai criar o arquvivo na pasta inventario
                DOF2_SetInt(arquivo, "eagle", Player[playerid][eagle]); //Vai salvar a eagle
                DOF2_SetInt(arquivo, "shotgun", Player[playerid][shotgun]); //Vai salvar shot
                DOF2_SetInt(arquivo, "mp5", Player[playerid][mp5]); //Vai salvar mp5
                DOF2_SetInt(arquivo, "m4", Player[playerid][m4]); //Vai salvar m4
                DOF2_SetInt(arquivo, "ak47", Player[playerid][ak47]); //Vai salvar ak47
                DOF2_SaveFile(); //E finalmente salvando o arquivo, sem essa funзгo o arquivo nгo serб salvo!
           
         
                 balas[playerid] = GetPlayerAmmo(playerid);
              DOF2_SetInt(arquivo, "eagle", balas[playerid]);
             
              DOF2_SaveFile();
              return 1;
            }
            }
            if(listitem == 1)
            {
           
           
              return 1;
            }
            if(listitem == 2)
            {
           
           
            return 1;
            }
Pondo if dentro do list,porйm pra eu nao colocar isso em todos os listitem,tem como criar uma stock ou algo assim ?
e como seria feito ?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)