Commit Graph

101 Commits

Author SHA1 Message Date
Monty Marz
c792cc05a9 Villagers and Cultists 2020-04-30 20:43:24 +00:00
Joshua Barretto
390e46b752 Fixed unit tests 2020-04-26 18:50:21 +01:00
Shane Handley
3e4b40380f fix: Restore run SFX when the character is using a weapon other than the sword. 2020-04-02 14:47:26 +11:00
Imbris
97148cb6bb Merge branch 'master' into 'combat'
# Conflicts:
#   CHANGELOG.md
2020-04-01 20:42:27 +00:00
Imbris
87a82bb59a Fix tests 2020-04-01 11:41:26 -04:00
Marli Frost
c82d1b9316
allow the game to start without an audio device 2020-03-31 21:27:55 +01:00
Imbris
ba3fa16c33 Create Dir type for better enforcement of non NaN, normalized representations of directions 2020-03-27 22:02:07 -04:00
Shane Handley
362771be4b SFX and unit test fixes. 2020-03-27 12:06:25 +11:00
Imbris
41c424ac13 Optimized uses of emitters, cleanup 2020-03-22 00:49:46 -04:00
Adam Whitehurst
49c7143144 Clean up warnings 2020-03-07 13:03:10 -08:00
Adam Whitehurst
54a7112ad9 resolve conflicts merging master -> clientstates 2020-03-07 12:49:48 -08:00
Adam Whitehurst
096d3b691e Merge master 2020-03-07 12:49:15 -08:00
Adam Whitehurst
b1d1299fe6 Clean up character states 2020-03-07 10:15:02 -08:00
Imbris
4a0c474be1 Remove Client dependency from Scene types and audio managers, add an
example for using voxygen as a library to renderer images of characters
2020-03-05 23:12:51 -05: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
S Handley
daa0a10c2c Revert "Do that better, and add a TODO."
This reverts commit 9b0f11bd89.

It wasn't better.
2020-03-01 19:45:05 +00:00
Shane Handley
0d2b26a3b8 SFX Fixes - Reinstate run, uncomment tests and make them pass, adjust
config.
2020-02-25 22:03:29 +09:00
Shane Handley
d6f72876e9 Fix tests for movement sfx. 2020-02-25 10:01:41 +09:00
timokoesters
d0439fdd84 Merge remote-tracking branch 'origin/master' into clientstates 2020-02-24 21:34:17 +01:00
timokoesters
ac611f4618 fix: sync characterstates, better energy management 2020-02-24 20:57:33 +01:00
S Handley
d87061fe14 Add a volume option to SfxEvents, and use this to dispatch movement sfx for quadripeds at a volume proportionate to their size. 2020-02-23 01:26:51 +00:00
S Handley
9ab2833056 Add weapon wield/unwield sfx support 2020-02-21 02:56:54 +00:00
S Handley
b739623579 Split the audio channels into SFX and music channels. This makes the
Music Channel for exploration music a basic Sink without spatial audio
functionality, which is not required.
2020-02-15 21:30:44 +00:00
timokoesters
0bc07a0835 Merge remote-tracking branch 'origin/master' into clientstates 2020-02-03 22:02:32 +01:00
S Handley
b7ce91fead Move music under audio
Also add some blank time after each track so that we get some silence
between tracks.
2020-02-03 11:55:32 +00:00
Marcel Märtens
dae31ae5b6 apply new rustfmt - touching alot of files 2020-02-01 21:39:39 +01:00
timokoesters
7b558b4542 refactor: combine actionstate and movestate 2020-01-21 23:54:59 +01:00
S Handley
b44955ba30 Remove currently unused audio assets
This clears out about 56MB of unused audio files.

There were also some unused methods in the audio modules which
referenced a file, which has also been removed.
2020-01-20 15:07:30 +00:00
S Handley
309834df1b fix: Prevent dispatching Run SFX if an entity is not moving
This adds the entity's velocity as an argument when mapping the
movement state to an SFX event, and prevents the run SFX from being
returned if the velocity is below a threshold.

