Commit graph

7226 commits

Author SHA1 Message Date
Monster Iestyn
1b2afea091 Merge branch 'public_next' 2019-05-03 16:42:42 +01:00
Monster Iestyn
454306cf86 Merge branch 'master' into next 2019-05-03 16:40:13 +01:00
Monster Iestyn
a5dfbe7eff add parentheses around these conditions to fix sloped lights cutting out lights on FOF walls for apparently no reason
not making a merge request because this is so laughably stupidly simple
2019-05-03 16:38:59 +01:00
Monster Iestyn
d4ab2837bb Merge branch 'master' into next 2019-05-03 16:00:45 +01:00
wolfs
1f2d720363 Merge branch 'nonet-upnp' into 'master'
Don't enable UPnP support if NONET is defined.

See merge request STJr/SRB2!484
2019-05-03 06:40:22 -04:00
Digiku
271e0eb5b7 Merge branch 'menu-execs' into 'master'
New title screen features

See merge request STJr/SRB2Internal!204
2019-05-03 03:48:39 -04:00
mazmazz
904b00e921 Remove song_length tag search
Because songs without this tag will skiplag when loading.
2019-05-02 19:14:23 -04:00
mazmazz
3e5b0c4531 Remove MP3 widechar tag searching
1. It's slow, 2. It's incorrect
2019-05-02 19:13:56 -04:00
mazmazz
89ab777c40 Merge remote-tracking branch 'origin/master' into menu-execs 2019-05-02 18:47:43 -04:00
Monster Iestyn
266fa05e15 fix a slipup in A_DoNPCPain I just noticed I made, whoops 2019-05-02 21:34:00 +01:00
Monster Iestyn
61eb05eab2 Hardcoded A_Boss5CheckFalling 2019-05-02 21:32:28 +01:00
Monster Iestyn
953a0c2967 Hardcoded A_Boss5ExtraRepeat 2019-05-02 21:21:15 +01:00
Monster Iestyn
fb17c1ac5a Hardcoded A_Boss5CheckOnGround 2019-05-02 19:09:40 +01:00
Monster Iestyn
3bbc5d0b08 hardcoded A_DoNPCPain 2019-05-02 18:32:43 +01:00
Monster Iestyn
75701294ea Hardcode Fang waypoint object type (turns out no state is needed) 2019-05-02 18:11:44 +01:00
Monster Iestyn
d92ccf6823 Hardcoded all the main Fang-specific object types, states and sprites.
This cannot be compiled as-is right now for the following reasons:
* Numerous actions still need to be hardcoded.
* MT_FBOMB uses the TNT barrel explosion (and by extention A_TNTExplode) for its death state. This is a pickle, I'll deal with it when I get to it.

Also missing:
* Fang waypoint object type+states.
* Fang's good looks (to be put in the resource files obviously).
* Fang's brain.
2019-05-02 18:01:18 +01:00
Sryder
4d77ed925e OpenGL sprite billboarding
Should work on both normal and precipitation sprites.
Sprites that are split by lighting should work correctly.
2019-05-01 20:15:00 +01:00
Nev3r
a56e8e4f8b Merge branch 'further-mace-advancements' into 'master'
Further Mace Advancements

