Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # HG changeset patch
- # User Evrial@Evrial-PC
- # Date 1336366552 -10800
- # Mon May 07 07:55:52 2012 +0300
- # Node ID d25ceb27520e6e5600ee8a9e76883c79954d056d
- # Parent 154cbf33d79a6653d99d0b3e11f350da29dc0e71
- Add patch ResilienceRate
- diff -r 154cbf33d79a -r d25ceb27520e src/game/Player.cpp
- --- a/src/game/Player.cpp Mon May 07 07:39:09 2012 +0300
- +++ b/src/game/Player.cpp Mon May 07 07:55:52 2012 +0300
- @@ -4745,24 +4745,26 @@
- uint32 Player::GetMeleeCritDamageReduction(uint32 damage) const
- {
- float melee = GetRatingBonusValue(CR_CRIT_TAKEN_MELEE)*2.0f;
- - if (melee>25.0f) melee = 25.0f;
- - return uint32 (melee * damage /100.0f);
- + if (melee > sWorld.getRate(RATE_RESILIENCE_LIMIT_REDUSE))
- + melee = sWorld.getRate(RATE_RESILIENCE_LIMIT_REDUSE);
- + return uint32 ((melee * damage /100.0f) * (sWorld.getRate(RATE_RESILIENCE)));
- }
- uint32 Player::GetRangedCritDamageReduction(uint32 damage) const
- {
- float ranged = GetRatingBonusValue(CR_CRIT_TAKEN_RANGED)*2.0f;
- - if (ranged>25.0f) ranged=25.0f;
- - return uint32 (ranged * damage /100.0f);
- + if (ranged > sWorld.getRate(RATE_RESILIENCE_LIMIT_REDUSE))
- + ranged = sWorld.getRate(RATE_RESILIENCE_LIMIT_REDUSE);
- + return uint32 ((ranged * damage /100.0f) * (sWorld.getRate(RATE_RESILIENCE)));
- }
- uint32 Player::GetSpellCritDamageReduction(uint32 damage) const
- {
- float spell = GetRatingBonusValue(CR_CRIT_TAKEN_SPELL)*2.0f;
- - // In wow script resilience limited to 25%
- - if (spell>25.0f)
- - spell = 25.0f;
- - return uint32 (spell * damage / 100.0f);
- + // In wow script resilience limited to 25% but is now it can be tune in config
- + if (spell > sWorld.getRate(RATE_RESILIENCE_LIMIT_REDUSE))
- + spell = sWorld.getRate(RATE_RESILIENCE_LIMIT_REDUSE);
- + return uint32 ((spell * damage / 100.0f) * (sWorld.getRate(RATE_RESILIENCE)));
- }
- uint32 Player::GetDotDamageReduction(uint32 damage) const
- @@ -4771,7 +4773,7 @@
- // Dot resilience not limited (limit it by 100%)
- if (spellDot > 100.0f)
- spellDot = 100.0f;
- - return uint32 (spellDot * damage / 100.0f);
- + return uint32 ((spellDot * damage / 100.0f) * (sWorld.getRate(RATE_RESILIENCE)));
- }
- float Player::GetExpertiseDodgeOrParryReduction(WeaponAttackType attType) const
- diff -r 154cbf33d79a -r d25ceb27520e src/game/Unit.cpp
- --- a/src/game/Unit.cpp Mon May 07 07:39:09 2012 +0300
- +++ b/src/game/Unit.cpp Mon May 07 07:55:52 2012 +0300
- @@ -2892,9 +2892,9 @@
- if (pVictim->GetTypeId() == TYPEID_PLAYER)
- {
- if (attackType == RANGED_ATTACK)
- - crit -= pVictim->ToPlayer()->GetRatingBonusValue(CR_CRIT_TAKEN_RANGED);
- + crit -= pVictim->ToPlayer()->GetRatingBonusValue(CR_CRIT_TAKEN_RANGED) * sWorld.getRate(RATE_RESILIENCE);
- else
- - crit -= pVictim->ToPlayer()->GetRatingBonusValue(CR_CRIT_TAKEN_MELEE);
- + crit -= pVictim->ToPlayer()->GetRatingBonusValue(CR_CRIT_TAKEN_MELEE) * sWorld.getRate(RATE_RESILIENCE);;
- }
- if (crit < 0.0f)
- @@ -7801,7 +7801,7 @@
- crit_chance += pVictim->GetTotalAuraModifier(SPELL_AURA_MOD_ATTACKER_SPELL_AND_WEAPON_CRIT_CHANCE);
- // Modify by player victim resilience
- if (pVictim->GetTypeId() == TYPEID_PLAYER)
- - crit_chance -= pVictim->ToPlayer()->GetRatingBonusValue(CR_CRIT_TAKEN_SPELL);
- + crit_chance -= pVictim->ToPlayer()->GetRatingBonusValue(CR_CRIT_TAKEN_SPELL) * sWorld.getRate(RATE_RESILIENCE);
- // scripted (increase crit chance ... against ... target by x%
- if (pVictim->isFrozen()) // Shatter
- {
- diff -r 154cbf33d79a -r d25ceb27520e src/game/World.cpp
- --- a/src/game/World.cpp Mon May 07 07:39:09 2012 +0300
- +++ b/src/game/World.cpp Mon May 07 07:55:52 2012 +0300
- @@ -534,6 +534,9 @@
- rate_values[RATE_DURABILITY_LOSS_BLOCK] = 0.0f;
- }
- + rate_values[RATE_RESILIENCE] = sConfig.GetFloatDefault("Rate.Resilience",1.00f);
- + rate_values[RATE_RESILIENCE_LIMIT_REDUSE] = sConfig.GetFloatDefault("Rate.ResilienceLimitReduse",25.00f);
- +
- // Read other configuration items from the config file
- m_configs[CONFIG_COMPRESSION] = sConfig.GetIntDefault("Compression", 1);
- diff -r 154cbf33d79a -r d25ceb27520e src/game/World.h
- --- a/src/game/World.h Mon May 07 07:39:09 2012 +0300
- +++ b/src/game/World.h Mon May 07 07:55:52 2012 +0300
- @@ -318,6 +318,8 @@
- RATE_DURABILITY_LOSS_PARRY,
- RATE_DURABILITY_LOSS_ABSORB,
- RATE_DURABILITY_LOSS_BLOCK,
- + RATE_RESILIENCE,
- + RATE_RESILIENCE_LIMIT_REDUSE,
- MAX_RATES
- };
- diff -r 154cbf33d79a -r d25ceb27520e src/oregoncore/oregoncore.conf.dist
- --- a/src/oregoncore/oregoncore.conf.dist Mon May 07 07:39:09 2012 +0300
- +++ b/src/oregoncore/oregoncore.conf.dist Mon May 07 07:55:52 2012 +0300
- @@ -1987,6 +1987,16 @@
- # Default: 0 (Disabled)
- # 1 - Enabled
- #
- +# Rate.Resilience
- +# Default: 1
- +# 2 - 200%
- +# 0.5 - 50%
- +#
- +# Rate.ResilienceLimitReduse
- +# Limit reduse crit damage from resilience
- +# Default: 25 - 25%
- +# >50 - not recomended
- +#
- ###############################################################################
- PlayerStart.AllReputation = 0
- @@ -2006,6 +2016,8 @@
- PlayerStart.String = ""
- DuelMod.Enable = 0
- DuelMod.Cooldowns = 0
- +Rate.Resilience = 1
- +Rate.ResilienceLimitReduse = 25
- ###############################################################################
- # AUTO BROADCAST
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement