Preskočiť na obsah
Domovská stránka » Pomsta! 3 – Akcia!

Pomsta! 3 – Akcia!

  • Tutorial

Voľajaký škriatok zapríčinil že sa tretia časť stratila a nebola zverejnená. Pri zmene designu som si všimol že je stále ako koncept. Takže po dvoch rokoch Budiž život…

Zmeny v priestore, pohyby objektov a rôzne reakcie na hráčove činy už vyžadujú náročnejšie skriptovanie. Najjednoduchšie to bude ukázať si to na príkladoch.

Položenie peňazí v taxíku:
– zničí predmet
– umožní opustiť taxík (vypne #leave akciu)
– zmení popis iného predmetu

Interpreter kvôli zjednodušeniu všetko prevádza na malé písmená. Niektoré veci dokáže rozoznať ako napríklad #print, ak sa však robí lowerCase aj tam kde to nie je žiadané dá sa to vypnúť zdvojením ##.

Viacnásobné skúmanie koša.

V #examine je definovaná akcia, ktorú spustí preskúmanie predmetu. Premenná $rom_exec_owner obsahuje ID majiteľa komu patrí akcia. V Tomto prípade je to priamo ID objektu, rovnaký efekt by malo #object[obj_kos]. Počet ktorý nás zaujíma obsahuje #countOfExamination. Vypíše sa popis objektu, ktorý sa následne zmení. Určite by to šlo napísať čitateľnejšie. Ide skôr o príklad možností nie o to najkrajšie riešenie.

Za zmienku stojí akcia #takeVerify sa zavolá pri pokuse o zdvihnutie a návratová hodnota zabezpečí že sa to nepodarí. Globálny text pre zlyhanie sa prepíše/vypne $text_takeVerifyFail=; Predmet ktorý sa nedá zobrať by sa dal dosiahnuť aj cez cez #nonportable=#true;.

Ďalší zaujímavý objekt je salám, ktorý pri položení na správnom mieste modifikuje objekt. Pridáva mu prídavné mená.

Detekcia hráčovej pozície sa používa pri ďalších peniazoch.

Druhá možnosť by bola premenná $rom_your_position. Je tu zároveň ukázané použitie premennej $triezvy v objekte.

Všetky ostatné objekty sú už len varianty toho istého. Či už ide o otvorenie, zatvorenie, oblečenie, zbieranie či položenie predmetu.

Za zmienku stojí definovanie nového príkazu inštaluj ktorý je v bloku #commands;. Jeho použitie spúšťa skript #actionid=newcommand_instaluj;. Skript si kontroluje či bol zadaný so správnym predmetom.

Následne si skript skontroluje požadovanú polohy a či ide o prvú inštaláciu.

Ďalšia zaujímavá možnosť na oživenie sveta sú takzvané thready. Ide o skripty ktoré sa spúšťajú na pozadí a je možné ich načasovať na základe počtu zadaných príkazov, na základe počtu krokov alebo na základe reálneho času. Po úspešnej inštalácii likvidátora sú dva spustené.

Odporúčam preštudovať kompletný zdrojový kód Pomsty!. Dosť odpovedí sa dá nájsť v dokumentácii.

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

Táto webová stránka používa Akismet na redukciu spamu. Získajte viac informácií o tom, ako sú vaše údaje z komentárov spracovávané.