Skript Variably - Tipy, triky

Status
Zamknuto

Lupe

Administrator
Administrator
Teamspeak3 sekce
Zpráv
2 568
Bodů
1 390
Místo
SpigotMC
Co jsou to variably?
Variably jsou data, která používají různé Skripty ke své správné funkčnosti. Tato data obsahují různé informace - ať už souřadnice, hráče, moby, čistý text nebo třeba ID. Troufám si říct, že nějaký variably obsahuje 98% skriptů. Kdyby je Skripty nepoužívaly, nebylo by možné uchovávat data pro pozdější použití a vše by bylo jen dočasné.Zkušený programátor by řekl, že Variable je proměnná To je samozřejmě pravda :)

Kde variably najdu?

Variably jsou defaultně ukládají do .CSV souboru (tabulkový soubor) v ftp - Skript/variables.csv

Kolik mohu mít variablů?
Teoreticky nekonečno, ale prakticky je velmi nevhodné si vytvořit server s hromadou variablů, dochází pak ke zpomalenému načítání či přetěžování. Snažte se je dělat tak, aby jich nebylo příliš mnoho. Dá se různými způsoby ušetřit server, i přestože je potřebujete. Několik takových způsobů si ukážeme.
1. VŽDY používat podmínky
Pokud například potřebujete udělat Skript, který sbírá počet smrtí, myslete na to, že se to netýká mobů a přidávejte proto podmínku if!
Tento Skript bude sbírat data o všech entitách na celém serveru, pokud zemřou. Ale k čemu? Přece nepotřebujeme vědět, že určitá entita zemřela. Pokud se například změní noc na den, entit zemře až moc. I toto je nepříjemná situace, která Vám může přetížit csv soubor a samozřejmě server.
Špatně
Kód:
on death of living entity:
 add 1 to {deaths.%victim%}
Správně
Kód:
on death of living entity:
 victim is a player
 add 1 to {deaths.%victim%}
Kód:
on death of player:
 add 1 to {deaths.%victim%}
2. Vytváření dočasných variablů
Občas je potřeba z nějakého důvodu použít 2 variably, například při převodu (parse) mezi datovými typy. No jo, jenže proč dělat 2x víc variablů? Víte, že lze udělat i dočasné variably? Stačí na jejich začátek přidat "_" a smažou se hned, jakmile nejsou potřeba. Teď si ukážeme příklad, kdy potřebujeme převést hodnotu z .yml souboru na material
Špatně
Kód:
 set "item" to "stone" in yaml file "plugins/Item/materials.yml"
 set {itemidd} to value "item" get of "plugins/Item/materials.yml"
 set {itemid} to {itemidd} parsed as material
Správně
Kód:
 set "item" to "stone" in yaml file "plugins/Item/materials.yml"
 set {_itemidd} to value "item" get of "plugins/Item/materials.yml"
 set {itemid} to {_itemidd} parsed as material
3. Nepoužívejte variably i tam, kde to není potřeba!
I s dočasnými variably by se to nemělo přehánět. Proto přemýšlejte, jestli je opravdu potřebujete všude, kam je dáváte.
Zbytečné
Kód:
on join:
 set {_player} to event-player
 broadcast "&bHrac &a%{_player}% &bse pripojil"
Lepší
Kód:
on join:
 broadcast "&bHrac &a%event-player% &bse pripojil"
Jak můžu odstranit variably?
Není vhodné otevírat variables.csv v excel, wordu, poznámkovém bloku apod. Nejlepší řešení je otevřít tento soubor v pokročilém textovém editoru - tzn PSPad, Notepad++, sublime apod. Pak můžeme jednoduše smazat každý řádek - pozor, řádek! Jinak dojde k chybě, nějaký variable bude mít neznámá data a nebude fungovat! Variably je nutno odstranit při vypnutém serveru.
 
Poslední změna:
Status
Zamknuto
Top