Commit Graph

4 Commits

Author SHA1 Message Date
Ben Wallis
a9d3f984f0 Implemented loot pickup chat messages and the option for playing different sounds for picked up items
* Added chat message when an item is picked up
* Changed InventoryUpdateEvent::Collected to InventoryUpdateEvent::Collected(Item) to facilitate the client being aware of what was picked up
* Added SfxInventoryEvent enum to allow different sounds to be used based on the item type. The RON mapping/de-serialization doesn't support matching on structs so we have to give it fixed enum values which are determined in TryFrom<&InventoryUpdateEvent> for SfxEvent
* Refactored InventoryManip::Pickup arm of match in inventory_manip::handle_inventory for clarity/better warning messages
* Fixed a bug that prevented the CollectFailed event from being raised when a player's inventory is full
* Added a panic for the situation where an item is pushed into the players inventory and then the deletion of the entity fails as this would indicate an item dupe bug - this could potentially be reworked to pull the item back from the player's inventory but this seems like there's be a more correct transactional way to do this.
* Added two temporary sounds to prove the per-item sound functionality (pickup sounds for Swords and Staffs)
2020-06-28 13:05:28 +01:00
Julian
cf9820e204 Added new SFX and adjusted sfx.ron
New SFX sounds.

add_item.wav (Better fitting pickup sound)
drop_item.wav (New sound for dropping items)
open_inventory.wav (The old pickup sound, can be used for opening the bag but needs to be implemented)
sword_in.wav (Better fitting sound)
sowrd_out.wav (Better fitting sound)

Fixed the drop sfx sound in sfx.ron
Its the drop_item sound instead of a grass moving step.
2020-05-03 21:52:11 +02:00
S Handley
bc692c0101 Add audio and chat message feedback when the player attempts to collect something while thier inventory is full. 2020-03-11 10:30:59 +00:00
S Handley
b0ca85069b Piggyback on the InventoryUpdate events and attach some additional event info so that we can detect why the inventory update was triggered, and emit an associated sfx event that matches it. 2020-03-04 10:09:48 +00:00