Szerző Téma: Névmentő  (Megtekintve 2228 alkalommal)

Névmentő
« Dátum: 2014. november 28. - 22:10:20 »
+3 Show voters
Üdv!
Megpróbáltam egy fórumozó kérését teljesíteni, hát ez lett belőle.
Nem tudtam mire szeretné használni, így még mindig értelmetlen számomra a script, dehát ez van. :D
Ez a script tulajdonképpen annyit tesz, hogy a betöltődésekor létrehoz egy fájlt (ha nincs még), két parancsa van: /nevlista, /nevment. A névlistával kilistázza az elmentett neveket, a névmenttel pedig elmenti azt.
Lehetett volna másképp is / egyszerűbben, de most a dini-nek a beállító/lekéregetős módszerét alkalmaztam, tehát így néz ki a fájl:
 
MennyiNév=3
1=blackdog476
2=pista
3=teszt

 
És így írja ki: \"FDj5qas.png\"
Idő: ~10perc (sokat szenvedtem vele)


Kód:
#include <a_samp>
#include <zcmd>
#include <dini>
#define FAJL \"nevlista.txt\"
#define PREFIX \"[Névmentő]\"
#define DEBUG //minden egyes műveletnél leellenőrzi, hogy létezik-e a fájl. Kikapcsoláshoz: sor elejére-> //
#define STRING1 \"{00ff00}[NÉVMENTŐ]{ff0000} Nevek betöltése..\"
#define STRING2 \"{00ff00}[NÉVMENTŐ]{ff0000} Név mentése...\"
#define STRING3 \"{00ff00}[NÉVMENTŐ]{ff0000} Név elmentve!\"
stock checkFile() {
if (fexist(FAJL)) {
print(\"\"PREFIX\" Fájl metalálva.\");
} else {
    print(\"\"PREFIX\" Nem található fájl (\"FAJL\")!\");
    print(\"\"PREFIX\" Fájl létrehozása...\");
new File:h = fopen(FAJL,io_write);
if(h) { fwrite(h,\"MennyiNév=0\"); fclose(h); print(\"Fájl létrehozva!\"); }
else print(\"Fájl létrehozása sikertelen!\");
}
}
CMD:nevment(playerid) {
#if defined DEBUG
checkFile();
#endif
SendClientMessage(playerid,-1,STRING2);
new mennyi = dini_Int(FAJL,\"MennyiNév\");
new string[4];
new name[24];
GetPlayerName(playerid,name,24);
valstr(string,mennyi+1);
dini_Set(FAJL,string,name);
dini_IntSet(FAJL,\"MennyiNév\",mennyi+1);
SendClientMessage(playerid,-1,STRING3);
return 1;
}
CMD:nevlista(playerid) {
SendClientMessage(playerid,-1,STRING1);
new kimenet[128+16]; //max chat karakterek
new mennyi = dini_Int(FAJL,\"MennyiNév\");
new a[4],b[32];
for(new i=1; i<=mennyi;i++) {
    format(a,4,\"%d\",i);
    format(b,32,\"%s, \",dini_Get(FAJL,a));
strcat(kimenet,b);
}
SendClientMessage(playerid,-1,kimenet);
return 1;
}
public OnFilterScriptInit() {
checkFile();
return 1;
}

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
Névmentő
« Válasz #1 Dátum: 2014. november 28. - 22:15:06 »
0 Show voters
Jó lett! Szerintem régi nevek előásásért kérte.. ( aka system ), viszont MySQL -ben sokkal jobb.  :$  ;)

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Névmentő
« Válasz #2 Dátum: 2014. november 28. - 22:22:36 »
+3 Show voters
Egyefene lehetsz az utódom  8)


ZyZu: Minek ide mysql? Az alap fájlkezelő is megteszi, akinek meg mysql-es a szervere annak az aka rendszere is valószínű mysql-es és megtudta írni.
szép munka blackdog476

Névmentő
« Válasz #3 Dátum: 2014. november 28. - 22:32:53 »
0 Show voters
Köszi :)

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
Névmentő
« Válasz #4 Dátum: 2014. november 29. - 11:16:57 »
0 Show voters
Idézetet írta: ƒlaﻛh date=1417209756\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"51553\" data-ipsquote-contentclass=\"forums_Topic
Egyefene lehetsz az utódom  8)
 
Ha már én is megengedtem neked.... :$
Szép munka blackdog476 :)  ^-^

Névmentő
« Válasz #5 Dátum: 2014. november 29. - 11:41:08 »
0 Show voters
Köszi :D

Névmentő
« Válasz #6 Dátum: 2014. november 29. - 15:39:42 »
0 Show voters
blackdog476 nagyon szépen köszönöm hogy rám szántad az idődet  ;D ++! Zyzu amit írt hasonlóra szeretném felhasználni! 

Névmentő
« Válasz #7 Dátum: 2014. november 29. - 15:43:27 »
0 Show voters
Nincs mit, örülök, hogy segíthettem :)

Nem elérhető Th0mas

  • 278
    • Profil megtekintése
Névmentő
« Válasz #8 Dátum: 2014. november 29. - 15:47:12 »
0 Show voters
Szép! :D

Névmentő
« Válasz #9 Dátum: 2014. november 29. - 18:16:17 »
0 Show voters
Szép ment a +

Névmentő
« Válasz #10 Dátum: 2014. november 29. - 20:50:51 »
0 Show voters
Ennye pont kellett egy ilyen, köszi a feltöltést! :)

Névmentő
« Válasz #11 Dátum: 2014. december 31. - 20:47:10 »
0 Show voters
Szerintem is jó lett.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal