mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-19 04:01:29 +00:00
Merge branch 'aa' of github.com:EQEmu/Server into aa
This commit is contained in:
commit
33b6748c1b
@ -4412,37 +4412,50 @@ bool Mob::TryFinishingBlow(Mob *defender, SkillUseTypes skillinuse)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Mob::DoRiposte(Mob* defender) {
|
void Mob::DoRiposte(Mob *defender)
|
||||||
|
{
|
||||||
Log.Out(Logs::Detail, Logs::Combat, "Preforming a riposte");
|
Log.Out(Logs::Detail, Logs::Combat, "Preforming a riposte");
|
||||||
|
|
||||||
if (!defender)
|
if (!defender)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
defender->Attack(this, MainPrimary, true);
|
defender->Attack(this, MainPrimary, true);
|
||||||
if (HasDied()) return;
|
if (HasDied())
|
||||||
|
return;
|
||||||
|
|
||||||
int32 DoubleRipChance = defender->aabonuses.GiveDoubleRiposte[0] +
|
// this effect isn't used on live? See no AAs or spells
|
||||||
defender->spellbonuses.GiveDoubleRiposte[0] +
|
int32 DoubleRipChance = defender->aabonuses.DoubleRiposte + defender->spellbonuses.DoubleRiposte +
|
||||||
defender->itembonuses.GiveDoubleRiposte[0];
|
|
||||||
|
|
||||||
DoubleRipChance = defender->aabonuses.DoubleRiposte +
|
|
||||||
defender->spellbonuses.DoubleRiposte +
|
|
||||||
defender->itembonuses.DoubleRiposte;
|
defender->itembonuses.DoubleRiposte;
|
||||||
|
|
||||||
|
if (DoubleRipChance && zone->random.Roll(DoubleRipChance)) {
|
||||||
|
Log.Out(Logs::Detail, Logs::Combat,
|
||||||
|
"Preforming a double riposted from SE_DoubleRiposte (%d percent chance)", DoubleRipChance);
|
||||||
|
defender->Attack(this, MainPrimary, true);
|
||||||
|
if (HasDied())
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
DoubleRipChance = defender->aabonuses.GiveDoubleRiposte[0] + defender->spellbonuses.GiveDoubleRiposte[0] +
|
||||||
|
defender->itembonuses.GiveDoubleRiposte[0];
|
||||||
|
|
||||||
// Live AA - Double Riposte
|
// Live AA - Double Riposte
|
||||||
if (DoubleRipChance && zone->random.Roll(DoubleRipChance)) {
|
if (DoubleRipChance && zone->random.Roll(DoubleRipChance)) {
|
||||||
Log.Out(Logs::Detail, Logs::Combat, "Preforming a double riposed (%d percent chance)", DoubleRipChance);
|
Log.Out(Logs::Detail, Logs::Combat,
|
||||||
|
"Preforming a double riposted from SE_GiveDoubleRiposte base1 == 0 (%d percent chance)",
|
||||||
|
DoubleRipChance);
|
||||||
defender->Attack(this, MainPrimary, true);
|
defender->Attack(this, MainPrimary, true);
|
||||||
if (HasDied()) return;
|
if (HasDied())
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
//Double Riposte effect, allows for a chance to do RIPOSTE with a skill specfic special attack (ie Return Kick).
|
// Double Riposte effect, allows for a chance to do RIPOSTE with a skill specific special attack (ie Return Kick).
|
||||||
// Coded narrowly: Limit to one per client. Limit AA only. [1 = Skill Attack Chance, 2 = Skill]
|
// Coded narrowly: Limit to one per client. Limit AA only. [1 = Skill Attack Chance, 2 = Skill]
|
||||||
|
|
||||||
DoubleRipChance = defender->aabonuses.GiveDoubleRiposte[1];
|
DoubleRipChance = defender->aabonuses.GiveDoubleRiposte[1];
|
||||||
|
|
||||||
if (DoubleRipChance && zone->random.Roll(DoubleRipChance)) {
|
if (DoubleRipChance && zone->random.Roll(DoubleRipChance)) {
|
||||||
Log.Out(Logs::Detail, Logs::Combat, "Preforming a return SPECIAL ATTACK (%d percent chance)", DoubleRipChance);
|
Log.Out(Logs::Detail, Logs::Combat, "Preforming a return SPECIAL ATTACK (%d percent chance)",
|
||||||
|
DoubleRipChance);
|
||||||
|
|
||||||
if (defender->GetClass() == MONK)
|
if (defender->GetClass() == MONK)
|
||||||
defender->MonkSpecialAttack(this, defender->aabonuses.GiveDoubleRiposte[2]);
|
defender->MonkSpecialAttack(this, defender->aabonuses.GiveDoubleRiposte[2]);
|
||||||
|
|||||||
@ -1156,6 +1156,7 @@ void Mob::ApplyAABonuses(const AA::Rank &rank, StatBonuses *newbon)
|
|||||||
|
|
||||||
case SE_DoubleRiposte: {
|
case SE_DoubleRiposte: {
|
||||||
newbon->DoubleRiposte += base1;
|
newbon->DoubleRiposte += base1;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case SE_GiveDoubleRiposte: {
|
case SE_GiveDoubleRiposte: {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user