Commit graph

2993 commits

Author SHA1 Message Date
Monster Iestyn
1049f3451a Merge branch 'sp-savegame-continue-crash-fix' into 'master'
SP savegame continues icon crash

See merge request STJr/SRB2!290
2018-10-08 09:20:45 -04:00
Monster Iestyn
1115f41f8e Merge branch 'zlib-split' into 'master'
Makefile: Split zlib and libpng

See merge request STJr/SRB2!285
2018-10-08 07:20:27 -04:00
TehRealSalt
640e0e09c6 Merge branch 'master' into sal-cleanup 2018-10-08 00:22:44 -04:00
Sal
36696b1fbb Merge branch 'noclip-cam' into 'master'
Noclip cam

See merge request KartKrew/Kart!32
2018-10-07 23:15:06 -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
Steel Titanium
027e6e8e3c Change win_snd.c also 2018-10-07 15:00:48 -04:00
Steel Titanium
232a7ae7b7 Change order of the ifdef 2018-10-07 14:52:25 -04:00
Steel Titanium
def090c9f0 Move the ifdef 2018-10-07 14:45:03 -04:00
Sryder
e4f2a3d7b6 Merge branch 'skill-option' into 'master'
-skill launcher option

See merge request KartKrew/Kart!34
2018-10-07 12:25:06 -04:00
Sryder
d3e489e986 Fix the mixed declaration and code warnings that only don't appear currently because of a tiny Makefile issue. 2018-10-07 15:35:54 +01:00
toaster
42307c0ea0 Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into karmegg
# Conflicts:
#	src/p_inter.c
2018-10-07 15:17:31 +01:00
toaster
b1e02467bf Weather is already run client-side. What if we ran it render-side, for major performance gains? This commit will answer all your questions - and more! 2018-10-07 15:00:58 +01:00
Sryder
eebde386cf Merge branch 'frameperfectegg' into 'master'
Frame Perfect Egg

See merge request KartKrew/Kart!31
2018-10-07 09:39:45 -04:00
Sryder
64ceed280a Merge branch 'colors' into 'master'
Edit Pink, Navy, and Jet, add brown text

See merge request KartKrew/Kart!28
2018-10-07 09:39:22 -04:00
Sryder
da4853f4d5 Merge branch 'droptweaks' into 'master'
Droptweaks

See merge request KartKrew/Kart!27
2018-10-07 09:37:02 -04:00
toaster
2f061a531a Karma Eggman. Does what it says on the egg. Tried very hard not to merge conflict with frameperfectegg.
Also includes some adjustments to:
* Horizontal offset of Eggman countdown in splitscreen again. It's not perfectly centered either way, but on second thought I like this better.
* Sound of Lat`'s Mine/SPB explosions - now uses same sound as Karma bombing, instead of that shitty paraloop.
* Correctly wipe k_eggmanblame when it is appropriate to do so.
2018-10-07 11:40:06 +01:00
Sryder
fb6c329870 Fix the crashing bug hopefully
A value of 1 in freesrc for Mix_LoadWAV_RW and Mix_LoadMus_RW calls SDL_RWclose on the RWops anyway.
For Mix_LoadWAV_RW the RWops is freed right after the data is loaded (because it makes a copy of the data in memory)
For Mix_LoadMUS_RW the RWops is freed when Mix_FreeMusic is called (because the data is not a copy)
So setting 1 on freesrc doesn't actually free the RWops immediately on Mix_LoadMus_RW *unless* it failed to load any music.
2018-10-07 10:37:45 +01:00
Sryder
02597e0bf9 Fix compiler warnings. 2018-10-07 09:26:18 +01:00
TehRealSalt
8ba3f88553 Don't need thissec 2018-10-06 23:37:27 -04:00
TehRealSalt
ff7b402dc5 OGL support 2018-10-06 19:25:59 -04:00
Sryder
d072dd2725 I think that should be NULL, not 0 actually. 2018-10-07 00:22:23 +01:00
Sryder
7b417b573c Mix_QuickLoad_RAW sets a flag in the Mix_Chunk so that Mix_FreeChunk doesn't actually Free the sound.
Checks for the flag when freeing, and if it's 0, we free the data manually after Mix_FreeChunk.
I went back to Z_Malloc and Z_Free for this because they still work after this.
2018-10-07 00:15:42 +01:00
Sryder
725a65c1f7 Call SDL_RWclose after an SDL_RWFromMem call to close the RWops. 2018-10-07 00:15:11 +01:00
toaster
031f142459 You got it, Sal 2018-10-06 21:53:39 +01:00
TehRealSalt
3d7a1d44d5 Do clipsolid for doorclosed only while your camera is outside of the sector 2018-10-06 16:22:36 -04:00
toaster
41ad3de999 Access to map hell maps in record attack. Currently dependent on 50 emblems.
Also: temporarily cleaned up the M_CanShowLevelInList record attack conditions to automatically match what we want, instead of requiring us to apply a bunch of vanilla flags just to emulate our "available unless explicitly hidden" MP mechanism like is currently in maps.kart.
2018-10-06 21:08:09 +01:00
TehRealSalt
ea6bdca949 Remove R_DoorClosed
This function has caused me, so much unexpected pain because of just how out of the way it is, and NOTHING else uses it
2018-10-06 15:13:57 -04:00
toaster
2effb6adc3 Halt frame-perfect egg crash.
(The code is slightly modified from what I put in bug-reports as a potential fix, but I'm glad I was on the right track.)
2018-10-05 23:24:26 +01:00
Monster Iestyn
1ec601af6b Draw a star for continues if invalid skin numbers are somehow supplied 2018-10-05 22:42:36 +01:00
Sal
5a80d036e7 Merge branch 'always-move-cam' into 'master'
Move camera less often

See merge request KartKrew/Kart!30
2018-10-05 11:47:55 -04:00
Sal
352c824ee1 Merge branch 'chat-changes' into 'master'
Chat changes

See merge request KartKrew/Kart!26
2018-10-05 11:47:45 -04:00
Sryder
d1daa99289 Merge branch 'vsync-default-off' into 'master'
Disable VSync by default

See merge request KartKrew/Kart!29
2018-10-05 10:44:48 -04:00
Latapostrophe
df824eb370 Say-team (key and command) now depend of G_GametypeHasTeams(), so you'll only have to modify this function to have say-team work in the gametypes of your choice. 2018-10-05 12:13:11 +02:00
TehRealSalt
3417f57e92 -skill launcher option
Requested by Sev(?), for map editing; sets kartspeed using the same name as Doom's difficulty launcher option
2018-10-04 23:58:44 -04:00
Steel Titanium
b812a6a4ab Really fix DD compiling this time. 2018-10-04 22:56:11 -04:00
Steel Titanium
fc5d969642 Fix DD compiling 2018-10-04 22:44:26 -04:00
Steel Titanium
49cb1ffe9f Restore deleted endif 2018-10-04 22:38:59 -04:00
TehRealSalt
d51e4c3140 Scale explosions properly 2018-10-04 22:09:12 -04:00
TehRealSalt
c5e30aa018 Don't allow non-keyboard keys to screenshot/gif in menus 2018-10-04 22:06:56 -04:00
TehRealSalt
376656343a Revert "Attempt to not let the camera into thok barriers"
This reverts commit 9f42e74fe2.
2018-10-04 20:08:29 -04:00
TehRealSalt
7de16e2528 Foolish 2018-10-04 20:06:55 -04:00
Steel Titanium
79f5f4885c Split zlib and libpng 2018-10-04 19:47:19 -04:00
TehRealSalt
639a170c78 Merge branch 'master' into sal-cleanup 2018-10-04 18:51:45 -04:00
TehRealSalt
6bae5e952b Brown text colormap instead of teal, revert sky-blue 2018-10-04 18:07:56 -04:00
TehRealSalt
71efda2b20 Always move the camera
According to wolfs, this improves fps. Let's confirm, shall we?
2018-10-04 17:50:50 -04:00
Sryder
8afdda8249 Disable VSync by default. I wouldn't be surprised if there are issues that arise from it, and I'm fairly sure its always been slightly spotty. 2018-10-04 21:08:47 +01:00
TehRealSalt
744c41bc8a Edit the text remaps
Lighter sky, lighter pink, steel is now called steel-blue
2018-10-04 14:30:54 -04:00
TehRealSalt
1cb2c22cbd Dream is green, Olive is yellow 2018-10-04 14:28:38 -04:00
TehRealSalt
fef3c63740 Moved colors around yet again for nicer invincibility effect
- Ruby is closer to the pinks (and where purples would be if it wrapped around)
- Sapphire is closer to the cyans
- Dream is right before the teals
2018-10-03 21:18:07 -04:00
TehRealSalt
ad64279d28 Edit Pink, Navy, and Jet 2018-10-03 20:48:44 -04:00
toaster
fdf398d003 Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into toast_misc 2018-10-03 21:04:34 +01:00
toaster
dcdbf911a5 Don't have all of your mines disappear into the aether if you have to shield-drop ONE, because they're not all out at once. (This is only really relevant to debug testing, given picking up additional HUD-dropped mines isn't very likely. 2018-10-03 20:56:43 +01:00
toaster
60a26fcaa4 * Modify PIT_GrenadeRing to place less-complicated checks near the start of the function.
* Add the customary LUA_CallAction call to A_GrenadeRing.
* Revamp A_MineExplode into using a blockmap iterator. Having tested it it might be less laggy in some situations, but I think the drawing is causing the bulk of the problems here.
2018-10-03 20:51:15 +01:00
toaster
4c1a068bd7 Update A_GrenadeRing to also take the mapheader scale into account. 2018-10-03 20:23:59 +01:00
Latapostrophe
4aea053c2f Allow client to open chat and scroll even if muted. 2018-10-03 20:09:32 +02:00
TehRealSalt
738ee90d8a Merge branch 'master' into noclip-cam 2018-10-03 13:45:20 -04:00
toaster
d7892266e4 Improve A_MineExplode.
* Re-order the conditions within it such that it quickly checks for shootability and absence of scenery BEFORE it performs the more costly range or parentage checks.
	* Make its explosion radius take mapscale into account. (This is the only off-topic change made in this branch. I have made it here because half of this commit, which doing the other half in a seperate branch would conflict with, is on-topic.)
2018-10-03 17:27:58 +01:00
toaster
a16b9cfc1f Incorrect comment starting location. 2018-10-03 17:16:23 +01:00
toaster
ecfe8e5070 Complete the disabling of the traditional shield mechanism (oversight from initial commit). 2018-10-03 17:14:25 +01: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
Sryder
76e0ff6dc7 Merge branch 'waypastpoint' into 'master'
Ghetto waypoint improvements

See merge request KartKrew/Kart!21
2018-10-02 18:20:17 -04:00
toaster
2f082d8265 Revert "Just realised the inputwheel jittering in Sryder's videos was my fault, so fix this even better"
This reverts commit 8aff76b8c3.
2018-10-02 16:52:02 +01:00
toaster
4b9d5f251e Fix incorrect alignment of selected-level Ruby in vote drawer. 2018-10-02 16:51:17 +01:00
Alam Ed Arias
348f4dc2cd Merge branch 'master' into next 2018-10-02 09:14:59 -04:00
TehRealSalt
58b52adf7e Address toast review
- Re-add highlighting to the header text, and shift it back up slightly
- Move the viewpoint loop break out of a while and into the main loop
2018-10-01 19:23:38 -04:00
toaster
445013b0f9 Wrong bracket level for flashing-set. 2018-10-01 22:44:17 +01:00
toaster
147b7a5786 Modified SPB to not route through P_DamageMobj (so wehave more control over the shield dropping/item obliteration, given Sryder picking up his own Thundershield...) 2018-10-01 21:48:52 +01:00
toaster
d42736fe3d Include srb2.org in the credits per Rob's wishes. 2018-10-01 21:23:00 +01:00
Sryder
033667a0ee Merge branch 'keysmash' into 'master'
(Mic)key('s Dick) Smasher

See merge request KartKrew/Kart!18
2018-10-01 14:58:31 -04:00
Latapostrophe
49acbe9bee Fix /me and sayteam, except sayteam now actually doesn't do anything anymore. 2018-10-01 20:23:56 +02:00
toaster
c9da6cd856 Minor HUD offset tweak for splitscreen eggnum. 2018-10-01 18:10:12 +01:00
toaster
d0e629a8e2 Correct some inconsistencies I missed in the previous commit. 2018-10-01 13:51:23 +01:00
TehRealSalt
e6fd41339a DrawFill supports splitscreen offset flags 2018-10-01 08:41:44 -04:00
toaster
379772e5aa Allow respawning spectators before starttime is up because they no longer spawn in a condition that allows them to get an unfair advantage (drop dash or its ghetto 2.0-esque predecessor)
Also, some camera tweaks:
* Force chasecam when exiting, just like it's forced when you're dead and not a spectator.
* Force a horizontal camera angle aiming when spectator and dead, to avoid skybox bugs.
2018-10-01 13:25:13 +01:00
toaster
14a5ffbfd8 Based on netgame comments last night, update the tab rankings info to show less information in race. 2018-10-01 12:52:54 +01:00
toaster
f1267f8ae1 Don't allow a new driftboost of lesser magnitude to completely cancel an existing driftboost. 2018-10-01 12:27:35 +01:00
TehRealSalt
96506359f1 Goodbye cvar 2018-10-01 07:21:02 -04:00
toaster
0ec952d019 Add a SECTIONRACE map flag. So far, all it does is prevent the number of laps from exceeding the map default, but it's a base to work off of if we want to add any other changes specifically for section races in future. 2018-10-01 12:12:48 +01:00
toaster
487a2ecf2e Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into toast_misc 2018-10-01 11:46:13 +01:00
TehRealSalt
73100b22d5 Please don't punish offline practice 2018-09-30 21:46:12 -04:00
Monster Iestyn
800b3bb240 Move player + player mobj existence checks to top of P_MoveChaseCamera. This is the only place it makes sense to even check them tbh.
While I'm at it, let's also use the "mo" variable instead of player->mo throughout the function (to be consistent)
2018-09-30 22:18:48 +01:00
Sryder
005e3ce514 Merge branch 'hack_the_de_damnit' into 'master'
Fix dehacked list incongruence

See merge request KartKrew/Kart!20
2018-09-29 16:52:41 -04:00
toaster
ab59504be0 Experimental: Making the ghetto waypoints we have right now their own mobj list in order to make them slightly less bullshit 2018-09-29 20:28:27 +01:00
toaster
1be13e8e2d Fix dehacked list incongruence. 2018-09-29 16:43:00 +01:00
toaster
2c1db167da Correct that thing Lat` found where sometimes the controls menus'd get "stuck" replacing the second key every time, effectively only allowing one key until you clear it and try again.
Also, sounds.
2018-09-29 16:18:16 +01:00
toaster
21ba9921da Some credits tweaks (alphabetical ordering plus new names, plus slight downwards adjustment of TYLER52) 2018-09-28 20:10:22 +01:00
toaster
8ccaa1fcee Flip dynamic slope toggle. 2018-09-28 12:58:07 +01:00
TehRealSalt
68bf1f60f3 "TICRATE*1"?! 2018-09-27 18:44:14 -04:00
TehRealSalt
7c5d47deb5 No mashing in Record Attack 2018-09-27 18:42:42 -04:00
TehRealSalt
7de6a63207 Talk key is a two-way toggle for non-keyboard binds 2018-09-27 18:32:48 -04:00
TehRealSalt
6d798f00e7 Yet another scale fix 2018-09-27 18:26:37 -04:00
TehRealSalt
5419ac82ee 1 more fix 2018-09-27 17:21:06 -04:00
TehRealSalt
30005ad39b Scale fixes 2018-09-27 17:17:04 -04:00
TehRealSalt
cf5c0a7a6a New bindable keys
You can now remap Change Viewpoint, Screenshot, and Toggle GIF Recording to other keys, mainly for gamepads

They also pushed me to my breaking point and I couldn't tolerate the control menu anymore, thanks to toaster for the scrolling backport
2018-09-27 16:55:21 -04:00
toaster
169411e3da Disable cv_joinnextround behind #define VANILLAJOINNEXTROUND. 2018-09-27 21:38:19 +01:00
toaster
fb102f8131 Fix dash-dust spawning not happening when drop-dashing, despite its function being called. 2018-09-27 18:39:54 +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
e4f6015b50 Revamp flat alignment to be consistent across all renderer functions except for the software slope renderer, which me and fickle tried our best at but couldn't get to work. (This is a backport of 2.2 code that slightly postdates the improved flat alignment Kart's had for a while.)
This fixes #11.
2018-09-27 18:11:43 +01:00
TehRealSalt
3d582bc98f Viewpoint key improvements
- Don't cycle through exiting players
- Don't cycle through karma players in Battle
- Disable console print on switch, it's already got a HUD element
2018-09-26 21:35:57 -04:00
TehRealSalt
1a37335675 ESC rebind works on both bound keys 2018-09-26 20:51:25 -04:00