mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-13 02:11:30 +00:00
Implemented SE_DoubleRiposte
This commit is contained in:
parent
5a4f80621b
commit
611f0e2aba
@ -7,6 +7,7 @@ Any effect with B prevents A, C prevents B, D prevents C.
|
||||
Kayen: Implemented SE_DamageModifier2 (Stacks with SE_DamageModifier, mods damage by skill type)
|
||||
Kayen: Implemented SE_AddHatePct (Modifies +/- your total hate on NPC by percent)
|
||||
Kayen: Implemented SE_AddHateOverTimePct (Modifies +/- your total hate on NPC by percent over time)
|
||||
Kayen: Implemented SE_DoubleRiposte (Modifies +/- your double riposte chance)
|
||||
|
||||
== 06/13/2014 ==
|
||||
Kayen: For table 'npc_spell_effects_entries' setting se_max for damage shield effects (59) will now determine the DS Type (ie burning)
|
||||
|
||||
@ -370,7 +370,7 @@ typedef enum {
|
||||
#define SE_SkillDamageAmount 220 // implemented
|
||||
#define SE_Packrat 221 // implemented as bonus
|
||||
#define SE_BlockBehind 222 // implemented - Chance to block from behind (with our without Shield)
|
||||
//#define SE_DoubleRiposte 223 // not used
|
||||
#define SE_DoubleRiposte 223 // implemented - Chance to double riposte [not used on live]
|
||||
#define SE_GiveDoubleRiposte 224 // implemented[AA]
|
||||
#define SE_GiveDoubleAttack 225 // implemented[AA] - Allow any class to double attack with set chance.
|
||||
#define SE_TwoHandBash 226 // *not implemented as bonus
|
||||
|
||||
@ -4449,6 +4449,10 @@ void Mob::DoRiposte(Mob* defender) {
|
||||
defender->spellbonuses.GiveDoubleRiposte[0] +
|
||||
defender->itembonuses.GiveDoubleRiposte[0];
|
||||
|
||||
DoubleRipChance = defender->aabonuses.DoubleRiposte +
|
||||
defender->spellbonuses.DoubleRiposte +
|
||||
defender->itembonuses.DoubleRiposte;
|
||||
|
||||
//Live AA - Double Riposte
|
||||
if(DoubleRipChance && (DoubleRipChance >= MakeRandomInt(0, 100))) {
|
||||
mlog(COMBAT__ATTACKS, "Preforming a double riposed (%d percent chance)", DoubleRipChance);
|
||||
|
||||
@ -1116,6 +1116,11 @@ void Client::ApplyAABonuses(uint32 aaid, uint32 slots, StatBonuses* newbon)
|
||||
break;
|
||||
}
|
||||
|
||||
case SE_DoubleRiposte:
|
||||
{
|
||||
newbon->DoubleRiposte += base1;
|
||||
}
|
||||
|
||||
case SE_GiveDoubleRiposte:
|
||||
{
|
||||
//0=Regular Riposte 1=Skill Attack Riposte 2=Skill
|
||||
@ -2571,6 +2576,11 @@ void Mob::ApplySpellsBonuses(uint16 spell_id, uint8 casterlevel, StatBonuses* ne
|
||||
break;
|
||||
}
|
||||
|
||||
case SE_DoubleRiposte:
|
||||
{
|
||||
newbon->DoubleRiposte += effect_value;
|
||||
}
|
||||
|
||||
case SE_GiveDoubleRiposte:
|
||||
{
|
||||
//Only allow for regular double riposte chance.
|
||||
@ -3978,6 +3988,12 @@ void Mob::NegateSpellsBonuses(uint16 spell_id)
|
||||
itembonuses.MasteryofPast = effect_value;
|
||||
break;
|
||||
|
||||
case SE_DoubleRiposte:
|
||||
spellbonuses.DoubleRiposte = effect_value;
|
||||
itembonuses.DoubleRiposte = effect_value;
|
||||
aabonuses.DoubleRiposte = effect_value;
|
||||
break;
|
||||
|
||||
case SE_GiveDoubleRiposte:
|
||||
spellbonuses.GiveDoubleRiposte[0] = effect_value;
|
||||
itembonuses.GiveDoubleRiposte[0] = effect_value;
|
||||
|
||||
@ -383,6 +383,7 @@ struct StatBonuses {
|
||||
int16 PetCriticalHit; // Allow pets to critical hit with % value.
|
||||
int16 PetAvoidance; // Pet avoidance chance.
|
||||
int16 CombatStability; // Melee damage mitigation.
|
||||
int16 DoubleRiposte; // Chance to double riposte
|
||||
int16 GiveDoubleRiposte[3]; // 0=Regular Chance, 1=Skill Attack Chance, 2=Skill
|
||||
uint16 RaiseSkillCap[2]; // Raise a specific skill cap (1 = value, 2=skill)
|
||||
int16 Ambidexterity; // Increase chance to duel wield by adding bonus 'skill'.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user