GTA-Expert Forum: [GUIDA] Leggere da file usando il dini - GTA-Expert Forum

Salta al contenuto

  • (2 Pagine)
  • +
  • 1
  • 2
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

[GUIDA] Leggere da file usando il dini

#1 L'utente è offline   _All3Xz_ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1512
  • Iscritto il: 05/01/09
  • GTA Preferito:GTA: San Andreas

Inviato il 01 gennaio 2010 - 15:26

Salve a tutti, molti scripter vogliono implementare nella loro GM un sistema di lettura file.. sia per salvare i dati degli utenti, sia per leggere la configurazione delle gm... In questa guida spiegherò in breve come fare, usando l'include dini creato da DracoBlue. Per chi non ce l'avesse, è possibile scaricarlo da qua: >> Download <<

Partiamo.
Inseriamo nella cartella pawno/include l'include dini.

Qua vi spiegherò in breve alcune funzioni

dini_Exists(filename[])

Questa funzione controlla se un file esiste o meno, utile per prevedere i crash dovuti alla mancanza del file...
Un esempio:
if(!dini_Exists("_All3Xz_Tutorial/tutorial.ini")) //Se il file tutorial.ini nella cartella _All3Xz_Tutorial non esiste
{
dini_Create("_All3Xz_Tutorial/tutorial.ini"); //Crea il file
}
else //Altrimenti
{
print("File di configurazione trovato."); //Scrive in console che ha trovato il file
}


dini_Remove(filename[])


Questa funzione serve ad eliminare un file, magari temporaneo.. un esempio

dini_Remove("_All3Xz_Tutorial/tempfile.ini"); //Cancella il file tempfile.ini


dini_Set(filename[],key[],value[])


Questa funzione scrive nel file una determinata cosa e ne assegna un valore. Per key[] si intende ciò che scriverete nel file, e per value[] il relativo valore.
Un esempio usando anche dini_Exists:

new config[256];
format(config,sizeof(config),"_All3Xz_Tutorial/Config/config.ini");
if(!dini_Exists(config))
{
dini_Create(config); //Crea il file
}
else
{
dini_Set(config,"Weather",09); // Scrive nel file "config.ini" "Weather" e ne attribuisce il valore di 09. Nel file troveremo scritto "Weather = 09" (senza virgolette)
}


dini_Int(filename[],key[])


Questa funzione acquisisce il valore key[] nel file filename[]

Un esempio:

new config[256];
new Tempo;
format(config,sizeof(config),"_All3Xz_Tutorial/Config/config.ini");
if(!dini_Exists(config))
{
printf("File di configurazione inesistente. Spegnimento server...");
SendRconCommand("exit");
}
else
{
Tempo = dini_Int(config,"Weather"); //Acquisisce nel file "config" il valore di "weather" e lo assigna alla variabile tempo.
}


Per le variabili di tipo "Float", il procedimento è pressochè uguale, basta scrivere così le funzioni
dini_FloatSet(filename[],key[],value[]); //Scrive su file una variabile float
dini_Float(filename[],key[]); //Acquisice un valore float su un file.



Guida interamente creata da _All3Xz_ copiright 2010. Don't RIP.
My Works
[FS]_All3Xz_ Anti-Cheat 4
[FS]_All3Xz_ Anti-Cheat 7
[FS]_All3Xz_ Anti-Cheat 8
[GM] PVCM Training 0.? (MySQL)
[APP]_All3Xz_ NPC Generator
[GUIDA] Leggere da file usando dini
[GUIDA] Scripting GTA:IV - Callbacks
[GM] PVCM Training 1 (MySQL)
[GM] PVCM A/D
[GUIDA] Leggere da file usandi dini 2
0

#2 L'utente è offline   Giovanni94m 

  • Teppista
  • Gruppo: Utenti
  • Messaggi: 439
  • Iscritto il: 08/08/09
  • Provenienza:Agrigento
  • GTA Preferito:GTA: Vice City

Inviato il 01 gennaio 2010 - 15:51

ottimo bella guida
Immagine Postata
0

#3 L'utente è offline   RickyzZz 

  • Ex galeotto
  • Gruppo: Utenti
  • Messaggi: 797
  • Iscritto il: 26/06/09

Inviato il 01 gennaio 2010 - 17:14

Bellissima ;)
Me la studio subito:
:lode: :lode: Grazie Alle :lode: :lode:
Immagine Postata
Mie Map
[MAP]House

[MAP]Casinò Ricky Edition
[APP]Programmi Utili Pawno
0

#4 L'utente è offline   Rapgangsta 

  • Tirapiedi
  • Gruppo: Banned
  • Messaggi: 1044
  • Iscritto il: 21/10/09
  • GTA Preferito:Sconosciuto

Inviato il 01 gennaio 2010 - 19:17

Se il file tutorial.ini nella cartella _All3Xz_Tutorial non esiste
ma la cartella che te chiami _All3Xz_Tutorial deve essere in scriptfiles?
0

#5 L'utente è offline   _All3Xz_ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1512
  • Iscritto il: 05/01/09
  • GTA Preferito:GTA: San Andreas

Inviato il 01 gennaio 2010 - 19:44

Quote

Originally posted by Rapgangsta@01/01/10 - 19:17
Se il file tutorial.ini nella cartella _All3Xz_Tutorial non esiste
ma la cartella che te chiami _All3Xz_Tutorial deve essere in scriptfiles?

:sese: deve stare in scriptfiles
My Works
[FS]_All3Xz_ Anti-Cheat 4
[FS]_All3Xz_ Anti-Cheat 7
[FS]_All3Xz_ Anti-Cheat 8
[GM] PVCM Training 0.? (MySQL)
[APP]_All3Xz_ NPC Generator
[GUIDA] Leggere da file usando dini
[GUIDA] Scripting GTA:IV - Callbacks
[GM] PVCM Training 1 (MySQL)
[GM] PVCM A/D
[GUIDA] Leggere da file usandi dini 2
0

#6 L'utente è offline   scienziato-pazzo 

  • Cleptomane
  • Gruppo: Banned
  • Messaggi: 297
  • Iscritto il: 03/10/09
  • GTA Preferito:Sconosciuto

Inviato il 02 gennaio 2010 - 21:17

Quote

Originally posted by _]Alle[_+01/01/10 - 19:44

Quote

(_]Alle[_ @ 01/01/10 - 19:44)
-Rapgangsta
@01/01/10 - 19:17
Se il file tutorial.ini nella cartella _All3Xz_Tutorial non esiste
ma la cartella che te chiami _All3Xz_Tutorial deve essere in scriptfiles?

:sese: deve stare in scriptfiles [/b]

Infatti,io ho una GM dove si usa il Dini,ed i File *.ini stanno tutti in Scriptifles,anche se in cartelle diverse! :D
0

#7 L'utente è offline   _All3Xz_ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1512
  • Iscritto il: 05/01/09
  • GTA Preferito:GTA: San Andreas

Inviato il 03 gennaio 2010 - 21:12

Quote

Originally posted by scienziato-pazzo+02/01/10 - 21:17

Quote

(scienziato-pazzo @ 02/01/10 - 21:17)
-_

Se il file tutorial.ini nella cartella _All3Xz_Tutorial non esiste
ma la cartella che te chiami _All3Xz_Tutorial deve essere in scriptfiles?

:sese: deve stare in scriptfiles [/b]

Infatti,io ho una GM dove si usa il Dini,ed i File *.ini stanno tutti in Scriptifles,anche se in cartelle diverse! :D [/b][/quote]
quello lo setti te :asd:
My Works
[FS]_All3Xz_ Anti-Cheat 4
[FS]_All3Xz_ Anti-Cheat 7
[FS]_All3Xz_ Anti-Cheat 8
[GM] PVCM Training 0.? (MySQL)
[APP]_All3Xz_ NPC Generator
[GUIDA] Leggere da file usando dini
[GUIDA] Scripting GTA:IV - Callbacks
[GM] PVCM Training 1 (MySQL)
[GM] PVCM A/D
[GUIDA] Leggere da file usandi dini 2
0

#8 L'utente è offline   SingSong 

  • Cittadino Onesto
  • Gruppo: Utenti
  • Messaggi: 20
  • Iscritto il: 18/02/10

Inviato il 19 febbraio 2010 - 18:10

sn riuscito a scrivere nel file ini ma poi come faccio a farglielo leggere ?
0

#9 L'utente è offline   Peppe951 

  • Tirapiedi
  • Gruppo: Utenti
  • Messaggi: 899
  • Iscritto il: 14/07/09
  • GTA Preferito:Sconosciuto

Inviato il 19 febbraio 2010 - 18:16

dini_Get se è una stringa quello che devi leggere
dini_Int se è un numero intero
dini_Float se è un float (di solito numero decimale)
dini_Bool se è un valore booleano (true o false)

Se intendi creare un sistema di registrazione usa il dudb ;)
0

#10 L'utente è offline   SingSong 

  • Cittadino Onesto
  • Gruppo: Utenti
  • Messaggi: 20
  • Iscritto il: 18/02/10

Inviato il 19 febbraio 2010 - 18:52

cm si usa il dini_get io ho fatto un comando che setta l'admin e voglio che quando uno si conette legga nel file se uno è admin e li assegni èadmin(playerid,[livello]);
0

#11 L'utente è offline   L4ky 

  • Ex galeotto
  • Gruppo: Utenti
  • Messaggi: 796
  • Iscritto il: 04/02/08

Inviato il 19 febbraio 2010 - 20:03

Eh te stai chiedendo di farti lo script intero. Al massimo possiamo aiutarti a farlo.
L'ideale è che aprissi un post con il tuo codice completo e specificare ciò di cui hai bisogno.
Vivo la mia vita a 1/4 di miglio all'ora , per quei dieci secondi sono libero.
IV:MP Server Alpha 2 R3 Host by AndryXoX 95.141.32.61:20601

Immagine Postata
0

#12 L'utente è offline   _All3Xz_ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1512
  • Iscritto il: 05/01/09
  • GTA Preferito:GTA: San Andreas

Inviato il 19 febbraio 2010 - 20:26

Quote

Originally posted by Peppe951@19/02/10 - 18:16
dini_Get se è una stringa quello che devi leggere
dini_Int se è un numero intero
dini_Float se è un float (di solito numero decimale)
dini_Bool se è un valore booleano (true o false)

Se intendi creare un sistema di registrazione usa il dudb ;)

Perchè scusa?
My Works
[FS]_All3Xz_ Anti-Cheat 4
[FS]_All3Xz_ Anti-Cheat 7
[FS]_All3Xz_ Anti-Cheat 8
[GM] PVCM Training 0.? (MySQL)
[APP]_All3Xz_ NPC Generator
[GUIDA] Leggere da file usando dini
[GUIDA] Scripting GTA:IV - Callbacks
[GM] PVCM Training 1 (MySQL)
[GM] PVCM A/D
[GUIDA] Leggere da file usandi dini 2
0

#13 L'utente è offline   Peppe951 

  • Tirapiedi
  • Gruppo: Utenti
  • Messaggi: 899
  • Iscritto il: 14/07/09
  • GTA Preferito:Sconosciuto

Inviato il 19 febbraio 2010 - 20:30

Quote

Originally posted by _All3Xz_+19/02/10 - 20:26

Quote

(_All3Xz_ @ 19/02/10 - 20:26)
-Peppe951
@19/02/10 - 18:16
dini_Get se è una stringa quello che devi leggere
dini_Int se è un numero intero
dini_Float se è un float (di solito numero decimale)
dini_Bool se è un valore booleano (true o false)

Se intendi creare un sistema di registrazione usa il dudb ;)

Perchè scusa? [/b]

Era solo un consiglio... Col dini si può benissimo fare un sistema di registrazione, ma con il dudb, creato dallo stesso autore del dini (DracoBlue), è più facile e intuitivo, perché creato apposta per questo.
0

#14 L'utente è offline   .ReVo^ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1402
  • Iscritto il: 20/11/08
  • GTA Preferito:GTA: TBoGT

Inviato il 19 febbraio 2010 - 20:31

Bhe se ti devo dire la mia sinceramente preferisco il dini perchè con il dudb mi trovo poco xD
Immagine Postata
0

#15 L'utente è offline   Peppe951 

  • Tirapiedi
  • Gruppo: Utenti
  • Messaggi: 899
  • Iscritto il: 14/07/09
  • GTA Preferito:Sconosciuto

Inviato il 19 febbraio 2010 - 20:37

Quote

Originally posted by .ReVo^@19/02/10 - 20:31
Bhe se ti devo dire la mia sinceramente preferisco il dini perchè con il dudb mi trovo poco xD

In che senso ti trovi meglio con il dini? o_O
Il dudb usa lo stesso il dini già le funzioni per verificare se l'account esiste, per crearlo, eccetera... anche se è lo stesso facile farlo con il dini ci si trova meglio con il dudb...
0

#16 L'utente è offline   .ReVo^ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1402
  • Iscritto il: 20/11/08
  • GTA Preferito:GTA: TBoGT

Inviato il 19 febbraio 2010 - 21:04

Quote

Originally posted by Peppe951+19/02/10 - 20:37

Quote

(Peppe951 @ 19/02/10 - 20:37)
-.ReVo^
@19/02/10 - 20:31
Bhe se ti devo dire la mia sinceramente preferisco il dini perchè con il dudb mi trovo poco xD

In che senso ti trovi meglio con il dini? o_O
Il dudb usa lo stesso il dini già le funzioni per verificare se l'account esiste, per crearlo, eccetera... anche se è lo stesso facile farlo con il dini ci si trova meglio con il dudb... [/b]

Si per esempio col dudb non puoi fare tipo
/Niss/Utenti/NOME.ini
Invece con il dudb non lo puoi fare.
Immagine Postata
0

#17 L'utente è offline   Peppe951 

  • Tirapiedi
  • Gruppo: Utenti
  • Messaggi: 899
  • Iscritto il: 14/07/09
  • GTA Preferito:Sconosciuto

Inviato il 19 febbraio 2010 - 21:05

Quote

Originally posted by .ReVo^+19/02/10 - 21:04

Quote

(.ReVo^ @ 19/02/10 - 21:04)

Quote

Originally posted by Peppe951@19/02/10 - 20:37
-.ReVo^
@19/02/10 - 20:31
Bhe se ti devo dire la mia sinceramente preferisco il dini perchè con il  dudb mi trovo poco xD

In che senso ti trovi meglio con il dini? o_O
Il dudb usa lo stesso il dini già le funzioni per verificare se l'account esiste, per crearlo, eccetera... anche se è lo stesso facile farlo con il dini ci si trova meglio con il dudb...

Si per esempio col dudb non puoi fare tipo
/Niss/Utenti/NOME.ini
Invece con il dudb non lo puoi fare. [/b]

io per farlo ho semplicemente modificato l'include omg
0

#18 L'utente è offline   .ReVo^ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1402
  • Iscritto il: 20/11/08
  • GTA Preferito:GTA: TBoGT

Inviato il 19 febbraio 2010 - 21:15

Quote

Originally posted by Peppe951+19/02/10 - 21:05

Quote

(Peppe951 @ 19/02/10 - 21:05)

Quote

Originally posted by .ReVo^@19/02/10 - 21:04

Quote

Originally posted by Peppe951@19/02/10 - 20:37
-.ReVo^
@19/02/10 - 20:31
Bhe se ti devo dire la mia sinceramente preferisco il dini perchè con il  dudb mi trovo poco xD

In che senso ti trovi meglio con il dini? o_O
Il dudb usa lo stesso il dini già le funzioni per verificare se l'account esiste, per crearlo, eccetera... anche se è lo stesso facile farlo con il dini ci si trova meglio con il dudb...

Si per esempio col dudb non puoi fare tipo
/Niss/Utenti/NOME.ini
Invece con il dudb non lo puoi fare.

io per farlo ho semplicemente modificato l'include omg [/b]

Vabbe pure io lo so fa quello basta modificare una cosa e si risolve ma dico l'include originale :embè:
Immagine Postata
0

#19 L'utente è offline   _All3Xz_ 

  • Criminale
  • Gruppo: Utenti
  • Messaggi: 1512
  • Iscritto il: 05/01/09
  • GTA Preferito:GTA: San Andreas

Inviato il 20 febbraio 2010 - 15:09

O_O io preferisco il dini, semplice e intuitivo. ;)
My Works
[FS]_All3Xz_ Anti-Cheat 4
[FS]_All3Xz_ Anti-Cheat 7
[FS]_All3Xz_ Anti-Cheat 8
[GM] PVCM Training 0.? (MySQL)
[APP]_All3Xz_ NPC Generator
[GUIDA] Leggere da file usando dini
[GUIDA] Scripting GTA:IV - Callbacks
[GM] PVCM Training 1 (MySQL)
[GM] PVCM A/D
[GUIDA] Leggere da file usandi dini 2
0

#20 L'utente è offline   Peppe951 

  • Tirapiedi
  • Gruppo: Utenti
  • Messaggi: 899
  • Iscritto il: 14/07/09
  • GTA Preferito:Sconosciuto

Inviato il 20 febbraio 2010 - 18:48

Per quanto riguarda il Dini è uscita una seconda versione (non proprio, perché cambia del tutto il funzionamento e il sistema di memorizazzione dei dati), di nome DJson...
0

  • (2 Pagine)
  • +
  • 1
  • 2
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

1 utenti stanno leggendo questa discussione
0 utenti, 1 ospiti, 0 utenti anonimi