[AJUDA]Sistema de Salvar Armas e Muniзхes
#1

Olб pessoal, gostaria de pedir a vocкs um sistema de salvar armas e suas muniзхes, quero por no meu server de facзхes para quando eles sairem do server salvar arma e balas, para quando acabar ser preciso ter dinheiro para comprar arma e muniзхes (:


Se alguem poder ajudar fico muito grato.
Reply
#2

Eu fiz faz tempo pro meu RP mas tб ae, ele tб em SII e sscanf qualquer coisa sу converter pro seu sistema de salvamento/leitura

PHP Code:
stock SalvarArmas(playerid)
{
    new 
Armas[13][2]
    for(new 
i!= 13i++)
    {
        
GetPlayerWeaponData(playerid,i,Armas[i][0],Armas[i][2]);
    }
    new 
s0[50];
    
GetPlayerName(playerid,s0,sizeof(s0));
    
format(s0,sizeof(s0),"armas/%s.ini",s0);
    if(
INI_Open(s0))
    {
        for(new 
i!= 13i++)
        {
            new 
s1[50];
            
format(s0,sizeof(s0),"Arma_%i",i);
            
format(s1,sizeof(s1),"%i,%i",Armas[i][0],Armas[i][1]);
            
INI_WriteString(s0,s1);
        }
        
INI_Save();
        
INI_Close();
    }
    return 
true;
}
stock CarregarArmas(playerid)
{
    new 
Armas[13][2], s0[50];
    
GetPlayerName(playerid,s0,sizeof(s0));
    
format(s0,sizeof(s0),"armas/%s.ini",s0);
    if(
INI_Open(s0))
    {
        for(new 
i!= 13i++)
        {
            new 
s1[50];
            
format(s0,sizeof(s0),"Arma_%i",i);
            
INI_ReadString(s0,s1,sizeof(s1));
            
sscanf(s1,"p<,>ii",Armas[i][0],Armas[i][1]);
            
GivePlayerWeapon(playerid,Armas[i][0],Armas[i][1]);
        }
        
INI_Close();
    }
    return 
true;

Sгo stocks (funзхes), sу por na parte onde quer guardar as armas eu fiz umas modificaзхes pra vocк
Reply
#3

Joguei deste jeito que tu me deu ai criei a pasta "armas" e nгo salvo nada.

Desculpe se nгo entendi.
Reply
#4

Sгo stocks vocк tem que por em algum lugar para salvar e carregar por exemplo

PHP Code:
public OnPlayerDisconnect(playerid,reason)
{
    
SalvarArmas(playerid);
    return 
true;
}
public 
OnPlayerSpawn(playerid)
{
    
CarregarArmas(playerid);
    return 
true;

Ah e vocк precisa do plugin sscanf

SII
sscanf
Reply
#5

Poderia Converter Para Mim Se nгo for Pedir Muito, nгo entendo muito sscanf
Reply
#6

Basta usar a include Dini e criar a pasta Armas no diretorio scriptfiles:

PHP Code:
#include <Dini>
public OnPlayerConnect(playerid)
{
    
CarregarArmas(playerid);
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    
SalvarArmas(playerid);
    return 
1;
}
stock SalvarArmas(playerid)
{
    new 
Armas[13][2], str[64], str2[64];
    for(new 
013i++) { GetPlayerWeaponData(playeridiArmas[i][0], Armas[i][1]); }
    
GetPlayerName(playeridstr24);
    
format(strsizeof str"/Armas/%s.txt"str);
    for(new 
013i++)
    {
        
format(str2sizeof str2"Arma %d"i);
        
dini_IntSet(strstr2Armas[i][0]);
        
format(str2sizeof str2"Municao %d"i);
        
dini_IntSet(strstr2Armas[i][1]);
    }
    return 
1;
}
stock CarregarArmas(playerid)
{
    new 
str[64], str2[64], str3[64];
    
GetPlayerName(playeridstr24);
    
format(strsizeof str"/Armas/%s.txt"str);
    if(!
fexist(str)) return dini_Create(str);
    for(new 
013i++)
    {
        
format(str2sizeof str2"Arma %d"i);
        
format(str3sizeof str3"Municao %d"i);
        
GivePlayerWeapon(playeriddini_Int(strstr2), dini_Int(strstr3));
    }
    return 
1;

OBS: Nгo testei, mas deve funcionar.
Reply
#7

Deu isso:

PHP Code:
\filterscripts\FS.pwn(5594) : error 001expected token"-identifier-"but found "-integer value-"
\filterscripts\FS.pwn(5595) : error 029invalid expressionassumed zero
\filterscripts\FS.pwn(5595) : error 029invalid expressionassumed zero
\filterscripts\FS.pwn(5595) : warning 215expression has no effect
\filterscripts\FS.pwn(5595) : error 001expected token";"but found "]"
\filterscripts\FS.pwn(5595) : fatal error 107too many error messages on one line 
Linha 5594

PHP Code:
    new Armas[13][2], str[64], str2[64]; 
Linha 5595

PHP Code:
    for(new 013i++){ GetPlayerWeaponData(playeridiArmas[i][0], Armas[i][1]); } 
Reply
#8

Testei aqui e compilou corretamente. Ta ai o codigo que eu testei:

PHP Code:
#include <a_samp>
#include <dutils>
#include <Dini>

#pragma unused ret_memcpy

public OnPlayerConnect(playerid)
{
    
CarregarArmas(playerid);
    return 
1;
}

public 
OnPlayerDisconnect(playeridreason)
{
    
SalvarArmas(playerid);
    return 
1;
}

stock SalvarArmas(playerid)
{
    new 
Armas[13][2], str[64], str2[64];
    for(new 
013i++) { GetPlayerWeaponData(playeridiArmas[i][0], Armas[i][1]); }
    
GetPlayerName(playeridstr24);
    
format(strsizeof str"/Armas/%s.txt"str);
    for(new 
013i++)
    {
        
format(str2sizeof str2"Arma %d"i);
        
dini_IntSet(strstr2Armas[i][0]);
        
format(str2sizeof str2"Municao %d"i);
        
dini_IntSet(strstr2Armas[i][1]);
    }
    return 
1;
}

stock CarregarArmas(playerid)
{
    new 
str[64], str2[64], str3[64];
    
GetPlayerName(playeridstr24);
    
format(strsizeof str"/Armas/%s.txt"str);
    if(!
fexist(str)) return dini_Create(str);
    for(new 
013i++)
    {
        
format(str2sizeof str2"Arma %d"i);
        
format(str3sizeof str3"Municao %d"i);
        
GivePlayerWeapon(playeriddini_Int(strstr2), dini_Int(strstr3));
    }
    return 
1;

Reply
#9

TUT DE COMO SALVAR TUDO?
http://forum.sa-mp.com/showthread.ph...371#post653371

@question: MAS QUE CARALHO Й QUE TEM USAR A MERDA DO SERCH? PODE APERTAR E PESQUISAR SEM MEDO, NENHUM CAXORRO VAI SAIR DE LA PRA TE PEGAR NAO VLW?
Reply
#10

Tenho Um FILTERSCRIPT De Salvar Armas, Funciona Certinho

Pastebin:
http://pastebin.com/jnkgG02c

Basta Por Na Pasta Filterscripts e Cria Pasta Chamada Armas Em Scriptfiles
e Usar, Salva Armas e Muniзгo, Bom Jogo Espero Ter Ajudado
Reply


Forum Jump:


Users browsing this thread: 6 Guest(s)