Многократное использование рычагов
#2
Так ты тут сделал рекурсивное автоматическое цикличное открывание-закрывание без участия игрока %)

Если тебе просто нужна дверь, которую можно открывать/закрывать, то в скрипте тебе ничего писать не надо, тебе надо только настроить саму дверь (собственно прописать ей ID LEVER IS CYCLED = 1). Далее, если ты хочешь навесить на открытие/закрытие какие-то события, то делай так:
Код:
Script CheckDoor
(
 if
 (
   IsEqual(GetLeverState(Door), 1)
 )
 then
 (
   KillScript()
   DoSomethingOnDoorOpened()
 )
 if
 (
   IsEqual(GetLeverState(Door), 0)
 )
 then
 (
   KillScript()
   DoSomethingOnDoorClosed()
 )
)

Соответственно в обработчиках DoSomethingOnDoor[Opened/Closed]() можешь написать чо угодно. Однако там же прям переключать состояния этой же двери я бы крайне не рекомендовал. Пусть переключением занимается игрок, а не скрипт. Использовать SetLeverState() надо только тогда, когда ты хочешь из скрипта автоматически "переключить" состояние рычага. Поднять/опустить мост, например. Или открыть/закрыть дверь, как в этом примере.
Duty is everything, the greatest of joys, the deepest of sorrows.
Ответ


Сообщения в этой теме
Многократное использование рычагов - от ALtair - 25.09.2009, 17:27

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)