mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-23 15:50:20 +00:00
feat: add melee swing timer bar to player frame during auto-attack
Some checks are pending
Build / Build (arm64) (push) Waiting to run
Build / Build (x86-64) (push) Waiting to run
Build / Build (macOS arm64) (push) Waiting to run
Build / Build (windows-arm64) (push) Waiting to run
Build / Build (windows-x86-64) (push) Waiting to run
Security / CodeQL (C/C++) (push) Waiting to run
Security / Semgrep (push) Waiting to run
Security / Sanitizer Build (ASan/UBSan) (push) Waiting to run
Some checks are pending
Build / Build (arm64) (push) Waiting to run
Build / Build (x86-64) (push) Waiting to run
Build / Build (macOS arm64) (push) Waiting to run
Build / Build (windows-arm64) (push) Waiting to run
Build / Build (windows-x86-64) (push) Waiting to run
Security / CodeQL (C/C++) (push) Waiting to run
Security / Semgrep (push) Waiting to run
Security / Sanitizer Build (ASan/UBSan) (push) Waiting to run
Shows a thin progress bar below the player health/power bars whenever the player is auto-attacking. The bar fills from the last swing timestamp to the next expected swing based on the main-hand weapon's delay (from ItemQueryResponseData::delayMs). Falls back to 2.0s for unarmed. Turns gold and shows "Swing!" when the timer is complete to signal readiness. Hides when not auto-attacking.
This commit is contained in:
parent
a7261a0d15
commit
a87d62abf8
3 changed files with 50 additions and 2 deletions
|
|
@ -14328,8 +14328,11 @@ void GameHandler::handleAttackerStateUpdate(network::Packet& packet) {
|
|||
bool isPlayerTarget = (data.targetGuid == playerGuid);
|
||||
if (!isPlayerAttacker && !isPlayerTarget) return; // Not our combat
|
||||
|
||||
if (isPlayerAttacker && meleeSwingCallback_) {
|
||||
meleeSwingCallback_();
|
||||
if (isPlayerAttacker) {
|
||||
lastMeleeSwingMs_ = static_cast<uint64_t>(
|
||||
std::chrono::duration_cast<std::chrono::milliseconds>(
|
||||
std::chrono::system_clock::now().time_since_epoch()).count());
|
||||
if (meleeSwingCallback_) meleeSwingCallback_();
|
||||
}
|
||||
if (!isPlayerAttacker && npcSwingCallback_) {
|
||||
npcSwingCallback_(data.attackerGuid);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue