Christoph Oelckers
30c47a8511
- include namespace file in all sources as the very first include.
2019-09-21 20:59:54 +02:00
Christoph Oelckers
998ac01157
- manual merge of all NBlood changes that couldn't get cherry picked.
2019-09-21 13:02:17 +02:00
terminx
e6cb2e4a8d
Use a sound's volume offset parameter as the max distance if the explosion flag is set
...
git-svn-id: https://svn.eduke32.com/eduke32@8058 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 21:09:18 +02:00
terminx
f76ca0a361
Fix remaining casts to vec2_t/vec3_t
...
git-svn-id: https://svn.eduke32.com/eduke32@7973 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/src/build.cpp
2019-09-20 16:07:36 +02:00
pogokeen
5c11fc8889
sounds.cpp: fix infinite loop caused by removal of "else" in r7939
...
git-svn-id: https://svn.eduke32.com/eduke32@7941 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:12 +02:00
terminx
9ee310ce71
Fix sound issue
...
git-svn-id: https://svn.eduke32.com/eduke32@7940 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:10 +02:00
terminx
ef7f4f8a60
Oops
...
git-svn-id: https://svn.eduke32.com/eduke32@7939 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:08 +02:00
terminx
36366c0c98
M-M-M-MUTEX MADNESS
...
git-svn-id: https://svn.eduke32.com/eduke32@7937 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:03:04 +02:00
terminx
b7f349cd92
Sound cleanups
...
git-svn-id: https://svn.eduke32.com/eduke32@7915 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/duke3d/src/sounds.h
2019-09-20 15:47:13 +02:00
terminx
48f9edf743
New feature: combine SF_GLOBAL and SF_DTAG definesound flags to get Duke3D explosion sound behavior
...
git-svn-id: https://svn.eduke32.com/eduke32@7914 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:47 +02:00
terminx
789be3cf35
Add S_SetProperties() function to handle repetitious setting of a few sound structure members
...
git-svn-id: https://svn.eduke32.com/eduke32@7913 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:45 +02:00
terminx
4e0325e0d4
Add FURY checks for some EDUKE32_STANDALONE stuff
...
git-svn-id: https://svn.eduke32.com/eduke32@7911 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:41 +02:00
terminx
aec48c73c1
'If' out a couple of instances of g_soundlocks[] manipulation I somehow missed during my first pass
...
git-svn-id: https://svn.eduke32.com/eduke32@7906 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:30 +02:00
terminx
2a3c80f95d
Fix issue with sounds being expired from cache
...
git-svn-id: https://svn.eduke32.com/eduke32@7874 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:33:05 +02:00
terminx
2bb93967e1
Fix an issue where looping sound effects would play at full volume for a tic after playback began, regardless of distance to the sound
...
git-svn-id: https://svn.eduke32.com/eduke32@7821 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:05 +02:00
terminx
c96ec9d440
This is just syntax and formatting
...
No functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@7776 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:39:09 +02:00
terminx
31f66f7de4
Fix audio position updating in automap mode
...
git-svn-id: https://svn.eduke32.com/eduke32@7766 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:38 +02:00
Christoph Oelckers
c2e4a6cb64
- sound system additions from NBlood, except for the backing code for OPL playback.
2019-09-19 20:22:09 +02:00
hendricks266
7414f29348
Add buildvfs, abstraction layer for file I/O.
...
Currently it passes calls through to the system libraries as before.
Also adds an incomplete implementation on PhysFS.
git-svn-id: https://svn.eduke32.com/eduke32@7359 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-01 08:51:50 +00:00
terminx
5882d9546c
Add mutex to protect against S_Callback() being called from more than one thread at the same time
...
git-svn-id: https://svn.eduke32.com/eduke32@7310 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-13 23:26:50 +00:00
terminx
97c2271b92
Fix an infinite loop in S_StopEnvSound() that could occur if the audio thread happened to finish playing a voice in between checking if g_sounds[].voices[].id > FX_Ok and calling FX_StopSound(), exacerbated by improper std::atomic usage
...
git-svn-id: https://svn.eduke32.com/eduke32@7305 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:58 +00:00
terminx
30cc6a35e8
I don't see a reason for these operations to be separated
...
git-svn-id: https://svn.eduke32.com/eduke32@7281 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:36 +00:00
terminx
06ac4f88b9
This fixes S_CheckSoundPlaying() and makes CON_IFSOUND work correctly in scripts that run during menus. These changes together fix the exchange between Duke and Lani at the end of episode 3 of Duke3D.
...
git-svn-id: https://svn.eduke32.com/eduke32@7279 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:25 +00:00
terminx
e06962460b
More premap cleanup
...
git-svn-id: https://svn.eduke32.com/eduke32@7175 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:14 +00:00
terminx
ed2f9f247b
Rework volume control to not completely suck
...
git-svn-id: https://svn.eduke32.com/eduke32@7122 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:50 +00:00
terminx
1c007c56c5
More sound work
...
git-svn-id: https://svn.eduke32.com/eduke32@7119 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:29 +00:00
terminx
374a09536d
Add per-sound volume support to audiolib. This allows you to control the volume of sounds independently from the distance-based system exposed through CON. To use this, you must define your sounds via the .def syntax and set the "volume" property--default is 1.0.
...
git-svn-id: https://svn.eduke32.com/eduke32@7117 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:14 +00:00
terminx
af728b2641
Remove a few useless forward declarations and const-ify a couple of function parameters. Yawn.
...
git-svn-id: https://svn.eduke32.com/eduke32@7070 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:50 +00:00
hendricks266
03f2cdd9b3
Fix MIDI playback on non-Windows platforms
...
git-svn-id: https://svn.eduke32.com/eduke32@6889 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-19 14:14:18 +00:00
terminx
bbae62868a
Very light sound cleanup
...
git-svn-id: https://svn.eduke32.com/eduke32@6877 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-04 22:42:37 +00:00
hendricks266
d31ae817f1
Disable S_ClearSoundLocks, preventing sounds from being marking purgable, and causing them to get prematurely evicted.
...
This fixes the absent sound issues in WWII GI.
git-svn-id: https://svn.eduke32.com/eduke32@6874 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-03 04:44:36 +00:00
terminx
70b03fd608
This is probably faster
...
git-svn-id: https://svn.eduke32.com/eduke32@6841 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:34:43 +00:00
terminx
daa033d56a
Replace sound callback mutex with atomic operation
...
git-svn-id: https://svn.eduke32.com/eduke32@6839 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-21 06:04:56 +00:00
terminx
f952a77c9e
Sound code tweaks
...
git-svn-id: https://svn.eduke32.com/eduke32@6836 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-21 06:04:39 +00:00
terminx
461561d2d0
Fix a bunch of off-by-one errors in the sound system, made apparent by a change to some related code.
...
git-svn-id: https://svn.eduke32.com/eduke32@6834 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:04:12 +00:00
terminx
e5bcc1cf81
More function name cleanup
...
git-svn-id: https://svn.eduke32.com/eduke32@6830 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:03:30 +00:00
terminx
bcd5e48c8c
EDUKE32_STANDALONE guard some hard-coded Duke3D sound behavior
...
git-svn-id: https://svn.eduke32.com/eduke32@6817 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:43:08 +00:00
terminx
bb8ceefa95
Sound cleanup. Eliminates on-demand loading of sounds--all sounds are cached before level load.
...
git-svn-id: https://svn.eduke32.com/eduke32@6792 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:11 +00:00
terminx
a76750df55
Q16.16 for player angle, too
...
git-svn-id: https://svn.eduke32.com/eduke32@6725 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:18 +00:00
hendricks266
4f17a26061
New userdef structure "return"
...
This works like an extension of the RETURN gamevar and it accepts multiple values. Reading or writing the value of "userdef[].return 0" is the same as reading of writing the RETURN gamevar.
The following userdefs are now aliases:
- m_origin_x = userdef[].return 1
- m_origin_y = userdef[].return 2
- screenarea_x1 = userdef[].return 0
- screenarea_y1 = userdef[].return 1
- screenarea_x1 = userdef[].return 2
Additionally, the API for EVENT_PLAYLEVELMUSICSLOT is hereby redefined to use return 1 and 2 (not 0) _instead of_ ud.m_*_number.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6706 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 20:20:00 +00:00
hendricks266
042c0e9796
Fix the interaction between starttrack and toggling music off.
...
git-svn-id: https://svn.eduke32.com/eduke32@6693 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-25 01:18:32 +00:00
hendricks266
e7cbf0b1a9
New events EVENT_PLAYLEVELMUSICSLOT and EVENT_CONTINUELEVELMUSICSLOT.
...
Called when a music track will be started from the beginning, and when the current track is continued after loading a save, etc.
The requested track is passed into PLAYLEVELMUSICSLOT via ud.m_volume_number and ud.m_level_number.
git-svn-id: https://svn.eduke32.com/eduke32@6624 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:14:08 +00:00
hendricks266
6470b51fb9
Properly save the currently playing music track in savegames.
...
Bump BYTEVERSION.
git-svn-id: https://svn.eduke32.com/eduke32@6620 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:49 +00:00
hendricks266
d792054ce2
Refactor all calls to S_PlayMusic.
...
This allows as much of the control flow as possible to fail gracefully without interruping currently playing music.
git-svn-id: https://svn.eduke32.com/eduke32@6619 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-29 11:13:43 +00:00
terminx
de5f16b1c5
Fix events added in recent commits
...
git-svn-id: https://svn.eduke32.com/eduke32@6537 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 09:24:55 +00:00
hendricks266
102a720402
CON: Add EVENT_OPENMENUSOUND.
...
Set RETURN to the sound played when the menu is opened. -1 to cancel.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6516 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:37 +00:00
hendricks266
77875948ba
Eliminate more cases of duplication of compat.h's functionality.
...
git-svn-id: https://svn.eduke32.com/eduke32@6075 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-25 08:15:45 +00:00
hendricks266
1cc9d13ccf
The great repository rearrangement of 2017.
...
Files moved but not modified. Changes to follow in a subsequent commit.
You down with CPP?
git-svn-id: https://svn.eduke32.com/eduke32@6055 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-01 10:01:11 +00:00