Szerző Téma: [TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)  (Megtekintve 3141 alkalommal)

+2 Show voters
Üdv!
Láttam egy kérdést amiben azt kérdezte az illetõ ,hogy hogyan tudja azt megcsinálni hogy csak egy bizonyos csapat / értékû ember tudja használni!
 


Sima változóval!

 

Lássuk:
Elõször is létrehozunk egy változót!
 
new rendor[MAX_PLAYERS];

 
Ez lesz a változónk!
Most ügye még semmit nem jelent.
De például, csináljunk egy rendõr munkát!
Zcmd:
 

CMD:rendor(playerid, params[])
{
rendor[playerid] = 1;
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk az új munkádhoz! Mostantól rendõr vagy!\");
return 1;
}

 
Magyarázat:
 
CMD:rendor(playerid, params[])

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
rendor[playerid] = 1;

 - Kinevezzük rendörré azaz a változó értéke nála már 1 !
 
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk az új munkádhoz! Mostantól rendõr vagy!\");

 -Kiirjuk neki, hogy felvette a munkát!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
STRCMP:
 
   if(strcmp(cmd, \"/rendor\", true) == 0) 
{
rendor[playerid] = 1;
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk az új munkádhoz! Mostantól rendõr vagy!\");
return 1;
}

 
Magyarázat:
 
if(strcmp(cmd, \"/rendor\", true) == 0) 

 - létrehozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
rendor[playerid] = 1;

 - Kinevezzük rendörré azaz a változó értéke nála már 1 !
 
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk az új munkádhoz! Mostantól rendõr vagy!\");

 -Kiirjuk neki, hogy felvette a munkát!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
Na most a kinevezéssel készen vagyunk! Most mondasuk is fel ! :)
ZCMD:
 

CMD:felmond(playerid,params[])
{
rendor[playerid] = 0;
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálok, sikeresen felmondtál!Jelenleg nincs munkád!\");
return 1;
}

 
Magyarázat:
 
CMD:felmond(playerid, params[])

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
rendor[playerid] = 0;

 - Felmondattuk szóval már a változó értéke nála 0 !
 
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk, sikeresen felmondtál!Jelenleg nincs munkád!\");

 -Kiirjuk neki, hogy felmondott!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
STRCMP:
 
strcmp(cmd, \"/felmond\", true) == 0) 
{
rendor[playerid] = 0;
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk , sikeresen felmondtál!Jelenleg nincs munkád!\");
return 1;
}

 
Magyarázat:
 
if(strcmp(cmd, \"/felmond\", true) == 0) 

 - létrehozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
rendor[playerid] = 0;

 - Felmondattuk szóval mostmár a változó értéke nála 0 !
 
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk, sikeresen felmondtál!Jelenleg nincs munkád!!\");

 -Kiirjuk neki, hogy felmondott!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
Na most csináljunk neki egy parancsot!
ZCMD:
 

CMD:proba(playerid,params[])
{
if(rendor[playerid] == 1)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te rendõr vagy!\");
}
else if(rendor[playerid] == 0)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");
return 1;
}
return 1;
}

 
Magyarázat:
 
CMD:proba(playerid, params[])

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
if(rendor[playerid] == 1)

 - Ha az játékos változójának értéke 1 akkor kiirjuk hogy rendõr!
 
return 1;

 - vissza térünk!
 
}

 - Lezárjuk ezt a részt!
 
else if(rendor[playerid] == 0)

 - De ha nem...
 
{

 - Megnyitjuk
 
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");

 - És kiirjuk hogy nem rendõr!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
STRCMP:
 

if(strcmp(cmd, \"/proba\", true) == 0)
{
if(rendor[playerid] == 1)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te rendõr vagy!\");
}
else if(rendor[playerid] == 0)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");
return 1;
}
return 1;
}

 
Magyarázat:
 
if(strcmp(cmd, \"/proba\", true) == 0) 

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
if(rendor[playerid] == 1)

 - Ha az játékos változójának értéke 1 akkor kiirjuk hogy rendõr!
 
return 1;

 - vissza térünk!
 
}

 - Lezárjuk ezt a részt!
 
else if(rendor[playerid] == 0)

 - De ha nem...
 
{

 - Megnyitjuk
 
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");

 - És kiirjuk hogy nem rendõr!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
 

PlayerInfoval:
 
 
Elõször is csináljunk egy enumot!
 
enum pInfo
{
rendor
}

 
new PlayerInfo[MAX_PLAYERS][pInfo];
Magyarázat:
 
enum pInfo

 - Létre hozunk egy tömböt! (igazábol fingom sincs :( )
 
}

 - Megnyitjuk
 
rendor

 - Ez a tömbünk!
 
}

 - Zárjuk
 
new PlayerInfo[MAX_PLAYERS][pInfo]; 

 -  Ez  egy változó!
És most vegyük fel a munkát!
ZCMD:
 
CMD:rendor(playerid,params[])
{
PlayerInfo[playerid][rendor] = 1;
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálunk, az új munkád rendõr!\");\"
return 1;
}

 
Magyarázat:
 
CMD:rendor(playerid, params[])

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
PlayerInfo[playerid][rendor] = 1;

 - Kinevezzük rendörré azaz a változó értéke nála már 1 !
 
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálunk, az új munkád rendõr!\");\"

 -Kiirjuk neki, hogy felvette a munkát!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
STRCMP:
 

if(strcmp(cmd, \"/rendor\", true) == 0)
{
PlayerInfo[playerid][rendor] = 1;
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálunk, az új munkád rendõr!\");\"
return 1;
}

 
Magyarázat:
 
if(strcmp(cmd, \"/rendor\", true) == 0)

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
PlayerInfo[playerid][rendor] = 1;

 - Kinevezzük rendörré azaz a változó értéke nála már 1 !
 
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálunk, az új munkád rendõr!\");\"

 -Kiirjuk neki, hogy felvette a munkát!
Jó, most mondassuk fel!
ZCMD:
 
CMD:felmond(playerid,params[])
{
PlayerInfo[playerid][rendor] = 0;
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálunk, sikeresen felmodntál!\");\"
return 1;
}

 
Magyarázat:
 
CMD:felmond(playerid, params[])

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
PlayerInfo[playerid][rendor] = 1;

 - Kinevezzük rendörré azaz a változó értéke nála már 1 !
 
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálunk, sikeresen felmondtál!\");\"

 -Kiirjuk neki, hogy felmondott!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
 
if(strcmp(cmd, \"/felmond\", true) == 0)
{
PlayerInfo[playerid][rendor] = 0;
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálunk, sikeresen felmodntál!\");\"
return 1;
}

 
Magyarázat:
 
if(strcmp(cmd, \"/felmond\", true) == 0)

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
PlayerInfo[playerid][rendor] = 1;

 - Kinevezzük rendörré azaz a változó értéke nála már 1 !
 
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálunk, sikeresen felmondtál!\");\"

 -Kiirjuk neki, hogy felmondott!
Na most, hozzunk létre egy parancsot!
 
CMD:proba(playerid,params[])
{
if(PlayerInfo[playerid][rendor] == 1)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te rendõr vagy!\");
}
else if(PlayerInfo[playerid][rendor] == 0)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr\");
return 1;
}
return 1;
}

 
Magyarázat:
code]CMD:proba(playerid, params[])[/code] - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
if(PlayerInfo[playerid][rendor] == 1)

 - Ha az játékos változójának értéke 1 akkor kiirjuk hogy rendõr!
 
return 1;

 - vissza térünk!
 
}

 - Lezárjuk ezt a részt!
[colde]else if(PlayerInfo[playerid][rendor] == 0)[/code] - De ha nem...
 
{

 - Megnyitjuk
 
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");

 - És kiirjuk hogy nem rendõr!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
STRCMP:
 

if(strcmp(cmd, \"/proba\", true) == 0)
{
if(rendor[playerid] == 1)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te rendõr vagy!\");
}
else if(rendor[playerid] == 0)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");
return 1;
}
return 1;
}

 
Magyarázat:
code]if(strcmp(cmd, \"/proba\", true) == 0) [/code] - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
if(PlayerInfo[playerid][rendor] == 1)

 - Ha az játékos változójának értéke 1 akkor kiirjuk hogy rendõr!
 
return 1;

 - vissza térünk!
 
}

 - Lezárjuk ezt a részt!
 
else if(PlayerInfo[playerid][rendor] == 0)

 - De ha nem...
 
{

 - Megnyitjuk
 
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");

 - És kiirjuk hogy nem rendõr!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
 
bool használatával!
 
Lássuk:
Elõször is létrehozunk egy változót!
 
new bool:rendor[MAX_PLAYERS];

 
Ez lesz a változónk!
Most ügye még semmit nem jelent.
De például, csináljunk egy rendõr munkát!
Zcmd:
 

CMD:rendor(playerid, params[])
{
rendor[playerid] = true;
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk az új munkádhoz! Mostantól rendõr vagy!\");
return 1;
}

 
Magyarázat:
 
CMD:rendor(playerid, params[])

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
rendor[playerid] = true;

 - Kinevezzük rendörré azaz mostmár true (1)!
 
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk az új munkádhoz! Mostantól rendõr vagy!\");

 -Kiirjuk neki, hogy felvette a munkát!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
STRCMP:
 
   if(strcmp(cmd, \"/rendor\", true) == 0) 
{
rendor[playerid] = true;
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk az új munkádhoz! Mostantól rendõr vagy!\");
return 1;
}

 
Magyarázat:
 
if(strcmp(cmd, \"/rendor\", true) == 0) 

 - létrehozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
rendor[playerid] = true;

 - Kinevezzük rendörré azaz mostmár true (1)!
 
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk az új munkádhoz! Mostantól rendõr vagy!\");

 -Kiirjuk neki, hogy felvette a munkát!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
Na most a kinevezéssel készen vagyunk! Most mondasuk is fel ! :)
ZCMD:
 

CMD:felmond(playerid,params[])
{
rendor[playerid] = false;
SendClientMessage(playerid,COLOR_VALAMI,\"Gratulálok, sikeresen felmondtál!Jelenleg nincs munkád!\");
return 1;
}

 
Magyarázat:
 
CMD:felmond(playerid, params[])

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
rendor[playerid] = false;

 - Felmondattuk szóval már a változó értéke nála false(0) !
 
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk, sikeresen felmondtál!Jelenleg nincs munkád!\");

 -Kiirjuk neki, hogy felmondott!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
STRCMP:
 
strcmp(cmd, \"/felmond\", true) == 0) 
{
rendor[playerid] = false;
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk , sikeresen felmondtál!Jelenleg nincs munkád!\");
return 1;
}

 
Magyarázat:
 
if(strcmp(cmd, \"/felmond\", true) == 0) 

 - létrehozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
rendor[playerid] = false;

 - Felmondattuk szóval mostmár a változó értéke nála false(0) !
 
SendClientMessage(playerid,COLOR_VALAMI, \"Gratulálunk, sikeresen felmondtál!Jelenleg nincs munkád!!\");

 -Kiirjuk neki, hogy felmondott!
 
return 1

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
Na most csináljunk neki egy parancsot!
ZCMD:
 

CMD:proba(playerid,params[])
{
if(rendor[playerid] == true)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te rendõr vagy!\");
}
else if(rendor[playerid] == false)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");
return 1;
}
return 1;
}

 
Magyarázat:
 
CMD:proba(playerid, params[])

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
if(rendor[playerid] == true)

 - Ha az játékos változójának értéke true(1) akkor kiirjuk hogy rendõr!
 
return 1;

 - vissza térünk!
 
}

 - Lezárjuk ezt a részt!
 
else if(rendor[playerid] == false)

 - De ha nem...
 
{

 - Megnyitjuk
 
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");

 - És kiirjuk hogy nem rendõr!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
STRCMP:
 

if(strcmp(cmd, \"/proba\", true) == 0)
{
if(rendor[playerid] == true)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te rendõr vagy!\");
}
else if(rendor[playerid] == false)
{
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");
return 1;
}
return 1;
}

 
Magyarázat:
 
if(strcmp(cmd, \"/proba\", true) == 0) 

 - Létre hozzuk a parancsot!
 
{

 - Megnyitjuk a parancsot!
 
if(rendor[playerid] == true)

 - Ha az játékos változójának értéke true(1) akkor kiirjuk hogy rendõr!
 
return 1;

 - vissza térünk!
 
}

 - Lezárjuk ezt a részt!
 
else if(rendor[playerid] == false)

 - De ha nem...
 
{

 - Megnyitjuk
 
SendClientMessage(playerid,COLOR_VALAMI,\"Te nem vagy rendõr!\");

 - És kiirjuk hogy nem rendõr!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk!
 
return 1;

 - visszatérünk!
 
}

 - lezárjuk a parancsot!
Tessék egy példa script:
 

#include <a_samp>
#include <zcmd>
#include <colors>
#define munka 1
new bool:rendor[MAX_PLAYERS];
new bool:mentos[MAX_PLAYERS];
new bool:bunozo[MAX_PLAYERS];
CMD:munka(playerid, params[])
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST, \"Munkák\", \"Rendõr\\nMentõs\\nBûnözõ\",\"Kiválaszt\",\"Mégse\");
return 1;
}
CMD:felmond(playerid, params[])
{
rendor[playerid] = false;
mentos[playerid] = false;
bunozo[playerid] = false;
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == munka) // Ez lehetne most if(dialogid == 1) is ...
{
if(response)
{
if(listitem == 0)
{
rendor[playerid] = true;
}
if(listitem == 1)
{
mentos[playerid] = true;
}
if(listitem == 2)
{
bunozo[playerid] = true;
}
}
}
return 1;
}
« Utoljára szerkesztve: 2011. Január 04. - 14:33:27 írta Zsotti44 »

Nem elérhető Mambo

  • 4239
    • Profil megtekintése
[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #1 Dátum: 2011. Január 04. - 14:18:14 »
0 Show voters
Ööö.. Én látom hogy 2x vannak a dolgok?:D

[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #2 Dátum: 2011. Január 04. - 14:30:40 »
0 Show voters
Igen mert, megcsináltam ZCMD parancsformába és STRCMP ... azon belöl megcsináltam bool használatábal és Playerinfoval és saima változóval.. 3órámba került :)

Nem elérhető ZeRo

  • 4620
  • Ex Globális Moderátor
    • Profil megtekintése
[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #3 Dátum: 2011. Január 04. - 14:57:20 »
0 Show voters
Idézetet írta: Zsotti44 date=1294143952\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"5139\" data-ipsquote-contentclass=\"forums_Topic

enum pInfo

 - Létre hozunk egy tömböt! (igazábol fingom sincs :( )
 
De akkor miért írsz leírást, ha még te sem érted? :neutral: Egyébként ez egy felsorolt adattípus( enumeráció ), és ha létrehozol egy mátrixot( a te példádban PlayerInfo ), akkor annak az elemeivel tudsz hivatkozni minden játékosra vonatkoztatva( vagy ha nem MAX_PLAYERS értéket adsz neki, akkor nyilván valami más dologra ). És nem csak ez volt benne az egyetlen pontatlan/hibás megfogalmazás, még nézegesd át azért.
De a munkát becsülni kell, és az, hogy dolgoztál vele, az figyelemreméltó. ;) Egyébként szép. ;)

Nem elérhető Iceaac

  • 2187
    • Profil megtekintése
[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #4 Dátum: 2011. Január 04. - 15:21:25 »
0 Show voters
Szia!
Csak átfutottam a tutorialt. Amit \"playerinfos\" megoldásnak nevezel, az enumeráció, az elején, mivel csak 2 értéket használsz a rendor változónak, érdemes logikai változóként létrehozni (bool), mert kevesebbet eszik. De ami a legfontosabb: sokkal egyszerûbb, ha a Per Player Variable Systemet használod! ->
http://wiki.sa-mp.com/wiki/Per-player_variable_system
Írhatnál egy részt ezzel is. Am grat, egész szép tutorial.

[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #5 Dátum: 2011. Január 04. - 15:27:20 »
0 Show voters
Köszi.. ez a pvar dolog nekem magas :(

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #6 Dátum: 2011. Január 04. - 15:51:18 »
0 Show voters
Idézetet írta: Zsotti44 date=1294151240\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"5139\" data-ipsquote-contentclass=\"forums_Topic
Köszi.. ez a pvar dolog nekem magas :(
 
Aki keres az talál. :D http://sampforum.hu/index.php?topic=7895.0


Egyébként nem rossz.   :)

Nem elérhető Iceaac

  • 2187
    • Profil megtekintése
[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #7 Dátum: 2011. Január 04. - 16:19:46 »
0 Show voters
Idézetet írta: Zsotti44 date=1294151240\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"5139\" data-ipsquote-contentclass=\"forums_Topic
Köszi.. ez a pvar dolog nekem magas :(
 
Egyszerûbb, mint a Te megoldasaid, csak azért találod nehéznek, mert még nem ismered.

Nem elérhető Niko

[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #8 Dátum: 2011. Január 04. - 17:38:35 »
0 Show voters
nem tudom ez most ide tartozik vagy sem, de halvány gõzöm sincs arról mit jelent az a return 0; return 1; mer mindig azt mondjátok hogy \"visszatér egy értékkel\" vagy mi, de milyen értékkel? valaki el tudná magyarázni úgy hogy én is értsem? :D
egyébként szép leírás :)

[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #9 Dátum: 2011. Január 04. - 17:41:51 »
0 Show voters
Elvileg a return 1; azt jelzi hogyha hibásan megy végig a feladat akkor is lemegy.  return 0; viszont ha hibás a parancs akkor leállítja a parancsot.. magyarul unknow... :)

Nem elérhető jana4

  • 5929
  • Ex Staff
    • Profil megtekintése
[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #10 Dátum: 2011. Január 04. - 17:46:27 »
0 Show voters
Idézetet írta: Niko date=1294159115\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"5139\" data-ipsquote-contentclass=\"forums_Topic
nem tudom ez most ide tartozik vagy sem, de halvány gõzöm sincs arról mit jelent az a return 0; return 1; mer mindig azt mondjátok hogy \"visszatér egy értékkel\" vagy mi, de milyen értékkel? valaki el tudná magyarázni úgy hogy én is értsem? :D
egyébként szép leírás :)
 
public OnPlayerText(playerid, text[])

{


    // if pl. átirod, hogy kiirja az üzeneted elõtt az id-t


   return 0; // hamissal (false) tér vissza, vagyis nem küldi el az alap szöveget, mert 2 lenne (a módosított+alap)


}

return --- visszatérés

értékek: 1,0


true/false = igaz/hamis


igaz, akkor lefut, ha hamis, nem.

Nem elérhető ZeRo

  • 4620
  • Ex Globális Moderátor
    • Profil megtekintése
[TUT]Kicsit a változókról!(ZCMD,STRCMP - Sima vaoltozo,PlayerInfo,Bool)
« Válasz #11 Dátum: 2011. Január 04. - 17:52:50 »
0 Show voters
Idézetet írta: ScreaM date=1294159587\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"5139\" data-ipsquote-contentclass=\"forums_Topic
return --- visszatérés

értékek: 1,0


true/false = igaz/hamis


igaz, akkor lefut, ha hamis, nem.

 
Ez nem teljesen igaz( abban az egy példában igen, de általánosítva nem ), ugyanis akármennyi lehet a visszatérés értéke. Vegyük például a következõ függvényt( semmi értelme, de a a visszatérési értéket jól szemlélteti ):
 

stock GetPlayerMoneyEx( playerid ) { //Visszatérés a megadott azonosítójú játékos pénzével
    return GetPlayerMoney( playerid );
}

 
Bizonyos függvényeknek( leginkább a sztingkezelõknek ) fontos tudni a visszatérési értékét, hiszen akkor tudod meg, hogy lefutott-e vagy sem, vagy volt-e egyezés, vagy sem ( Errõl részletesebben itt olvashatsz ).
Sõt, olyan is elõfordulhat, hogy nincs szükségünk visszatérésre; Mondjuk egy idõzítõ leállításánál:
 

public OnPlayerExitFromZonePoint( playerid ) {
    KillTimer( zoneTimer[ playerid ] );
    //NINCS return
}
« Utoljára szerkesztve: 2011. Január 04. - 17:55:04 írta ZeRo »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal