Commit graph

55 commits

Author SHA1 Message Date
James R
7060083db5 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
fickleheart
a63e9fe002 Improvements to polyobjects carrying things:
- Fixed loss of precision in rotate carry causing objects to slide off
- Adjusted player carrying logic to make platforms less slippery
- Finally obsoleted the player-specific rotate hack now that I found the
  actual problem :]
2020-02-10 00:07:25 -06:00
fickleheart
b22de48c03 Merge branch 'next' into next-newcontrols
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
2019-12-31 12:58:36 -06:00
James R
b5df2d5c3f Merge branch 'polyobj-waypoint-thinker-optimise' into 'next'
Polyobj waypoint thinker optimise

See merge request STJr/SRB2!586
2019-12-31 01:33:01 -05:00
Monster Iestyn
7c9b1ee2cb Fix P_SetTarget crash by setting th->target to NULL first 2019-12-30 11:49:01 +00:00
Nev3r
389b9e35c4 Add XNOD, XGLN and XGL3 BSP formats recognition and support. 2019-12-29 14:17:51 +01:00
Monster Iestyn
1d04001fdf use P_SetTarget to assign a value to th->target 2019-12-27 19:24:00 +00:00
Monster Iestyn
282fe7667c added a "target" pointer to polywaypoint_t, so the polyobj waypoint thinker doesn't have to re-find the next waypoint every tic 2019-12-27 19:10:14 +00:00
fickleheart
1a60f7a2ad Fix wacky CEZ2 platform camera 2019-12-13 19:30:19 -06:00
Steel Titanium
d415cd5c6d
Update copyright date on source files 2019-12-06 13:49:42 -05:00
Monster Iestyn
f9037509a1 Remove commented out P_CheckSector calls and add extra comments explaining the situation 2019-08-03 19:06:45 +01:00
Monster Iestyn
42a36de459 Modify P_CheckSector with a modified version of Sal's attempted proper fix for polyobjects crushing, so that we only need to check the polyobject's control sector directly in the waypoints code.
This time I've definitely fixed that teleport to ground issue I'm pretty sure, I don't get it in my tests at least.
2019-08-02 16:51:44 +01:00
Monster Iestyn
794235a848 Fix mixed code-and-declaration error 2019-07-14 16:19:48 +01:00
Jonas Sauer
166f1fac66 Fixed the thinkerlist issues by removing THINK_LIMBO. Delay-removed thinkers now stay in their list.
Also includes toaster's assorted fixes and improvements from target_painted_on_your_ass.
2019-07-13 01:42:03 +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
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
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
fec991dedb Implement displacement-based polyobject rotation.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-05 11:50:59 +02:00
mazmazz
075f28b7c8 WIP 20190101 merge
d_netcmd.c
filesrch.c
m_menu.c
p_setup.c
p_spec.c
r_data.c
r_main.c
r_things.c
w_wad.c
w_wad.h
2019-01-02 01:09:15 -05:00
TehRealSalt
878b1b2d16 Fix move by waypoints not checking for sector changes
It seemed weird at first, but the polyobject sector (backsector) itself DOESN'T need checked (although I still am doing it for safety). Rather, the in-level sector just needs checked.

If someone manually modifies the polyobject sector though, then this bug can still occur... but this fixes it for the most common use-case where this can happen. I'll try to tackle the rarer cases in my next commit.
2018-12-24 14:39:07 -05:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
Digiku
b7bcc16c98 Merge branch 'fof-fixes-movingplatexists' into 'master'
Moving platform fix: Player snaps to floor when setting ~FF_EXISTS

See merge request STJr/SRB2Internal!188
2018-09-18 11:29:11 -04:00
mazmazz
5029c01c2b 492: Remove pre-existing thinker when setting up new fade 2018-09-18 07:31:19 -04:00
mazmazz
17e23f55eb 492: Merge speed and duration logic for fade polyobject 2018-09-15 20:00:37 -04:00
mazmazz
4ab3a986f3 492 PolyObj Fade, 491 PolyObj Translucency, 490 PolyObj changes
* 490: Set proper render flags according to spawnflags
* 491: Add relative calc (EFFECT3) and Front X alpha param (DONTPEGTOP)
* 492:
    * Tic-based (EFFECT4) and speed timing
    * Add relative calc (EFFECT3) and Front X alpha param (DONTPEGTOP)
    * Set proper render flags according to spawnflags
    * Fix OpenGL >= NUMTRANSMAPS render bug
2018-09-13 00:06:11 -04:00
mazmazz
0697a1b90a PolyObjFade: Apply RENDER, SOLID, and NOSPECIALS flags according to spawnflags 2018-09-13 00:06:08 -04:00
mazmazz
a6f959ba21 Set mobj->floorrover and ceilingrover in appropriate places 2018-09-10 00:38:07 -04:00
mazmazz
573e1d0017 Replace firsttic with timer increment 2018-09-09 21:01:00 -04:00
mazmazz
3f4656e57e Polyobject Fade logic 2018-09-09 08:08:48 -04:00
mazmazz
0b365d0d08 Initial polyobj fade skeleton 2018-09-07 15:27:18 -04:00
toasterbabe
a5477737d7 Whooh boy. Probably requires re-review.
* Support for MF_PAPERCOLLISION tmhitthing in P_SlideMove.
* Knockback for wallspikes is much more consistent.
* Optimised away a FixedDiv call when determining the slopetype of a line.
* Changed the position of the wallspike base slightly.
* Made it so NOTHING can step up onto the player outside of other players, essentially killing a bunch of springs-launch-with-players style bugs. (I was able to recreate that issue with the wallspikes until I added this, which is why I did it in this branch.)
2017-07-18 14:17:23 +01:00
Alam Ed Arias
032313260a Merge branch 'public_next' into master 2016-05-20 17:58:57 -04:00
Inuyasha
f07585191b copyright dates/statements updated and such
(no actual SLOC changes)
2016-05-17 17:42:11 -07:00
RedEnchilada
8505ad4d14 Merge remote-tracking branch 'public/next' 2016-01-31 13:06:55 -06:00
Monster Iestyn
2e58f6c4d9 Fixed that odd bug where PolyObjects sometimes leave a vertex or two in their control sectors
Turns out the seg-searching code falsely assumed it'd find frontfacing segs first, who knew?
2016-01-31 13:05:30 -06:00
Alam Ed Arias
fbda813155 whitespace cleanup from merge 2015-08-14 18:32:30 -04:00
Monster Iestyn
ee4a3fffee Merge branch 'polyobj-setup-fixes' into 'master'
Polyobj setup fixes

If you're wondering why ERZ2 crashes lately, yes, it's my fault once again it turns out! Ideally we shouldn't have loose spawn points or anchors without an actual PolyObject to go with them in the first place, but this fix re-adds the safety check that prevented them from crashing the game before.

If it wasn't clear already, this fix is rather important, so please get in asap.

See merge request !7
2015-08-14 13:48:37 -04:00
Monster Iestyn
66b7597e87 Derp, disabling Polyobj_findExplicit apparently blocked off the one thing preventing ERZ2 from crashing before (since it has rogue spawn points without actual First Lines to go with them, for whatever reason) 2015-08-13 16:59:32 +01:00
RedEnchilada
6d3e318a0c Revert "Guess what major breaking-news bug I just fixed B)"
This reverts commit 9e306394dd.
Sorry MI, but this completely breaks large maps like AGZ.
2015-08-03 13:45:51 -05:00
Ronald Kinard
91934d5aec Merge branch 'next' into internal-master
Synchronize the following MRs to internal:

 * STJr/SRB2!6
 * STJr/SRB2!8
 * STJr/SRB2!9
 * STJr/SRB2!10

Conflicts:
	src/doomdef.h
	src/p_map.c
2015-04-14 19:33:38 -05:00
Furyhunter
f7c463418e Merge branch 'actual-blockmap-fix' into 'next'
Actual blockmap fix

MI's "fix" was a reversion of something that allowed 2.0 maps to use the entire blockmap. This MR reverts that fix and adds a proper fix to the issue of west/south edges of the blockmap not working as they should. Tested with a thokbarrier-less square map (all sides were solid) and with AGZ (objects are tangible all around the map, like they are in 2.1.14).

See merge request !10
2015-04-14 20:22:25 -04:00
Furyhunter
63089c885e Merge branch 'polyobject-more-fixes' into 'next'
Polyobject more fixes

Extra fixes related to polyobjects; actually properly putting their flats alongside them in the draw list, and making them able to use single-waypoint zoom tube sequences. Also threw in a smoothness fix for swinging chains while I was there.

See merge request !8
2015-04-14 20:13:16 -04:00
Furyhunter
3d59e337ac Merge branch 'polyobject-scroll-hotfix' into 'next'
Polyobject scroll hotfix

Things fixed:

* Polyobjects should now carry the same thing types as conveyors (notable example; they'll now carry Crawlas when they wouldn't before)
* The drifting issue with players on spinning polyobjects should be fixed. (I swapped in the old bad hack for a new hack that should work like it's supposed to)

See merge request !6
2015-04-14 20:10:07 -04:00
RedEnchilada
09345ce929 Revert "Guess what major breaking-news bug I just fixed B)"
This reverts commit 9e306394dd.
Sorry MI, but this completely breaks large maps like AGZ.
2015-04-08 20:50:49 -05:00
RedEnchilada
210279625a Extra tiny logic fixes; swinging chains are smoother, and polyobjects can follow single-waypoint sequences 2015-04-06 11:23:08 -05:00
RedEnchilada
5a4d9f885b Making RotateThings a bit nicer?? 2015-04-01 20:41:53 -05:00
RedEnchilada
6616b030bb Replace the old spinny polyobject player drifty hack thing with a new one that actually works 2015-04-01 18:15:46 -05:00
RedEnchilada
fb120299bb Make polyobjects carry the same objects as conveyors for consistency 2015-04-01 17:39:20 -05:00