Portal SAMP
[Ajuda] Otimizar sistema DOF2 - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Otimizar sistema DOF2 (/showthread.php?tid=4187)



Otimizar sistema DOF2 - L10motos - 09/11/2023

Alguém me ajuda a organizar e otimizar esse código abaixo, o problema que estou tendo é o seguinte, quando o jogador registra no servidor e loga normalmente a conta dele e resetada depois de um tempo ae ele tem que registrar tudo de novo, resumindo, a conta do jogador é resetada e ele tem que registrar tudo novamente, abaixo deixei o código inteiro, sou novato em pwn e não sei onde esta o problema, a gm é cheia de códigos então achar esse bug vai ser uma missão impossível, quem me ajudar vou reputar!

Código PHP:
public OnPlayerDisconnect(playeridreason)
    if(
IsPlayerNPC(playerid)) return 1;
    
SaveAccount(playerid); 

}

forward SaveAccount(playerid);
public 
SaveAccount(playerid)
{
    new 
file[39];
    
format(filesizeof file"account/%s.ini",Name(playerid));
    if(!
fexist(file)) return 0;
    if(
gPlayerLogged[playerid] && fexist(file))
    {
    
    if(!CheckWeaponsCheat(playerid)) UpdateWeapons(playerid);

    
    dini_Remove(file);
    
    dini_Create(file);
    
    SavePlayerInformations(playerid);
        if(
PlayerInfo[playerid][pAdmin] > && PlayerInfo[playerid][pAdmin] != 3000KickPlayer(playerid"kicked reason: invalid admin level.");
    }
    return 
1;
}


forward SavePlayerInformations(playerid);
public 
SavePlayerInformations(playerid)
{
    if(IsPlayerNPC(playerid)) return 1;

    new file[128]; new string[128];
    
format(filesizeof(file), "account/%s.ini"Name(playerid));
    if(
fexist(file))
    {
    
    dini_Remove(file); dini_Create(file);
        
DOF2_Set(file,"Key",PlayerInfo[playerid][pKey]);
    
    DOF2_IntSet(file,"Registro",PlayerInfo[playerid][pRegistro]);
        
DOF2_IntSet(file,"Level",PlayerInfo[playerid][pLevel]);

forward OnPlayerRegister(playeridpassword[]);
public 
OnPlayerRegister(playeridpassword[])
{
    new 
file[39];
    
format(filesizeof file"account/%s.ini",Name(playerid));
    if(
dini_Exists(file)) return SCM(playeridCOLOR_GREY"O nome escolhido para o personagem já existe.");
    if(
IsPlayerConnected(playerid))
    {
    
    dini_Create(file);
    
    format(PlayerInfo[playerid][pKey], 64"%s"password);

        
PlayerInfo[playerid][pLevel] = 1;
        
PlayerInfo[playerid][pConnectedPayday] = 3600;
        
PlayerInfo[playerid][pMaxHealth] = 30.0;
        
PlayerInfo[playerid][pHealth] = 10.0;
        
PlayerInfo[playerid][pLocal] = 255;
        
PlayerInfo[playerid][pModel] = 7;
        new 
randphone 100000 random(899999);
        
PlayerInfo[playerid][pPnumber] = randphone;
        
Celular[playerid] = 1;
        
PlayerInfo[playerid][pPhousekey] = INVALID_HOUSE;
        
SetPVarInt(playerid"Phousekey"INVALID_HOUSE);
        
PlayerInfo[playerid][pReg] = 1;
        
PlayerInfo[playerid][pIdent] = 1;
        
PlayerInfo[playerid][pAccount] = 10000;
        
PlayerReborn[playerid] = 1;

    
    SavePlayerInformations(playerid);

    
    cmd_logar(playerid" ");
    }
    return 
1;
}

forward OnPlayerLogin(playeridpassword[]);
public 
OnPlayerLogin(playeridpassword[])
{
    new 
file[64]; new string[128];
    
format(filesizeof file"account/%s.ini"Name(playerid));
    if(!
fexist(file)) return SCM(playerid, -1"Você não tem uma conta registrada (/registrar).");
    
LoadPlayerInformations(playerid);

    if(
isnull(PlayerInfo[playerid][pKey]))
        return 
SCM(playeridCOLOR_GREY"Peça a um administrador para excluir a sua conta."); //mensagem que aparece toda vez que a conta é resetada 



RE: Otimizar sistema DOF2 - leonardos08bt - 09/11/2023

Mande esse SavePlayerInformations aqui.


RE: Otimizar sistema DOF2 - zBreno - 10/11/2023

https://sampforum.blast.hk/showthread.php?tid=399081
https://sampforum.blast.hk/showthread.php?tid=350855
https://sampforum.blast.hk/showthread.php?tid=287768

o seu sistema nunca vai salvar nada você ta misturando dini com dof no saveplayerinformations você ta mandando o gm deletar o arquivo de texto dini_Remove(file); você pode deixar o parâmetro mais simples DOF2_IntSet(file,"Level",PlayerInfo[playerid][pLevel]); fazendo DOF2_IntSet(string,"Level", Score);

dini_Create(file);
PlayerInfo[playerid][pLevel] = 1; não é assim que dini e dof funciona isso não vai dar car certo não se usa isso em uma public ou stock que cria a conta do jogador, essa informação ta flutuando na memória do servidor pra depois ser passada pro hd, não tem lógica você ta criando um arquivo pra depois colocar informação nele

depois que o arquivo de texto com o nome do jogador é criado esse texto é escrito no arquivo Senha = ### Level = 50

stock CreateFileAccount(newfile[], passx[])
{
dini_Create(newfile);
dini_Set(newfile, "Senha", passx);
dini_IntSet(newfile, "Level", 50);
return 0;
}

e não deixe pra salvar nada quando o jogador sai do servidor dini e dof gera um arquivo de texto como nome do jogador que você pode modificar o tempo todo sempre que precisar se o servidor travar / reiniciar e você não salvar nada a tempo os jogadores perdem todo o progresso deles


RE: Otimizar sistema DOF2 - L10motos - 10/11/2023

(09/11/2023 22:31)leonardos08bt Escreveu: Mande esse SavePlayerInformations aqui.

Aqui esta Leonardo, todo o codigo.

Código PHP:
forward SavePlayerInformations(playerid);
public 
SavePlayerInformations(playerid)
{
    if(IsPlayerNPC(playerid)) return 1;

    new file[128]; new string[128];
    
format(filesizeof(file), "account/%s.ini"Name(playerid));
    if(
fexist(file))
    {
    
    dini_Remove(file); dini_Create(file);
        
DOF2_Set(file,"Key",PlayerInfo[playerid][pKey]);
    
    DOF2_IntSet(file,"Registro",PlayerInfo[playerid][pRegistro]);
        
DOF2_IntSet(file,"Level",PlayerInfo[playerid][pLevel]);
        
DOF2_IntSet(file,"AdminChris",PlayerInfo[playerid][pAdminChris]);
        
DOF2_IntSet(file,"AdminChris2",PlayerInfo[playerid][pAdminChris2]);
        DOF2_IntSet(file,"TempRouboCaixa",PlayerInfo[playerid][pTempRobberyATM]);
        
DOF2_IntSet(file,"AdminLevel",PlayerInfo[playerid][pAdmin]);
        
DOF2_IntSet(file,"Moderador",PlayerInfo[playerid][pModerador]);
        
DOF2_Set(file,"LastIP",PlayerInfo[playerid][pLastIP]);
        
DOF2_IntSet(file,"PlanoDeSaude",PlayerInfo[playerid][pHealthFlat]);
        
DOF2_IntSet(file,"Helper",PlayerInfo[playerid][pHelper]);
        
DOF2_IntSet(file,"AdminInvi",PlayerInfo[playerid][pAdmInvi]);
        
DOF2_IntSet(file,"Premio",PlayerInfo[playerid][pPremio]);
        
DOF2_IntSet(file,"TempoVip",PlayerInfo[playerid][pTempoVip]);
        
DOF2_IntSet(file,"DayVip",PlayerInfo[playerid][pDayVip]);
        
DOF2_IntSet(file,"MonthVip",PlayerInfo[playerid][pMonthVip]);
        
DOF2_IntSet(file,"YearVip",PlayerInfo[playerid][pYearVip]);
        
DOF2_IntSet(file,"UpgradePoints",PlayerInfo[playerid][gPupgrade]);
        
DOF2_IntSet(file,"ConnectedTime",PlayerInfo[playerid][pConnectTime]);
        
DOF2_IntSet(file,"Registered",PlayerInfo[playerid][pReg]);
        
DOF2_IntSet(file,"Sex",PlayerInfo[playerid][pSex]);
        
DOF2_IntSet(file,"Age",PlayerInfo[playerid][pAge]);
        
DOF2_IntSet(file,"Origin",PlayerInfo[playerid][pOrigin]);
        
DOF2_IntSet(file,"Muted",PlayerInfo[playerid][pMuted]);
        
DOF2_IntSet(file,"Respect",PlayerInfo[playerid][pExp]);
        
DOF2_IntSet(file,"Money",PlayerInfo[playerid][pCash]);
        
DOF2_IntSet(file,"Bank",PlayerInfo[playerid][pAccount]);
        
DOF2_IntSet(file,"Points",GetPlayerDPoints(playerid));
        
DOF2_IntSet(file,"Emprestimo",PlayerInfo[playerid][pEmprestimo]);
        
DOF2_IntSet(file,"Crimes",PlayerInfo[playerid][pCrimes]);
        
DOF2_IntSet(file,"Kills",PlayerInfo[playerid][pKills]);
        
DOF2_IntSet(file,"Deaths",PlayerInfo[playerid][pDeaths]);
        
DOF2_IntSet(file,"Arrested",PlayerInfo[playerid][pArrested]);
        
DOF2_IntSet(file,"Procurado",PlayerInfo[playerid][pWantedLevel]);
        
DOF2_Set(file,"Crime01",PlayerInfo[playerid][pCrime01]);
        
DOF2_Set(file,"Crime02",PlayerInfo[playerid][pCrime02]);
        
DOF2_Set(file,"Crime03",PlayerInfo[playerid][pCrime03]);
        
DOF2_Set(file,"Crime04",PlayerInfo[playerid][pCrime04]);
        
DOF2_Set(file,"Crime05",PlayerInfo[playerid][pCrime05]);
        
DOF2_Set(file,"Crime06",PlayerInfo[playerid][pCrime06]);
        
DOF2_Set(file,"Crime07",PlayerInfo[playerid][pCrime07]);
        
DOF2_Set(file,"Crime08",PlayerInfo[playerid][pCrime08]);
        
DOF2_Set(file,"Crime09",PlayerInfo[playerid][pCrime09]);
        
DOF2_Set(file,"Crime10",PlayerInfo[playerid][pCrime10]);
        
DOF2_Set(file,"Crime11",PlayerInfo[playerid][pCrime11]);
        
DOF2_Set(file,"Crime12",PlayerInfo[playerid][pCrime12]);
        
DOF2_Set(file,"Crime13",PlayerInfo[playerid][pCrime13]);
        
DOF2_Set(file,"Crime14",PlayerInfo[playerid][pCrime14]);
        
DOF2_Set(file,"Crime15",PlayerInfo[playerid][pCrime15]);
        
DOF2_Set(file,"Crime16",PlayerInfo[playerid][pCrime16]);
        
DOF2_Set(file,"Crime17",PlayerInfo[playerid][pCrime17]);
        
DOF2_Set(file,"Crime18",PlayerInfo[playerid][pCrime18]);
        
DOF2_Set(file,"Crime19",PlayerInfo[playerid][pCrime19]);
        
DOF2_IntSet(file,"ListaTelefonica",PlayerInfo[playerid][pListaTelefonica]);
        
DOF2_IntSet(file,"Radio",PlayerInfo[playerid][pRadio]);
        
DOF2_IntSet(file,"Overdose",PlayerInfo[playerid][pOverdose]);
        
DOF2_IntSet(file,"LiderGoe",PlayerInfo[playerid][pLiderGoe]);
        
DOF2_IntSet(file,"Capacete",PlayerInfo[playerid][pCapacete]);
        
DOF2_IntSet(file,"Ident",PlayerInfo[playerid][pIdent]);
        
DOF2_IntSet(file,"HomemBomba",PlayerInfo[playerid][pHomembomba]);
        
DOF2_IntSet(file,"Fome",GetPlayerHungry(playerid));
        
DOF2_IntSet(file,"Pegarbomba",PlayerInfo[playerid][pPegarbomba]);
//        DOF2_IntSet(file,"Loteria",PlayerInfo[playerid][pLoteria]);
        
DOF2_IntSet(file,"Peixes",PlayerInfo[playerid][pFishes]);
        
DOF2_IntSet(file,"BiggestPeixes",PlayerInfo[playerid][pBiggestPeixe]);
        
DOF2_IntSet(file,"Emprego",PlayerInfo[playerid][pJob]);
        
DOF2_IntSet(file,"Salario",PlayerInfo[playerid][pWage]);
        
DOF2_IntSet(file,"HeadValue",PlayerInfo[playerid][pHeadValue]);
        
DOF2_IntSet(file,"Jailed",PlayerInfo[playerid][pJailed]);
        
DOF2_IntSet(file,"JailTime",PlayerInfo[playerid][pJailTime]);
        
DOF2_IntSet(file,"Sequestrado",PlayerInfo[playerid][pKidnapped]);
        
DOF2_IntSet(file,"SequestroTempo",PlayerInfo[playerid][pKidnapTime]);
        
DOF2_IntSet(file,"MedicBill",PlayerInfo[playerid][pMedicBill]);
        
DOF2_IntSet(file,"MedicTime",PlayerInfo[playerid][pMedicTime]);
        
DOF2_IntSet(file,"Materials",PlayerInfo[playerid][pMats]);
        
DOF2_IntSet(file,"Fmats",PlayerInfo[playerid][pFmats]);
        
DOF2_IntSet(file,"Maconha",PlayerInfo[playerid][pMarijuana]);
        
DOF2_IntSet(file,"Cocaina",PlayerInfo[playerid][pCocaina]);
        
DOF2_IntSet(file,"Smaconha",PlayerInfo[playerid][pSmaconha]);
        
DOF2_IntSet(file,"Scocaina",PlayerInfo[playerid][pScocaine]);
        
DOF2_IntSet(file,"Rcocaina",PlayerInfo[playerid][pRcocaina]);
        
DOF2_IntSet(file,"Leader",PlayerInfo[playerid][pLeader]);
        
DOF2_IntSet(file,"Member",PlayerInfo[playerid][pMember]);
        
DOF2_IntSet(file,"Cargo",PlayerInfo[playerid][pPosition]);
        
DOF2_IntSet(file,"LeaderCont",LEADER_CONTRACT[playerid]);
        
DOF2_IntSet(file,"Suspension",PlayerInfo[playerid][pSuspension]);
        
DOF2_IntSet(file,"OnDuty",OnDuty[playerid]);
        
DOF2_IntSet(file,"Char",PlayerInfo[playerid][pChar]);
        
DOF2_IntSet(file,"PChar",PlayerInfo[playerid][pPChar]);
        
DOF2_IntSet(file,"ContractTime",PlayerInfo[playerid][pContractTime]);
        
DOF2_IntSet(file,"DetSkill",PlayerInfo[playerid][pDetSkill]);
        
DOF2_IntSet(file,"SexSkill",PlayerInfo[playerid][pSexSkill]);
        
DOF2_IntSet(file,"BoxSkill",PlayerInfo[playerid][pBoxSkill]);
        
DOF2_IntSet(file,"LawSkill",PlayerInfo[playerid][pLawSkill]);
        
DOF2_IntSet(file,"MechSkill",PlayerInfo[playerid][pMechSkill]);
        
DOF2_IntSet(file,"JackSkill",PlayerInfo[playerid][pJackSkill]);
        
DOF2_IntSet(file,"NewsSkill",PlayerInfo[playerid][pNewsSkill]);
        
DOF2_IntSet(file,"GunSkill",PlayerInfo[playerid][pGunSkill]);
        
DOF2_IntSet(file,"MaconhaSkill",PlayerInfo[playerid][pMarijuanaSkill]);
        
DOF2_IntSet(file,"fishesSkill",PlayerInfo[playerid][pFishesSkill]);
        
DOF2_FloatSet(file,"pSHealth",PlayerInfo[playerid][pSHealth]);
        
DOF2_FloatSet(file,"pMaxHealth",PlayerInfo[playerid][pMaxHealth]);
        
GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
        
DOF2_FloatSet(file,"pHealth",PlayerInfo[playerid][pHealth]);
        
GetPlayerArmour(playerid,PlayerInfo[playerid][pArmour]);
        
DOF2_FloatSet(file,"Armour",PlayerInfo[playerid][pArmour]);
        
//DOF2_IntSet(file,"Int",PlayerInfo[playerid][pInt]);
    
      DOF2_IntSet(file,"Int",GetPlayerInterior(playerid));
        
DOF2_IntSet(file,"World",GetPlayerVirtualWorld(playerid));
        
DOF2_IntSet(file,"Reason",PlayerInfo[playerid][pReason]);
        
DOF2_IntSet(file,"PNick",PlayerInfo[playerid][pPNick]);
        
DOF2_IntSet(file,"Local",PlayerInfo[playerid][pLocal]);
//        DOF2_IntSet(file,"Team",PlayerInfo[playerid][pTeam]);
//        DOF2_IntSet(file,"Model",PlayerInfo[playerid][pModel]);
        
DOF2_IntSet(file,"PhoneNr",PlayerInfo[playerid][pPnumber]);
        
DOF2_IntSet(file,"Creditos",Creditos[playerid]);
        
DOF2_IntSet(file,"TogES",gEntrouSaiu[playerid]);
        
DOF2_IntSet(file,"RoubouCaixa",RobberyATM[playerid]);
        
DOF2_IntSet(file,"RoubouDeposito",RoubouDeposito[playerid]);
        
DOF2_IntSet(file,"HouseEntrance",HouseEntrance[playerid]);
        
DOF2_IntSet(file,"House",PlayerInfo[playerid][pPhousekey]);
        
DOF2_IntSet(file,"Bizz",PlayerInfo[playerid][pPbiskey]);
        
DOF2_IntSet(file,"Carro",PlayerInfo[playerid][pVehicle]);
        
DOF2_IntSet(file,"Carro01",PlayerInfo[playerid][pCar][0]);
        
DOF2_IntSet(file,"Carro02",PlayerInfo[playerid][pCar][1]);
        
DOF2_IntSet(file,"Carro03",PlayerInfo[playerid][pCar][2]);
        
DOF2_IntSet(file,"Carro04",PlayerInfo[playerid][pCar][3]);
        
DOF2_IntSet(file,"Carro05",PlayerInfo[playerid][pCar][4]);
        
DOF2_IntSet(file,"Carro06",PlayerInfo[playerid][pCar][5]);
        
DOF2_IntSet(file,"Carro07",PlayerInfo[playerid][pCar][6]);
        
DOF2_IntSet(file,"Carro08",PlayerInfo[playerid][pCar][7]);
        
DOF2_IntSet(file,"Carro09",PlayerInfo[playerid][pCar][8]);
        
DOF2_IntSet(file,"Carro10",PlayerInfo[playerid][pCar][9]);
        
DOF2_IntSet(file,"Carro11",PlayerInfo[playerid][pCar][10]);
        
DOF2_IntSet(file,"Carro12",PlayerInfo[playerid][pCar][11]);
        
DOF2_IntSet(file,"Carro13",PlayerInfo[playerid][pCar][12]);
        
DOF2_IntSet(file,"Carro14",PlayerInfo[playerid][pCar][13]);
        
DOF2_IntSet(file,"Carro15",PlayerInfo[playerid][pCar][14]);
        new 
Float:p[3]; GetPlayerPos(playerid,p[0],p[1],p[2]);
        
DOF2_FloatSet(file,"Pos_x",p[0]);
        
DOF2_FloatSet(file,"Pos_y",p[1]);
        
DOF2_FloatSet(file,"Pos_z",p[2]);
        
DOF2_IntSet(file,"CarLic",PlayerInfo[playerid][pCarLic]);
        
DOF2_IntSet(file,"FlyLic",PlayerInfo[playerid][pFlyLic]);
        
DOF2_IntSet(file,"BoatLic",PlayerInfo[playerid][pBoatLic]);
        
DOF2_IntSet(file,"PeixeLic",PlayerInfo[playerid][pPeixeLic]);
        
DOF2_IntSet(file,"GunLic",PlayerInfo[playerid][pGunLic]);
        
DOF2_IntSet(file,"Luta",PlayerInfo[playerid][pLuta]);
        
DOF2_IntSet(file,"CarTime",PlayerInfo[playerid][pCarTime]);
        
DOF2_IntSet(file,"PeixeTime",Peixetempo[playerid]);
        
DOF2_IntSet(file,"RouboTime",PlayerInfo[playerid][pRouboTime]);
        
DOF2_IntSet(file,"RouboTime2",PlayerInfo[playerid][pRouboTime2]);
        
DOF2_IntSet(file,"RouboTime3",PlayerInfo[playerid][pRouboTime3]);
        
DOF2_IntSet(file,"RouboTime4",PlayerInfo[playerid][pRouboTime4]);
        
DOF2_IntSet(file,"SeqTime",PlayerInfo[playerid][pSeqTime]);
        
DOF2_IntSet(file,"PayDay",PlayerInfo[playerid][pPayDay]);
        
DOF2_IntSet(file,"PayDayHad",PlayerInfo[playerid][pPayDayHad]);
        
DOF2_IntSet(file,"Retirement",PlayerInfo[playerid][pRetirement]);
//        DOF2_IntSet(file,"CDPlayer",PlayerInfo[playerid][pCDPlayer]);
//        DOF2_IntSet(file,"Wins",PlayerInfo[playerid][pWins]);
//        DOF2_IntSet(file,"Loses",PlayerInfo[playerid][pLoses]);
//        DOF2_IntSet(file,"AlcoholPerk",PlayerInfo[playerid][pAlcoholPerk]);
//        DOF2_IntSet(file,"DrugPerk",PlayerInfo[playerid][pDrugPerk]);
//        DOF2_IntSet(file,"MiserPerk",PlayerInfo[playerid][pMiserPerk]);
//        DOF2_IntSet(file,"TraderPerk",PlayerInfo[playerid][pTraderPerk]);
        
DOF2_IntSet(file,"Tutorial",PlayerInfo[playerid][pTut]);
        
DOF2_IntSet(file,"ShowInfo",PlayerInfo[playerid][pShowInfo]);
        
DOF2_IntSet(file,"Warnings",PlayerInfo[playerid][pWarns]);
//        DOF2_IntSet(file,"Adjustable",PlayerInfo[playerid][pAdjustable]);
        
DOF2_IntSet(file,"Combustivel",PlayerInfo[playerid][pCombustivel]);
        
DOF2_IntSet(file,"Married",PlayerInfo[playerid][pMarried]);
        
DOF2_Set(file,"MarriedTo",PlayerInfo[playerid][pMarriedTo]);
        
DOF2_Set(file,"Agenda1",PlayerInfo[playerid][pAgenda1]);
        
DOF2_Set(file,"Agenda2",PlayerInfo[playerid][pAgenda2]);
        
DOF2_Set(file,"Agenda3",PlayerInfo[playerid][pAgenda3]);
        
DOF2_Set(file,"Agenda4",PlayerInfo[playerid][pAgenda4]);
        
DOF2_Set(file,"Agenda5",PlayerInfo[playerid][pAgenda5]);
        
DOF2_Set(file,"Agenda6",PlayerInfo[playerid][pAgenda6]);
        
DOF2_Set(file,"Agenda7",PlayerInfo[playerid][pAgenda7]);
        
DOF2_Set(file,"Agenda8",PlayerInfo[playerid][pAgenda8]);
        
DOF2_Set(file,"Nome",PlayerInfo[playerid][pRealName]);
        
DOF2_IntSet(file,"Dunban",PlayerInfo[playerid][pDunban]);
        
DOF2_IntSet(file,"Munban",PlayerInfo[playerid][pMunban]);
        
DOF2_IntSet(file,"Aunban",PlayerInfo[playerid][pAunban]);
        
DOF2_IntSet(file,"LastLoginD",PlayerInfo[playerid][pLastLogin][0]);
        
DOF2_IntSet(file,"LastLoginM",PlayerInfo[playerid][pLastLogin][1]);
        
DOF2_IntSet(file,"LastLoginY",PlayerInfo[playerid][pLastLogin][2]);
        
DOF2_IntSet(file,"TDP",TerritoryDeadPlayer[playerid]);
        
DOF2_IntSet(file,"Celular",Celular[playerid]);
        
DOF2_IntSet(file,"Saled",PlayerInfo[playerid][pSaled]);
        
DOF2_IntSet(file,"Varapesca",Varapesca[playerid]);
        
DOF2_IntSet(file,"Iscas",ISCA[playerid]);
        
DOF2_IntSet(file,"FishesWeight",PlayerInfo[playerid][pFishesWeight]);
        
DOF2_IntSet(file,"Piloto",PlayerInfo[playerid][pPiloto]);
        
DOF2_IntSet(file,"EmpregoDuty",EmpregoDuty[playerid]);
        
DOF2_IntSet(file,"ConnectedPayday",PlayerInfo[playerid][pConnectedPayday]);
        
DOF2_IntSet(file,"JailAntiAbuser",PlayerInfo[playerid][pJailAntiAbuser]);
        
DOF2_IntSet(file,"MafiaWarning",MafiaWarning[playerid]);
        
DOF2_IntSet(file,"MafiaPenalty",MafiaPenalty[playerid]);
        
DOF2_IntSet(file,"KillerWarning",KillerWarning[playerid]);
        
DOF2_IntSet(file,"KillerPenalty",KillerPenalty[playerid]);
        
DOF2_IntSet(file,"changename",Permissaonick[playerid]);
        
DOF2_IntSet(file,"chavemicha",PlayerInfo[playerid][pChaveMicha]);
        
DOF2_IntSet(file,"moduloinjecao",PlayerInfo[playerid][pModuloInjecao]);
        
DOF2_IntSet(file,"stolenvehicle",PlayerInfo[playerid][pStolenVehicle]);
        
DOF2_IntSet(file,"stolenvehiclewait",PlayerInfo[playerid][pStolenVehicleWait]);
        
DOF2_IntSet(file"sellingdp"sellingdp[playerid]);
        
DOF2_IntSet(file"sellingdpprice"sellingdpprice[playerid]);
        
DOF2_SaveFile();
        
//////////////////////////////////////////////////////////////////////// Parte 02
        
format(filesizeof(file), "account/%s-DFsave.ini",Name(playerid));
        if(!
dini_Exists(file)) { dini_Create(file); } dini_Remove(file); dini_Create(file);
        
////////////////////////////////////////////////////////////////////////
        
DOF2_IntSet(file,"Weapon00",PlayerInfo[playerid][pWeapon][0]);
        
DOF2_IntSet(file,"Weapon01",PlayerInfo[playerid][pWeapon][1]);
        
DOF2_IntSet(file,"Weapon02",PlayerInfo[playerid][pWeapon][2]);
        
DOF2_IntSet(file,"Weapon03",PlayerInfo[playerid][pWeapon][3]);
        
DOF2_IntSet(file,"Weapon04",PlayerInfo[playerid][pWeapon][4]);
        
DOF2_IntSet(file,"Weapon05",PlayerInfo[playerid][pWeapon][5]);
        
DOF2_IntSet(file,"Weapon06",PlayerInfo[playerid][pWeapon][6]);
        
DOF2_IntSet(file,"Weapon07",PlayerInfo[playerid][pWeapon][7]);
        
DOF2_IntSet(file,"Weapon08",PlayerInfo[playerid][pWeapon][8]);
        
DOF2_IntSet(file,"Weapon09",PlayerInfo[playerid][pWeapon][9]);
        
DOF2_IntSet(file,"Weapon10",PlayerInfo[playerid][pWeapon][10]);
        
DOF2_IntSet(file,"Weapon11",PlayerInfo[playerid][pWeapon][11]);
        
DOF2_IntSet(file,"Weapon12",PlayerInfo[playerid][pWeapon][12]);
          DOF2_IntSet(file,"Ammo00",PlayerInfo[playerid][pAmmo][0]);
        
DOF2_IntSet(file,"Ammo01",PlayerInfo[playerid][pAmmo][1]);
        
DOF2_IntSet(file,"Ammo02",PlayerInfo[playerid][pAmmo][2]);
        
DOF2_IntSet(file,"Ammo03",PlayerInfo[playerid][pAmmo][3]);
        
DOF2_IntSet(file,"Ammo04",PlayerInfo[playerid][pAmmo][4]);
        
DOF2_IntSet(file,"Ammo05",PlayerInfo[playerid][pAmmo][5]);
        
DOF2_IntSet(file,"Ammo06",PlayerInfo[playerid][pAmmo][6]);
        
DOF2_IntSet(file,"Ammo07",PlayerInfo[playerid][pAmmo][7]);
        
DOF2_IntSet(file,"Ammo08",PlayerInfo[playerid][pAmmo][8]);
        
DOF2_IntSet(file,"Ammo09",PlayerInfo[playerid][pAmmo][9]);
        
DOF2_IntSet(file,"Ammo10",PlayerInfo[playerid][pAmmo][10]);
        
DOF2_IntSet(file,"Ammo11",PlayerInfo[playerid][pAmmo][11]);
        
DOF2_IntSet(file,"Ammo12",PlayerInfo[playerid][pAmmo][12]);

        
DOF2_IntSet(file,"weaponcode-21",PlayerInfo[playerid][pWeaponcode][21]);
        
DOF2_IntSet(file,"weaponcode-24",PlayerInfo[playerid][pWeaponcode][24]);
        
DOF2_IntSet(file,"weaponcode-25",PlayerInfo[playerid][pWeaponcode][25]);
        
DOF2_IntSet(file,"weaponcode-27",PlayerInfo[playerid][pWeaponcode][27]);
        
DOF2_IntSet(file,"weaponcode-29",PlayerInfo[playerid][pWeaponcode][29]);
        
DOF2_IntSet(file,"weaponcode-30",PlayerInfo[playerid][pWeaponcode][30]);
        
DOF2_IntSet(file,"weaponcode-31",PlayerInfo[playerid][pWeaponcode][31]);
        
DOF2_IntSet(file,"weaponcode-33",PlayerInfo[playerid][pWeaponcode][33]);
        
DOF2_IntSet(file,"weaponcode-34",PlayerInfo[playerid][pWeaponcode][34]);

        
DOF2_IntSet(file,"SavedWeaponc1",PlayerInfo[playerid][pSavedWeaponc][0]);
        
DOF2_IntSet(file,"SavedWeaponc2",PlayerInfo[playerid][pSavedWeaponc][1]);
        
DOF2_IntSet(file,"SavedWeaponc3",PlayerInfo[playerid][pSavedWeaponc][2]);
        
DOF2_IntSet(file,"SavedWeaponc4",PlayerInfo[playerid][pSavedWeaponc][3]);
        
DOF2_IntSet(file,"SavedWeaponc5",PlayerInfo[playerid][pSavedWeaponc][4]);
        
DOF2_IntSet(file,"SavedWeaponc6",PlayerInfo[playerid][pSavedWeaponc][5]);
        
DOF2_IntSet(file,"SavedWeaponc7",PlayerInfo[playerid][pSavedWeaponc][6]);
        
DOF2_IntSet(file,"SavedWeaponc8",PlayerInfo[playerid][pSavedWeaponc][7]);
        
DOF2_IntSet(file,"SavedWeaponc9",PlayerInfo[playerid][pSavedWeaponc][8]);
        
DOF2_IntSet(file,"SavedWeaponc10",PlayerInfo[playerid][pSavedWeaponc][9]);

        
DOF2_IntSet(file,"SavedWeapon1",PlayerInfo[playerid][pSavedWeapon][0]);
        
DOF2_IntSet(file,"SavedAmmo1",PlayerInfo[playerid][pSavedAmmo][0]);
        
DOF2_IntSet(file,"SavedWeapon2",PlayerInfo[playerid][pSavedWeapon][1]);
        
DOF2_IntSet(file,"SavedAmmo2",PlayerInfo[playerid][pSavedAmmo][1]);
        
DOF2_IntSet(file,"SavedWeapon3",PlayerInfo[playerid][pSavedWeapon][2]);
        
DOF2_IntSet(file,"SavedAmmo3",PlayerInfo[playerid][pSavedAmmo][2]);
        
DOF2_IntSet(file,"SavedWeapon4",PlayerInfo[playerid][pSavedWeapon][3]);
        
DOF2_IntSet(file,"SavedAmmo4",PlayerInfo[playerid][pSavedAmmo][3]);
        
DOF2_IntSet(file,"SavedWeapon5",PlayerInfo[playerid][pSavedWeapon][4]);
        
DOF2_IntSet(file,"SavedAmmo5",PlayerInfo[playerid][pSavedAmmo][4]);
        
DOF2_IntSet(file,"SavedWeapon6",PlayerInfo[playerid][pSavedWeapon][5]);
        
DOF2_IntSet(file,"SavedAmmo6",PlayerInfo[playerid][pSavedAmmo][5]);
        
DOF2_IntSet(file,"SavedWeapon7",PlayerInfo[playerid][pSavedWeapon][6]);
        
DOF2_IntSet(file,"SavedAmmo7",PlayerInfo[playerid][pSavedAmmo][6]);
        
DOF2_IntSet(file,"SavedWeapon8",PlayerInfo[playerid][pSavedWeapon][7]);
        
DOF2_IntSet(file,"SavedAmmo8",PlayerInfo[playerid][pSavedAmmo][7]);
        
DOF2_IntSet(file,"SavedWeapon9",PlayerInfo[playerid][pSavedWeapon][8]);
        
DOF2_IntSet(file,"SavedAmmo9",PlayerInfo[playerid][pSavedAmmo][8]);
        
DOF2_IntSet(file,"SavedWeapon10",PlayerInfo[playerid][pSavedWeapon][9]);
        
DOF2_IntSet(file,"SavedAmmo10",PlayerInfo[playerid][pSavedAmmo][9]);
        
DOF2_IntSet(file,"WeaponDelay24",PlayerInfo[playerid][pWeaponDelay][24]);
        
DOF2_IntSet(file,"WeaponDelay25",PlayerInfo[playerid][pWeaponDelay][25]);
        
DOF2_IntSet(file,"WeaponDelay27",PlayerInfo[playerid][pWeaponDelay][27]);
        
DOF2_IntSet(file,"WeaponDelay29",PlayerInfo[playerid][pWeaponDelay][29]);
        
DOF2_IntSet(file,"WeaponDelay30",PlayerInfo[playerid][pWeaponDelay][30]);
        
DOF2_IntSet(file,"WeaponDelay31",PlayerInfo[playerid][pWeaponDelay][31]);
        
DOF2_IntSet(file,"WeaponDelay33",PlayerInfo[playerid][pWeaponDelay][33]);
        
DOF2_IntSet(file,"WeaponDelay34",PlayerInfo[playerid][pWeaponDelay][34]);
        
DOF2_IntSet(file,"WeaponDelay35",PlayerInfo[playerid][pWeaponDelay][35]);
        
DOF2_IntSet(file,"WeaponDelay36",PlayerInfo[playerid][pWeaponDelay][36]);
          DOF2_FloatSet(file,"cap_x",cap_offsetx[playerid]);
        
DOF2_FloatSet(file,"cap_y",cap_offsety[playerid]);
        
DOF2_FloatSet(file,"cap_z",cap_offsetz[playerid]);
        
DOF2_FloatSet(file,"cap_rx",cap_rotx[playerid]);
        
DOF2_FloatSet(file,"cap_ry",cap_roty[playerid]);
        
DOF2_FloatSet(file,"cap_rz",cap_rotz[playerid]);
        
DOF2_FloatSet(file,"maskoffsetx",mask_offsetx[playerid]);
        
DOF2_FloatSet(file,"maskoffsety",mask_offsety[playerid]);
        
DOF2_FloatSet(file,"maskoffsetz",mask_offsetz[playerid]);
        
DOF2_FloatSet(file,"maskrotx",mask_rotx[playerid]);
        
DOF2_FloatSet(file,"maskroty",mask_roty[playerid]);
        
DOF2_FloatSet(file,"maskrotz",mask_rotz[playerid]);
        
DOF2_IntSet(file,"Bottle",PlayerInfo[playerid][pBottle]);
        
DOF2_IntSet(file,"BottleLiter",PlayerInfo[playerid][pBottleLiter]);
        
DOF2_IntSet(file,"DrunkLevel",PlayerInfo[playerid][pDrunkLevel]);
        
DOF2_IntSet(file,"Oculos",PlayerInfo[playerid][pOculos]);
        
DOF2_IntSet(file,"Mascara",PlayerInfo[playerid][pMascara]);
        
DOF2_IntSet(file,"MaskUsed",PlayerInfo[playerid][pMaskUsed]);
        
DOF2_IntSet(file,"using_glasses",using_glasses[playerid]);
        
DOF2_FloatSet(file"glasses_x"glasses_offsetx[playerid]);
          DOF2_FloatSet(file"glasses_y"glasses_offsety[playerid]);
          DOF2_FloatSet(file"glasses_z"glasses_offsetz[playerid]);
          DOF2_FloatSet(file"glasses_rx"glasses_rotx[playerid]);
          DOF2_FloatSet(file"glasses_ry"glasses_roty[playerid]);
          DOF2_FloatSet(file"glasses_rz"glasses_rotz[playerid]);
          //
        
for(new 0MAX_TEAM_TYPES; ++w)
        {
            
FORMAT_STR "team_warning-%02d"w); DOF2_IntSet(filestringPlayerTeamWarning[playerid][w]);
            
FORMAT_STR "team_penalty-%02d"w); DOF2_IntSet(filestringPlayerTeamPenalty[playerid][w]);
        }
        
//
        
DOF2_IntSet(file"dead"PlayerInfo[playerid][pDead]);
        
DOF2_FloatSet(file"deadx"PlayerInfo[playerid][pDeadPosX]);
        
DOF2_FloatSet(file"deady"PlayerInfo[playerid][pDeadPosY]);
        
DOF2_FloatSet(file"deadz"PlayerInfo[playerid][pDeadPosZ]);
        
DOF2_FloatSet(file"deada"PlayerInfo[playerid][pDeadPosA]);
        
DOF2_IntSet(file"deadint"PlayerInfo[playerid][pDeadInt]);
        
DOF2_IntSet(file"deadworld"PlayerInfo[playerid][pDeadWorld]);
        
DOF2_IntSet(file"adminstatus"adminstatus[playerid]);
        
DOF2_IntSet(file"adminchatline"adminchatline[playerid]);
        
DOF2_IntSet(file"damagelog"DamageLog[playerid]);
         
DOF2_IntSet(file"vehicle_parts"PlayerInfo[playerid][pPecas]);
         
DOF2_IntSet(file"paintballing"PlayerPaintballing[playerid]);//
         
DOF2_IntSet(file"resetweapons"PlayerInfo[playerid][ResetWeapons]);
         
DOF2_IntSet(file"lunch"PlayerInfo[playerid][pLunch]);
         
DOF2_IntSet(file"stolencell"PlayerInfo[playerid][pStolenCell]);
         
DOF2_IntSet(file"fmoney"PlayerInfo[playerid][pFmoney]);
         
DOF2_IntSet(file"sbizz_into"PlayerInfo[playerid][pSBizz]);
         
DOF2_IntSet(file"fightexpire"PlayerInfo[playerid][pLutaExpire]);
        
DOF2_SaveFile();
        
//////////////////////////////////////////////////////////////////////// Vehicles
        
format(filesizeof(file), "player-vehicles/%s-vehicles.ini"Name(playerid));
        if(
fexist(file))
        {
            
dini_Remove(file); dini_Create(file);
            for(new 
0MAX_PLAYER_CAR; ++c)
            {
            
    FORMAT_STR "%02d-player_car_description"c); DOF2_Set(filestringplayer_car_description[playerid][c]);
                
FORMAT_STR "%02d-player_car_model"c); DOF2_IntSet(filestringplayer_car_model[playerid][c]);
                
FORMAT_STR "%02d-player_car_pos_x"c); DOF2_FloatSet(filestringplayer_car_pos[playerid][c][0]);
                
FORMAT_STR "%02d-player_car_pos_y"c); DOF2_FloatSet(filestringplayer_car_pos[playerid][c][1]);
                
FORMAT_STR "%02d-player_car_pos_z"c); DOF2_FloatSet(filestringplayer_car_pos[playerid][c][2]);
                
FORMAT_STR "%02d-player_car_pos_a"c); DOF2_FloatSet(filestringplayer_car_pos[playerid][c][3]);
                
