SA-MP Forums Archive
[Pedido] leve.. - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Pedido] leve.. (/showthread.php?tid=644979)



leve.. - SnowBorn - 17.11.2017

Sistema level simples.

Salvamento em .ini
Ganhar 1 level por 20 minutos '-'


Re: leve.. - Marllun - 17.11.2017

Й fбcil, Tenta aprender

https://sampforum.blast.hk/showthread.php?tid=270290
https://sampforum.blast.hk/showthread.php?tid=580508


Re: leve.. - SnowBorn - 17.11.2017

Marllun, obrigado usarei com base e melhorarei os cуdigos.

Vlw gasto ++REPP '-'


Re: leve.. - Pool - 17.11.2017

Isso utiliza apenas variбvel e Timer.

@Edit - Sistema pronto para uso abaixo:
PHP код:
#include <a_samp>
#include <dof2>
#include <pawn.cmd>
new XP[MAX_PLAYERS];
public 
OnPlayerConnect(playerid)
{
    new 
save[39], name[MAX_PLAYER_NAME];
    
GetPlayerName(playeridnamesizeof(name));
    
format(savesizeof(save), "Contas/%s.ini"name);
    if(!
fexist(save))
    {
        
DOF2::CreateFile(save);
        
DOF2::SetInt(XP"Experiкncia"XP[playerid]);
    }
    else
        
XP[playerid] = DOF2::GetInt(save"Experiкncia");
    
SetTimerEx("AddExperience"1200000true"i"playerid);
    return 
true;
}
public 
OnPlayerDisconnect(playeridreason)
{
    new 
save[39], name[MAX_PLAYER_NAME];
    
GetPlayerName(playeridnamesizeof(name));
    
format(savesizeof(save), "Contas/%s.ini"name);
    if(!
fexist(save))
    {
        
DOF2::CreateFile(save);
        
DOF2::SetInt(save"Experiкncia"XP[playerid]);
        
DOF2::SaveFile();
    }
    else{
        
DOF2::SetInt(save"Experiкncia"XP[playerid]);
        
DOF2::SaveFile();
    }
    return 
true;
}
/* Se for GameMode, utilize a callback "OnGameModeExit. Se for Filterscript, utilize a callback "OnFilterScriptExit". 
   Como base, vou utilizar a OnFilterScriptExit. */
public OnFilterScriptExit()
{
    
DOF2::Exit();
    return 
true;
}
/* Agora, vamos criar um comando para o jogador verificar o quanto de experiкncias ele possui. */
CMD:verxp(playerid)
{
    new 
str[39];
    
format(strsizeof(str), "Vocк possui %d pontos de experiкncia."XP[playerid]);
    
SendClientMessage(playerid, -1str);
    return 
true;
}
forward AddExperience(playerid); public AddExperience(playerid)
{
    
XP[playerid]++;
    
SendClientMessage(playerid, -1"Por completar o tempo de 20 minutos em jogo, vocк recebeu mais uma experiкncia.");
    return 
true;

Ajudei? REP+