Uživatelské nástroje

Nástroje pro tento web


cs:modulebuilding:doors

Automatické Zavírání/Zamykání Dveří

Ve výchozím nastavení zůstávají dveře otevřené, dokud poslední hráč neopustí oblast. To postačuje ve většině situací.

Někdy ale můžete chtít zajistit, aby se konkrétní dveře automaticky zavřely a zamkly. Například pokud máte dveře určené pouze pro zloděje, které slouží jako zkratka, nebo dveře vyžadují klíč, který musí být nejprve získán od pojmenovaného monstra.

K tomu vložte skript ark_zamkni do události OnOpen dveří. Nebo, ve speciálním případě, kdy dveře vedou do podřízené oblasti bez návratu, můžete chtít použít událost OnAreaTransitionClicked - to zabrání typickému problému, kdy hráč otevře dveře a pak se rozhodne odpočívat před vstupem, v takovém případě by se dveře normálně zavřely a zamkly.

Výchozí časovač pro zamykání a zavírání dveří s tímto skriptem je 15 sekund. Pokud chcete jiný čas, můžete to specifikovat pomocí těchto proměnných:

  • LOCK_DELAY int X - kde X je počet sekund před tím, než se dveře samy zamknou
  • CLOSE_DELAY int X - kde X je počet sekund před tím, než se dveře samy zavřou

Pokud jsou dveře propojeny s jinými dveřmi, pak zavření dveří z jedné strany je zavře i z druhé strany.

Tento skript také zpožďuje zavření, pokud je hráč do 5 metrů od dveří, aby se předešlo problému s hráčem, který otevře dveře a odpočívá, nebo hráčem, který uvízne uvnitř dveří, což se někdy stává.

Automatické Zavírání Aktivované Oblastí

Existují další možnosti pro skript, který zavírá dveře, když poslední hráč opustí oblast.

  • ALWAYSCLOSE int 1 - to způsobí, že dveře budou tímto skriptem vždy zavřeny, normálně, pokud hráč opustí oblast přes dveře, pak tyto dveře zůstanou otevřené, aby se nezavřely z druhé strany, kde hráč aktuálně je, ale někdy může být toto chování nežádoucí
  • NEVERCLOSE int 1 - to zabrání, aby dveře byly skriptem zavřeny, to je užitečné, pokud chcete mít dveře předem otevřené a nechcete, aby se někdy zavřely
  • LOCKME int 1 - dveře s touto proměnnou budou také zamčeny, když poslední hráč opustí oblast, může být použito i na umístitelné objekty s inventářem

Respawn Dveří

Pokud chcete, aby byly dveře zničitelné v neinstancované oblasti, pak budete chtít, aby se tyto dveře po nějaké době znovu objevily. K tomu nastavte skript sh_respdvere do události OnDeath dveří. Poté nastavte další vlastnosti dveří jako životy, skript pro automatické zavírání, tvrdost nebo dokonce past a stiskněte OK. Jakmile to máte, musíte vytvořit šablonu z těchto dveří. K tomu klikněte pravým tlačítkem na dveře a vyberte Přidat do palety.

To znovu otevře okno vlastností dveří, ale tentokrát budete moci změnit jeho resref na záložce Pokročilé a pole Blueprint ResRef. Nastavte nový resref a poté vyberte kategorii palety (záložka Základní), pokud žádná není, kde později dveře najdete.

Ve výchozím nastavení dojde k respawnu 300 sekund po zničení. Toto můžete změnit pomocí proměnné:

  • RESPAWN_DELAY int X - kde X je počet sekund, po kterých se dveře znovu objeví

Všimněte si, že přidání předem umístěného objektu do palety automaticky změní jeho resref na nový resref, který zvolíte v okně vlastností, avšak jakékoli další změny, které jste během tohoto procesu provedli, nebudou zkopírovány na předem umístěný objekt v oblasti. Proto doporučuji smazat předem umístěný objekt a umístit ho znovu z palety.

Další Skripty a Proměnné pro Dveře

Skript sh_useablefalse v události OnOpen způsobí, že dveře po otevření již nebudou použitelné a interaktivní. Někdy to dělám v instancovaných oblastech, zejména pokud dveře nějak překáží jinému objektu. To může být použito i pro umístitelné objekty, stanou se nepoužitelnými, pokud byl jejich inventář vyprázdněn, ale v případě umístitelného objektu chcete tento skript vložit do události OnClosed.

Dveře s přechodem mezi oblastmi mohou mít další proměnné:

  • PROGRESS_MINIMUM integer X - minimální procento vyčištěných spawnů pro průchod, související s Progress System
  • DISABLE_TRANSITION_IN_COMBAT integer 1 - zabraňuje průchodu, dokud je hráč v boji a dokud jsou v oblasti živé nepřátelské bytosti
  • MIN_LVL integer X - zabraňuje průchodu bez specifikované minimální úrovně (pokud vím, žádné dveře toto na Arkhalia nepoužívají, ale možnost existuje)
  • DVERE string door_tag - štítek dveří, které musí být odemčeny nebo zničeny pro průchod (řešení exploitu s průchodem dveřmi)
cs/modulebuilding/doors.txt · Poslední úprava: 2026/11/09 11:06 autor: 127.0.0.1