tinyfugue
Különbségek
A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
Előző változat mindkét oldalonElőző változatKövetkező változat | Előző változat | ||
tinyfugue [2015/01/03 14:59] – truth | tinyfugue [2016/01/10 12:55] (aktuális) – truth | ||
---|---|---|---|
Sor 8: | Sor 8: | ||
===== Telepítés ===== | ===== Telepítés ===== | ||
* Windows - Az archívumban található telepítő egyszerűen végigkalauzol a folyamaton. | * Windows - Az archívumban található telepítő egyszerűen végigkalauzol a folyamaton. | ||
- | * Linux - Azért az általam feltöltött .tar-t linkeltem be, mert az új verziójú pcre miatt patch-elni kell, a '' | + | * Linux - Azért az általam feltöltött .tar-t linkeltem be, mert az új verziójú pcre miatt patch-elni kell. Nem minden esetben kell innen letölteni, mert pár disztribúció repo-jában megtalálható a tf csomag, és a telepítéshez csupán ennyi kellhet: |
===== A TF működése ===== | ===== A TF működése ===== | ||
Sor 27: | Sor 27: | ||
/addworld ev elveszettvilag.hu 6666 | /addworld ev elveszettvilag.hu 6666 | ||
/connect ev | /connect ev | ||
+ | </ | ||
+ | |||
+ | ===== Változók ===== | ||
+ | Kétféle módszer van a változók deklarálására, | ||
+ | < | ||
+ | /set i 1 | ||
+ | ; vagy | ||
+ | /test i := 1 | ||
+ | ; szám értékének növelése eggyel | ||
+ | /test ++i | ||
+ | ; szám értékének csökkentése eggyel | ||
+ | /test --i | ||
+ | ; összeadás | ||
+ | /test i := 5+7 | ||
+ | ; string deklarálása | ||
+ | /test s := 'abc def' | ||
+ | ; függvény visszatérési értékének mentése. s értéke ' | ||
+ | /test s := substr(' | ||
+ | ; függvény kimenetének váltózóba mentése a visszatérési érték helyett. a jelenlegi év lesz s értéke. | ||
+ | /test s := $[ftime(" | ||
+ | </ | ||
+ | |||
+ | A TF által ismert függvények listája a ''/ | ||
+ | |||
+ | ===== Triggerek ===== | ||
+ | A triggerek két részből állnak: pattern és command(s). Az előbbi az a szövegminta, | ||
+ | < | ||
+ | /def -mregexp -t' holtan esett ossze !' = kivesz penz hullabol | ||
+ | </ | ||
+ | |||
+ | Még egy fontos kapcsoló a triggereknél az '' | ||
+ | < | ||
+ | /def -mregexp -ag -t' | ||
+ | </ | ||
+ | |||
+ | ==== Reguláris kifejezések ==== | ||
+ | A szövegmintákban használhatsz ilyeneket, amik helyettesítenek különböző karaktersorozatokat. Tegyük fel, hogy valaki ad Neked pénzt, és az összeget szeretnéd kinyerni a szövegből, | ||
+ | Több lehetőséged van, a legegyszerűbb a mindenhova használható kifejezés, ez: (.*). Ez bármire egyezni fog. Használata: | ||
+ | < | ||
+ | /def -mregexp -t' | ||
+ | </ | ||
+ | Azonban ennél sokkal szűkebb értelmezési tartományt is meg lehet adni, példák: | ||
+ | < | ||
+ | ; a következő csak akkor fog kattanni, ha a Valaki után egy szám lesz megadva, | ||
+ | ; a ' | ||
+ | /def -mregexp -t' | ||
+ | ; a ' | ||
+ | /def -mregexp -t' | ||
+ | ; az ' | ||
+ | /def -mregexp -t' | ||
+ | </ | ||
+ | A kódban láthatóak a következő kifejezések: | ||
+ | < | ||
+ | /def -mregexp -t' (\d+) arany ermet ad neked.' | ||
+ | </ | ||
+ | Ezen kívül még sokféle mintát lehet a regexp-ben használni, amikről interneten lehet leírásokat találni, például itt: [[http:// | ||
+ | |||
+ | =====Eseménykezelés===== | ||
+ | A ''/ | ||
+ | < | ||
+ | /def -hCONNECT acl1 = /load auto_con.tf%; | ||
+ | /def -hDISCONNECT acl2 = /repeat -10 1 /connect ev | ||
+ | </ | ||
+ | Szemléletesen mutatja, hogy a CONNECT a csalatkozás után lefuttatja a törzsében lévő utasításokat, | ||
+ | |||
+ | =====Feltételes elágazás===== | ||
+ | Az ''/ | ||
+ | < | ||
+ | /if (condition) true_exp%;/ | ||
+ | </ | ||
+ | * **condition**: | ||
+ | * **true_exp**: | ||
+ | * **false_exp**: | ||
+ | |||
+ | Több feltétel kiértékelése esetén használható az ''/ | ||
+ | Példa: | ||
+ | < | ||
+ | /def -mregexp -t' | ||
+ | </ | ||
+ | |||
+ | =====Ciklusos utasítások===== | ||
+ | Ciklusszervezéssel egy utasításblokk ismételhető feltétel szerinti alkalommal. A TF-ben két klasszikus, más nyelvekből is ismert utasítás van erre a célra: ''/ | ||
+ | |||
+ | ====Iteráló ciklus==== | ||
+ | A for utasítás segítségével n darabszor megismételhető a ciklusmag. | ||
+ | < | ||
+ | /for loop_var init_val end_val command | ||
+ | </ | ||
+ | * **loop_var**: | ||
+ | * **init_val**: | ||
+ | * **end_val**: | ||
+ | * **command**: | ||
+ | |||
+ | Példa: | ||
+ | < | ||
+ | /for i 1 10 /echo %i | ||
+ | </ | ||
+ | |||
+ | ====Elöltesztelős ciklus==== | ||
+ | A while egy olyan ismétlési szerkezet, amely egészen addig ismétli a ciklusmagot, | ||
+ | < | ||
+ | /while (condition) commands%;/ | ||
+ | </ | ||
+ | * **condition**: | ||
+ | * **commands**: | ||
+ | |||
+ | Példa: | ||
+ | < | ||
+ | /set i 10 | ||
+ | /while (i > 0) /test echo(--i)%;/ | ||
+ | </ | ||
+ | |||
+ | ====/repeat utasítás==== | ||
+ | A repeat késleltetett/ | ||
+ | < | ||
+ | /repeat -NUM [-S] NUM command | ||
+ | </ | ||
+ | * **-NUM**: a késleltetés mértéke másodpercben kifejezve, akár lebegőpontos formátumban. | ||
+ | * **-S**: szinkronban fut le a folyamattal, | ||
+ | * **NUM**: ismétlések száma. | ||
+ | * **command**: | ||
+ | |||
+ | Példa: | ||
+ | < | ||
+ | ; megismétli 10x egymás után azonnal az ' | ||
+ | /repeat -0 -S 10 eszak | ||
+ | ; 5 másodperc múlva ' | ||
+ | /repeat -5 1 felkel | ||
</ | </ |
tinyfugue.1420293565.txt.gz · Utolsó módosítás: 2015/01/03 14:59 szerkesztette: truth