Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • 0
FreddyCruger

Повреждение предмета

В общем, на сервере у меня стоит скрипт токсичных зон, который есть в свободном доступе здесь на сайте. Там идет проверка на одетые предметы, конкретно разговор   про противогаз. Так вот, есть противогаз, который в принципе работает, но у него неправильно работает система повреждения. То есть нахождение в зоне подразумевает повреждение вещи, которая от нее защищает. 
 

float            item_Dmg_Coef                        =    0.020;                            //17 //Per Second // 0.050 - Radio // 0.031 - Others
                        item_Dmg_Coef                        =    item_Dmg_Coef * zone_Check_Timer;

но противогаз повреждаясь до состояния ПОНОШЕНО (Worn), уже перестает работать и перс получает урон по ХП, а починить его в состоянии поношено, невозможно. Все остальные газики работают норм, пропускать повреждения игроку начинают только из состояния повреждено, но их можно починить и все гуд. Так же заметил такой баг, если перезайти в игру, то тот газик, который пропускает уже в состоянии поношено, после перезахода имеет статус поврежден. Как исправить, куда копать, что прописать, чтобы корректно работало?

 

 

 

конфиг газика
 

class NBC_GasMaskBase: AirborneMask{};
class NBCRespirator: NBC_GasMaskBase
	{
		scope = 0;
		displayName = "Противогаз NBC";
		descriptionShort = "Респиратор NBC - это военный противогаз, который ранее использовался во всех родах Вооруженных сил Великобритании.";
		model = "\GasMaskSystem\data\gazik\gazik_g.p3d";
		hiddenSelections[] = {"camoGround","camoMale","camoFemale","zbytek"};
		hiddenSelectionsTextures[] = {"\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_3holes_co.paa"};
		class ClothingTypes
		{
			male = "\GasMaskSystem\data\gazik\gazik.p3d";
			female = "\GasMaskSystem\data\gazik\gazik_f.p3d";
		};
	};
	class NBCRespirator_Black: NBCRespirator
	{
		scope = 2;
		displayName = "Противогаз NBC Черный";
		hiddenSelectionsTextures[] = 
		{
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\gazik_3holes_co.paa"
		};
	};

 

Изменено пользователем FreddyCruger (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения

  • 0

Где DamageSystem ? 
ВОт как должно быть, только тебе нужно сделать rvmat материалы и вставить в DamageSystem

class NBC_GasMaskBase: AirborneMask{};
class NBCRespirator: NBC_GasMaskBase
	{
		scope = 0;
		displayName = "Противогаз NBC";
		descriptionShort = "Респиратор NBC - это военный противогаз, который ранее использовался во всех родах Вооруженных сил Великобритании.";
		model = "\GasMaskSystem\data\gazik\gazik_g.p3d";
		hiddenSelections[] = {"camoGround","camoMale","camoFemale","zbytek"};
		hiddenSelectionsTextures[] = {"\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_3holes_co.paa"};
		class ClothingTypes
		{
			male = "\GasMaskSystem\data\gazik\gazik.p3d";
			female = "\GasMaskSystem\data\gazik\gazik_f.p3d";
		};
		class DamageSystem {
			class GlobalHealth {
				class Health {
					hitpoints = 200;
					healthLevels[] = {{1.01, {"МатериалыНетронтого предмета"}}, {0.70, {"МатериалыНетронтого предмета"}}, {0.50, {"МатериалыПоврежденного предмета"}}, {0.30, {"МатериалыСильноПоврежденного предмета"}}, {0.01, {"МатериалыУбитого предмета"}}};
				};
			};
		};
	};
	class NBCRespirator_Black: NBCRespirator
	{
		scope = 2;
		displayName = "Противогаз NBC Черный";
		hiddenSelectionsTextures[] = 
		{
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\gazik_3holes_co.paa"
		};
		class DamageSystem {
			class GlobalHealth {
				class Health {
					hitpoints = 200;
					healthLevels[] = {{1.01, {"МатериалыНетронтого предмета"}}, {0.70, {"МатериалыНетронтого предмета"}}, {0.50, {"МатериалыПоврежденного предмета"}}, {0.30, {"МатериалыСильноПоврежденного предмета"}}, {0.01, {"МатериалыУбитого предмета"}}};
				};
			};
		};
	};

Либо пробуй это, но не факт что без материалов заработает всё на ура.
 

class NBC_GasMaskBase: AirborneMask{};
class NBCRespirator: NBC_GasMaskBase
	{
		scope = 0;
		displayName = "Противогаз NBC";
		descriptionShort = "Респиратор NBC - это военный противогаз, который ранее использовался во всех родах Вооруженных сил Великобритании.";
		model = "\GasMaskSystem\data\gazik\gazik_g.p3d";
		hiddenSelections[] = {"camoGround","camoMale","camoFemale","zbytek"};
		hiddenSelectionsTextures[] = {"\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_co.paa","\GasMaskSystem\data\gazik\gazik_3holes_co.paa"};
		class ClothingTypes
		{
			male = "\GasMaskSystem\data\gazik\gazik.p3d";
			female = "\GasMaskSystem\data\gazik\gazik_f.p3d";
		};
		class DamageSystem {
			class GlobalHealth {
				class Health {
					hitpoints = 200;
					healthLevels[] = {{1.01, {}}, {0.70, {}}, {0.50, {}}, {0.30, {}}, {0.01, {}}};
				};
			};
		};
	};
	class NBCRespirator_Black: NBCRespirator
	{
		scope = 2;
		displayName = "Противогаз NBC Черный";
		hiddenSelectionsTextures[] = 
		{
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\NBCRespirator_Black.paa",
			"\GasMaskSystem\data\gazik\gazik_3holes_co.paa"
		};
		class DamageSystem {
			class GlobalHealth {
				class Health {
					hitpoints = 200;
					healthLevels[] = {{1.01, {}}, {0.70, {}}, {0.50, {}}, {0.30, {}}, {0.01, {}}};
				};
			};
		};
	};

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах





  • 0
30 минут назад, DrZiLLo сказал:

Где DamageSystem ? 

а разве он должен подхватывать его с AirborneMask?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
9 часов назад, FreddyCruger сказал:

а разве он должен подхватывать его с AirborneMask?

ДамагСистем для каждой шмотки по типу этой должен быть свой, потому что сам дейз не создаст тебе материалы для шмотки и не определит какие текстуры повреждения нужно накидывать на твою маску + если нужно, там уже будут использоваться и карты нормалей, smdi и прочее.

Изменено пользователем DrZiLLo (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
1 час назад, DrZiLLo сказал:

для каждой шмотки по типу этой должен быть свой

я думал в p3d достаточно будет указать путь к материалам. Спасибо, все заработало как надо. Премного благодарен

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.