Návod pro obsluhu loot scriptu

Z Moriawiki

(Rozdíly mezi verzemi)
Přejít na: navigace, hledání

GM Yavanna (Diskuse | příspěvky)
(rozpracovaná forma popisu programu)
Následující porovnání →

Verze z 11:28, 23. 5. 2009

Loot script ze země

sub zvedni()
  UO.FindType ("0x0EED", -1, 1) 
  if UO.FindCount() > 0 then 
    UO.grab("500",'finditem') 
  end if
end sub

Spustíte jej příkazem ,exec zvedni.

Vysvětlení jednotlivých příkazů

  1. sub zvedni()
    • příkaz sub označuje začátek těla funkce. Pojí se s řádkem end sub, který tělo funkce ukončuje. Za příkazem ' end sub ' pak může následovat funkce další.
    • výraz zvedni() za klíčovým slovem ' sub ' udává jméno funkce, jejíž tělo následuje. Přes toto jméno se pak zapsaná funkce spouští - volá (ve hře příkaz ' ,exec <jméno funkce> ').
  2. UO.FindType( <Typ>, <Barva>, <Umístění>)
    • Příkaz nalezne první vyhovující objekt v místě <Umístění>. Umístění mohou být:
      • ' objekt containeru ' (jeho UID)
      • ' backpack '
      • ' ground ' (odpovídá číslu 1 - viz uvedený kód. Hodnotu je možné namísto '1' vypsat i slovně)
    • Vyhovující objekt je takový objekt, který má shodný typ a barvu s hodnotami uvedenými ve scriptu.
    • Zjištění typu objektu a jeho barvy je uvedeno níž.
    • Při běhu scriptu se po vyhodnocení tohoto příkazu uloží nalezený objekt do proměnné 'finditem' se kterou můžete dále pracovat.
  3. if UO.FindCount() > 0 then
    • Hlavním prvkem tohoto příkazu je nejzákladnější stavební kámen programování, kterým je tvoření podmínek příkazy if - then - else volně přeložitelný jako 'když - potom - jinak'. Syntaxe Příkazů je následující:
if <výraz> then

else <jiné příkazy> end if

    • Význam podmínek je takový, že když (if) je splněná podmínka <výraz>, potom (then) se provedou příkazy <příkazy>, jinak (else) se provedou jiné příkazy <jiné příkazy> a podmínka se ukončí (end if). Část (else) se může vypustit, pokud není potřebná (náš případ). <end if> se vypustit nesmí - označuje konec těla podmínky.
    • UO.FindCount() je příkaz, který vrátí počet nalezených předmětů nejposlednějším příkazem UO.FindType. V tomto případě se tedy testuje, zda je počet nalezených předmětů větší nule - tedy zda Injection vůbec nějaký předmět našel.
  1. UO.grab("500",'finditem')