mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-23 15:50:20 +00:00
feat: flash action bar button red when spell cast fails
Add SpellCastFailedCallback to GameHandler, fired from SMSG_CAST_RESULT when result != 0. GameScreen registers the callback and records each failed spellId in actionFlashEndTimes_ (keyed by spell ID, value = expiry time). During action bar rendering, if a slot's spell has an active flash entry, an AddRectFilled overlay is drawn over the button with alpha proportional to remaining time (1.0→0.0 over 0.5 s), giving the same error-red flash visual feedback as the original WoW client.
This commit is contained in:
parent
c1765b6b39
commit
277a26b351
4 changed files with 41 additions and 0 deletions
|
|
@ -2267,6 +2267,7 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
|||
std::string errMsg = reason ? reason
|
||||
: ("Spell cast failed (error " + std::to_string(castResult) + ")");
|
||||
addUIError(errMsg);
|
||||
if (spellCastFailedCallback_) spellCastFailedCallback_(castResultSpellId);
|
||||
MessageChatData msg;
|
||||
msg.type = ChatType::SYSTEM;
|
||||
msg.language = ChatLanguage::UNIVERSAL;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue