Commit graph

1609 commits

Author SHA1 Message Date
Monster Iestyn 5e6bf9e340 probably best if we did this instead actually 2016-08-29 23:24:59 +01:00
Monster Iestyn df7c8482e4 If NOT skewing FOF walls, make sure dc_texturemid reverts to using unsloped FOF topheight/bottomheight rather than actual left side top/bottom heights 2016-08-29 23:21:57 +01:00
Monster Iestyn 74e7433a92 Upper Unpegged on an FOF's control linedef now enables skewing of walls with respect to slopes
Skewing direction is decided per in-level wall by the Lower Unpegged flag on in-level linedefs themselves, since they already decide the stuff for FOF wall pegging as it is. That is unless Transfer Line is involved which moves everything to the control sector linedefs instead...
2016-08-29 22:42:06 +01:00
Monster Iestyn 541c53c3e1 Merge branch 'public_next' 2016-08-27 15:49:32 +01:00
Monster Iestyn 0092e49d37 Merge branch 'next' into public_next 2016-08-27 15:48:08 +01:00
Monster Iestyn 544974ee35 Merge branch 'fixed_new_new_spriteframe_angle' into 'master'
Fixed new new spriteframe angle

@Nev3r helped me discover a crash caused by NAMEcLcR not loading patches into every angle lump slot. This is the smallest possible change that fixes the crash.

This is a one line change exclusively modifying an edge case for a feature which isn't available in public builds. Therefore, it SHOULD require (almost) zero code review, and I would've committed directly to master if I had the ability to do that (and the desire to disregard ettiquette). Please help me out here.

See merge request !38
2016-08-26 15:46:39 -04:00
toasterbabe 8a244c1816 Nev3r helped me discover a crash caused by NAMEcLcR not loading patches into every angle lump slot.
This is the smallest possible change that fixes the crash.
2016-08-26 16:09:43 +01:00
Monster Iestyn 96f74a3a17 Merge branch 'master' into next 2016-08-25 19:19:53 +01:00
Wolfy 831c29ead7 Merge branch 'climbingshit2_electricboogaloo' into 'master'
Climbing shit 2 electric boogaloo: an adventure in how much toast hates how the ogl renderer was implemented

Fixed Knuckles being able to climb in space in OpenGL.

Using the last-touched line instead of R_IsPointInSubsector because FLOAT_TO_FIXED is bad in P_ functions

To understand the original problem: look at AjustSegs(void) in hw_bsp.c. It reallocates the vetex_t pointers for lines as POLYVERTEX_T pointers, and of COURSE things are gonna get wacky when you're casting pointers.

This merge request is into master because it's a bug that's IN master and must never reach the public because of how bad it is

See merge request !101
2016-08-25 14:18:44 -04:00
Monster Iestyn fd5297ee6c Merge branch 'fix-obj-step' into 'next'
Fix non-player objects having busted step-up/down on slopes

Why the fuck did I make this a player conditional in the first place holy shit

See merge request !103
2016-08-20 18:08:11 -04:00
Inuyasha f3639489ab Merge branch 'moredisabling_hudstuff' into 'next'
Allowing the disabling of Match/CTF/Miscellaneous Ringslinger HUD elements

Does what it says on the tin.

Requested by Lat and Speedwagon, selfishly also desired because of Thokker, open and shut. If 2.1.16 is delayed, might as well get some goodwill-raising zero-effort stuff in there.