This will prevent hearing the run sfx when stuck in a corner, or running
into a surface where the character is not actually moving their feet.
2020-01-18 18:49:17 +00:00
AdamWhitehurst
976eface66 Update from MR comments 2020-01-17 08:39:21 -08:00
Adam Whitehurst
5959d2a5c7 Fix SFX and Assets 2020-01-16 05:28:45 -08:00
Adam Whitehurst
d82e93b39f Merge master and build 2020-01-16 05:27:30 -08:00
S Handley
00c1493548 Play the Run SFX when a character lands after jumping or falling
This is a small detail but makes a noticable difference.
2020-01-12 16:35:20 +00:00
AdamWhitehurst
de36e75264 Fix imports, update matches 2020-01-08 11:31:42 -08:00
Adam Whitehurst
8648641362 Grooming 2020-01-07 07:49:08 -08:00
S Handley
2644e29484 Refactor and Rename for clarity
Implements a potential structure for splitting the SFX event mapping
into smaller individual files for maintainability.

- Remove inventory events for now: For a later commit.
- No longer panic when there is a failure parsing the sfx file: log the error and not play sfx.
2020-01-01 02:55:48 +00:00
AdamWhitehurst
b67a4835f4 Update disabled state flags 2019-12-31 05:19:23 -08:00
AdamWhitehurst
ba7ca785f6 Successful build 2019-12-30 05:56:42 -08:00
AdamWhitehurst
ca44497258 Add movement_utils 2019-12-28 08:10:39 -08:00
AdamWhitehurst
8e0317e03d refactor states to handle update logic 2019-12-26 06:43:59 -08:00
AdamWhitehurst
c2ceabea0e finish movment states handle() fn logic 2019-12-22 08:08:48 -08:00
AdamWhitehurst
1ab09220b0 Rudimentary Stand State handle() move 2019-12-21 07:57:15 -08:00
Imbris
d341073a44 Upgrade to specs 0.15.1 2019-12-20 22:48:14 -05:00
S Handley
8c5320d20f Update title music and temporarily remove attack sfx
- Updated title music with a version provided by aeronic which fades out
more gracefully
- Removed attack SFX as it was included in the movement processing, but
will return later as part of a similar chunk of code which processes
combat sfx independent of movement.
2019-12-20 04:04:05 +00:00
S Handley
da2d36ed76 (fix) Set the music and sfx volumes immediately after initialising the
audio frontend.

Fixes #373
2019-12-10 14:02:51 +00:00
Adam Whitehurst
20575e0aab Update controller 2019-12-09 14:45:10 +00:00
S Handley
56f9c5d35f Fix the glider_close sfx event
This was failing to trigger since we now have a MovementState::Fall, but
the sfx mapper was still trying to work this out itself based on
velocity. We no longer need to track velocity as a result and can use
the MovementState.

Also silenced warnings resulting from unused vars when running tests.
2019-12-09 09:50:14 +00:00
Adam Whitehurst
92d99af53c feat: weapon-type dependent wield and attack durations
also some controller.rs cleanup
2019-12-03 06:30:08 +00:00
S Handley
ea2e0d17de SFX system
This is an event based approach to SFX sounds. There is a specific
character sound event mapper which determines sfx to play based on
character or NPC state, as well as emitting sfx events for
non-character-triggers such as levelling up.
2019-11-23 08:26:39 +00:00
Brian Lewis
86619d4192 Fix crashing due to error in Alsa.
This uses a more recent version of cpal (a dependency of rodio hence the
rodio change) which seems to have fixed a crash due to
'device not available: "Invalid argument"' coming from Alsa.

The change in cpal also made some functions now return `Result` instead
of a bare type which I dealt with by using `expect` to minimize how far
these changes fan out into the code but maybe this isn't ideal.

Fixing https://gitlab.com/veloren/veloren/issues/280 - Crash with ALSA
2019-10-06 11:24:42 +02:00