Commit graph

5384 commits

Author SHA1 Message Date
Monster Iestyn
8aeee22529 Merge branch 'bossfixes' into 'master'
Boss fixes

See merge request STJr/SRB2Internal!235
2019-06-25 16:36:23 -04:00
Monster Iestyn
88f7ff06d8 Merge branch 'HUDfixes' into 'master'
HUD fixes

See merge request STJr/SRB2Internal!234
2019-06-24 17:47:44 -04:00
Steel Titanium
8026fe0d4b Some few changes.
The amount of rings you start with also applies when you respawn from a starpost.

Startrings counts the ring total requirement for a perfect bonus.
2019-06-24 16:21:03 -04:00
Nev3r
14a1af9396 Merge branch 'rainfixes' into 'master'
Rain fixes and associated

See merge request STJr/SRB2Internal!233
2019-06-24 15:07:35 -04:00
Steel Titanium
a801efa946 Forgot to do this. 2019-06-23 18:51:42 -04:00
Steel Titanium
2e200a784c Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into levelheader-startrings 2019-06-23 18:24:15 -04:00
Steel Titanium
7a23b19be8 Add startrings level header option 2019-06-23 18:15:40 -04:00
Monster Iestyn
f8087565b7 Merge branch 'drawanglefixes' into 'master'
Drawangle fixes

Closes #153

See merge request STJr/SRB2Internal!236
2019-06-23 17:33:40 -04:00
Monster Iestyn
826e8e1aaf Fixed goofups I missed back 3 months ago 2019-06-23 17:51:58 +01:00
Monster Iestyn
d9ca8b45d3 Saving work so far, UNTESTED
# Conflicts:
#	src/r_data.c
2019-06-23 17:51:36 +01:00
Sryder
8a778a4070 Simply truncate the per-map COLORMAP lump instead of not reading it at all.
Keep the warning though.
2019-06-23 15:02:32 +01:00
Sryder
5f339fc2a9 Don't overlap strncpy in WAD file load 2019-06-23 14:52:49 +01:00
Sryder
bb9b1b3b1f Change COLORMAP lump size check to be exact
A lower size could technically be valid, but could easily run into strange issues.
2019-06-23 13:49:39 +01:00
Sryder
bc254d9cf7 Kill Texture SOC feature.
As far as I know it's basically unused, and the strstr is inherently unsafe because there's no guarantee that a patch's contents are NULL terminated.
2019-06-23 13:48:29 +01:00
Sryder
45922f80d1 Don't read from a per-map COLORMAP if it is too big.
Could this be changed to only read the first so many bytes?
2019-06-23 12:47:20 +01:00
Monster Iestyn
ce6db1cc9c Merge branch 'public_next' 2019-06-22 22:44:42 +01:00
Monster Iestyn
c9456e141d Merge branch 'master' into next 2019-06-22 22:42:13 +01:00
Monster Iestyn
755e4a8b2c Merge branch 'make-credits-great-again' into 'next'
Prevent just anyone from skipping credits but allow admins

See merge request STJr/SRB2!478
2019-06-22 16:13:04 -04:00
toaster
5c54c4f922 Remove some more 2.1-related ringslinger offsets to the chat. 2019-06-22 20:17:09 +01:00
toaster
b02c21b818 Remove some more 2.1-related ringslinger offsets to the chat. 2019-06-22 20:15:57 +01:00
toaster
29c4fa306a Realised I forgot to do this. Without this commit, the drawangle update stuff is useless :V 2019-06-22 17:33:37 +01:00
toaster
3e14ab4e03 Realised I forgot to do this. Without this commit, the drawangle update stuff is useless :V 2019-06-22 17:23:04 +01:00
toaster
28a61f2f3c Correct some oversights where drawangle was incorrectly ignored. 2019-06-22 17:07:18 +01:00
toaster
3021116797 Some preliminary work to make multiple bosses in the same map work nicely together, by allowing parameter to alter the linedef executor tag to call in increments of 100.
Also: Making sure every single reserved tag is recorded as an LE_ constant.
2019-06-22 17:03:39 +01:00
toaster
c8d145e474 Tweak Boss5MakeItRain's bomb launch angles to properly smash the ceiling in the new arena. 2019-06-22 17:03:28 +01:00
toaster
81882b63b8 As I wanted MI to do but he was too exhausted at the time from hardcoding, make the Fang bullet knockback less hardcoded and instead give it MF2_SUPERFIRE.
# Conflicts:
#	src/p_mobj.c
2019-06-22 17:03:10 +01:00
toaster
64827348c7 HUD stuff.
* Re-fix chat HUD position, and make it not move in match (which it needed to do in 2.1).
* Fix HU_drawPing for the new palette.
* Change the condition for greying out players, since the current one was buggy.
* Allow for tokens on the coop MP HUD, and use the small emeralds so there's space for them.
* Fix the mapping between skincolours and name colours in new chat, specifically to take into account every possible text colour (as opposed to the port previously done, which only used the 2.1 text colours and looked like ass as a result).
2019-06-22 16:54:05 +01:00
toaster
e6ce55f7b5 Do some minor HUD fixes.
* Move HUD text's anchoring to underneath STR instead of above Lives.
* Adjust chat position slightly, to take advantage of SRB2's HUD layout having less content towards the bottom (unlike Kart, where it has roughly equal).
* Fix Match emeralds not displaying while in tab rankings with all-seven invuln/shoes bonus active.
2019-06-22 16:53:38 +01:00
toaster
6cf376a9b5 Support backspace for resetting various menu values, just like Kart. 2019-06-22 16:50:46 +01:00
toaster
6371de806b Improve rain/weather.
* Like Kart, remove cv_precipdensity.
* Like Kart, replace "Infinite" draw distance value with "None".
* Better thinker with more return optimisation.
* Better placement of thinking in rendering, to avoid ceiling-mounted sprite glitches.
2019-06-22 16:50:30 +01:00
toaster
02e315a4ee Add HUD icon for Pink shield. (Don't worry, this is my last expected commit in this branch. Gonna cherry pick everything unrelated to the Pink shield into a bunch of other branches now.) 2019-06-22 16:44:32 +01:00
Sryder13
8444379d53 Free the zentries 2019-06-22 00:52:28 +01:00
Sryder13
83da71f809 Merge branch 'master' into pk3_leak 2019-06-22 00:28:14 +01:00
Sryder13
dcd4995eb3 Remember to end inflating 2019-06-22 00:19:34 +01:00
MascaraSnake
e20949ef77 Merge branch 'new-acz-minecarts' into 'master'
ACZ hardcoding (including minecarts)

See merge request STJr/SRB2Internal!231
2019-06-21 17:45:03 -04:00
MascaraSnake
287c25b8f9 Forgot to copy something over from the CR_ROPEHANG case 2019-06-21 23:42:48 +02:00
MascaraSnake
4385e07c0b Always use the white sidemark sprite, since track switching is no longer "activated" 2019-06-21 23:40:28 +02:00
MascaraSnake
ed7a109ce9 Also back by popular demand: Restricting the camera angle during a minecart ride 2019-06-21 23:34:49 +02:00
Monster Iestyn
149a8bb760 Merge branch 'public_next' 2019-06-21 22:13:39 +01:00
Monster Iestyn
f84c898040 Merge branch 'master' into next 2019-06-21 22:10:32 +01:00
Steel Titanium
fe7b041346 Merge branch 'public-notpublic-libopenmpt' into 'master'
libopenmpt support

See merge request STJr/SRB2Internal!229
2019-06-21 17:03:53 -04:00
MascaraSnake
28abc883be By popular demand: Track switching only requires strafe instead of jump+strafe 2019-06-21 20:13:30 +02:00
toaster
50e4a65f99 Correct some more oversights of switching to revitem for CA2_MELEE's particles. 2019-06-21 12:51:55 +01:00
toaster
d5e91ed8d7 Don't give SH_PINK in Race/Competition. They're your opponents! 2019-06-21 12:35:37 +01:00
toaster
3597b1c485 Make minor adjustments to the CA2_MELEE and CA_TWINSPIN stuff. 2019-06-21 00:43:03 +01:00
toaster
f7fe418f7c Slight buff to MT_LHRT. 2019-06-20 23:43:05 +01:00
toaster
f182bb867f HUD stuff.
* Re-fix chat HUD position, and make it not move in match (which it needed to do in 2.1).
* Fix HU_drawPing for the new palette.
* Change the condition for greying out players, since the current one was buggy.
* Allow for tokens on the coop MP HUD, and use the small emeralds so there's space for them.
* Fix the mapping between skincolours and name colours in new chat, specifically to take into account every possible text colour (as opposed to the port previously done, which only used the 2.1 text colours and looked like ass as a result).
2019-06-20 22:57:47 +01:00
Monster Iestyn
f7a32835d5 Fix warnings/errors found during compiling, mostly of the mixed-declaration-and-code or shadowed variables variety 2019-06-20 20:05:07 +01:00
Monster Iestyn
bc2804d383 Fix the clearly accidental duplication of lumpinfo's memory allocation in ResGetLumpsStandalone 2019-06-20 13:24:54 +01:00
toaster
eac36e73a3 Correct some oversights where drawangle was incorrectly ignored. 2019-06-20 00:43:55 +01:00
toaster
460632ad3b Some preliminary work to make multiple bosses in the same map work nicely together, by allowing parameter to alter the linedef executor tag to call in increments of 100.
Also: Making sure every single reserved tag is recorded as an LE_ constant.
2019-06-20 00:24:13 +01:00
toaster
f9e09ec31f Tweak Boss5MakeItRain's bomb launch angles to properly smash the ceiling in the new arena. 2019-06-19 23:35:18 +01:00
toaster
84ff2a57a1 As I wanted MI to do but he was too exhausted at the time from hardcoding, make the Fang bullet knockback less hardcoded and instead give it MF2_SUPERFIRE. 2019-06-19 23:29:39 +01:00
toaster
2e6898f29e PITY IN PINK!
* Smoothen Pity Shield animation to go with sphere's updates to Nev3r's sprites.
* Added LHRT object, designed to be summoned with CA2_MELEE.
    * Gives a pink Pity Shield (SH_PINK) on same-team player contact.
    * Deals damage to non-player enemies.
    * Harmlessly fades into nothing when touching an enemy player, players with SH_PINK already, and players capable of applying SH_PINK to others (through non-Lua methods).
* Basically, you-know-who is the Healer of the party whenever they're around. Fun consequences for the Co-op and CTF metas.
2019-06-19 23:20:24 +01:00
toaster
6a58ae34d1 In order to make P_PlayerCanDamage more flexible, I ended up bundling the invincibility/super checks into there.
Also, the start of my improvements to CA2_MELEE. Users of that abiliy can only damage enemies/monitors if they touch the front of the player object, but to make up for it, the player is no longer forced away from the direction of the screen at bigger movement speeds.
2019-06-19 13:20:34 +01:00
toaster
3eb9b85fd4 "PlayerCanDamage" hook!
* Takes function(player, mo) input.
* Return TRUE for stating that yes, the player is in a state that can cause contact damage, do with that what you will.
* Return FALSE for stating that no, the player is weak and vulnerable and cannot cause contact damage, do with that what you will.
* Return NIL for allowing the function to continue regular operation.

Fills a different ideological niche than ShouldDamage - that's for determining whether damage dished between two objects should happen, this is for determining which way around damage should be dished when considering a player-object interaction.

Or, in other words, think of it as "ShouldDamage is whether damage that has been requested should be granted, for object-object interaction, while PlayerCanDamage is for whether global player properties should cause damage to enemies and monitors in the first place, like spinning, hammering or stomping."
2019-06-19 12:55:05 +01:00
toaster
28dfeb344b Instead of only performing a hook if the Lua Hook loop determines its type to be the one we want, actively continue through the loop if it's NOT. This optimisation was performed while preparing the following commit; I have generously split them out for less shitty commit-by-commit review. 2019-06-19 12:28:57 +01:00
toaster
ef6e00e8a2 P_PlayerCanDamage(player_t*, mobj_t*), ported from the abandoned project_birthday because GOD the code looks awful with those huge monolith conditions in it. Available to Lua.
(Also, minor fixes to lib_pSpawnLockOn, and removing the SH_OP fuckery.)
2019-06-19 12:09:02 +01:00
MascaraSnake
d388547021 Some more minecart fixes 2019-06-19 00:10:28 +02:00
toaster
b0326b6dec Do some minor HUD fixes.
* Move HUD text's anchoring to underneath STR instead of above Lives.
* Adjust chat position slightly, to take advantage of SRB2's HUD layout having less content towards the bottom (unlike Kart, where it has roughly equal).
* Fix Match emeralds not displaying while in tab rankings with all-seven invuln/shoes bonus active.
2019-06-18 18:51:24 +01:00
MascaraSnake
c11a3010d9 Fixed the Canarivore gas slowdown being much too weak 2019-06-18 19:29:53 +02:00
MascaraSnake
3634321f43 ... 2019-06-18 19:06:05 +02:00
toaster
1d65caa250 With permission from Kart Krew (Sal and Sryder specifically - they don't know WHY vanilla's using it):
* Port across the additional colour translation maps, including mobj-level support for "colorized" objects.
* Make Fangboss and both Metal Sonic objects greyscale if, on spawn, there is a player in the game who is not a spectator whose skin is that character.
* Allow bosses with MF_GRENADEBOUNCE to opt out of the MF2_FRET colour-flashing tomfoolery, and give this flag to Fang.
2019-06-18 17:55:57 +01:00
toaster
96d6cea569 Support backspace for resetting various menu values, just like Kart. 2019-06-18 14:36:06 +01:00
toaster
861d0d0b0a Improve rain/weather.
* Like Kart, remove cv_precipdensity.
* Like Kart, replace "Infinite" draw distance value with "None".
* Better thinker with more return optimisation.
* Better placement of thinking in rendering, to avoid ceiling-mounted sprite glitches.
2019-06-18 14:22:10 +01:00
Monster Iestyn
62ed90b252 fix type mismatch by typecasting 2019-06-17 20:54:06 +01:00
MascaraSnake
95a0b3fc86 Merge branch 'master' into new-acz-minecarts 2019-06-17 20:43:21 +02:00
Monster Iestyn
1638fad75e Part 2 of fix, make sure copied slopes also pass on hasslope status to attached target sectors for FOFs
Also fix whitespace to use tab-style spaces instead of regular spaces, ew
2019-06-17 19:00:04 +01:00
Monster Iestyn
50e8f13c03 Fix FOF slopes briefly glitching on level load in software mode, by ensuring the FOFs' target sectors have hasslope set on creation 2019-06-17 18:46:51 +01:00
MascaraSnake
647520e067 Adjusted the height difference for track switching 2019-06-17 08:41:51 +02:00
MascaraSnake
096bad14fb Minecart stopper itself also needs MF_NOCLIPHEIGHT and MF_NOGRAVITY 2019-06-16 22:26:52 +02:00
MascaraSnake
e23ef050d5 Repaired the height difference check during track switching 2019-06-16 22:00:50 +02:00
MascaraSnake
cf7e618b2f Fixed a bug with the Canarivore gas 2019-06-16 21:36:22 +02:00
MascaraSnake
68060b731f Fixed a sound bug 2019-06-16 19:08:20 +02:00
MascaraSnake
db7bd4d35a Fixed the cacti heights 2019-06-16 18:14:15 +02:00
MascaraSnake
fbd7a5ae59 Finetuned the saloon door swinging 2019-06-16 17:57:03 +02:00
MascaraSnake
7e0c9d9398 (Hopefully) fixed the player sometimes landing on the solid part of the minecart stopper after being launched out of the minecart 2019-06-16 17:07:13 +02:00
MascaraSnake
c5a2d33d4e Added minecart support to A_MixUp 2019-06-16 16:49:18 +02:00
MascaraSnake
622a44f551 Fixed a bug involving players being thrown out of minecarts 2019-06-16 16:39:06 +02:00
MascaraSnake
b6790c7f35 Snapper head/legs and minecart segments flash when they're destroyed 2019-06-16 15:35:32 +02:00
MascaraSnake
774ccad401 Do death animation even when MF2_DONTDRAW is set 2019-06-15 22:29:30 +02:00
MascaraSnake
71a25eef92 Don't jump repeatedly when holding jump 2019-06-15 21:58:58 +02:00
MascaraSnake
39deb64e4f Streamlined the minecart death handling 2019-06-15 21:43:36 +02:00
MascaraSnake
8e61cc6d13 Kill minecarts that fall into death pits 2019-06-15 20:59:56 +02:00
MascaraSnake
24c6dd1a68 Many more bugfixes 2019-06-15 20:21:18 +02:00
MascaraSnake
91c1e13273 Simplified the setup for the Snapper/minecart death animations 2019-06-15 17:33:07 +02:00
MascaraSnake
33ed2924e9 Fixed minecart not exploding on death 2019-06-15 14:21:27 +02:00
MascaraSnake
a3784850b7 Removed an unnecessary tracer check 2019-06-15 13:52:27 +02:00
MascaraSnake
943ddeeabf You can now jump onto tracks that are running antiparallel to yours 2019-06-15 13:49:30 +02:00
MascaraSnake
cede95fc21 Some more bugfixes 2019-06-15 00:59:13 +02:00
MascaraSnake
981443c826 Another bugfix 2019-06-15 00:12:58 +02:00
MascaraSnake
cc9d7bee80 A bunch of bugfixes 2019-06-15 00:04:50 +02:00
MascaraSnake
018fb9b461 "Finished" minecart hardcoding (still untested and buggy) 2019-06-14 21:19:52 +02:00
Jaime Passos
c591633733 Update m_misc.c 2019-06-14 14:13:41 -03:00
MascaraSnake
db66f58f2b Merge branch 'acz-hardcode' into new-acz-minecarts 2019-06-13 21:52:08 +02:00
MascaraSnake
43f28b8f56 Set tracers via P_SetTarget and not directly 2019-06-13 21:51:31 +02:00
MascaraSnake
ba9c7d9310 More incomplete minecart hardcoding 2019-06-13 21:45:30 +02:00
MascaraSnake
1ff64baf8b Merge branch 'acz-hardcode' into new-acz-minecarts 2019-06-12 21:28:39 +02:00
MascaraSnake
fae4dc3f21 Forgot to hardcode the mobj.valid checks 2019-06-12 21:28:09 +02:00
MascaraSnake
fafabaae2b Hardcoded the saloon door 2019-06-12 21:20:14 +02:00
Steel Titanium
5ee6c5095d Merge remote-tracking branch 'remotes/origin/master' into levelselect-tweaks 2019-06-11 20:06:02 -04:00
Steel Titanium
58bb05be00 Merge branch 'public-musicplus-libopenmpt' of https://git.magicalgirl.moe/STJr/SRB2 into public_libopenmpt
# Conflicts:
#	.travis.yml
#	src/m_menu.c
#	src/sdl/Srb2SDL-vc10.vcxproj
#	src/sdl/Srb2SDL.props
2019-06-11 17:48:00 -04:00
Nev3r
a1b2a0a344 Properly take skybox viewpoint angle into account. 2019-06-11 14:47:58 +02:00
toaster
6c6ed6a349 Fix Titlemap with mazmazz's fancy menu stuff
Handled by changing some defaults.

Untested, experimenting with Gitlab Web IDE as reconfiguring my build environment is likely to be a pain and I'd like to put that off as long as possible please
2019-06-10 15:43:47 -04:00
MascaraSnake
6a46fc76b8 Fixed some angle business in the BASH code 2019-06-10 20:40:12 +02:00
MascaraSnake
068e07974d Hardcoded the new Snapper behavior 2019-06-10 20:32:50 +02:00
Nev3r
ae6997621d Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into portals2 2019-06-10 18:14:03 +02:00
Nev3r
c014235ad3 Fix 1 extra column rendering on portal-clipped vissprites. 2019-06-10 17:59:12 +02:00
MascaraSnake
0e80d2ec5d Hardcoded the new Minus behavior 2019-06-10 17:42:37 +02:00
Nev3r
d2605e0314 Remove remnants of portalcullsector. 2019-06-10 17:13:04 +02:00
MascaraSnake
85eece29d3 Fixed the bug 2019-06-10 16:19:58 +02:00
MascaraSnake
b98de5d362 Hardcoded the new BASH behavior (there's still a bug lurking somewhere) 2019-06-10 16:09:15 +02:00
MascaraSnake
4d0b0f84b1 Pushables that are also vulnerable no longer block crushers (because they die anyway). This allows us to make TNT barrels pushable again. 2019-06-10 14:10:37 +02:00
MascaraSnake
98ea229680 Hardcoded the Canarivore 2019-06-10 13:58:16 +02:00
Nev3r
581e80ed69 Made Portal_Add static; move ffloors clip reset from R_RenderPlayerView to r_plane. 2019-06-09 22:48:54 +02:00
Monster Iestyn
e7e3b0ef38 Merge branch 'public_next'
# Conflicts:
#	src/doomdef.h
#	src/hardware/hw_draw.c
#	src/m_misc.c
#	src/sdl12/macosx/Srb2mac.xcodeproj/project.pbxproj
2019-06-09 20:04:08 +01:00
Nev3r
f536ab3467 Fixed crash regarding opening reallocating. A thousand thanks go for MonsterIestyn for figuring this out.
I carelessly changed the line's drawsegs to curdrawsegs without researching what that piece of code did.
2019-06-09 20:04:07 +02:00
MascaraSnake
3a16a7d7d4 Hardcoded train dust and steam spawner 2019-06-09 17:16:07 +02:00
MascaraSnake
6df14492a5 Hardcoded train cameo 2019-06-09 13:48:07 +02:00
MascaraSnake
ca4ab06abf Hardcoded wood debris 2019-06-09 12:27:09 +02:00
MascaraSnake
7b603f4ac8 Hardcoded the TNT barrels and proximity shell (using mazmazz's A_TNTExplode implementation from the minecart branch) 2019-06-09 10:51:33 +02:00
MascaraSnake
546af19c82 Hardcoded oil lamp 2019-06-08 15:50:01 +02:00
MascaraSnake
3d65ec7426 Changed cacti widths 2019-06-08 14:45:01 +02:00
MascaraSnake
5ac594abf5 Fixed dust scaling, changed sound captions 2019-06-08 14:12:39 +02:00
MascaraSnake
1aaccfcd5c Hardcoded dust devil 2019-06-08 09:51:46 +02:00
Monster Iestyn
f5d883bd12 Merge branch 'next' into 2.1.24-prep
# Conflicts:
#	debian-template/control
#	debian/changelog
2019-06-07 23:18:31 +01:00
Alam Ed Arias
ea08ba3fba Merge branch 'master' into next 2019-06-07 18:07:32 -04:00
Alam Ed Arias
83b8a98df4 Merge branch 'gme-msvc' into 'master'
Add GME to MSVC 10 solution

See merge request STJr/SRB2!448
2019-06-07 18:06:51 -04:00
Steel Titanium
c0c1e5416f Merge branch 'next' into 2.1.24-prep 2019-06-07 18:02:09 -04:00
Steel Titanium
3c08ee1313 Merge branch 'master' into travis-deployer
# Conflicts:
#	.travis.yml
2019-06-07 16:56:19 -04:00
Steel Titanium
eb99ad0437 Merge branch 'more-limits' into 2.1.24-prep 2019-06-07 11:28:43 -04:00
Monster Iestyn
6f6d912fa6 Update version to 2.1.24 2019-06-07 15:48:33 +01:00
Nev3r
0795c7811a Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into portals2 2019-06-07 13:11:51 +02:00
Nev3r
8c3ddd61d5 Refactored a bit of code regarding visplane bound trimming for portals; reset ffloor's f_clip/c_clip so that FOFs on portals don't interfere with previously acquired bounds. 2019-06-07 13:10:12 +02:00
Nev3r
d2692ddd24 viewx/viewy also need to be stored/restored. 2019-06-06 13:31:48 +02:00
Nev3r
0d77e8afaf Add pad checks for visplanes; invalidate invalid columns from visplanes (visplane renderer and column renderers don't speak exactly the same language).
The visplane portal top boundary offset has been restored since all known bugs involving it have been fixed.
2019-06-06 11:26:13 +02:00
Nev3r
5284817259 Fix sigsegv when there is no main skybox viewpoint. 2019-06-05 18:45:36 +02:00
Nev3r
1c14062e8b Vissprite clipping improvements.
Vissprites are now only clipped against their respective portal's geometry obtained from their BSP run.
Additionally, if a portal is provided, they're clipped to the portal's clip boundaries.
The work on this branch should conclude after a pair of remaining glitches are fixed.
2019-06-05 18:07:08 +02:00
Nev3r
25b56ffecd Masked elements are now fully grouped individually for each portal/view; fixed viewz-related glitches,.
The drawnodes are now fully grouped in separate lists, and then sorted individually. This fixes sorting problems caused by portals belonging to differently perceived scales (skyboxes for example).

Drawsegs and vissprite/drawnode sorting require the viewz, so the viewz is stored for each portal/view, and then restored when needed; without this, the rendering process erroneously sorts the elements, and draws some at wrong positions.
2019-06-05 12:10:59 +02:00
Nev3r
b22aa784fb Set a default frontscale for visplane portals.
I don't know whether this is necessary or not but I'm poking blindly trying to fix the sorting issues for now.
2019-06-04 21:04:35 +02:00
Nev3r
8abecc7f86 Created drawnode lists for each view/portal.
Each shall eventually have its specific vissprites/drawsegs; currently only drawsegs are stored in their correct list, vissprites are stored in the first list as a placeholder.
The idea is to sort each list individually, and then render their masked elements, starting from the last drawnode list.
This retains a non-recursive function calling method while still rendering things in order.
2019-06-04 20:15:42 +02:00
Monster Iestyn
0fd3668111 Revert "Merge branch '144-scrolltweaks' into 'master'"
This reverts merge request !213
2019-06-04 17:34:59 +00:00
Steel Titanium
742c43cf1c Some small tweaks 2019-06-03 17:34:51 -04:00
Steel Titanium
81dec89aeb Merge branch 'next' into public-musicplus-libopenmpt 2019-06-03 15:36:50 -04:00
Steel Titanium
d4dac52766 Upped freeslots limit 2019-06-03 15:23:48 -04:00
Nev3r
2aabf6ffd5 Moving away more portal-related global vars to r_portal. 2019-06-03 13:33:12 +02:00
Nev3r
942c34a6af Moved validcount++ to where it used to be.
It seems to screw up the portal rendering in odd ways if it's in the wrong position. I apologize for not even knowing what it's meant to do nor how it works.
2019-06-03 13:04:27 +02:00
Monster Iestyn
b7f75246e4 Merge branch 'master' into checksight-fixes
# Conflicts:
#	src/p_sight.c
2019-06-02 18:13:02 +01:00
Nev3r
264386f842 Add visplane portal creation functionality and use it to replace the skybox rendering.
The skybox rendering process has been replaced with portals instead. Those are generated after the first BSP tree pass by looking for existing sky visplanes at the time, and their windows are used to define new portals.
The skybox portals are still incomplete and cause visual glitches when masked elements are involved.
2019-06-02 00:07:55 +02:00
Nev3r
df0a40b3c2 Code refactoring to turn portal struct into a more generalized shape.
Split portal-related code to its own source files.
Most of the 2-line-specific setup has been moved to the function which adds a 2-line case. The portals should render as they used to so far, anyway.
2019-06-01 13:07:23 +02:00
Monster Iestyn
571c5b89b5 Whoops, forgot to make P_CheckSight support slopes for same-sector FOF plane checking. 2019-05-27 21:18:02 +01:00
Monster Iestyn
abfdac15a8 Fixed P_CheckSight to support slopes, both for normal planes and FOF planes
(Untested)
2019-05-27 20:36:35 +01:00
Monster Iestyn
ad4006712e fix P_CheckSight to consider FOFs that completely block the view
(this could probably be in its own branch to be tested properly, but I'm on a roll with this atm)
2019-05-27 19:32:05 +01:00
Steel Titanium
34ce368895 Merge branch 'next' into jimita-unfuck-awayview 2019-05-25 19:47:45 -04:00
Steel Titanium
dc273d3f23 Merge branch 'next' into jimita-flashpals-on-screenshots 2019-05-25 19:37:17 -04:00
Steel Titanium
c8a5597492 Update libopenmpt to 0.4.4 2019-05-23 22:05:28 -04:00
Monster Iestyn
677801f5ff Hardcode the bomb's explosion states, the dust object type and states, and the sprite prefixes for both 2019-05-23 21:51:58 +01:00
Monster Iestyn
e60b0b1a80 Update hw_light.c
(though I'm not sure why we bother, since coronas have been disabled for a decade now)
2019-05-23 21:08:27 +01:00
Monster Iestyn
7d0509f1cb Merge branch 'master' into acz-boss-hardcode 2019-05-23 20:38:25 +01:00
Monster Iestyn
742b11c0ff Hardcoded ACZ3.wad's version of A_TNTExplode under the name of A_Boss5BombExplode. After a lot of confusion and silly misunderstandings on my part (as well as a lot of mess cleaning), I've finally got there!
The states for the actual bomb explosion effect itself are yet to be hardcoded, but that I'll do tomorrow afternoon probably.
2019-05-21 21:51:19 +01:00
Steel Titanium
ce1c1d8c88 Forgot some references 2019-05-20 23:31:23 -04:00
Steel Titanium
bf3d5f4188 circleci: Fix compiling error 2019-05-20 23:22:23 -04:00
Steel Titanium
91767a7740 Merge branch 'master' into public-musicplus-libopenmpt 2019-05-20 21:33:10 -04:00
Monster Iestyn
ec0719f74f Merge branch 'steelt-acz-things-hardcode' into 'master'
Hardcode some ACZ things

See merge request STJr/SRB2Internal!220
2019-05-17 12:22:21 -04:00
Monster Iestyn
572328a4fa Merge branch 'public_flatsprite' 2019-05-16 16:00:24 +01:00
Monster Iestyn
66bc287688 Merge branch 'public_next' 2019-05-16 15:58:17 +01:00
Monster Iestyn
600a373739 Merge branch 'master' into next 2019-05-13 16:07:30 +01:00
Monster Iestyn
2a9019c15e Merge branch 'archiveworld-sigsegv-fix' into 'next'
Fix SIGSEGV from sending lindefs/sidedefs in savegame due to duplicated lines.

See merge request STJr/SRB2!490
2019-05-13 07:02:48 -04:00
Alam Ed Arias
addf2bb3c4 Fix NONET build 2019-05-13 01:51:36 -04:00
Steel Titanium
8a14427420 Merge branch 'perpetual-modifier-updates' into 'master'
Set modifiers in a non-reactive manner

See merge request STJr/SRB2!456
2019-05-13 00:36:06 -04:00
Steel Titanium
06961a8f5e Merge branch 'no-frameskip' into 'next'
Don't skip frames when connecting or paused

See merge request STJr/SRB2!489
2019-05-13 00:35:11 -04:00
Steel Titanium
cad65ad5e9 Properly fix crash due to duplicated lines. 2019-05-13 00:23:43 -04:00
Steel Titanium
4e0cc2505a Revert "Check that lumps are okay"
This reverts commit 7ac0a8b4d2.
2019-05-13 00:20:39 -04:00
Steel Titanium
b34aa86403 Hardcode some ACZ things 2019-05-11 22:56:23 -04:00
James R
7ac0a8b4d2 Check that lumps are okay 2019-05-08 20:30:19 -04:00
Monster Iestyn
f0e16cad32 Merge branch 'master' into next 2019-05-08 16:31:05 +01:00
Monster Iestyn
8ea9d0e95c Merge branch 'alias_recursion_hotfix_2' into 'master'
Alias recursion hotfix 2

See merge request STJr/SRB2!482
2019-05-08 11:25:15 -04:00
wolfy852
8f05d75926 Don't skip frames when connecting or paused 2019-05-08 09:39:45 -05:00
wolfs
e394f41c52 Merge branch 'public-musicplus-tagfix' into 'next'
Fix music load lag by reverting tag changes

See merge request STJr/SRB2!486
2019-05-07 22:42:13 -04:00
Sryder
b304b268c8 No sprite billboarding on papersprites 2019-05-06 20:24:26 +01:00
Sryder
1f1d67cd7e Merge branch 'next' of git@git.magicalgirl.moe:STJr/SRB2.git into public_flatsprite
# Conflicts:
#	src/p_user.c
2019-05-06 20:20:57 +01:00
Monster Iestyn
406c3619d7 Merge branch 'master' into next 2019-05-06 19:38:53 +01:00
Nev3r
aab2f55aec Merge branch 'banip-command' into 'next'
Ban IP command

See merge request STJr/SRB2!460
2019-05-06 13:09:14 -04:00
Nev3r
ae25e8ea07 Merge branch 'console-wait-fix' into 'master'
Don't count down wait timer when executing a command line

See merge request STJr/SRB2!483
2019-05-06 12:56:07 -04:00
Nev3r
8b8e165d19 Merge branch 'opengl-sprite-billboarding' into 'master'
OpenGL Sprite Billboarding

See merge request STJr/SRB2!485
2019-05-06 12:45:53 -04:00
Sryder
8273534967 Add a cvar for sprite billboarding, off by default. 2019-05-06 16:57:32 +01:00
Monster Iestyn
ea951eef78 fix an inconsistency I introduced between counting the waypoints and finding them again 2019-05-05 21:16:44 +01:00
Monster Iestyn
ee0c4b42a6 fix P_CheckSight to consider FOFs that completely block the view
(this could probably be in its own branch to be tested properly, but I'm on a roll with this atm)
2019-05-05 21:03:15 +01:00
Monster Iestyn
b9611c3a81 Hardcoded the cork's stun-you-even-while-flashing behaviour 2019-05-05 19:16:30 +01:00
Monster Iestyn
b0087616c7 Hardcoded the boss's TouchSpecial hook.
Also cleaned up this part of P_TouchSpecialThing a bit while I'm here
2019-05-05 18:22:19 +01:00
Monster Iestyn
373d12cb82 Hardcode "slapstick" 2019-05-05 17:36:55 +01:00
Monster Iestyn
f7fbf40437 Hardcoded MT_FSGNA's MobjThinker hook function 2019-05-05 16:42:50 +01:00
Monster Iestyn
9c0c0ad3dc hardcoded the boss's A_BossDeath behaviour.
(also turned this part of the function into a switch case to make things neater)
2019-05-05 16:03:34 +01:00
Monster Iestyn
289a412377 Hardcode the boss thinker function 2019-05-05 15:34:06 +01:00
Monster Iestyn
9e26d7bdaa I just checked how P_LookForPlayers works, and it turns out it doesn't modify the target *unless* it returns true. So I guess we've no need to account for a change in target in A_LookForBetter after all? 2019-05-05 14:09:09 +01:00
Monster Iestyn
09368963dd hardcode MT_FBOMB's MobjSpawn hook function 2019-05-04 22:46:27 +01:00
Monster Iestyn
d44265a217 Mystery solved, he was turning "invisible" because of this mistake in A_DoNPCSkid 2019-05-04 22:38:14 +01:00
Monster Iestyn
691ae982e7 S_FANG_SLIDE wasn't defined in the Lua script, despite being declared :|
Also Fang seems to turn invisible after his first jump for some reason, and I can't figure out why???
2019-05-04 21:31:46 +01:00
Monster Iestyn
7b6b34212b Swap "S_TNTBARREL_EXPL1" for S_NULL as a temporary measure until I actually hardcode the explosion states.
As of now, you can now compile this branch with no issues. But Fang won't work properly for a while yet, we'll get there don't worry.
2019-05-04 20:20:34 +01:00
Monster Iestyn
445709037d Fix some compiler complaints about A_Boss5FindWaypoint 2019-05-04 20:17:00 +01:00