Updated a few AA effects to use database values instead of hardcoded values.

This commit is contained in:
KayenEQ
2015-10-09 13:08:24 -04:00
parent 43671fa749
commit 2cf59ae2f2
5 changed files with 59 additions and 185 deletions
+27 -49
View File
@@ -5076,18 +5076,12 @@ void Client::Handle_OP_DisarmTraps(const EQApplicationPacket *app)
Message(13, "Ability recovery time not yet met.");
return;
}
int reuse = DisarmTrapsReuseTime;
switch (GetAA(aaAdvTrapNegotiation)) {
case 1:
reuse -= 1;
break;
case 2:
reuse -= 3;
break;
case 3:
reuse -= 5;
break;
}
int reuse = DisarmTrapsReuseTime - GetSkillReuseTime(SkillDisarmTraps);
if (reuse < 1)
reuse = 1;
p_timers.Start(pTimerDisarmTraps, reuse - 1);
Trap* trap = entity_list.FindNearbyTrap(this, 60);
@@ -5359,17 +5353,9 @@ void Client::Handle_OP_EnvDamage(const EQApplicationPacket *app)
if (ed->dmgtype == 252) {
switch (GetAA(aaAcrobatics)) { //Don't know what acrobatics effect is yet but it should be done client side via aa effect.. till then
case 1:
damage = damage * 95 / 100;
break;
case 2:
damage = damage * 90 / 100;
break;
case 3:
damage = damage * 80 / 100;
break;
}
int mod = spellbonuses.ReduceFallDamage + itembonuses.ReduceFallDamage + aabonuses.ReduceFallDamage;
damage -= damage * mod / 100;
}
if (damage < 0)
@@ -5443,19 +5429,13 @@ void Client::Handle_OP_FeignDeath(const EQApplicationPacket *app)
Message(13, "Ability recovery time not yet met.");
return;
}
int reuse = FeignDeathReuseTime;
switch (GetAA(aaRapidFeign))
{
case 1:
reuse -= 1;
break;
case 2:
reuse -= 2;
break;
case 3:
reuse -= 5;
break;
}
reuse -= GetSkillReuseTime(SkillFeignDeath);
if (reuse < 1)
reuse = 1;
p_timers.Start(pTimerFeignDeath, reuse - 1);
//BreakInvis();
@@ -7762,7 +7742,11 @@ void Client::Handle_OP_Hide(const EQApplicationPacket *app)
Message(13, "Ability recovery time not yet met.");
return;
}
int reuse = HideReuseTime - GetAA(209);
int reuse = HideReuseTime - GetSkillReuseTime(SkillHide);
if (reuse < 1)
reuse = 1;
p_timers.Start(pTimerHide, reuse - 1);
float hidechance = ((GetSkill(SkillHide) / 250.0f) + .25) * 100;
@@ -7776,7 +7760,7 @@ void Client::Handle_OP_Hide(const EQApplicationPacket *app)
sa_out->parameter = 1;
entity_list.QueueClients(this, outapp, true);
safe_delete(outapp);
if (GetAA(aaShroudofStealth)){
if (spellbonuses.ShroudofStealth || aabonuses.ShroudofStealth || itembonuses.ShroudofStealth){
improved_hidden = true;
hidden = true;
}
@@ -11698,18 +11682,12 @@ void Client::Handle_OP_SenseTraps(const EQApplicationPacket *app)
Message(13, "Ability recovery time not yet met.");
return;
}
int reuse = SenseTrapsReuseTime;
switch (GetAA(aaAdvTrapNegotiation)) {
case 1:
reuse -= 1;
break;
case 2:
reuse -= 3;
break;
case 3:
reuse -= 5;
break;
}
int reuse = SenseTrapsReuseTime - GetSkillReuseTime(SkillSenseTraps);
if (reuse < 1)
reuse = 1;
p_timers.Start(pTimerSenseTraps, reuse - 1);
Trap* trap = entity_list.FindNearbyTrap(this, 800);