Proper barrel sky distortion
Skies now use proper barrel distortion in both axes, rather than just the x-axis (i.e. just horizontally) as in all previous SRB2 versions. Credit goes to Nev3r for the original change and idea.
Was going to make an option for a non-barrel distorted sky, assuming barrel distortion is the default, but I just can't quite get it to work in a way that is pleasing to the eyes. So I've not bothered with it here for now, unless someone objects to barrel distorted skies for any reason?
See merge request !35
FOF wall slope skewing
FOF walls now can optionally skew with respect to slopes (software mode only currently):
* Upper Unpegged on the CONTROL linedef enables wall skewing
* Lower Unpegged on the IN-LEVEL linedefs ^1 determine which slope to skew with respect to (off = top slope, on = bottom slope)
* If Transfer Line is used however, Lower Unpegged on the control sector's linedefs does the above's job instead
^1 (this is because they already control pegging of individual FOF walls as it is, so this is for convenience and my sanity that they also deal with skewing)
See merge request !39
Fixes to horizontal spring collision
Fixed various issues arising from collision with exclusively horizontal springs. Thamks to @Inuyasha for the heads up! Of note:
* If you hold down your jump button whilst jumping into it, you no longer immediately use your ability.
* Characters with (CA_DOUBLEJUMP && CA2_MULTIABILITY) or CA_FLOAT or CA_HOVER no longer lose track of their jump count.
Also:
* Upped the strength of info.c's red and yellow horizontal springs.
See merge request !41
Horizon lines
Horizon lines for software mode! Place a Linedef type 41 somewhere on a one-sided linedef and it'll do fancy rendering hacks to draw the adjacent floor/ceiling to the "horizon". One small thing to sort out when I remember to do so, but this is good enough for merge already.
See merge request !44
FF_ANIMATE additions: globally synced animations
FF_GLOBALANIM = makes the animation synced to the level's timer, so all objects will display the same frame at the same time

I mean, doesn't that look so much prettier?
There's also some changes to FF_MIDDLESTARTCHANCE (FF_ANIMATE behavior was split due to not acting consistent between that and SPR2 behavior).
See merge request !46
* Object number up/down is now assigned to ringslinger weapon next/prev. SO much nicer to use, especially since most people have that stuff bound to the scroll wheel.
Animated sky support
What it says on the tin: skies can be animated textures now. Just set them up as normal animated textures (keeping in mind the starting texture still has to comply with the SKYn/SKYnn/SKYnnn naming format) and hey presto, your sky animates.
See merge request !34
* If you hold down your jump button whilst jumping into it, you no longer immediately use your ability.
* Characters with CA_DOUBLEJUMP and CA2_MULTIABILITY no longer lose track of their jump count.
(the problem was that MT_OVERLAY's default radius and height were never getting changed from 1*FRACUNIT, and that meant that when you spindashed, the game considered it completely below the surface of the flat you were standing on. Since you're not usually clipped on flats that don't belong to FOFs, we didn't notice this issue sooner.)
* Camerascale, shieldscale, height and spinheight are now player attributes which are set to the skin attribute on skin change, not read directly from the skin.
* P_GetPlayerHeight and P_GetPlayerSpinHeight are now macros instead of functions.
* Extra protection against switching to a locked skin.
* flips the sprite ala MFE_VERTICALFLIP except you don't need to flip the direction of gravity for the object just to draw upside down
* stacks properly with reverse gravity