diff options
author | Kae <80987908+Novaenia@users.noreply.github.com> | 2024-03-11 17:03:09 +1100 |
---|---|---|
committer | Kae <80987908+Novaenia@users.noreply.github.com> | 2024-03-11 17:03:09 +1100 |
commit | 353406780181feffaa4836d387db4f7337ce6cce (patch) | |
tree | beb71edbff7141af6f1b960f050b6484ec9eb758 /source/game/StarPlayer.cpp | |
parent | caf7abebfe784a94fbc0e6b51e49cfeab91bf96a (diff) |
Tile Prediction: make refunds silent
Diffstat (limited to 'source/game/StarPlayer.cpp')
-rw-r--r-- | source/game/StarPlayer.cpp | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/source/game/StarPlayer.cpp b/source/game/StarPlayer.cpp index 8ce809f..e57400a 100644 --- a/source/game/StarPlayer.cpp +++ b/source/game/StarPlayer.cpp @@ -1153,20 +1153,23 @@ uint64_t Player::itemsCanHold(ItemPtr const& items) const { return m_inventory->itemsCanFit(items); } -ItemPtr Player::pickupItems(ItemPtr const& items) { +ItemPtr Player::pickupItems(ItemPtr const& items, bool silent) { if (isDead() || !items || m_inventory->itemsCanFit(items) == 0) return items; triggerPickupEvents(items); - if (items->pickupSound().size()) { - m_effectsAnimator->setSoundPool("pickup", {items->pickupSound()}); - float pitch = 1.f - ((float)items->count() / (float)items->maxStack()) * 0.5f; - m_effectsAnimator->setSoundPitchMultiplier("pickup", clamp(pitch * Random::randf(0.8f, 1.2f), 0.f, 2.f)); - m_effectsAnimator->playSound("pickup"); + if (!silent) { + if (items->pickupSound().size()) { + m_effectsAnimator->setSoundPool("pickup", {items->pickupSound()}); + float pitch = 1.f - ((float)items->count() / (float)items->maxStack()) * 0.5f; + m_effectsAnimator->setSoundPitchMultiplier("pickup", clamp(pitch * Random::randf(0.8f, 1.2f), 0.f, 2.f)); + m_effectsAnimator->playSound("pickup"); + } + auto itemDb = Root::singleton().itemDatabase(); + queueItemPickupMessage(itemDb->itemShared(items->descriptor())); } - auto itemDb = Root::singleton().itemDatabase(); - queueItemPickupMessage(itemDb->itemShared(items->descriptor())); + return m_inventory->addItems(items); } |