Commit graph

7060 commits

Author SHA1 Message Date
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
Monster Iestyn
07a66e5355 Merge branch 'public_next' 2019-04-02 15:49:15 +01:00
Monster Iestyn
ab0fe6b164 Merge branch 'master' into next 2019-04-02 15:47:07 +01:00
Nev3r
6d95f3ceb2 Merge branch 'less-obtuse-console-fixes' into 'master'
Console quality of life changes

See merge request STJr/SRB2!479
2019-03-31 16:15:05 -04:00
James R
42d25f67ca Merge remote-tracking branch 'origin/master' into less-obtuse-console-fixes 2019-03-31 12:29:55 -07:00
Monster Iestyn
27147a9e0b fix slipup of mine that would have prevented this thing compiling 2019-03-31 14:11:27 +01:00
Nev3r
2966c99fd8 Merge branch 'do-not-disturb-console' into 'master'
Keep console open in certain instances

See merge request STJr/SRB2!480
2019-03-31 05:54:11 -04:00
Monster Iestyn
7ae6d5ee8c Merge branch 'public_next'
# Conflicts:
#	src/doomstat.h
#	src/g_game.c
2019-03-28 14:19:02 +00:00
Alam Ed Arias
c9cee39745 Merge branch 'master' into next 2019-03-27 19:03:36 -04:00
Alam Ed Arias
4d34841a53 CircleCI: use libpng-dev 2019-03-27 18:51:20 -04:00
Alam Ed Arias
e6c6f048e4 CircleCI: Debian Jessie is dead, long live Debian Stretch 2019-03-27 18:23:03 -04:00
James R
917edf720d Don't close console when starting title screen 2019-03-26 13:05:19 -07:00
James R
9a350eb879 Don't close console when changing map 2019-03-26 13:04:11 -07:00
James R
69d7e98f34 Remove redundant CON_ClearHUD calls 2019-03-26 12:59:13 -07:00
James R
e8071e66e4 Resize console upon resolution change
Basically, changing to a lower resolution won't cause your console to extend
past the screen anymore.
2019-03-26 12:30:02 -07:00
jameds
b9b36a44a8 Keep color across wrapped lines
And this works by inserting the same color code on each wrapped line.
2019-03-26 12:07:11 -07:00
jameds
587586f4bb Scroll console immediately upon pressing PageUp 2019-03-26 12:05:23 -07:00