OGSR / OGSR-Engine

OGSR Project - Evolution of X-Ray Engine for S.T.A.L.K.E.R.: Shadow of Chernobyl
https://discord.gg/Q6QDxbNcfR
Other
456 stars 86 forks source link

Fixed HangingLamp #411

Open Graff46 opened 2 years ago

Graff46 commented 2 years ago

Поправил HangingLamp, теперь методы turn_off, turn_on можно применять к лампам в любое время. Раньше, если методы применить слишком "рано", например из метода биндера самих ламп on_spawn был вылет, потому что объект источника света и кости не успевал создаться Поправил код чтобы в замыкании метода использовать одну переменную сущности, раньше её получали несколько раз. Локально проверено - работает.

ForserX commented 2 years ago

image

Выглядит как-то странно. Типо, если лампа включена, то включаем.

Graff46 commented 2 years ago

image

Выглядит как-то странно. Типо, если лампа включена, то включаем.

Вот оригинальный код: изображение Если лампа "жива" то включить её, иначе выключить. Я всего лишь флаг добавил.

ForserX commented 2 years ago

В этом и соль. Если ты выключить лампу, то флаг станет false. И больше не включится. Т.к. проверяется при включении на true

Graff46 commented 2 years ago

В этом и соль. Если ты выключить лампу, то флаг станет false. И больше не включится. Т.к. проверяется при включении на true

Чтобы включить лампу нужно вызвать метод turnOn он переключит флаг и активирует источник света и его кость. При возврате из оффлайна экземпляр класса лампы создается по новой и флаг по умолчанию будет true