Üdvözöllek! A mai nap elmagyarázom, azt amit még anó Pedró mestertõl tanultam. Nos hozzunk létre egy új lapot, és írjak be ezt a 2 sor-t.
#include <a_samp>
#include <zcmd>
a_samp: Alapból kel mivel anélkül, nem lehet lekonvertálni.
zcmd: Parancs miatt.
Utána hozzunk létre, egy parancsot.
CMD:help(playerid) {
Ha eddig meg vagyunk hozzunk létre egy \"kimenetet\" és egy \"line\"-t.
new kimenet[2048], line[512];
kimenet[0] = EOS;
Ugyebár van egy olyan file a scriptfiles mappába Pl.: help.txt
new File:tmp=fopen(\"parancsok/help.txt\");
Ezáltal megcsináljuk azt, hogy a .txt file-t elõhívjuk. De most jön egy kis bonyodalom amit nem nagyon lehet megérteni. Elsõnek én se értettem, nyugi.
if(tmp) {
while(fread(tmp, line, 512)) strins(kimenet, line, strlen(kimenet), sizeof(kimenet));
fclose(tmp);
}
Így a parancs lefut, és de még nem vagyunk kész. Meg kel jeleníteni a Dialogot. (fclose: Bezárja a megnyitott fájlt.)
Addig olvassuk a megnyitott fájlt amíg van benne sor. (while) ismétlõdés míg az eredmény nem nulla\' date=\' (fread) sor beolvasása fájlból.[/quote\']
Most pedig jelenítsük meg a dialogot.
ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, \"{FFFFFF}Segítség\", kimenet, \"Oké\", \"\");
Ezáltal így már teljesen mûködõ képes a parancs. De még mindig nem vagyunk kész. Be kel fejezni a parancsot.
return 1;
}
És készen is vagyunk. Most pedig teszteljük. Írjuk bele a .txt fileba, hogy pl.: Egy sok \"a\" betût.
Végeredmény.:
Teljes kód.:
#include <a_samp>
#include <zcmd>
CMD:help(playerid) {
new kimenet[2048], line[512];
kimenet[0] = EOS;
new File:tmp=fopen(\"parancsok/help.txt\");
if(tmp) {
while(fread(tmp, line, 512)) strins(kimenet, line, strlen(kimenet), sizeof(kimenet));
fclose(tmp);
}
ShowPlayerDialog(playerid, DIALOG_NONE, DIALOG_STYLE_MSGBOX, \"{FFFFFF}Segítség\", kimenet, \"Oké\", \"\");
return 1;
}
Köszönöm a figyelmet! További jó fórumozást.
[/quote]