Commit graph

195 commits

Author SHA1 Message Date
toaster e958dfc909 MT_POKEY, MT_ENEMYFLIP and the fancharacters - and the associated states/thinker modifications - gone. 2018-11-05 23:06:28 +00:00
TehRealSalt 1bdaad3f06 quick merge fix 2018-11-02 02:28:34 -04:00
TehRealSalt 5c1cc6e1df Merge branch 'master' into all_hardcode 2018-11-02 01:42:34 -04:00
TehRealSalt 5c7de75592 Fix random crash on squishing
Why does this cause a crash? I dunno, beats me, but this seemed to fix it.
2018-11-01 19:50:31 -04:00
TehRealSalt 66a7adfc34 Push fakes away from other items
Prevents stupid item stacking in Battle (you can still do it with bananas, but THOSE are removable, and don't have a similar sprite)
2018-10-31 04:46:24 -04:00
TehRealSalt 20d86f01c7 Cancel pogo spring when bumping a wall
Prevents instances where you can use it to stick in one spot in Battle
2018-10-31 03:07:33 -04:00
TehRealSalt 9f18164ad4 The motherload: all of my Lua is hardcoded
This took like 6 straight hours of work, never ask me for anything ever again
2018-10-29 05:00:08 -04:00
TehRealSalt 25414edb57 Merge branch 'master' into fz-time-over 2018-10-24 21:20:51 -04:00
TehRealSalt 326955dd30 Turn cam on wall hit 2018-10-24 21:05:02 -04:00
Sal 3e556cde44 Merge branch 'last-netgame-tweaks' into 'master'
Last netgame tweaks

See merge request KartKrew/Kart!57
2018-10-24 19:33:47 -04:00
TehRealSalt 9cd47643df Falling rocks only collide with players and other rocks 2018-10-22 15:08:04 -04:00
TehRealSalt f8fc6862b5 SPB knockback is more punishing
Hopefully to prevent instances like the Megablock video, where SPB double-dips just because the 1st one wasn't enough but another is overkill
2018-10-18 20:49:30 -04:00
Sal b8d86bb096 Merge branch 'thinkerclean' into 'master'
Nuke a bunch of iteration things that have no purpose in SRB2Kart.

See merge request KartKrew/Kart!25
2018-10-07 23:14:53 -04:00
toaster cfd2b021a4 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
toaster 7f5b5ecb60 Spring *panels* now use sfx_kc2f again (but pogo spring *items* still do sfx_kpogos, in case you were worried). 2018-09-27 18:32:07 +01:00
toaster 80bc266f3f Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop
# Conflicts:
#	src/info.c
#	src/k_kart.c
2018-09-21 21:05:47 +01:00
TehRealSalt 5ec79afad6 Grow/Shrink fixed min speed 2018-09-15 01:29:38 -04:00
toaster 10be7e1a52 Merge branch 'sal-misc' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop 2018-09-07 00:31:02 +01:00
TehRealSalt 34d27b06e0 Revert "Wrote a new function for MT_SOLID object bumping"
This reverts commit b4aa01ed61.
2018-09-06 19:27:07 -04:00
toaster 6052573549 Merge branch 'sal-misc' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop 2018-09-06 22:18:54 +01:00
toaster 4de68f7fe2 Dropping items!
* Shield Drop...
	* Whatever you've got orbiting or trailing you, DROP THEM WHERE THEY STAND. (Except for the ghost sink. That one's OK.)
	* Pops your Thunder Shield.
	* Happens upon ANY hit, except for deathpits.
* HUD Drop...
	* Also does the above, except for the Thunder Shield thing.
	* If there's any item left in your item box, pop it out as a little hovering, rotating Minecraft item!
	* You can pick up the Minecraft item by driving over it if your item box is sufficiently empty, or the item which is contained within it is of the same type.
	* Happens upon Size Down and battle elimination.
	* Can also be forced on with `cv_kartdebughuddrop on`!
* Some other random stuff.
	* Fix a bunch of `a->scale = b`'s into `P_SetScale(a, b)` form, for maximum validity.
	* Make K_CleanHnextList and K_UpdateHnextList one function, since they only differed by one continue clause (and the type of their input parameter).
	* Allow shrunken players to pick up item boxes again.
	* Fix MF_NOCLIPTHING. (Gonna pass this fix to vanilla when I get the chance, too.)
	* Break NiGHTS a little through my machinations.
2018-09-06 22:17:29 +01:00
TehRealSalt b4aa01ed61 Wrote a new function for MT_SOLID object bumping
A lot more similar to the code used for player wall bumping, and is much less likely for you to just... pass through the object if you keep trying hard enough.

