Killing Floor Ресурс-сервер

Ресурс. Для тех, кому в аду не хватило места
 
ФорумПорталКалендарьЧаВоПоискПользователиГруппыРегистрацияВход

Поделиться | 
 

 Типы урона (DamageType)

Предыдущая тема Следующая тема Перейти вниз 
АвторСообщение
HATAXA
-----------
-----------
avatar

Сообщения : 2070
Возраст : 33
Откуда : Гагарин

СообщениеТема: Типы урона (DamageType)   Вс Мар 13, 2016 6:46 pm

Типы урона
Автор и публикация: НАТАХА
Редактор: Flame

Весь урон в Killing Floor наследуется от KFMod.KFWeaponDamageType.
Вообще базовый тип урона - Engine.DamageType, его наследует  UnrealGame.WeaponDamageType, после чего идет уже KFMod.KFWeaponDamageType.
Тема обширна, и мы сейчас попытаемся разобраться в основных моментах.

Так вот, существует ряд типов урона, которыми мы можем пользоваться (например, KFProjectileWeaponDamageType) и переменные, с помощью которых мы указываем, к какому перку (по большому счету) относится данное оружие с данным типом урона (например, bSniperWeapon).

Очень долго думала, с чего же начать, и от чего оттолкнуться. Ну нет в Killing Floor одной четкой закономерности и структуры. Всё перепутано и взаимосвязано. Поэтому решила разобрать тему по перкам.

Berserker - оружие ближнего боя
Тип урона: DamTypeMelee
Переменная принадлежности: bIsMeleeDamage (если bIsMeleeDamage=true, то это оружие ближнего боя; у нас будет прокачиваться перк Berserker)
В статистике: KFStatsAndAchievements.AddMeleeDamage

Firebug - оружие с эффектом горения
Вообще урон от огня складывается из 2х типов урона:
1 тип - первоначальный урон
2 тип - урон от дальнейшего горения (урон постепенно уменьшается и зависит от урона 1 типа)
Типы урона:
Я так подозреваю, что изначально была идея сделать DamTypeBurned уроном 2 типа, но в итоге всё перемешалось.
Тут тот случай, когда проще просто перечислить все пушки, благо их немного
Спойлер:
 
Переменная принадлежности: bDealBurningDamage
В статистике: KFStatsAndAchievements.AddFlameThrowerDamage

Пара замечаний:
DamTypeTrenchgun содержит и переменные bDealBurningDamage и bIsPowerWeapon установленные в true, то есть качает и саппа и фаера.
Типы урона DamTypeHuskGunProjectileImpact, DamTypeFlareProjectileImpact не приводят к горению, но урон от них засчитывается в кач.

Demolitions - взрывчатое оружие
Типы урона: почти у каждого оружия свой тип урона, который наследует KFWeaponDamageType
помимо урона от взрыва есть ещё и типы урона попадания снаряда в моба, они наследуют DamTypeRocketImpact,
и не качают подрыва в отличии от фаера, но зато качают снайпера, ибо DamTypeRocketImpact наследует DamTypeKFSnipe Smile
Переменная принадлежности: bIsExplosive
В статистике: KFStatsAndAchievements.AddExplosivesDamage

Commando - автоматическое оружие
Типы урона: у каждого оружия свой тип урона, который наследует KFProjectileWeaponDamageType
Переменная принадлежности: Нет такой.
В каждом личном DamageType прописывается функция записи нанесенного урона в статистику.
В статистике: KFStatsAndAchievements.AddBullpupDamage, KFStatsAndAchievements.AwardKill (сталкеры)

Sharpshooter - снайперское оружие и пистолеты
Типы урона: в основном всё оружие снайпера так же наследует KFProjectileWeaponDamageType, но некоторые экземпляры наследуют DamTypeSPSniper, DamTypeKFSnipe, которые в свою очередь наследуют KFProjectileWeaponDamageType.
Переменная принадлежности: bSniperWeapon
В статистике: KFStatsAndAchievements.AddHeadshotKill (считает количество убийств с помощью хэдшотов)

SupportSpec - дробовики
Тип урона:  в основном всё оружие саппорта так же наследует KFProjectileWeaponDamageType
Переменная принадлежности: bIsPowerWeapon
В статистике: KFStatsAndAchievements.AddShotgunDamage

FieldMedic - этот перк описывать нет смысла, так как нет кача от нанесения урона




Список некоторых важных типов урона:
KFProjectileWeaponDamageType - используется для бОльшей массы оружия (автоматическое оружие, снайперское оружие, дробовики и т.п.)
Спойлер:
 

Некоторые типы урона, которые наследуют KFProjectileWeaponDamageType
DamTypeFlareProjectileImpact //...и подобные, урон от попадание снаряда в моба
DamTypeKFSnipe //промежуточный класс, который использует винчестер и ракета. Важность не совсем ясна
DamTypeZEDGun //название говорит само за себя
Другие:
DamTypeFlamethrower //горение; огнемёт, поджигающая граната
DamTypeBurned //первоночальный урон от оружия поджигателя; HuskGun, FlareRevolver и т.п.
DamTypeMelee //ближний бой
DamTypeFrag //гранаты
DamTypeMeleeDecapitation //голова отлетает целиком и валяется на полу
DamTypeDecapitation //голова разлетается на куски
DamTypeProjectileDecap //голова разлетается на куски, нигде не используется (другой эмиттер по сравнению с DamTypeDecapitation)
DamTypeSealSquealExplosion //гарпун
DamTypeVomit //кислота
DamTypeUnWeld //разваривание
DamTypeWelder //заваривание

Помимо переменных, которые указывают нам на принадлежность перку, есть такие переменные:
var()   float HeadShotDamageMult; //множитель урона при попадании в голову.
Переменная с точно таким же названием есть в projectile классах (пули, стрелы и т.д.)

var()   bool    bCheckForHeadShots; //если эта переменная false, то при нанесении урона мы игнорируем попадание в голову. Например применяется в гранатах, огнемете, блевалке и т.п.

Пример использования переменных принадлежности:
Спойлер:
 
Вернуться к началу Перейти вниз
Посмотреть профиль
 
Типы урона (DamageType)
Предыдущая тема Следующая тема Вернуться к началу 
Страница 1 из 1
 Похожие темы
-
» Типы урона (DamageType)

Права доступа к этому форуму:Вы не можете отвечать на сообщения
Killing Floor Ресурс-сервер :: Killing Floor :: Технический подфорум || Кодинг || Мутаторы || :: Кодинг-
Перейти: