Нужна помощь?
Создайте тему в соответствующем разделе
Не нужно писать всё в чат!Загляните на торговую площадку
Там вы можете купить
всё что касается игровых серверовНе хотите бан?
Пожалуйста, ознакомьтесь с нашими правилами
Не нарушайте порядок!Продаёте или покупаете?
Пользуйтесь услугами гаранта
Мы сделаем вашу сделку безопасной
-
Объявления
-
⚙️ Новые онлайн-инструменты для DayZ 07/26/26
-
- 0
Автомобильный радиатор, проверка на наличие и повреждение
Спросил
SARJ

Речь идет про скрипт CarScript.c. Для проверки используется Волга (Olga).
Скрипт для мода, методы отрабатывают, в лог сообщения идут.
1) Мне нужно сделать дополнительную проверку - если нет радиатора или он поврежден, то двигатель не запускается.
В моде есть метод:
override void EOnPostSimulate(IEntity other, float timeSlice)
К проверкам
CheckVitalItem( IsVitalCarBattery(), "CarBattery" );
CheckVitalItem( IsVitalTruckBattery(), "TruckBattery" );
CheckVitalItem( IsVitalSparkPlug(), "SparkPlug" );
CheckVitalItem( IsVitalGlowPlug(), "GlowPlug" );
добавляю
CheckVitalItem( IsVitalRadiator(), "CarRadiator" );
и тогда двигатель не запускается. Почему? Радиатор нетронут, вода залита.
2) Как нанести урон радиатору, аккумулятору?
В любом из методов:
override void OnContact( string zoneName, vector localPos, IEntity other, Contact data )
override void EOnPostSimulate(IEntity other, float timeSlice)
Пробовал так:
AddHealth("Radiator", "Health", -damage);
AddHealth("CarRadiator", "Health", -damage);
так:
SetHealth("Radiator", "Health", 0);
SetHealth("CarRadiator", "Health", 0);
SetHealth("CarBattery", "Health", 0);
SetHealth("TruckBattery", "Health", 0);
и так:
m_RadiatorHealth = -1;
m_BatteryHealth = -1;
Ничего не повреждается, все нетронуто, почему? И как правильно сделать?
Двигатель при этом не должен повреждаться!
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах