Commit graph

374 commits

Author SHA1 Message Date
James R
abdb2e3ac3 Set Lightning Shield attack to DMG_VOLTAGE 2022-12-05 13:04:47 -08:00
toaster
8b1407c096 Proper MP emblem support
- Also adapted from (STJr/SRB2!1756)
- Unlike that MR, absolutely no sharing - this is a game of exclusively competitive gametypes.
2022-11-30 14:32:33 +00:00
James R
051b4f8935 Always use typedef name instead of struct name
mobj_t instead of struct mobj_s
2022-11-27 17:21:40 -08:00
James R
b5310a1f68 Add typedef.h
All typedefs for structs that were present in other header
files have been moved to here. (Except node_t because the
renderer and netcode both define node_t LOL.)
2022-11-27 17:21:40 -08:00
Sally Coolatta
0053cda35c Don't allow nextwaypoint to be past finish linedef 2022-11-26 02:51:46 -05:00
Sally Coolatta
8f5e0f63e9 Evict the wall gremlin
Gremlins happened whenever P_TryMove and P_SlideMove/P_BounceMove disagreed on what an object collided with. When TryMove said you collided with a line, but P_BounceMove said that you didn't, then you'd get gremlin'd.

To fix this, P_TryMove now can edit a struct to contain information on what it collides with. P_SlideMove and P_BounceMove no longer try to detect walls on their own and now requires this result from P_TryMove. If a slide/bounce is needed without moving the object, then you'd want to use P_CheckMove to get the result.

Lua is not supported right now.
2022-11-21 16:12:53 -05:00
Sally Coolatta
35f1fe580c P_RestoreTMStruct 2022-11-21 15:59:19 -05:00
Sally Coolatta
b31aa1bbb0 Put tm* variables into a struct
This makes it significantly easier to save/restore the state of these variables, whenever we need to do so for calling movement functions in the middle of other movement functions. This will also make it easier to move it out of global variable hell if desired later.
2022-11-20 19:27:34 -05:00
Nev3r
5c9599f0a9 "UDMF: The whole thing" merged
See merge request STJr/SRB2!1714

Barely any RR features reimplemented
2022-10-09 01:13:37 -04:00
James R
05dd7d7871 Merge remote-tracking branch 'origin/master' into HEAD 2022-10-01 14:45:39 -07:00
James R
ee2302d6ee Merge branch 'noclip-online' into 'master'
Cheat/Debug Commands ...ONLINE

See merge request KartKrew/Kart!717
2022-09-30 22:51:42 +00:00
James R
57a3c4109c Reset player cheat effects when disabling cheats cvar 2022-09-29 05:54:58 -07:00
Sally Coolatta
841bcf3619 Allow non-players to water skip/run
Water skipping is enabled for Orbinaut, Jawz, and Ballhog currently. Jawz can water run, as long as their target is on/above the plane they're at -- once their target goes into the water, they'll start skipping.
2022-09-27 12:31:33 -04:00
toaster
871de857ae Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into setangle
# Conflicts:
#	src/p_enemy.c
#	src/p_mobj.c
2022-09-24 20:23:35 +01:00
Sally Coolatta
acf2484def Merge branch 'master' into tumble-slope-fuck 2022-09-20 07:34:44 -04:00
James R
ba1b6bb253 Add P_CheckMove
Checks if P_TryMove would succeed without actually moving.

(cherry picked from commit 518de0ce104166c3eacd10ebe6ade422307ce671)
2022-09-05 11:56:30 -07:00
toaster
3a4b485c5d Remove P_InitAngle and its kin, considered on a case-by-case basis for also setting old_angle as well. 2022-08-25 11:35:09 +01:00
Sally Coolatta
ebb34ff9d4 Lap based power level 2022-08-14 06:00:37 -04:00
Sally Coolatta
6106ce1624 Add reversed weather
- Negative speed weather will spawn from a floor in a sector with a sky ceiling, and go up into the ceiling.
- (Not really the same as reverse gravity weather in that aspect, because that would be for sky floors.)
- Fixed invert precipitation flag for linedef type 8 being completely unimplemented. (How long has it been like this...?)
- Fix swapping weather on the fly having reversed momz
2022-06-05 05:39:35 -04:00
Sally Coolatta
d053d5f8ba Fix blockmap WILD inconsistency when it's not PIT_CheckThing
An optimized error check was put into P_BlockThingsIterator for tmthing, but this meant that anything that was not using or even setting this variable (the supermajority of them) would exit after finding 1 thing in each block.

To keep this error check & keep it optimized, the PIT_ functions were expanded to three options instead of two: BMIT_CONTINUE lets the search continue. If used as the last mobj, it will return true when the iterator finishes. BMIT_ABORT ends the search and forces the iterator to return false.
BMIT_STOP ends the search and forces the iterator to return true.
2022-05-23 17:37:29 -04:00
Sally Coolatta
f3bb8833a1 Tumble when not landing upright on slopes 2022-03-28 17:10:27 -04:00
toaster
7508e0e198 P_IsLocalPlayer changes
This is the function that controls whether a bunch of music-related function (and also whether certain error messages get printed).

