Commit graph

20840 commits

Author SHA1 Message Date
Christoph Oelckers
ffdd0a11ea - fixed memory leak in ZScript backend.
This allocated some memory and never freed it again. A TArray would have been better - but since we know the maximum size is 4 we may just use a static array here to keep things as efficient as possible.
2022-11-24 23:52:53 +01:00
Christoph Oelckers
65a26d6779 - removed the string constructors from FSoundID.
Due to C++ conversion rules this was a bit too volatile. There's really not enough places where being able to pass a string directly into the sound API was beneficial - the two most frequent functions now got overloaded variants.
2022-11-24 23:52:52 +01:00
Christoph Oelckers
b89c4affae - removed the string assignment operators.
These all caught literal 0's as well
2022-11-24 23:52:52 +01:00
Christoph Oelckers
d173c0453c - handle all remaining places of sound ID conversions after removing the conversion operators. 2022-11-24 23:52:52 +01:00
Christoph Oelckers
160633a4a2 - migrate a large part of the sound code to FSoundIDs.
This has always been a wild mixture of IDs and ints.
2022-11-24 23:52:52 +01:00
Christoph Oelckers
1a6da52961 - use FSoundID in SoundEngine's interface. 2022-11-24 23:52:52 +01:00
Christoph Oelckers
d13f12cc37 - this should take care of the S_* interface. 2022-11-24 23:52:52 +01:00
Christoph Oelckers
7e8de9d1ba - made more use of FSoundID. 2022-11-24 23:52:52 +01:00
Christoph Oelckers
225399a1ef - use TMap for the playersound hashtable. 2022-11-24 23:52:51 +01:00
Christoph Oelckers
4d1b44d9e3 - eliminated GetSounds from the sound engine's interface. 2022-11-24 23:52:51 +01:00
Christoph Oelckers
419e593a4c - allow SNDINFO to declare sound mappings by using 'sounda = soundfle'.
This works similar to MAPINFO: The first definition in a file declares the format, all later ones must be the same.
This change in syntax increases robustness significantly because it avoids the problems with the original syntax not being able to detect badly formatted names.
2022-11-24 23:52:51 +01:00
Rachael Alexanderson
f7f67114ed - move posix I_GetGogPaths() stub to program-specific code for use later 2022-11-24 17:40:26 -05:00
Gutawer
8db4c5ea71 - process events every frame as well to ensure that menus can run at any framerate 2022-11-24 00:56:44 +01:00
Marisa the Magician
eab675c0cb Make model stretch fix opt-in with a flag. 2022-11-22 17:58:32 +01:00
Marisa the Magician
0509d3a4e7 Fix incorrect pixelratio handling on rotated models. 2022-11-22 07:44:22 +01:00
Boondorl
599b00f2ea Extended MENUDEF Functionality
*Added Font and TextureID types to Option and Image Scroller items (List items already have these)
*Added "Class" instruction for Image Scrollers
*Added ability for Option items to read in their OptionMenuDescriptor (List and Image Scroller items already have this)
*Added "ForceList" instruction for Lists so that skill, playerclass, and episode menus don't get overridden
2022-11-22 07:43:23 +01:00
Gutawer
63c2d93033 - quaternion improvements 2022-11-21 07:20:43 +01:00
Gutawer
9f0c518be9 - add remaining quaternion function implementations 2022-11-21 07:20:43 +01:00
RaveYard
540f778047 Quaternion structure and math ops 2022-11-21 07:20:43 +01:00
Ricardo Luís Vaz Silva
802f77ab19 Fix checking of wrong variable in String..Float concatenation 2022-11-19 23:55:17 +01:00
Boondorl
d3bcc769f5 Clearscoped getters for map data 2022-11-19 09:16:24 +01:00
Ricardo Luís Vaz Silva
0f7e7744b0 CustomMessageBox Formatting 2022-11-18 07:42:45 +01:00
Ricardo Luís Vaz Silva
724b89bb1d CustomMessageBox 2022-11-18 07:42:45 +01:00
Rachael Alexanderson
b082ad9cef - fix colormap remapping when colormap entries may have fullbright entries which should not be considered duplicates
- this should address the "fullbright teeth" issue with the imps in KDiKDiZD: https://forum.zdoom.org/viewtopic.php?t=76790
2022-11-18 07:42:09 +01:00
Boondorl
ef456a4901 Added PitchTo Function 2022-11-18 07:41:04 +01:00
Christoph Oelckers
eb97346b0e - stop all sound before showing ENDOOM. 2022-11-16 17:08:11 +01:00
Christoph Oelckers
d0c86952ee - disabled shortcutting the intermission code if no summary screen is wanted.
This also disabled all cutscenes being attached to the completed map.
2022-11-16 16:29:02 +01:00
Christoph Oelckers
29b4418c3a - added 'foreach' loop to ZScript.
Syntax:

foreach(variable : array)
{
}

the variable's type is automatically deducted.
2022-11-15 21:34:45 +01:00
Christoph Oelckers
4994e114c8 - backported Vector*::Sum() from Raze. 2022-11-14 19:49:37 +01:00
RaveYard
31ac1bd414 Initial implementation of Quaternion type in ZScript 2022-11-13 22:48:19 +01:00
Emile Belanger
f41f393e91 GLES: Added IQM bone support. 2022-11-13 21:19:54 +01:00
Boondorl
7517b64aee Updated to Interface Event
Changed SendConsoleEvent to SendInterfaceEvent to make functionality clearer. Added InterfaceProcess virtual to EventHandlers. Added CCMD for sending interface events.
2022-11-13 21:04:38 +01:00
Boondorl
b4a8b1278f SendConsoleEvent function for EventHandlers 2022-11-13 21:04:38 +01:00
Major Cooke
a483ad20be Replaced memset for particles as recommended by dpJudas 2022-11-13 21:02:59 +01:00
Major Cooke
f044695d28 Future-proof particles by resetting them completely when replaced. 2022-11-13 21:02:59 +01:00
Christoph Oelckers
1047b766df - added PlusZ intrinsic to Vector3 and ToVector intrinsic to numeric values.
These just mirror features of the internal vector classes.
2022-11-13 08:07:20 +01:00
Christoph Oelckers
f3b33f7cf8 - added LengthSquared and Angle intrinsics for all vector types, also allow calling VectorAngle with a full vector as a single parameter. 2022-11-13 08:07:12 +01:00
Christoph Oelckers
54f1cabed9 - backend update from Raze.
Progdir stuff for POSIX.
2022-11-13 07:44:36 +01:00
UnizoneDev
a21d0c70e4 Mark the PushSound property as meta 2022-11-13 07:38:07 +01:00
UnizoneDev
b66433478c Simplify sliding objects for now 2022-11-13 07:38:07 +01:00
UnizoneDev
9af664d117 Add PushSound property and Slide state
First Commit, hip hip hooray!
2022-11-13 07:38:07 +01:00
Major Cooke
2a9e28d949 Added PS_REPLACE flag for A_SpawnParticle(Ex).
- When used, new particles that spawn when the limit is reached will replace the oldest particle.
2022-11-12 09:13:37 +01:00
RaveYard
31db5847cc Finish Vector4 implementation 2022-11-12 09:04:38 +01:00
Shiny Metagross
a525233914 Attempted to add Vector4 to ZScript 2022-11-12 09:04:38 +01:00
Christoph Oelckers
31d8a23046 - avoid infinite portal recursion. 2022-11-12 09:00:18 +01:00
Rachael Alexanderson
d388d19793 - fix uncaught exception that rarely occurred with the intermission screen that would vm-abort out from any attempt to enter a level 2022-11-12 00:46:43 -05:00
Boondorl
fc7bb4a7e6 Exposed LevelLocals' LookupString functionality 2022-11-11 07:32:56 +01:00
Boondorl
aea346f1f3 Improved Slam functionality:
*Added ONLYSLAMSOLID flag to ignore non-solid Actors that aren't shootable while SKULLFLY is on.
*Added Slam state that gets entered when slamming an Actor.
2022-11-10 22:55:43 +01:00
Yukita Mayako
15e00f22e8 Normalize angle in AngleToACS
Fixes GetActorAngle returning negative or large values with no range limit.
2022-11-10 07:20:28 +01:00
Ricardo Luís Vaz Silva
31ded6dd8a Enable ANIMDEFS for particles 2022-11-08 23:56:03 -05:00