See merge request !106
2016-08-20 01:34:23 -04:00
Alam Ed Arias 0fc848dc09 Merge branch 'master' into next 2016-08-18 19:38:55 -04:00
Alam Ed Arias e5c44de6ca travis: cut down on osx builds 2016-08-18 19:38:21 -04:00
toasterbabe 3db3433a51 More consistent comment. 2016-08-19 00:07:32 +01:00
toasterbabe 3d9fe7c899 The ability to disable weapon rings, as heavily requested by Lat and Speedwagon for their high effort character .wads and selfishly also desired to make thokker less hacky. 2016-08-19 00:06:12 +01:00
Alam Ed Arias 0264fd24ae @MonsterIestyn: Should probably be returning true then 2016-08-14 10:43:44 -04:00
RedEnchilada 55b8ef9f64 More stepping upward fixing ugh 2016-08-14 00:03:00 -05:00
RedEnchilada 758c77fe53 Fixed non-players having fucked slope stepup/down 2016-08-13 17:45:23 -05:00
toasterbabe be973d6990 expanded comment for future generations 2016-08-13 15:07:40 +01:00
toasterbabe 612575620b Solved the climbing-on-one-sided-lines problem another way, using the last touched line's attributes.
(After talking to Alam, we can't have floats anywhere near P_ functions, so.)
2016-08-13 14:16:06 +01:00
toasterbabe 5d6463fafc Fixed Knuckles being able to climb in space in OpenGL.
To understand: look at AjustSegs(void) in hw_bsp.c. It reallocates the vetex_t pointers for lines as POLYVERTEX_T pointers, and of COURSE things are gonna get wacky when you're casting pointers.

I dunno how resilient the FLOAT_TO_FIXED solution is or whether it'll be netgame compatible (yayyy float precision loss) but it's not like our builds are netgame compatible with themselves
2016-08-13 13:39:24 +01:00
Alam Ed Arias 074dde5f78 Merge branch 'public_next' into master 2016-08-11 12:59:04 -04:00
Alam Ed Arias 60f0bd8eec Merge branch 'next' into public_next 2016-08-11 12:58:08 -04:00
Alam Ed Arias fb8de61a81 Merge branch 'master' into next 2016-08-11 12:48:52 -04:00
Monster Iestyn 1ea0f9ceb8 Merge branch 'new_new_spriteframe_angle' into 'master'
NAMEcLcR sprite angle loading, take 2

HEY LOOK, A NEW SPRITE LUMP LOADING FEATURE (which isn't that new since this merge request description is literally copypasted from the one for public next)

 * NAMEcL refers to a frame which is seen for the entirety of an object's left side. (ie - in 2d mode, facing to the left relative to the camera)
 * NAMEcR refers to a name which is seen for the entirety of an object's right side. (ie - in 2d mode, facing to the right relative to the camera)
 * NAMEcLcR does both sides, duh. I didn't break reflection.
 * Having just a NAMEcL requires you to fill in the opposite side either with NAMEcn where n is 1 and 5-8 OR a NAMEcR OR a NAMEc0
 * Having just a NAMEcR requires you to fill in the opposite side either with NAMEcn where n is 1-5 OR a NAMEcL OR a NAMEc0
 * Switches down the centerline of the object instead of at the ANGLE_202h interval for normal sprites. Has a very small window where you can see a NAMEc1 and NAMEc5 if you only use one of NAMEcL or NAMEcR down one side.
 * The specific symbols selected for this were selected for 1) ease of mental understanding (Left, Right) and 2) not getting in the way of adding support for zdoom's totally bananas 16-way sprite system at a later date if we so choose, which only goes up to G

totally makes sense for stuff like NiGHTS stuff, Axis2D stuff, and maybe if SRB1 survives the chopping block in some shape or form it can take advantage of that too

See merge request !33
2016-08-11 12:41:11 -04:00
Monster Iestyn c79428a178 Merge branch 'opengl-planes' into 'master'
OpenGL planes fix

This branch removes a specific hack in the OpenGL code for detecting if a plane is for the floor or ceiling of a sector. This it turns out fixes ceiling slopes in Boinciel's SUGOI map going missing. Though, It doesn't fix that other glitch with one FOF (must be unrelated).

If you want to test these fixes out properly, make sure working in-level sectors, FOFs AND also polyobjects all still work fine, sloped or not.

See merge request !97
2016-08-11 12:15:08 -04:00
Monster Iestyn ae5844be76 Merge branch 'fof-slope-crash-fix' into 'master'
Fof slope crash fix

This fixes yet another software renderer crash, this time relating to sloped FOFs: sometimes the renderer thinks parts of FOFs where the top and bottom heights are the same height are actually the bottom going through the top (in other words a negative height). This causes problems when drawing normal walls around such FOFs since the game obviously doesn't expect negative heights anywhere along the FOF - before slopes, the game could just flip around the top and bottom heights automatically with no problems. This branch also should fix crashes for all genuine cases of negative FOF heights when slopes are involved, I suppose.

Hopefully this stops FuriousFox's SUGOI map crashing for the time being, all seemed fine when I tested it out myself.

See merge request !96
2016-08-11 12:13:52 -04:00
toasterbabe 742dced437 Updating I_Error to use 4 characters for the spritename only in the same way the other ones do 2016-08-09 13:04:53 +01:00
toasterbabe 4183912c60 Please don't assume indentation carries intent, especially since a break that exclusively follows an I_Error will never run 2016-08-09 13:01:56 +01:00
Alam Ed Arias 6c6cbecb10 I do not think you wanted to break on EVERYTHING 2016-08-08 21:30:20 -04:00
toasterbabe c77b3aa58d Sorted an issue MI discovered (I was basing the flip code off the C0 scenario rather than the Cn one) 2016-08-08 17:24:36 +01:00
toasterbabe 6a070adf4b Making the flag value more obvious. 2016-08-08 14:35:18 +01:00
toasterbabe aa89eadac4 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_new_spriteframe_angle 2016-08-08 14:16:20 +01:00
Alam Ed Arias c3690092e1 Merge branch 'public_next' into master 2016-08-07 23:29:01 -04:00
Alam Ed Arias ce129c28c2 Merge branch 'next' into public_next 2016-08-07 23:27:40 -04:00
Alam Ed Arias 774a93c819 Merge branch 'master' into next 2016-08-07 23:23:50 -04:00
Wolfy bbb4bb8a05 Merge branch 'invalid-map-name-test' into 'next'
-warp checking for invalid map names