* P_IsLocalPlayer now supports party players (currently untested, but the code is pretty airtight).
* P_IsLocalPlayer now always returns false in replays.
* P_IsMachineLocalPlayer now exists for the one situation the game determines local players that actually has a net-related function (kicking illegal character changes).
* Invincibility/grow sfx now operates based on whether the player is NOT local (it used to be whether it was NOT a displayplayer).
* Refactored P_SpectatorJoinGame to make future team support easier, and also reset the relevant camera focus, rather than always the consoleplayer's.
* Fix viewpoints on non-local players having overlapping viewpoint text.
2022-01-24 22:03:40 +00:00
SinnamonLat
191103fec1 Fix a dumb mistake, add DMG_WOMBO to orbinauts, jawz and banana hits 2022-01-22 11:41:49 +01:00
SinnamonLat
ba9ef23b31 Add MF_NOHITLAGFORME and DMG_WOMBO 2022-01-22 10:01:24 +01:00
Sally Coolatta
ef5a4f01d4 Merge branch 'master' into terrain-lump 2022-01-04 12:34:47 -05:00
Sally Coolatta
6c13ddca01 Rename PitchRoll stuff back
I did a find+replace because I realized the functions I added were named too similar to other ones & to make the purpose more obvious ... but it ended up changing them too anyway! Gah!
2021-12-24 13:00:12 -05:00
Sally Coolatta
cc250afd45 P_InitAngle, to fix angle interpolation on spawning objects 2021-12-24 12:45:51 -05:00
Sally Coolatta
da459a9c73 Add terrain splashes 2021-12-19 00:57:45 -05:00
Sally Coolatta
21e868216e Merge remote-tracking branch 'origin/getmobjzmovement' into terrain-lump 2021-12-18 21:25:20 -05:00
lachablock
e14af65d52 Merge remote-tracking branch 'origin/master' into getmobjzmovement 2021-12-19 13:22:59 +11:00
Sally Coolatta
0cd3efc76d Merge branch 'master' into terrain-lump 2021-12-18 18:36:05 -05:00
James R
1140410e2c Spawn SPHERE BOXES randomly in Battle
They look like random item boxes (the ones in Race) but
have a blue sphere inside of them. One box is worth 10
blue spheres. More boxes spawn during Overtime.

New sprite: SBOX
2021-12-14 01:05:42 -08:00
Sally Coolatta
19463d6b20 New bot prediction wall detection
Instead of searching for walls around the player, and then deciding to make the radius tighter if it found anyway, it instead checks if the waypoint it's trying to predict towards was blocked by any walls / hazards.

Needs adjusted some, I think its being pulled back too hard sometimes, but I am optimistic about some of the improvements I already saw.
2021-12-10 17:42:00 -05:00
Sally Coolatta
bf4b47a2cf Merge branch 'master' into terrain-lump 2021-12-09 03:46:01 -05:00
Sally Coolatta
150faf9de6 Add terrain pointer to mobj_t 2021-12-09 00:56:05 -05:00
James R
e07b296368 Merge branch 'waterrun' into 'master'
Water running

See merge request KartKrew/Kart!476
2021-12-08 00:36:16 +00:00
James R
9bde266f9f Water running
You can run on water in any case where you would have
slope resistance AND your speed is over 100%. You may run
on water regardless if you're speed is above 200%.
2021-12-05 22:41:25 -08:00
Sally Coolatta
83444ce5d5 Interpolate angle & nametags 2021-12-01 16:50:17 -05:00
toaster
e29f113047 Merge branch 'master' into capsules 2021-11-30 13:50:46 +00:00
Sally Coolatta
c43f8da5e6 P_SetOrigin & P_MoveOrigin to replace P_TeleportMove 2021-11-29 08:20:27 -05:00
James R
8e20ca4c04 TRIPWIRE
Set a sidedef's midtexture to "TRIPWIRE" to turn that line
into a tripwire.

Players can't drive through a tripwire and will bounce
back at high speed if they're in one of the following
states:

1. Invincibility / Grow
2. Sneakers
3. Flame Shield dash
4. >200% on the speedometer

Hitting a tripwire plays a sound, sends you into hitlag,
then plays another sound when the hitlag is over. The
sounds used depend on whether you can drive through the
tripwire.
2021-11-28 03:03:43 -08:00
lachablock
e2c0f6638f Fix item capsules in reverse gravity 2021-08-02 13:57:27 +10:00
lachablock
6471ab07bf Add P_GetMobjZMovement and apply it to various vfx 2021-07-19 20:45:54 +10:00
lachablock
459c5615af - Added respawn functionality to item capsules
- Restructured some item capsule code to reduce thinker density and allow the item capsule parts to think after the capsule
- Super Ring capsules are now semibright
2021-06-14 19:04:55 +10:00
toaster
b3d006b093 structs gunched 2021-04-17 00:27:13 +01:00
James R
f1a2a0a20d Tilt 90 degrees off half pipe 2021-04-06 16:25:25 -07:00
James R
22eb12c6a8 Drop nospin changes
Revert 35cecad868 & fdd02e35c8
2021-04-05 01:42:01 -07:00
James R
08348fcd43 Merge remote-tracking branch 'srb2/next' 2021-04-05 01:26:17 -07:00
James R
04b6911e21 Merge branch 'sloped-camera' into 22-merge-again 2021-04-01 20:55:22 -07:00
lachablock
35cecad868 Do not let nonspin characters enter sectors they could not enter if standing at full height 2021-03-23 15:09:04 +11:00