http://forum.wowcircle.com/showthrea...=326668&page=3
это сейчас реализовано?
SPELL_AURA_MOD_RESISTANCE
Код:Public Sub SPELL_AURA_MOD_RESISTANCE(ByRef Target As BaseUnit, ByRef Caster As BaseObject, ByRef EffectInfo As SpellEffect, ByVal SpellID As Integer, ByVal StackCount As Integer, ByVal Action As AuraAction) If Not TypeOf Target Is CharacterObject Then Exit Sub Select Case Action Case AuraAction.AURA_UPDATE Exit Sub Case AuraAction.AURA_ADD For i As Byte = DamageTypes.DMG_PHYSICAL To DamageTypes.DMG_ARCANE If HaveFlag(EffectInfo.MiscValue, i) Then If EffectInfo.GetValue(Target.Level) > 0 Then Target.Resistances(i).Base /= CType(Target, CharacterObject).Resistances(i).Modifier Target.Resistances(i).Base += EffectInfo.GetValue(Target.Level) Target.Resistances(i).Base *= CType(Target, CharacterObject).Resistances(i).Modifier Else Target.Resistances(i).Base /= CType(Target, CharacterObject).Resistances(i).Modifier Target.Resistances(i).Base += EffectInfo.GetValue(Target.Level) Target.Resistances(i).Base *= CType(Target, CharacterObject).Resistances(i).Modifier Target.Resistances(i).NegativeBonus -= EffectInfo.GetValue(Target.Level) End If CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCES + i, CType(Target, CharacterObject).Resistances(i).Base) End If Next Case AuraAction.AURA_REMOVE, AuraAction.AURA_REMOVEBYDURATION For i As Byte = DamageTypes.DMG_PHYSICAL To DamageTypes.DMG_ARCANE If HaveFlag(EffectInfo.MiscValue, i) Then If EffectInfo.GetValue(Target.Level) > 0 Then Target.Resistances(i).Base /= CType(Target, CharacterObject).Resistances(i).Modifier Target.Resistances(i).Base -= EffectInfo.GetValue(Target.Level) Target.Resistances(i).Base *= CType(Target, CharacterObject).Resistances(i).Modifier Target.Resistances(i).PositiveBonus -= EffectInfo.GetValue(Target.Level) Else Target.Resistances(i).Base /= CType(Target, CharacterObject).Resistances(i).Modifier Target.Resistances(i).Base -= EffectInfo.GetValue(Target.Level) Target.Resistances(i).Base *= CType(Target, CharacterObject).Resistances(i).Modifier Target.Resistances(i).NegativeBonus += EffectInfo.GetValue(Target.Level) End If CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCES + i, CType(Target, CharacterObject).Resistances(i).Base) End If Next End Select CType(Target, CharacterObject).SendCharacterUpdate(False) End Sub[свернуть]
SPELL_AURA_MOD_RESISTANCE_EXCLUSIVE
Код:Public Sub SPELL_AURA_MOD_RESISTANCE_EXCLUSIVE(ByRef Target As BaseUnit, ByRef Caster As BaseObject, ByRef EffectInfo As SpellEffect, ByVal SpellID As Integer, ByVal StackCount As Integer, ByVal Action As AuraAction) If Not TypeOf Target Is CharacterObject Then Exit Sub Select Case Action Case AuraAction.AURA_UPDATE Exit Sub Case AuraAction.AURA_ADD For i As Byte = DamageTypes.DMG_PHYSICAL To DamageTypes.DMG_ARCANE If HaveFlag(EffectInfo.MiscValue, i) Then If EffectInfo.GetValue(Target.Level) > 0 Then CType(Target, CharacterObject).Resistances(i).Base /= CType(Target, CharacterObject).Resistances(i).Modifier CType(Target, CharacterObject).Resistances(i).Base += EffectInfo.GetValue(Target.Level) CType(Target, CharacterObject).Resistances(i).Base *= CType(Target, CharacterObject).Resistances(i).Modifier CType(Target, CharacterObject).Resistances(i).PositiveBonus += EffectInfo.GetValue(Target.Level) 'CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE + i, CType(Target, CharacterObject).Resistances(i).PositiveBonus) CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCES + i, CType(Target, CharacterObject).Resistances(i).Base) Else CType(Target, CharacterObject).Resistances(i).Base /= CType(Target, CharacterObject).Resistances(i).Modifier CType(Target, CharacterObject).Resistances(i).Base -= EffectInfo.GetValue(Target.Level) CType(Target, CharacterObject).Resistances(i).Base *= CType(Target, CharacterObject).Resistances(i).Modifier CType(Target, CharacterObject).Resistances(i).NegativeBonus -= EffectInfo.GetValue(Target.Level) 'CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE + i, CType(Target, CharacterObject).Resistances(i).NegativeBonus) CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCES + i, CType(Target, CharacterObject).Resistances(i).Base) End If End If Next Case AuraAction.AURA_REMOVE, AuraAction.AURA_REMOVEBYDURATION For i As Byte = DamageTypes.DMG_PHYSICAL To DamageTypes.DMG_ARCANE If HaveFlag(EffectInfo.MiscValue, i) Then If EffectInfo.GetValue(Target.Level) > 0 Then CType(Target, CharacterObject).Resistances(i).Base /= CType(Target, CharacterObject).Resistances(i).Modifier CType(Target, CharacterObject).Resistances(i).Base -= EffectInfo.GetValue(Target.Level) CType(Target, CharacterObject).Resistances(i).Base *= CType(Target, CharacterObject).Resistances(i).Modifier CType(Target, CharacterObject).Resistances(i).PositiveBonus -= EffectInfo.GetValue(Target.Level) 'CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE + i, CType(Target, CharacterObject).Resistances(i).PositiveBonus) CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCES + i, CType(Target, CharacterObject).Resistances(i).Base) Else CType(Target, CharacterObject).Resistances(i).Base /= CType(Target, CharacterObject).Resistances(i).Modifier CType(Target, CharacterObject).Resistances(i).Base += EffectInfo.GetValue(Target.Level) CType(Target, CharacterObject).Resistances(i).Base *= CType(Target, CharacterObject).Resistances(i).Modifier CType(Target, CharacterObject).Resistances(i).PositiveBonus += EffectInfo.GetValue(Target.Level) 'CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE + i, CType(Target, CharacterObject).Resistances(i).NegativeBonus) CType(Target, CharacterObject).SetUpdateFlag(EUnitFields.UNIT_FIELD_RESISTANCES + i, CType(Target, CharacterObject).Resistances(i).Base) End If End If Next End Select CType(Target, CharacterObject).SendCharacterUpdate(False) End Sub[свернуть]
Отсюда.
Не особо разбирался. По сути - одно и тоже, только есть еще что-то, связанное с уровнем персонажа.
Зороастр (06.04.2015)
Пример полного избежания урона игрока боссом, по этой механике, у тебя есть?
Резиста на холи школу в игре нет, что подтвержается практически всеми источниками, глубоконеуважаемая Сава
Так что твои мечты о резисте лапкой ретрипалов - так и останутся мечтами.
Не умеешь ты читать всё таки... тебе показали спэлл из спэлл дбц, который даёт холи резист. То, что сделали сами близы и положили в клиент наверное самый достоверный источник, вопрос, только для чего та аура и где она срабатывает.
- - - Updated - - -
Глянул, то что кинул Zhekich.
Модификаторы влияют на все школы от физики до аркана. Как мы помним после физики сразу идёт холи, так что и на холи это тоже влияет.
Ну и описывается, как должен менятся данный параметр.
Мой канал: https://www.youtube.com/c/CiklopperPlay
Есть вопросы по игровой механике, подозрение на баг? Тогда тебе сюда Мастерская.
Этот мир спасёт шаман танк!Циклоппер x300 Ршам
Меня вот терзают мутные сомнения насчет отхила от удара смерти во фросте. У анхолика есть 3-я дота, в бладе талант на увеличение отхила с уса на 50% а вот во фросте (вспоминается слова жойстера про штраф в 50% и левую руку) получается небаланс по этому делу. Мб всетаки жистер и был прав насчет этого дела что идет хил с 2-х рук но с левой со штрафом на 50% что и дает те самые 15% как и в остальных ветках. Кто что думает про это?
http://s019.radikal.ru/i615/1409/b6/d86a458716f3.gif
Kre4eT такой Kre4eTКстати, учитывая что аддону уже около 6 лет, и ты единственный вбиваешься в крит...
Ты либо гений, либо даун.
То что оно сделано близами и даже положено в клиент, не означает что оно работало на 3.3.5 лайве. А имеющиеся источники утверждают что холи резиста не было.
Я вообще не понимаю в чем сыр-бор. Лапка однозначно не дает Холи Резиста, а Адаптацию качать для фдк в пвп, это маразм.
Я просто видел на вовхеде спеллку - УС с левой руки. И там было написано "хилит на Х процентов" за каждую болезнь".
Вот собсна, хотя и переделаный уже под ВоД http://www.wowhead.com/spell=66188/d...hand#changelog
Смотрим на старые версии Before Build 13914 и начало каты.By Keelerak (24,246 – 6·26·161) on 2009/11/15 (Patch 3.2.2)
This is DS version triggered by Threat of Thassarian
Собственно на вовроуде тоже есть.. http://wowroad.info/?spell=66953
И насчет штрафа, вот на воввики указан хотфикс: http://www.wowwiki.com/Death_Strike?oldid=2385541
Тоесть, видимо, хил с левой руки режется не штрафом, а 15% капом отхила.Hotfix (2009-04-21): "Death Strike will now heal the Death Knight for 5% of his or her maximum health per disease on the target, up to a maximum of 15%."
Последний раз редактировалось Jester; 06.04.2015 в 15:57.
А все потому , что кое кто паладин и кое кому это не выгодно ... Пичаль , какие все алчные(
- - - Updated - - -
Не точно знаешь, т.к dbc говорит обратное:
ID - 66953 Удар смерти (Уровень 5)
=================================================
Description: Смертоносная атака, наносящая $s2% урона от оружия в левой руке и восстанавливающая рыцарю смерти $F% его максимального запаса здоровья за каждую из болезней, которыми он поразил цель.
Category = 1196, SpellIconID = 2751, activeIconID = 0, SpellVisual = (11831,0)
Family SPELLFAMILY_DEATHKNIGHT, flag 0x00000010 00000000 00000000
SpellSchoolMask = 1 (SPELL_SCHOOL_MASK_NORMAL)
DamageClass = 2 (SPELL_DAMAGE_CLASS_MELEE)
PreventionType = 2 (SPELL_PREVENTION_TYPE_PACIFY)
=================================================
Attributes: 0x00240010 (SPELL_ATTR0_ABILITY, SPELL_ATTR0_DONT_AFFECT_SHEATH_STATE, SPELL_ATTR0_IMPOSSIBLE_DODGE_PARRY_BLOCK)
AttributesEx1: 0x08000000 (SPELL_ATTR1_UNK27)
AttributesEx3: 0x01040000 (SPELL_ATTR3_IGNORE_HIT_RESULT, SPELL_ATTR3_REQ_OFFHAND)
=================================================
Spell Level = 0, base 0, max 0, maxTarget 0
EquippedItemClass = 2 (WEAPON)
SubClass mask 0x0002A5F3 (AXE, AXE2, MACE, MACE2, POLEARM, SWORD, SWORD2, STAFF, FIST, DAGGER, SPEAR)
Category = 1196
DispelType = 0 (DISPEL_NONE)
Mechanic = 0 (MECHANIC_NONE)
SpellRange: (Id 6) "Vision Range":
MinRange = 0, MinRangeFriendly = 0
MaxRange = 100, MaxRangeFriendly = 100
CastingTime (Id 1) = 0,00
RecoveryTime: 0 ms, CategoryRecoveryTime: 0 ms
StartRecoveryCategory = 133, StartRecoveryTime = 1500,00 ms
Interrupt Flags: 0x00000000, AuraIF 0x00000000, ChannelIF 0x00000000
Chance = 0, charges - 0
=================================================
Effect 0: Id 121 (SPELL_EFFECT_NORMALIZED_WEAPON_DMG)
BasePoints = 148 x 5,00
Targets (6, 0) (TARGET_UNIT_TARGET_ENEMY, NO_TARGET)
Effect 1: Id 31 (SPELL_EFFECT_WEAPON_PERCENT_DAMAGE)
BasePoints = 75
Targets (6, 0) (TARGET_UNIT_TARGET_ENEMY, NO_TARGET)
Effect 2: Id 3 (SPELL_EFFECT_DUMMY)
BasePoints = 1310
Targets (6, 0) (TARGET_UNIT_TARGET_ENEMY, NO_TARGET)