Поля БД юнитов для ВЦ3

Published
Не в первый раз переписываю свой быдлокод, так что ищу возможные упущения. На данный момент столбцы БД через ';':ID (PK для привязки к юниту); UnitOwnerId (изначально я хотел просто сэкономить на вызовах GetOwningPlayer и GetPlayerId, но потом до меня дошло что эта переменная позволяет менять источник урона (точнее мнимый источник урона. Игра, естественно вернула бы владельца юнита на вопрос кто нанес урон, но кастомные системы живут сами по себе) без передачи контроля другому игроку; MagicResistance; MagicDamageAmplifier; MagicLifesteal; MagicDamagePenetration; MagicDamagePenetrationResistance; аналогичные переменные для физ урона; PureDamagePenetration (отдельный пенетрейшн, на который не влияют резисты); PureDamageResistance (неигнорируемое уменьшение урона); DefaultFlyingHeight (для импэйлоподобных кастов); несколько переменных для отлова часто используемых эффектов контроля;ShieldAmount (по сути - доп. Хп, которое блокирует урон с бонусом к пенетрейшн резисту, эффективно снижая ценность последнего); CurrentlyChanneledAbility (вряд ли такое сочетание слов является верным, но зато сразу понятно. Используется для усиления эффектов заклинаний союзников); CurrentForcedToAttackTarget (для восстановления текущей цели после дизейбла в принудительную атаку. Этот момент, правда, нифига не реализован т.к. Я томат и пока хз как двигать приказы в очереди); WhiteArmor (родная без учета ловкости); WhiteMS (родной плюс флатовый бонус от предметов); MemHUnitAddress; SpellSpecialValue (по 1 целочисленной на каждый спелл. Имея XY кнопки можно выдавать любые скиллы любому юниту, но для варкрафта это слишком жирно); MemHAbilityAddress; Unit. Вроде все. Всего 18 вещественных и несколько целочисленных переменных. Пока писал - ничего не захотел добавить... Надеюсь, не придется.


Views: 263

Комментарии пока отсутcтвуют.