Commit graph

240 commits

Author SHA1 Message Date
Louis-Antoine
6af2871fa5 Rename P_GetZAt to P_GetSlopeZAt and P_GetZAt2 to P_GetZAt 2020-05-18 15:23:56 +02:00
Sally Coolatta
0dd19f4f50 Merge branch 'master' into new-menus 2020-05-16 04:37:44 -04:00
Sally Coolatta
b4f8d708a4 Merge branch 'master' into new-menus 2020-05-09 17:04:10 -04:00
Sally Coolatta
9ea37836e2 New kart animations!
- Add unique frames for inward and outward drifting.
- Increase the speed threshold required to reach your "fast driving" frames.
- Use slow driving frames when you're slowing down, even if you're techincally above the fast speed threshold.
- Use frameangle to smooth out the transition into drifting, instead of having "pre-turned" drift frames.
2020-05-08 17:26:27 -04:00
toaster
0f591967ff Disable continues outside of no-save/Ultimate by default, but allow SOC to re-enable them globally.
Please look at the merge request description for a full explanation, since I know the vanilla team has been hashing this out and I don't want to add fuel to the fire without at least presenting a solid case.
2020-03-26 20:16:44 +00:00
Louis-Antoine
29294a53cc Encapsulate plane height checks 2020-03-22 17:28:50 +01:00
Louis-Antoine
4e7605f0e2 Make SRB2 flat like Earth 2020-03-20 18:55:29 +01:00
Louis-Antoine
46df2b9551 Use HAVE_BLUA as fuel for my fireplace 2020-03-19 18:36:14 +01:00
James R
2274129f57 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
Louis-Antoine
f07b432df4 Rename R_IsPointInSubsector to R_PointInSubsectorOrNull/Nil
The old name made it really easy to accidentally read
R_IsPointInSubsector as R_PointInSubsector, and anyway it
didn't even make sense...
2020-01-22 16:58:57 +01:00
fickleheart
77ba835f4f Merge branch 'next' into next-newcontrols
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
2019-12-31 12:58:36 -06:00
fickleheart
61a8f715ac Convert analog/directionchar cvars into 2-long arrays 2019-12-30 14:01:14 -06:00
MascaraSnake
82d21224cf Merge branch 'next' into kill-zshift
# Conflicts:
#	src/p_mobj.c
2019-12-27 08:11:04 +01:00
MascaraSnake
92ca7e9f24 Use mt->z instead of mt->options >> ZSHIFT in Command_Teleport_f 2019-12-26 20:48:52 +01:00
Jaime Passos
42c71d3f42 Merge remote-tracking branch 'origin/next' into gametype-clownery 2019-12-25 06:09:00 -03:00
MascaraSnake
b5d6c40d68 Get rid of a few mt->options >> ZSHIFT usages in objectplace 2019-12-25 09:40:08 +01:00
MascaraSnake
cb4fbaa596 Separate P_SpawnHoopsAndRings into different functions:
-Hoops are spawned in P_SpawnHoop
-Item patterns are spawned in P_SpawnItemPattern
-Ring-like items are spawned normally via P_SpawnMapThing
-Bonus time items are spawned via P_SpawnBonusTimeItem, which is a wrapper for P_SpawnMapThing
2019-12-24 10:50:49 +01:00
Jaime Passos
ad317cd8a2 Merge remote-tracking branch 'origin/next' into gametype-clownery 2019-12-19 02:15:45 -03:00
Jaime Passos
789e881abc GTR_TEAMFLAGS 2019-12-18 11:43:50 -03:00
MascaraSnake
e1df80adac Set mapthing z in OP_CreateNewMapThing 2019-12-15 21:43:50 +01:00
Steel Titanium
a5cdb0a4b3 Update copyright date on source files 2019-12-06 13:49:42 -05:00
toaster
b501e5b358 Secret stuff. (I intend to keep candid discussion of this outside of any commits; you'll see me write up a comment describing what's going on here soon.) 2019-11-01 15:48:50 +00:00
TehRealSalt
b69d105af3 Add respawn animation
This commit also fixes MF_NOCLIP not working properly on players. Sink now spawns an SPB explosion on successful hit, since dying is no longer a harsh punishment.
2019-10-24 16:35:39 -04:00
TehRealSalt
64a3d133b4 Cleanup & bug-fixin 2019-10-15 20:56:28 -04:00
TehRealSalt
ca83b06d93 Fuckhuge restructuring
- m_menu.c and m_menu.h are dead. Everything has now been moved to k_menudef.c, k_menufunc.c, k_menudraw.c, and k_menu.h.
- Expanded menu_t and menuitem_t to add transitions and tooltips
- Early character select screen
- Removed almost all menu definitions, I'll be reimporting them as they are needed
2019-10-02 11:31:11 -04:00
TehRealSalt
bb809d2d2a Merge branch 'master' into new-menus 2019-09-29 06:57:11 -04:00
TehRealSalt
47da526313 Use texture names instead of predesignated sky numbers 2019-09-18 19:29:28 -04:00
toaster
17a2038489 Change flipped starpostz to define the top of the player object, for cases where scale on contact with starpost is different to spawn scale. 2019-09-08 21:21:36 +01:00
toaster
09f7dc1350 * Store gravflip (resolves #206) and destscale in starposts. (Using the same field, taking advantage of the fact that object scale will always be positive!)
* Update the function signature of P_MixUp to accomodate both it and drawangle instead of doing it outside of the function.
* If the player is spawning from the start of the stage and it's from the ceiling, be in fall frames as requested (resolves #191).
2019-09-07 22:12:47 +01:00
Steel Titanium
16b17840d9 2D toggle command 2019-09-06 20:51:39 -04:00
TehRealSalt
f188c290e5 Start on new menus 2019-08-09 04:25:22 -04:00
Jonas Sauer
b7c783223a 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
09ff071656 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
345984a396 Fix mobj list iteration oversights.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 12:58:22 +02:00
Nev3r
baeda5060c 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
fickleheart
f60e92aa70 Move public demo vars to a single struct 2019-03-24 21:32:15 -05:00
toaster
e3836bf772 Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart-Public.git into majormods 2019-01-21 21:56:49 +00:00
toaster
4a87838f06 * Refactor all instances of majormods = true; to route through G_SetGameModified, and catch a few spots I missed in the process.
* Make G_SetGameModified only console-print for major mods.
* Add amnesty to "major mod" detection while loading files with custom savedatas.
* Improved the console prints for command `isgamemodified`.
2019-01-17 22:01:28 +00:00
toaster
0037f5c91d First steps at implementing a mechanism that allows you to load non-cheaty good-faith mods such as custom characters with no Lua scripting, and play record attack with them. Features a few bad hacks and a few more areas of improvement; I'll try to iron them out before they hit next or master. 2019-01-15 19:01:55 +00:00
mazmazz
81352aece1 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
toaster
d5bddafd0f Move some sidemove/forwardmove checks to playsim code rather than have them happen in ticcmd generation.
pGetPlayerControlDirection has to die since it was the only other usage of sidemove, and wasn't even relevant anymore anyways.
2018-12-18 18:05:11 +00:00
TehRealSalt
4507ee18fd Merge remote-tracking branch 'srb2public/next' into merge-next 2018-11-29 08:49:50 -05:00
mazmazz
c91b2b4456 Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
TehRealSalt
2485e25268 Game saves when you use the cheat
Because of other G_SaveGameData instances added in the last patch, this cheat can get saved anyway. Since this is just supposed to be convenience for server hosts, we might as well make it work like other console Kart racers and just make it save anyway!
2018-11-25 02:24:33 -05:00
Marco Z
633c28b28a VC build fixes 2018-11-20 21:54:20 -05:00
toaster
5e8799a965 Nuke a bunch of iteration things that have no purpose in SRB2Kart. A full explanation of my reasoning and what it affects is as follows.
p_inter.c -
	Everything to do with setting states for starposts
		In SRB2Kart, starposts are invisble. We don't need to loop through all thinkers just to set their states when there's no visible effect of the state-setting. In addition, it has no consequences for gameplay - starposts have long been silent here, and all checking is done regarding their health, not their state.
	Remove extremely low-traffic conditionals (MT_FLINGEMERALD collision height extension, for example)
		These objects serve no functional purpose during regular SRB2Kart gameplay. Why should every other object have to pay an admittedly minor performance hit just for them?
	Disable all mechanisms of damaging bosses or enemies with the player's physical contact
		With the exception of Sapphire Coast, no MF_ENEMY objects exist in the entirety of the standard roster. In addition, the conditions for damaging the enemies were impossible to achieve, because they required vanilla SRB2 mechanics such as "jumping", "spindashing", or "super". Therefore, they can be safely commented out.
	Disable NiGHTS-related material (excepting bumper, hoop, and wing-emblem objects)
		NiGHTS is fundamentally incompatible with regular kart gameplay and I believe was already broken. Therefore, any mechanism which enters, aids, or abets it can be safely disabled.
	Comment out Tag mechanisms
		Tag is the only vanilla multiplayer gametype which has sufficient gameplay depth and complexity (HEYOOOOOOOOO) to require dedicated thinking in and of itself in order to manage. This thinking is irrelevant to Kart's functioning, and can be neutered easily.
d_clisrv.c
	Comment out Tag mechanisms
		See p_inter.c
d_netcmd.c
	Disable several devmode commands which are irrelevant to SRB2Kart gameplay
		When investigating for references to NiGHTS material, I discovered that these remained untouched. In order to present a more coherent game, I have hidden the ones that serve no purpose for us.
	Comment out Tag mechanisms
		See p_inter.c
g_game.c
	Disable NiGHTS-related material
		See p_inter.c
	Disable some team-related material
		Teams are not present in SRB2Kart at present. Obviously we'd want to reconsider for future, but it doesn't need to be run right now.
	Everything to do with setting states for starposts
		See p_inter.c
m_cheat.c
	Disable several devmode commands which are irrelevant to SRB2Kart gameplay
		See d_netcmd.c
p_map.c
	Remove extremely low-traffic conditionals (MT_EGGSHIELD collision, for example)
		See p_inter.c
	Disable NiGHTS-related material
		See p_inter.c
p_mobj.c
	Disable P_EmeraldManager
		Power stones, despite their relevance in vanilla Match, are not in SRB2Kart's Battle. No management of nonexistent emeralds is required.
p_setup.c
	Everything to do with setting states for starposts
		See p_inter.c
p_spec.c
	Disable NiGHTS-related material
		See p_inter.c
	Everything to do with setting states for starposts
		See p_inter.c
p_telept.c
	Everything to do with setting states for starposts
		See p_inter.c
p_tick.c
	Disable some team-related material
		See g_game.c
	Disable P_EmeraldManager
		See p_mobj.c
	Do not run shields
		Shield objects are not run under the vanilla system; the Thunder Shield is a domain-specific recreation using a standard mobjthinker.
	Do not run special stages
		SRB2Kart does not have special stages.
	Comment out Tag mechanisms
		See p_inter.c
y_inter.c
	Disable some team-related material
		See g_game.c
p_user.c
	Disable NiGHTS-related material
		See p_inter.c
	Disable 2d movement for players
		2D mode? In a kart racer? :nick:
2018-10-03 17:04:41 +01:00
Monster Iestyn
a9882bfda4 Merge branch 'master' into hud-cleaning 2018-08-29 20:46:35 +01:00
Monster Iestyn
d130c48787 Fix typo introduced by changes to the setrings command 2018-08-29 20:46:08 +01:00
Monster Iestyn
3c65251bb6 Merge branch 'master' into hud-cleaning
# Conflicts:
#	src/y_inter.c
2018-08-29 16:39:02 +01:00
Digiku
66b4d0f929 Merge branch 'op-nights-bumper' into 'master'
Objectplace: Place NiGHTS Bumpers with the player's fly angle

See merge request STJr/SRB2Internal!166
2018-08-29 06:01:27 -04:00