FORMAT_STR "%02d-player_car_color1"c); DOF2_IntSet(filestringplayer_car_color1[playerid][c]);
                
FORMAT_STR "%02d-player_car_color2"c); DOF2_IntSet(filestringplayer_car_color2[playerid][c]);
                FORMAT_STR "%02d-player_car_seguro"c); DOF2_IntSet(filestringplayer_car_seguro[playerid][c]);
                FORMAT_STR "%02d-player_car_multas"c); DOF2_IntSet(filestringplayer_car_multas[playerid][c]);
        
        FORMAT_STR "%02d-player_car_interior"c); DOF2_IntSet(filestringplayer_car_interior[playerid][c]);
                FORMAT_STR "%02d-player_car_world"c); DOF2_IntSet(filestringplayer_car_world[playerid][c]);
        
        FORMAT_STR "%02d-player_car_forsale"c); DOF2_IntSet(filestringplayer_car_forsale[playerid][c]);
                FORMAT_STR "%02d-player_car_financiado"c); DOF2_IntSet(filestringplayer_car_financiado[playerid][c]);
                FORMAT_STR "%02d-player_car_wheels"c); DOF2_IntSet(filestringplayer_car_wheels[playerid][c]);
        
        FORMAT_STR "%02d-player_car_suspension"c); DOF2_IntSet(filestringplayer_car_suspension[playerid][c]);
                FORMAT_STR "%02d-player_car_paint"c); DOF2_IntSet(filestringplayer_car_paint[playerid][c]);
                FORMAT_STR "%02d-player_car_pack"c); DOF2_IntSet(filestringplayer_car_pack[playerid][c]);
                for(new tunning 0tunning 7; ++tunning)
                {
                    FORMAT_STR "%02d-player_car_tunning-%02d"ctunning); DOF2_IntSet(filestringplayer_car_tunning[playerid][c][tunning]);
                }
            }
        }
        
format(filesizeof(file), "player-vehicles/%s-vehicles2.ini"Name(playerid));
        if(
fexist(file))
        {
        
    dini_Remove(file); dini_Create(file);
        
    for(new 0MAX_PLAYER_CAR; ++c)
        
    {
    
            FORMAT_STR "%02d-player_car_house"c); DOF2_IntSet(filestringplayer_car_house[playerid][c]);
    
            FORMAT_STR "%02d-player_car_apreendido"c); DOF2_IntSet(filestringplayer_car_apreendido[playerid][c]);
    
            FORMAT_STR "%02d-player_car_desmanche"c); DOF2_IntSet(filestringplayer_car_desmanche[playerid][c]);
    
            FORMAT_STR "%02d-player_car_health"c); DOF2_FloatSet(filestringplayer_car_health[playerid][c]);
            
    for(new truck 0truck PLAYER_CAR_MAXTRUCK; ++truck)
                {
                
    FORMAT_STR "%02d-player_car_truckw-%02d"ctruck);  DOF2_IntSet(filestringplayer_car_truckw[playerid][c][truck]);
                
    FORMAT_STR "%02d-player_car_trucka-%02d"ctruck);  DOF2_IntSet(filestringplayer_car_trucka[playerid][c][truck]);
        
            FORMAT_STR "%02d-player_car_truckc-%02d"ctruck);  DOF2_IntSet(filestringplayer_car_truckc[playerid][c][truck]);
                }
            }
        }
        
DOF2_SaveFile();
        
////////////////////////////////////////////////////////////////////////
    
}
    return 
1;




RE: Otimizar sistema DOF2 - pushline - 10/11/2023

ou você usa dini ou dof2..


RE: Otimizar sistema DOF2 - L10motos - 10/11/2023

(10/11/2023 13:18)pushline Escreveu: ou você usa dini ou dof2..

DOF2, melhor que dini na minha opinião.


RE: Otimizar sistema DOF2 - pushline - 10/11/2023

então você vai ter que retirar as funções que usa dini e trocar p/ dof2.


RE: Otimizar sistema DOF2 - L10motos - 10/11/2023

(10/11/2023 13:34)pushline Escreveu: então você vai ter que retirar as funções que usa dini e trocar p/ dof2.

Resolvido


RE: Otimizar sistema DOF2 - zBreno - 11/11/2023

(10/11/2023 13:20)L10motos Escreveu:
(10/11/2023 13:18)pushline Escreveu: ou você usa dini ou dof2..

DOF2, melhor que dini na minha opinião.

desde de 2014 essa include nunca foi atualizada dini até 2018 tem forks com melhorias no github