See merge request STJr/SRB2Internal!147
2019-04-30 15:15:35 -04:00
Nev3r
5c240eb9db Add back the p_slopes.h header guard
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 18:05:16 +02:00
Nev3r
62875d6728 Send the slope thinkers list after the mobj list
Keeping the sector list before the mobj list stops the objects from "entering" or "floating" on slopes. However this induces a new slope adhesion problem in fast-moving slopes, so it is more desirable to leave the "indent/float-on" behavior for now since fixing this one seems like a big can of worms and falls off this branch's scope.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 17:16:35 +02:00
Nev3r
a9110c0645 Fixed more mobj thinker iterator oversights and removed all mobj thinker function checks
Mobjs got their own thinker list after all, and disappearing thinkers are automatically purged from their lists and sent to the limbo list.
So it's safe to assume all thinkers inside the mobj list must be mobjs.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 16:39:57 +02:00
Nev3r
a3174fb56f Add a temporary limbo list for thinkers that need to be freed, in order to keep other lists clean, especially the mobj list.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 16:17:47 +02:00
Nev3r
fc9e141460 Give precip. its own thinker list
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 14:58:18 +02:00
Monster Iestyn
8cb0f55a90 Rename thinkers.iterate to mobjs.iterate, kill the "mobjs" arg (though you still need the parentheses). Done a bit messily/lazily, I'll clean up if we can confirm this works
I do wonder whether this library can be extended for all of thlist's lists... but for now it's mobj-only, since we only have the ability to mess with mobjs anyway.
2019-04-21 13:52:55 +01:00
Nev3r
696ccbd943 Fix mobj list iteration oversights.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 12:58:22 +02:00
Nev3r
aad78d4985 Give slope thinkers their own list right before mobjs'.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 12:00:10 +02:00
Nev3r
11dba34f43 Remove dynamic slope queue list due to now being unnecessary.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 11:52:18 +02:00
Nev3r
d264d06879 Merge branch 'slopethinkers' into thinkerlists
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 11:47:34 +02:00
Nev3r
134679c287 Fix some of the polyobject thinkers being removed via P_RemoveThinkerDelayed() directly
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 11:08:24 +02:00
Nev3r
b60c66325c Added a mobj-only list entry for mobj thinkers
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 23:29:20 +02:00
Nev3r
39ba20be6b Basic multiple thinker list implementation
Set up a main thinker list and a polyobject mover list to test things up. Works so far, networking as well.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 22:39:22 +02:00
Nev3r
7c17ed0aa6 Things spawning over copied slopes now properly align on the new plane
While I believe the opposite behavior was intentional at first, it has proven to be problematic and makes alignment a tedious task for copied planes.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 19:03:50 +02:00
Nev3r
b3ac590e5e Add a slope thinker queue.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 13:06:06 +02:00
Nev3r
83001a5bc9 Fix line-based slopes' normals.
The game never uses the normals directly yet so it's been left unnoticed ever since.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-19 20:34:22 +02:00
Nev3r
8a2e11ffa9 Small code cleanup
- Removed unused vars from the slope struct. I'm pretty sure they were meant for something at some point, but right now there's nothing using them and frankly I find it hard to understand what they were meant for.
- Removed unused slope flags.
- Flipped dynamic slope flag naming convention.


Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-19 20:30:13 +02:00
Nev3r
5401e9560f Dynamic slopes now use thinkers.
* Moved dynamic slope-related data into its own thinker.
* Vertex slopes no longer use the mapthings directly.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-19 14:14:43 +02:00
Monster Iestyn
c688291cde Merge branch 'trans-FOF-plane-fullbright-flip' into 'master'
Translucent FOF plane fullbright flip

See merge request STJr/SRB2Internal!218
2019-04-18 15:16:52 -04:00
Nev3r
f7d1515888 Perform dynamic slope thinking before other thinkers.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-18 14:43:34 +02:00
Monster Iestyn
3203dc5d4b Remove old code altogether at Nev3r's request 2019-04-17 16:46:32 +01:00
Monster Iestyn
6bddd131da Undefine toaster's old define to flip full-brightness default status for planes 2019-04-17 14:51:48 +01:00
Steel Titanium
26fdee8217 Don't enable UPnP support if NONET is defined. 2019-04-16 15:05:09 -04:00
James R
36e678b292 Don't count down wait timer when executing a command 2019-04-14 15:17:47 -07:00
Monster Iestyn
797ca99f42 Detect infinite alias self-recursion mixed with other commands, such as in the case of alias a "echo test; a"; a.
(Unfortunately, this does not work if "wait" is used instead of "echo", but oh well)
2019-04-14 16:39:14 +01:00
Monster Iestyn
6d702b86c2 Merge branch 'opengl-new-patch-features-support' into 'master'
OpenGL new patch features support (part 1: flipping)

See merge request STJr/SRB2Internal!211
2019-04-11 15:32:06 -04:00
Monster Iestyn
8a2f8a441b Merge branch 'master' into opengl-new-patch-features-support 2019-04-11 20:09:57 +01:00
Monster Iestyn
9908c001f7 Merge branch 'polyobj-netgame-crash-fix' into 'master'
PolyObj netgame crash fix

See merge request STJr/SRB2Internal!217
2019-04-05 07:29:47 -04:00
Monster Iestyn
212be85655 added "checkmobjs" boolean to both Polyobj_moveXY and Polyobj_rotate, so we can disable interaction with mobjs for netgames 2019-04-05 12:03:03 +01:00
Nev3r
1d401d8481 Merge branch '144-scrolltweaks' into 'master'
Resolve "Let scrollers and wind/current affect front sector if untagged, and use texture offsets as parameters if different from 0"

Closes #144

See merge request STJr/SRB2Internal!213
2019-04-05 06:41:11 -04:00
Nev3r
b1421c5708 Merge branch 'polyrotdisplacement' into 'master'
Implement displacement-based polyobject rotation.

See merge request STJr/SRB2Internal!216
2019-04-05 06:30:45 -04:00
Nev3r
fec991dedb Implement displacement-based polyobject rotation.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-05 11:50:59 +02:00