Also, falling rocks get pushed aside by invinicible players with no resistance.
2018-09-06 11:49:58 -04:00
TehRealSalt 70b9f49c94 Move wall sector type to from Section1:14 to Section1:12
The SMK maps will probably need an update
2018-09-02 20:57:40 -04:00
TehRealSalt ea8465cc61 Karma players can bump again 2018-08-30 21:32:24 -04:00
TehRealSalt 9d514f2f98 Remove use of a duplicated sound 2018-08-30 17:50:47 -04:00
TehRealSalt 14ccdb0dcf Last touches for smk maps
- different min/max on capped spring pads
- turn the normally almost-useless "non-ramp sector" type into "wall sector", which disables both stepup AND stepdown instead of just stepdown
2018-08-27 18:09:32 -04:00
TehRealSalt 6fdb743a59 Correct remaining instances where step up/down scales with the object instead of the map 2018-08-27 01:07:44 -04:00
TehRealSalt b9d55765e9 Spring jump changes for Grow & Shrink
All spring jump issues on the sheet are fixed now.
2018-08-23 12:53:29 -04:00
SeventhSentinel 6fa4c27bf6 fakes use MF_SPECIAL, no longer destroyable 2018-08-12 11:04:36 -04:00
SeventhSentinel 82343719e2 fixed n blame 2018-08-11 20:54:08 -04:00
SeventhSentinel cde54211c2 eggman
broken
2018-08-11 20:19:09 -04:00
TehRealSalt f9e5a11060 - Instashield on failed damge
- Ballhog explosion separated onto another sprite
- Disabled banana jitter
2018-07-26 20:12:42 -04:00
TehRealSalt b42d083b99 Finishing touches on Ballhog
- Ballhog has explosion + sound on death
- Ballhog shrinks to nothing if it didn't hit anything
- Replaced a Mario sound on Orbinaut
- Fixed Jawz's sound effect
- Fixed Mines not being removed on death pits
2018-07-24 22:47:09 -04:00
TehRealSalt f820733d9b Orbinaut 2018-07-22 20:55:18 -04:00
TehRealSalt 584082882c More tweaking
- Getting wipeout bumped into offroad slows you down
- Orbinaut & Jawz are relative to your weight (Jawz is heavier), via new function K_GetMobjWeight
- Reorangized where K_KartBouncing is called so that wipeout changes don't affect Eggman Items
2018-07-20 16:13:02 -04:00
TehRealSalt d25cb1aa56 Wipeout bumps
- You can bump other people during spinout.
- Bumping during spinout activates a "slow down" timer, which increases your friction after a few tics.
- You have a Smash-style dust effect after a spinout bump, indicating clearly if you'll slow down or not.
2018-07-19 22:37:32 -04:00
TehRealSalt 983a9dbd60 Use simpler logic for squishing other players
Instead of comparing k_growshrinktimer in awkward ways, just make sure the squishing player's scale is high enough above the victim's scale. This way, we can allow shrunk players to bump other shrunk players, and grown players to bump other grown players.
2018-07-19 01:11:21 -04:00
TehRealSalt f6e5571948 Chao's requests 2018-07-16 21:27:50 -04:00
TehRealSalt 6574e1f0fc Shrink debug command, trailing items spawn directly on players, rainbow win 1 is more faithful, make springs more powerful for shrunk players, correct Grow/Shrink fullbright frame 2018-07-12 01:31:33 -04:00
TehRealSalt 82734fcf94 Banana drag slowdown, diagonal springs scale to map scale instead of object's scale, OGL skincolors average all colors 2018-07-04 19:06:45 -04:00
SeventhSentinel 80c2b56927 Changed all instances of "balloon" to "bumper"
Also changed "It's you!" to "Select character & color..."
2018-07-03 15:14:47 -04:00
TehRealSalt 5c7b66cc0f WANTED 2018-07-01 04:36:09 -04:00
SeventhSentinel bd5c2d0720 Use patch.kart instead, almost finished Ballhog 2018-06-27 10:10:53 -04:00
SeventhSentinel 501bfae9ac Revert MT_FIREBALL to vanilla, remove MT_FIRETRAIL, MT_BALLHOG added, bigger Jawz explosions 2018-06-25 17:12:01 -04:00
SeventhSentinel 7fdc9c8035 Intro camera can noclip, fix several compile errors 2018-06-25 09:18:30 -04:00
SeventhSentinel 18b3d2d14c Spinout type is now passed through K_SpinPlayer
This means we don't have to reset spinouttype's value immediately after using it, which means no more wipeout timer garbage.
2018-06-25 06:58:23 -04:00
TehRealSalt a8aec0b9e1 Hundreds of tweaks
- SPB multiplier depending on 1st-2nd distance
- Removed the Battle-only k_poweritemtimer (hold over from when you could easily get invuln items all of the time), replaced it with a 2 invincibility item cap in ALL modes.
- Spinout is affected by boosters, *properly*
- Can no longer strafe while spinning out on speed bumps
- Messed with how other items interact with speed bumps, again.
- Old bounce code has been ported for non-players
- Fixed Karma players being able to do anything after the round has ended.
- Fixed sneaker and spinout timer weirdness
- Fixed Mines still being hold-use
- Fixed rubber-burn turn not working
- Removed redundant k_spinout and unused k_boosting variables
- Filled out the Color_Opposite table with Kart's new colors. Not really relevant right now (besides some extra Lua functionality) since nothing uses it, but will be nice for if we do the signpost from the sky idea.
2018-06-19 20:20:06 -04:00
TehRealSalt 612b2a151f Misc tweaks just about everywhere
- More Jawz states for later
- Jawz orbit their user in the right direction now.
- Banana trails made closer to each other
- wheels.lua hardcoded
- All held items take a double press, for consistency.
- Fixed Karma Items not being able to be collected by invincibility or hyudoro users
2018-06-18 00:42:53 -04:00
TehRealSalt 98c6d0f6d9 Redid how karma bombs/items work. Again
The overlay object now has a hitbox which handles all of the item giving/bombing code, and no longer takes up the player's tracer. This is to give them a bigger hitbox without any bad side-effects of changing the player's hitbox directly (shadow size). Should make bombing more useful, and just sliiiightly less missed high-fives from items.
2018-06-16 00:00:46 -04:00
TehRealSalt b71471d1ba More poof 2018-06-15 03:45:59 -04:00