mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-11 19:43:52 +00:00
change weapon for ranged skills
Signed-off-by: Pavel Okhlopkov <pavel.okhlopkov@flant.com>
This commit is contained in:
parent
fe1dc5e02b
commit
6ba0edc2fb
6 changed files with 176 additions and 4 deletions
|
|
@ -980,14 +980,23 @@ void Application::setState(AppState newState) {
|
|||
if (renderer) {
|
||||
// Ranged auto-attack spells: Auto Shot (75), Shoot (5019), Throw (2764)
|
||||
if (spellId == 75 || spellId == 5019 || spellId == 2764) {
|
||||
if (appearanceComposer_ && !appearanceComposer_->isShowingRanged())
|
||||
appearanceComposer_->showRangedWeapon(true);
|
||||
if (auto* ac = renderer->getAnimationController()) ac->triggerRangedShot();
|
||||
} else if (spellId != 0) {
|
||||
if (appearanceComposer_ && appearanceComposer_->isShowingRanged())
|
||||
appearanceComposer_->showRangedWeapon(false);
|
||||
if (auto* ac = renderer->getAnimationController()) ac->triggerSpecialAttack(spellId);
|
||||
} else {
|
||||
if (appearanceComposer_ && appearanceComposer_->isShowingRanged())
|
||||
appearanceComposer_->showRangedWeapon(false);
|
||||
if (auto* ac = renderer->getAnimationController()) ac->triggerMeleeSwing();
|
||||
}
|
||||
}
|
||||
});
|
||||
gameHandler->setRangedWeaponSwapCallback([this](bool show) {
|
||||
if (appearanceComposer_) appearanceComposer_->showRangedWeapon(show);
|
||||
});
|
||||
gameHandler->setKnockBackCallback([this](float vcos, float vsin, float hspeed, float vspeed) {
|
||||
if (renderer && renderer->getCameraController()) {
|
||||
renderer->getCameraController()->applyKnockBack(vcos, vsin, hspeed, vspeed);
|
||||
|
|
@ -1216,6 +1225,10 @@ void Application::update(float deltaTime) {
|
|||
appearanceComposer_->setWeaponsSheathed(false);
|
||||
appearanceComposer_->loadEquippedWeapons();
|
||||
}
|
||||
// Swap back to melee weapon when auto-attack stops
|
||||
if (!autoAttacking && wasAutoAttacking_ && appearanceComposer_ && appearanceComposer_->isShowingRanged()) {
|
||||
appearanceComposer_->showRangedWeapon(false);
|
||||
}
|
||||
wasAutoAttacking_ = autoAttacking;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue