Szerző Téma: DINI Help  (Megtekintve 693 alkalommal)

DINI Help
« Dátum: 2012. április 27. - 20:33:11 »
0 Show voters
Sziasztok.
Boccs hogy uj temat nyitottam viszon ehez a dinis cucchoz soha nem ertettem.
roviden valaki tudna irni nekem egy ilyen dinis izet.azaz hogy scripfiles ba mentse el a lvl valtozot.
legyen egy szimpla.
level valtozo,es ezt mentse el egy %.ini file ba.Nagyon szepen kosoznom elore,ez nagyon hasznos lenne mivel hogy ehez soha nem ertettem.Neztem tutorialt viszont mindig volt benne hiba.
Koszonom szepen :P
« Utoljára szerkesztve: 2012. április 27. - 21:39:47 írta xSkillZ7x »

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
DINI Help
« Válasz #1 Dátum: 2012. április 27. - 21:01:08 »
+1 Show voters
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#include <dini>
new levelfile[50];
#define Szint_1     1
#define Szint_2     2
#define Szint_3     3
 
CMD:setlevel(playerid, params[])
{
     if(IsPlayerAdmin(playerid))
     {
     new PID, level, name[MAX_PLAYER_NAME];
     if(sscanf(params, \"ui\", PID, level)) return SendClientMessage(playerid, 0xFF0000AA, \"Használat: /Setlevel <ID/Név> <Szint>\");
     if(PID == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz ID/Név!\");
     if(playerid == PID) return SendClientMessage(playerid, 0xFF0000AA, \"Magadnak nem adhatsz szintet!\");
     if(level < 0 || level > 3)  return SendClientMessage(playerid, 0xFF0000AA, \"A szint csak 1-3 között lehet!\");
     SetPVarInt(PID, \"Rotakapa\", level);
     GetPlayerName(PID, name, MAX_PLAYER_NAME);
     format(levelfile, sizeof(levelfile), \"/levelfl/%s.ini\", name);
     if(!dini_Exists(levelfile))
            {
                   dini_Create(levelfile);
                   dini_IntSet(levelfile, \"Szint\", level);
            }
     }
     else SendClientMessage(playerid, 0xFF0000AA, \"Nem vagy RCON admin!\");
     return 1;
}
public OnPlayerSpawn(playerid)
{
        new name[MAX_PLAYER_NAME];
        GetPlayerName(playerid, name, MAX_PLAYER_NAME);
        format(levelfile, sizeof(levelfile), \"/levelfl/%s.ini\", name);
        if(dini_Exists(levelfile))
        {
                new Szint;
                Szint = dini_Int(levelfile, \"Szint\");
                if(Szint == 1) return SetPVarInt(playerid, \"Rotakapa\", Szint_1);
                if(Szint == 2) return SetPVarInt(playerid, \"Rotakapa\", Szint_2);
                if(Szint == 3) return SetPVarInt(playerid, \"Rotakapa\", Szint_3);
        }
        return 1;
}
« Utoljára szerkesztve: 2012. április 27. - 21:12:17 írta Gabor.. »

DINI Help
« Válasz #2 Dátum: 2012. április 27. - 21:11:10 »
0 Show voters
Huu.Koszi szepen.Beultetem a modba.Igy legalabb meg tanulom ezt dini-t is.
Igy most mar a fobb dolgokat tudom .1000 Kossz :)

Kovacs_Bela

  • Vendég
DINI Help
« Válasz #3 Dátum: 2012. április 27. - 21:14:13 »
0 Show voters
ajánlom neked ezt: http://sampforum.hu/index.php?topic=3075.msg36705#msg36705
a dini megismeréséhez..
csináltam egy példa scriptet
 

#include <a_samp>
#include <dini>
new file[MAX_PLAYERS][128];
new name[24];
new szint[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
    GetPlayerName(playerid,name,24); //lekérdezzük a nevét
    format(file[playerid,128,\"%s.ini\",name); // megformázzuk a fájlt
    if(!dini_Exists(file[playerid])) return dini_Create(file[playerid]); //ha nincs még olyan fájl a nevével, akkor létrehozzuk
    szint[playerid] = dini_Int(file[playerid],\"Szint\"); //beállítjuk
    return 1;
}
public OnPlayerDisconnect(playerid,reason)
{
    GetPlayerName(playerid,name,24); //lekérdezzük, majd elmentjük egy változóban a játékos nevét
    format(file[playerid],128,\"%s.ini\",name); //megformázzuk a fájlnak a nevét
    dini_SetInt(file[playerid],\"Szint\",szint[playerid]); //átállítjuk a fájlban a szint értékét a játékos jelenlegi szintjére, majd késöbb ezt olvastatjuk be.
    return 1;
}

 
E: lassu voltam :D

DINI Help
« Válasz #4 Dátum: 2012. április 27. - 21:17:59 »
0 Show voters
Koszi szepen.Atnezem :P
danix99
a tiedet picivel jobban ertem
kossz

Dupla hozzászólás automatikusan összefûzve. ( 2012. április 27. - 21:25:56 )

---------------------------------------------------------------------------------------------
Am itt van egy kicsi hiba.
 

D:\\sampserver\\filterscripts\\dini.pwn(20) : error 017: undefined symbol \"dini_SetInt\"
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
 
1 Error.

 
itt nem SetInt hanem IntSet
Hiba nincs benne.
Tokeletesen mukodik koszonom Tema megoldva
« Utoljára szerkesztve: 2012. április 27. - 21:39:34 írta xSkillZ7x »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal