fix(Core/GameObject): Make fishing bobber finish a channeled spell rather than interrupt in all cases. (#14422)

This commit is contained in:
Benjamin Jackson
2023-01-28 05:00:07 -05:00
committed by GitHub
parent 4f395d12bb
commit c8bbea9e1b
@@ -1484,7 +1484,6 @@ void GameObject::Use(Unit* user)
Unit* spellCaster = user; Unit* spellCaster = user;
uint32 spellId = 0; uint32 spellId = 0;
bool triggered = false; bool triggered = false;
bool tmpfish = false;
if (Player* playerUser = user->ToPlayer()) if (Player* playerUser = user->ToPlayer())
{ {
@@ -1707,7 +1706,6 @@ void GameObject::Use(Unit* user)
// cast this spell later if provided // cast this spell later if provided
spellId = info->goober.spellId; spellId = info->goober.spellId;
spellCaster = user; spellCaster = user;
tmpfish = true;
break; break;
} }
@@ -1796,8 +1794,6 @@ void GameObject::Use(Unit* user)
} }
else // else: junk else // else: junk
player->SendLoot(GetGUID(), LOOT_FISHING_JUNK); player->SendLoot(GetGUID(), LOOT_FISHING_JUNK);
tmpfish = true;
break; break;
} }
case GO_JUST_DEACTIVATED: // nothing to do, will be deleted at next update case GO_JUST_DEACTIVATED: // nothing to do, will be deleted at next update
@@ -1811,11 +1807,7 @@ void GameObject::Use(Unit* user)
break; break;
} }
} }
player->FinishSpell(CURRENT_CHANNELED_SPELL, true);
if(tmpfish)
player->FinishSpell(CURRENT_CHANNELED_SPELL, true);
else
player->InterruptSpell(CURRENT_CHANNELED_SPELL, true, true, true);
return; return;
} }