I've noticed a bunch of new people getting the "Cannot warp to map 0 (out of range)" error when testing their custom maps. On asking what map name they used, it was clear they didn't use a MAPxx name at all. Sadly it was not obvious to them that other kind of map names are not accepted by SRB2, so I thought it best we make that more clear in-game.

SRB2 now gives you the error "Cannot warp to map \[your input\] (invalid map name)" if you used -warp with a param that is neither a MAPxx name or a plain number.

See merge request !99
2016-08-07 16:34:23 -04:00
Wolfy 3fcaf0b351 Merge branch 'findspeciallinefromtag-fix' into 'next'
P_FindSpecialLineFromTag crash fix

This fixes the case where an in-level sector or FOF control sector with a tag of -1 or 65535 (seriously, who does that?) can possibly lead to a crash in this function when searching for heat linedef specials in 1st person. And also the same kind of crash any other sort of weird case where the tag number that function uses for searching is -1 or 65535, I suppose!

See merge request !98
2016-08-07 16:33:53 -04:00
Wolfy 8561a6b413 Merge branch 'sprite-loading-tweaks' into 'master'
Fix R_AddSingleSpriteDef's I_Error messages

Whoops, seems I forgot about this little branch. Basically this fixes how for a character's sprites, a full sprite lump name is displayed instead of just its sprite prefix in the "R_AddSingleSpriteDef: No patches found for [sprite prefix] frame [frame character]" message (unlike when it occurs for non-character sprites), resulting in something like "R_AddSingleSpriteDef: No patches found for PLAYC2C8 frame \^" which does NOT help custom character authors at all as it just confuses them instead. (for the record, the problem would actually with the ^ frame and not the ones displayed after "PLAY")

Oh, and the same problem is also fixed for this similar message: "R_AddSingleSpriteDef: Sprite [sprite prefix] frame [frame character] is missing rotations"

See merge request !95
2016-08-07 16:33:15 -04:00
RedEnchilada 02d3382408 Leave a note to anyone foolish enough to try to fix this 2016-08-07 12:17:31 -05:00
toasterbabe 0a75b8d918 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_new_spriteframe_angle 2016-08-07 11:21:53 +01:00
toasterbabe 76e658bf1b Minor re-ordering to optimise this branch. 2016-08-07 00:21:16 +01:00
Monster Iestyn 5b2705ef48 Merge branch 'spr2-freeslots' into 'master'
Spr2 freeslots

Needed for Miles, generally a good idea to have around anyway. Considering Miles uses it without problems, seems to work fine.

See merge request !24
2016-08-04 16:24:37 -04:00
Monster Iestyn 4c4f124611 Detect if -warp's parm is actually a valid map name (MAPxx or plain number), and print an "invalid map name" message if not 2016-07-28 16:07:26 +01:00
Monster Iestyn 2b985bda85 Make sure we detect if start >= numlines so we can deal with that properly
for some apparent reason the compiler didn't like the while loop condition edit on its own (it complained about inline failures for P_MobjReadyToTrigger for some reason), so I had to add that extra bit above the while loop... and it was happy again, huh
2016-07-28 14:57:19 +01:00
Monster Iestyn 2870e19f7f Take out fixedheight-based hacks for checking if floor or ceiling! Use an "isceiling" boolean for that instead
This apparently fixes most of the issues with ceiling slopes in Boinciel's SUGOI map
2016-07-27 19:56:21 +01:00
Monster Iestyn dc765cde2c Fix R_DrawColumnShadowed_8 crash encountered in FuriousFox's map
If you want more specifics, sloped FOFs are to blame it turns out: sometimes the bottom of an FOF wall blocking a segment of an in-level wall column can be considered ABOVE the top part of the FOF there (yikes), and then the dc_y* values go offscreen, and then BOOM
2016-07-24 18:54:01 +01:00
Alam Ed Arias 6b94f286e2 Merge branch 'public_next' into private 2016-07-24 01:08:31 -04:00
Alam Ed Arias ff6440d343 Merge branch 'next' into public_next 2016-07-24 01:08:00 -04:00
Alam Ed Arias 4321757df4 Merge branch 'master' into next 2016-07-24 01:07:25 -04:00