GTA Közösség - A magyar GTA fórum
San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Tanuljunk PAWN nyelvet => A témát indította: Koncz_Norbert - 2011. szeptember 26. - 17:23:22
-
Bevezetés
Kevesen ismerik ezt a megoldást ezért gondoltam leírom. Valójában idozítoként ( Timer ) / folyamatként ( Loop ) is funkciónál.
Nem igényel további változókat / definíciókat, csak a megadott értékhez irányítja a folyamatot.
A Batch szkriptelésben is megtalálható, persze nem ide tartozik.
Figyelmeztetések
warning 225: unreachable code. - A struktúra nem hibás, és nem okoz szerver felöli összeomlást.
Használat
[pawn]
goto parancs;
parancs:
{
return 1;
}
[/pawn]
Helyes használata
[pawn]
#include a_samp
main()
{
#define PeterGriffin 47
new LoisGriffin = 48;
if( PeterGriffin < LoisGriffin )
goto LoisNyert;
else
goto PeterNyert;
LoisNyert:
{
print(\" Lois Griffin Nyert. \");
return 1;
}
PeterNyert:
{
print(\" Peter Griffin Nyert. \");
return 1;
}
}
[/pawn]
Lois Griffin Nyert.
[/quote]
Helytelen használata
[pawn]
#include a_samp
main()
{
#define PeterGriffin 47
new LoisGriffin = 48;
if( PeterGriffin < LoisGriffin )
goto LoisNyert;
else
goto PeterNyert;
LoisNyert:
print(\" Lois Griffin Nyert. \");
PeterNyert:
print(\" Peter Griffin Nyert. \");
}
[/pawn]
Lois Griffin Nyert.
Peter Griffin Nyert.
[/quote]
Egyéb
[pawn]
#include a_samp
main()
{
new ido = 0;
loop:
{
if( ido < 5 )
{
print(\" a \");
ido++;
goto loop;
}
return 1;
}
}
[/pawn]
a
a
a
a
a
[/quote]
-
Hasznos.
-
Hasznos.
Esetleg valamit közölni szeretnél?
Ha bármi probléma van akkor nyugodtan megoszthatod.
-
Szép leírás!
Jó pár helyen használom, mondjuk az ilyen bonyolultabb használatát eddig nem ismertem, mint ahogy azt leírtad az elsõ példában.
Kösz, hogy megosztottad velünk.
E: Lol, beszélem itt a hülyeségeket, bekavarodtam a { } jelektõl.
-
Anno ZeRo írt errõl egy leírást és ott azt mondta nem ajánlja a használatát.
-
Én elég gyakran használom ( fõleg függvénykönyvtárakban ) és sosem volt vele probléma.
Igaz hibát / hibákat is jelez, de nem omlik össze a kliens.
-
Én se ajánlom, nem hiszem hogy egy adott folyamat struktúrából, csak olyan jó dolog ki ugrálni. Mindent meg lehet oldani egyéb más utasítással, nagyon ritkák azok az esetek mikor csak goto utasítást lehet használni, ezért csak akkor javallott a használata ha ezt másképp nem lehet megoldani.