Сделал фонарик в игре. И обнаружил удивительную вещь.
Если фонарик хотя бы один раз включить в темной комнате, потом его можно спокойно выключать. Комната остается освещенной! Это ж обалдеть какая дырка!
Стал смотреть advr.t - там метода doTurnOff
для источника света вообще не предусмотрено!
Это надо исправлять. А то фигня какая-то выходит. Я у себя поправлю, конечно, но в новую версию библиотеки это исправление должно войти обязательно!
Неактивен
Необходимо использовать класс darkroom, у которого свойство islit вычислимо. Если источник света больше не islit, то комната должна без вопросов погрузиться в темноту. Правда, описание этого события целиком на совести автора.
Неактивен
Этот патч подойдет для случая lightsource, switchItem. Если прописать doTurnoff только для lightsource, то и свечку и банку со светлячком можно будет "выключать". Поэтому нужен патч, который для darkroom будет проверять что источник света ещё и включён.
Обновление: Верификация включения/выключения в lightsource не прописана и doTurnoff по умолчанию не будет доступен. Так что ставлю исправление Антона.
Отредактировано GrAndrey (17.07.2008 10:00)
Неактивен