mirror of
https://github.com/EQEmu/Server.git
synced 2026-06-10 02:31:03 +00:00
[Feature] Implemented /shield ability and related affects (#1494)
* shield ability initial work
* updates
* update
* updates
* Update client_process.cpp
* major updates
optimized
pet support
perl support
* updates
* minor update
* fix merge error
* requested changes
* variable fix
* optimization
* minor update
* Revert "optimization"
This reverts commit 27e11e758b.
* fix
reset variables on shield_target if shielder dies or zones during shielding.
* edge case fix
Catch and fix situations where shield target doesn't have shielder variable cleared. Can occur if shielder . uses ability when target is not in combat then zones.
* combined packet and mob function
Shield now uses a common pathway through ShieldAbility, added parameters to perl function
* Addressing formatting for Kayen
* Fix function typo
Co-authored-by: Akkadius <akkadius1@gmail.com>
This commit is contained in:
+3
-27
@@ -464,33 +464,9 @@ bool Client::Process() {
|
||||
if (gravity_timer.Check())
|
||||
DoGravityEffect();
|
||||
}
|
||||
|
||||
if (shield_timer.Check())
|
||||
{
|
||||
if (shield_target)
|
||||
{
|
||||
if (!CombatRange(shield_target))
|
||||
{
|
||||
entity_list.MessageCloseString(
|
||||
this, false, 100, 0,
|
||||
END_SHIELDING, GetCleanName(), shield_target->GetCleanName());
|
||||
for (int y = 0; y < 2; y++)
|
||||
{
|
||||
if (shield_target->shielder[y].shielder_id == GetID())
|
||||
{
|
||||
shield_target->shielder[y].shielder_id = 0;
|
||||
shield_target->shielder[y].shielder_bonus = 0;
|
||||
}
|
||||
}
|
||||
shield_target = 0;
|
||||
shield_timer.Disable();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
shield_target = 0;
|
||||
shield_timer.Disable();
|
||||
}
|
||||
|
||||
if (shield_timer.Check()) {
|
||||
ShieldAbilityFinish();
|
||||
}
|
||||
|
||||
SpellProcess();
|
||||
|
||||
Reference in New Issue
Block a user