Commit graph

5994 commits

Author SHA1 Message Date
toaster
597d56d151 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
toaster
b745b4fe1b 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
a334db7f44 Support backspace for resetting various menu values, just like Kart. 2019-06-18 14:36:06 +01:00
toaster
229cdf0e84 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
Nev3r
fce498418c Merge branch 'portals2' into 'master'
Portal-based skybox rendering replacement for the software renderer

See merge request STJr/SRB2Internal!226
2019-06-16 04:08:00 -04:00
Nev3r
0c3f273745 Properly take skybox viewpoint angle into account. 2019-06-11 14:47:58 +02:00
Nev3r
b0eef242e0 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into portals2 2019-06-10 18:14:03 +02:00
Nev3r
52618bf895 Fix 1 extra column rendering on portal-clipped vissprites. 2019-06-10 17:59:12 +02:00
Nev3r
c5c4744652 Remove remnants of portalcullsector. 2019-06-10 17:13:04 +02:00
Nev3r
b7e2b5612c Made Portal_Add static; move ffloors clip reset from R_RenderPlayerView to r_plane. 2019-06-09 22:48:54 +02:00
Monster Iestyn
67392baae0 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
d62268ffd0 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
Steel Titanium
605e32004a Merge branch '2.1.24-prep' into 'next'
Update version to 2.1.24

See merge request STJr/SRB2!495
2019-06-08 17:08:34 -04:00
Monster Iestyn
c21b9e632a 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
cd1c87ea71 Merge branch 'master' into next 2019-06-07 18:07:32 -04:00
Alam Ed Arias
d5c1fe6467 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
593fcae69a Merge branch 'next' into 2.1.24-prep 2019-06-07 18:02:09 -04:00
Alam Ed Arias
0c352b856d Merge branch 'travis-deployer' into 'master'
Deploy OS X and Debian packages from Travis-CI

See merge request STJr/SRB2!449
2019-06-07 17:57:29 -04:00
Steel Titanium
8d5207975d Merge branch 'master' into travis-deployer
# Conflicts:
#	.travis.yml
2019-06-07 16:56:19 -04:00
Steel Titanium
6c4253a680 Merge branch 'jimita-flashpals-on-screenshots' into 'next'
Flashpals on screenshots

See merge request STJr/SRB2!492
2019-06-07 16:37:59 -04:00
Steel Titanium
9a6330ca4d Merge branch 'more-limits' into 2.1.24-prep 2019-06-07 11:28:43 -04:00
Monster Iestyn
474b70aa69 Update version to 2.1.24 2019-06-07 15:48:33 +01:00
Nev3r
f92b3cbfdd Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into portals2 2019-06-07 13:11:51 +02:00
Nev3r
b8d2e017b4 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
da09a07e6e viewx/viewy also need to be stored/restored. 2019-06-06 13:31:48 +02:00
Nev3r
ebe0586993 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
f0b79697e5 Fix sigsegv when there is no main skybox viewpoint. 2019-06-05 18:45:36 +02:00
Nev3r
819169f378 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
906b366e1b 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
a1f429030c 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
96cfecc41a 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
Nev3r
e180ee5dfe Merge branch 'revert-370e4eec' into 'master'
Revert "Merge branch '144-scrolltweaks' into 'master'"

See merge request STJr/SRB2Internal!225
2019-06-04 13:37:53 -04:00
Monster Iestyn
eb3d0bdce8 Revert "Merge branch '144-scrolltweaks' into 'master'"
This reverts merge request !213
2019-06-04 17:34:59 +00:00
Steel Titanium
8f19878781 Upped freeslots limit 2019-06-03 15:23:48 -04:00
Nev3r
84a52a0f80 Moving away more portal-related global vars to r_portal. 2019-06-03 13:33:12 +02:00
Nev3r
c35769e5de 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
df62955d4d Merge branch 'checksight-fixes' into 'master'
P_CheckSight fixes

See merge request STJr/SRB2Internal!223
2019-06-02 13:13:48 -04:00
Monster Iestyn
e890cb1699 Merge branch 'master' into checksight-fixes
# Conflicts:
#	src/p_sight.c
2019-06-02 18:13:02 +01:00
Monster Iestyn
190512d8b2 Merge branch 'acz-boss-hardcode' into 'master'
ACZ boss hardcode

See merge request STJr/SRB2Internal!221
2019-06-02 13:09:38 -04:00
Nev3r
ae1e3630f8 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
7e1bb4a370 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
dbdfdaf1fe Whoops, forgot to make P_CheckSight support slopes for same-sector FOF plane checking. 2019-05-27 21:18:02 +01:00
Monster Iestyn
309f4a10d0 Fixed P_CheckSight to support slopes, both for normal planes and FOF planes
(Untested)
2019-05-27 20:36:35 +01:00
Monster Iestyn
fb6fefd186 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
2e8aae5d6a Merge branch 'next' into jimita-flashpals-on-screenshots 2019-05-25 19:37:17 -04:00
Monster Iestyn
36415b0050 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
a2e0c1998a 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
3cb336bdbc Merge branch 'master' into acz-boss-hardcode 2019-05-23 20:38:25 +01:00
Monster Iestyn
10430628e6 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
Monster Iestyn
dc5d13da46 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