Commit graph

1022 commits

Author SHA1 Message Date
Inuyasha
604ae7d072 move variable fetching from Lua out of min/max macros 2016-05-05 19:23:46 -07:00
Monster Iestyn
c8cdded81e Multiply downwards thrust on slopes by the actual "gravity" variable. Also account for mobj scale (it affects gravity added in P_CheckGravity, so it makes sense here). 2016-05-05 18:19:06 +01:00
Monster Iestyn
857cd32369 step through light heights too if there is an overflow for a midtexture column 2016-05-05 17:49:57 +01:00
Inuyasha
ce4b5db494 organize conditions in a more optimized way
the most common condition (correct drawing) shouldn't be last, however it can't be first without making the conditions longer anyway.

it's a nitpicky thing, but this is the renderer we're talking about here.
2016-05-05 07:20:53 -07:00
Inuyasha
5e8be250a7 fix going under FOFs causing artifacts
i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs i hate FOFs
2016-05-05 06:33:19 -07:00
Inuyasha
cd877fea1f Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next 2016-05-05 02:32:29 -07:00
Inuyasha
4274fb7b92 I hate FOFs; attempted to fix extra tall FOFs breaking
Previous overflow fix resulted in extra tall FOFs disappearing up close (see: ERZ1's elevators at start)
This works "better" in that only some lighting bugs and really really finicky visual glitches show now. I give up trying to totally fix this stuff dfsdfgdgf
2016-05-05 02:31:53 -07:00
Wolfy
0549ac270b Merge branch 'toast_credits' into 'next'
One more name in the credits

I probably messed up by making toast_credits based on master instead of next. If that's blocking, just delete this branch and I'll re-do it. It's a single line, though - shouldn't exactly matter so much.

Could probably stand to be merged into Internal as well, since I hadn't actually worked on any textures when we'd updated the credits there.

See merge request !69
2016-05-04 16:25:16 -04:00
toasterbabe
a4a5ac161f One line through selfish methods. Probably works in both Next and Internal. 2016-05-04 20:14:24 +01:00
Inuyasha
bd935a6a5c that should be skin2, not skin 2016-05-04 05:45:18 -07:00
Inuyasha
93a9b0cc84 update patch stuff again.
please don't make me do this again.
2016-05-04 05:43:05 -07:00
Inuyasha
652ddfef9a invalid skins when starting a local game no longer break
see https://mb.srb2.org/showthread.php?t=41370
2016-05-04 03:23:29 -07:00
Inuyasha
460620ff8a Merge branch 'gl-slopes' into 'next'
OpenGL slopes

Exactly what it says on the tin, obviously.

See merge request !68
2016-05-03 19:39:38 -04:00
Monster Iestyn
2954a43ce0 Merge branch 'next' into demo-replay-fixes 2016-05-03 15:29:57 +01:00
Monster Iestyn
2c221da453 Revert "Fix up the ceiling sky hack (yuck) a bit so my commit doesn't break thok barrier planes now"
This created HOMs in THZ2's skybox, ack.

This reverts commit eba382df1b.
2016-05-03 15:26:54 +01:00
Monster Iestyn
300275534f Merge branch 'next' into demo-replay-fixes 2016-05-03 15:10:30 +01:00
Inuyasha
8adacf7c32 update to use 2.1.15 assets 2016-05-03 06:02:52 -07:00
Inuyasha
782f6e9330 dupx and dupy are important for Lua too 2016-05-02 22:25:00 -07:00
Monster Iestyn
f0bea2cebf Merge branch 'next' into gl-slopes 2016-05-02 22:51:51 +01:00
Monster Iestyn
eba382df1b Fix up the ceiling sky hack (yuck) a bit so my commit doesn't break thok barrier planes now
Interestingly these changes somehow fix how thok barrier walls block the planes, which was an issue even before slopes I believe
2016-05-02 22:08:14 +01:00
Monster Iestyn
b5afc70cc8 Hack to fix DSZ2 left route waterslide: apply Red's step up changes only to slopes
that is, I believe slopes are why he added this code anyway *shrugs*
2016-05-02 17:04:28 +01:00
Inuyasha
7c79bbc0b3 Proper overflow checking, applied to FOFs and midtex's too
This fixes the annoying flickering when you pass by water, FOFs, tall grass, etc.
2016-05-02 05:29:30 -07:00
Inuyasha
37575d2219 Revert "Another thing that probably needed to check for slopes"
This breaks plane display for thok barriers

This reverts commit ee00da6a74.
2016-05-02 04:08:48 -07:00
Inuyasha
bb9098b532 Merge branch 'portal-fix' into 'next'
Fix portal and plane/sky interaction

More portal-related fixes:
* Fixes rendering issue 4 from issue #21 (Slope planes render with wrong height values when visportals are visible on-screen)
* Fixes sky rendering through portals, so that the sky you see through each portal is what you'd expect to see if you were actually there. Easiest way to see what I mean is through sky 22's planet, in a map with portals at 90 degrees to the other sides respectively (the example map on the wiki for ld40, for instance).

See merge request !65
2016-05-01 22:03:37 -04:00
Monster Iestyn
2ddde83601 General improvements to Lua error messages for out-of-bounds stuff.
The idea is for the layman Lua user to understand better what range of values to use for mobj types, states, sfxs, player #s etc. Additionally, mobjinfo/states/sfxinfo/hudinfo tables all now have actual bound checks when accessing/editing them. Yikes, why didn't they have any before?!
2016-05-01 22:14:42 +01:00
wolfy852
a077be85cf Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2 into next 2016-04-30 15:00:04 -05:00
wolfy852
969a254cb6 Remove the super float from non-Sonic characters
Should fix conflicts with Lua-scripted jump spin abilities.
2016-04-30 14:59:51 -05:00
Alam Ed Arias
26f78de3b4 Merge branch 'master' into next 2016-04-30 11:45:11 -04:00
Sean Ryder
0eb41b4450 Flip fade mask Y coordinates
For some reason every texture and flat loaded into GL is vertically flipped
2016-04-30 13:40:00 +01:00
wolfy852
6fcb6d27fe Fix Lua not having access to timeshit
Fixes http://mb.srb2.org/showthread.php?t=41403. Not sure why nobody noticed this earlier.
2016-04-30 03:19:00 -05:00
Sean Ryder
d2d73f085d Change internal formats of screen fade texture to RGB
Don't think either of them need RGBA
2016-04-29 20:56:46 +01:00
Sean Ryder
55a1de899c The fade masks textures should use an alpha format
So they don't get effected by the texture format set by the screen depth
GL_RGB5_A1 from 16-bit was removing all alpha from the texture
2016-04-29 18:58:20 +01:00
Monster Iestyn
770fa6f924 Disable 16bpp drawing code since nothing of it is currently used anyway 2016-04-29 18:32:03 +01:00
Monster Iestyn
8fd8f2c316 Disable "splats" command unless WALLSPLATS is enabled
apparently it was never used for what exists of floor splats' code, huh
2016-04-29 18:01:05 +01:00
Inuyasha
8e753c1886 compilation fix for DEBUGRANDOM 2016-04-27 17:17:35 -07:00
Monster Iestyn
ac3de70c93 Merge branch 'slope-fixes' into 'next'
Slope fixes

This branch fixes the following slope-related physics and rendering bugs:

* Rings in multiplayer stages respawning inside slopes (even despite being able to spawn ABOVE them on map load)
* Player starts spawning players inside slopes
* Elemental flame trails not appearing if a player spindashes UP a slope; see issue #21
* Dying players "jumping" off slopes to the side if they were previously standing on one
* Some issues with FOF slope rendering
* Various issues with sprites displaying through walls adjacent to slopes

Other features added:
* Objectplace now supports slopes (this is Inuyasha's doing)
* Automap in DEVMODE now supports slopes (my doing)

Just making this merge request now rather than later, ~~in case I decide not to make any more fixes for the time being~~ (this branch doesn't seem to want to die lol), and so we can get these merged in as soon as the code's all been checked over.

See merge request !50
2016-04-26 17:21:27 -04:00
Monster Iestyn
0a887948eb Ensure pixhigh/pixlow is always set whenever the game decides a top/bottom texture should be drawn
This fixes the rendering glitches encountered around slopes in Glacier Gear, yes. :)
2016-04-25 18:48:14 +01:00
Inuyasha
b288d8a399 Merge branch 'bp_random2' into 'next'
xorshift* PRNG

This needs testing to ensure I didn't mess anything up switching function names around.

Our PRNG sucks. This is probably obvious. I wish I had known better at the time I implemented it, but oh well.

The replacement is an xorshift* PRNG variant with period 2^32 - 1 (meaning that the PRNG state will loop after four billion calls ... that's not likely to happen), versus the old PRNG's period of about 2^22 (?). The output is also much more random and less predictable; the old PRNG would fall into a predictable loop of output after about 4000 numbers were generated, which isn't much.

The PRNG here also outputs numbers as fixed point from [0,1) (that's 0 to FRACUNIT-1, in other words) instead of single bytes at a time. This makes it much easier to calculate things for, say, P_RandomRange and P_RandomKey. A new macro, P_RandomChance(p), is now in use that returns true _p_ percent of the time, where _p_ is a fixed_t probability from 0 (0%) to FRACUNIT (100%).

This doesn't affect netgames at all; the code for seed saving and restoring is identical (aside from a check to prevent seed being set to 0, which breaks xorshift PRNGs). Demos break, but A: _duh_ and B: they're already broken by all the changes to physics to accommodate slopes.

P_Random is deprecated in Lua, as the function was renamed to P_RandomByte. Aside from that, nothing special.

See merge request !64
2016-04-24 18:03:13 -04:00
Monster Iestyn
b8cc36dfd1 P_LookForEnemies should not change the player's angle until the target has been decided
This fixes a quirk with Shadow with chaos control sometimes throwing the player in the wrong direction
2016-04-22 22:28:00 +01:00
Monster Iestyn
d53801c85c Disable the corona-related consvars unless ALAM_LIGHTING macro is enabled 2016-04-21 18:50:30 +01:00
Monster Iestyn
009616e6ac Merge branch 'next' into gl-slopes 2016-04-20 20:47:47 +01:00
Monster Iestyn
ab2cadd372 Merge branch 'next' into slope-fixes 2016-04-20 20:47:11 +01:00
Monster Iestyn
ae491f1b8c Merge branch 'next' into skybox-hotfix 2016-04-20 20:46:43 +01:00
Monster Iestyn
96d329ad49 Merge branch 'next' into portal-fix 2016-04-20 20:46:13 +01:00
Monster Iestyn
dcf1ccb950 Merge branch 'next' into demo-replay-fixes 2016-04-20 20:45:43 +01:00
Monster Iestyn
e0604bb5f3 Merge branch 'master' into next 2016-04-20 20:27:09 +01:00
Monster Iestyn
69b43aee2d Fix how FF_CUTEXTRA FOFs carry over cutting ability to FOFs below them in the same sector, even if they shouldn't do that 2016-04-20 20:26:41 +01:00
Monster Iestyn
8d7edbff1a Merge branch 'next' into gl-slopes 2016-04-20 18:21:49 +01:00
Monster Iestyn
c833f3845f Merge branch 'next' into bp_random2 2016-04-20 18:18:28 +01:00
Monster Iestyn
e05951e213 Merge branch 'next' into slope-fixes 2016-04-20 18:17:14 +01:00
Monster Iestyn
d47ccb0859 Merge branch 'next' into skybox-hotfix 2016-04-20 18:16:46 +01:00
Monster Iestyn
42b281f06c Merge branch 'next' into portal-fix 2016-04-20 18:16:16 +01:00
Monster Iestyn
60ec0ff294 Merge branch 'next' into demo-replay-fixes 2016-04-20 18:15:36 +01:00
Monster Iestyn
b797ae9731 Merge branch 'master' into next 2016-04-20 18:05:51 +01:00
Monster Iestyn
0aba2f607b Fix FOFs with FF_CUTSOLIDS but not FF_SOLID causing software renderer problems and even crashes
Always wondered why a flag meant for FOF physics was used in the rendering code, lol
2016-04-20 18:04:51 +01:00
Inuyasha
a26989c903 brevity is a virtue or something like that 2016-04-18 21:59:33 -07:00
Inuyasha
18d5d64a4d error conditions for Lua fixed point math 2016-04-18 14:50:15 -07:00
Monster Iestyn
be7b866e4f resynch_pak changes
* add skidtime, which we forgot before 2.1 release apparently
* change tics from INT16 to INT32
* change eflags from UINT8 to UINT16
* change actionspd/mindash/maxdash from INT32 to fixed_t
2016-04-16 18:40:14 +01:00
Monster Iestyn
f96b830f36 Write/read FOF flags as 32-bit not 16-bit, whoops 2016-04-16 18:06:26 +01:00
Monster Iestyn
7830a9e27b Splitscreen fix: half of GFZ1's invinc monitor should no longer appear above the bridge for player 2
I don't know if there's any other vid.height/viewheight confusion like this around, but that was the cause apparently
2016-04-10 20:27:55 +01:00
Monster Iestyn
11c24f5ab6 Merge branch 'next' into gl-slopes
# Conflicts:
#	src/hardware/hw_main.c
2016-04-09 22:12:29 +01:00
Alam Ed Arias
b9eed02123 whitespace clean 2016-04-07 16:34:36 -04:00
Inuyasha
3b4b7a05fd Better CTF in splitscreen, no death message for spectators 2016-04-06 19:55:58 -07:00
Inuyasha
0dd92e9396 V_DrawFill in OGL now consistent with software 2016-04-06 18:33:38 -07:00
Inuyasha
3117a6a16e Splitscreen fixes
initialize flipcam2
player 2 gets game over music now.
restore the other player's music when the dead player is done sulking about their game over
2016-04-06 18:28:43 -07:00
Inuyasha
5aea82ec91 Some drawing code cleanup
Fixed mashing buttons during fades causing crashes,
messed up behavior, record attack anywhere,
all the damn stupid bugs that it caused, basically
2016-04-06 18:01:01 -07:00
Monster Iestyn
b1e736242f fixed all compiling errors relating to ESLOPE being undefined 2016-04-06 22:19:39 +01:00
Inuyasha
e91cfa7110 Fixed frustrating MIDI stuff
Until we use something besides Native MIDI to play
back MIDI music, MIDI volume changing is disabled
since it causes way too much of a damn headache.
(It's not even our fault, it's fucking MS.)
2016-04-06 08:16:13 -07:00
Monster Iestyn
29f0301540 Whoops 2016-04-05 21:21:45 +01:00
Monster Iestyn
e8a4d7b7b8 Fix replay camera not being turnable when climbing, sliding ...and several other things.
If in analog mode, this does not apply (also analog mode replay camera no longer borks)
2016-04-05 20:56:48 +01:00
Monster Iestyn
1df25050be Merge branch 'next' into bp_random2 2016-04-05 17:26:05 +01:00
Monster Iestyn
93a1e46f1c Merge branch 'next' into slope-fixes 2016-04-05 17:19:28 +01:00
Monster Iestyn
acdba7316c Merge branch 'next' into skybox-hotfix 2016-04-05 17:18:48 +01:00
Monster Iestyn
53b093b197 Merge branch 'next' into portal-fix 2016-04-05 17:18:08 +01:00
Monster Iestyn
69a58d8369 Fix lighting parity between resolutions for sprites and FOFs 2016-04-05 15:33:55 +01:00
Monster Iestyn
7a369a5650 Turns out boss thing types re-setting mthing->z is a left-over from 1.09.4 and older versions
Apparently bosses and players used to use options >> 5 instead of 4 for z heights, or so it seems
2016-04-05 12:39:53 +01:00
Monster Iestyn
48e3b5e37d Corrected botch-up with plane viewangles, slope planes probably broke because of the last commit 2016-04-05 10:43:56 +01:00
Monster Iestyn
44fe6e0533 Fix sky rendering when visportals are on-screen.
They now render the same way they would if you were actually at the other side of each portal. Why didn't they do this before?
2016-04-04 21:46:51 +01:00
Monster Iestyn
3c5a8b806d Fix slope planes rendering at wrong heights when visportals are visible on-screen 2016-04-04 20:49:01 +01:00
Inuyasha
1db51f5a23 doomed# 750 shouldn't ever spawn objects 2016-04-03 19:49:27 -07:00
Monster Iestyn
5f3beb6899 Fix M_PI not being defined for Visual Studio 2016-04-02 20:09:00 +01:00
Monster Iestyn
cf89a5bb11 Removed obsolete PORTAL_LIMIT macro 2016-04-02 17:04:23 +01:00
Monster Iestyn
aab5e656ea removed unused "total" variable in P_GroupLines 2016-04-02 17:01:58 +01:00
Alam Ed Arias
1c16943be8 Merge branch 'next' into bp_random2 2016-03-31 21:44:03 -04:00
Alam Ed Arias
b45b9801d6 Merge branch 'next' into slope-fixes 2016-03-31 21:43:51 -04:00
Alam Ed Arias
d2241ce30a Merge branch 'next' into skybox-hotfix 2016-03-31 21:42:59 -04:00
wolfy852
f3f2c59622 Remove p_fab.c 2016-03-31 20:42:01 -05:00
Inuyasha
816990a3ed Merge branch 'polyobj-teeter-fix' into 'next'
Fix for teetering on PolyObjects

So... somebody goofed and didn't realise PolyObject sectors could be added to the sector node list for each object (which is referenced by mobj->touching_sectorlist), via their linedefs if they are nearby the player (yes, PolyObject linedefs are special and get to move about the level). As it turns out, this allows even INTANGIBLE PolyObjects to make you teeter in a seemingly inexplicable way.

What is happening is that PolyObject sectors, when they are added to the mentioned lists, are then checked under normal sector teetering conditions - if the player is above the floorheight by 24 FUs, you're officially teetering unless stated otherwise. The actual PolyObject teetering code can't help you here if the conditions are right, especially if they're taller than 24 FU in height.

There are a number of things wrong with the teetering code in general that I'd like to sort eventually, but at least now teetering on PolyObjects is fixed at last ...right? Please check the branch out if you can to check this, obviously.

See merge request !54
2016-03-31 20:55:28 -04:00
Inuyasha
042331edd5 Merge branch 'patch-scaling-flip-fix' into 'next'
Fixes for patch scaling and V_FLIP usage

The following issues are fixed by this branch:
* a patch using both scaling and V_FLIP does not appear in the "correct" place on the screen. Thanks to LJSonic for pointing this out to me on 'fun
* Scaled and/or V_FLIPed patches wrap at the left/right screen edges even though they're not supposed to. V_FLIP patches at these edges may also crop the wrong side of the patch if they're at the right edge.

See merge request !60
2016-03-31 20:21:51 -04:00
Inuyasha
31cec9dfee Merge branch 'portal-fix' into 'next'
Some fixes for portals

Specifically the following things are fixed in this branch:

* a memory leak resulting from not clearing away clipping-related arrays each tic you view a portal
* a very specific crash to do with portals sometimes (unintentionally) using a hack on drawsegs that don't actually belong to them ...which results in a crash if the drawsegs in question have midtextures. I reported it on the MB a year ago, with a test map included there: https://mb.srb2.org/showthread.php?t=38199&page=4#79
* another specific crash to do with mirrored (horizontally flipped) sprites that are scaled, particularly when you cover up the left edge of them via portals at the least. Needs more testing to be absolutely sure this is fixed, and is also reproducable in the test map linked in the post above

May be fine to merge changes into master too, I don't really know exactly

See merge request !42
2016-03-31 20:19:58 -04:00
Inuyasha
96c1d7a14b Merge branch 'camera-fix' into 'next'
Camera fix

This fixes the third person camera being silly around intangible PolyObjects, particularly the fact they can affect the camera's floorz and ceilingz even though I see no reason why they should do so.

Also a good reminder that POF_SOLID is the same as POF_CLIPLINES and POF_CLIPPLANES combined, which is probably how this issue came about to begin with. Can't say that with certainty of course.

See merge request !57
2016-03-31 20:17:27 -04:00
Alam Ed Arias
6b9fd60f06 Merge branch 'next' into camera-fix 2016-03-31 12:28:31 -04:00
Alam Ed Arias
e8770f0264 Merge branch 'next' into skybox-hotfix 2016-03-31 12:28:19 -04:00
Alam Ed Arias
8b4236c00d Merge branch 'next' into portal-fix 2016-03-31 12:27:55 -04:00
Alam Ed Arias
121f144e3c Merge branch 'next' into patch-scaling-flip-fix 2016-03-31 12:27:43 -04:00
Alam Ed Arias
47bb95f5f5 Merge branch 'next' into polyobj-teeter-fix 2016-03-31 12:26:52 -04:00
Alam Ed Arias
e16129a8c5 Merge branch 'next' into closestpointonline 2016-03-31 12:17:52 -04:00
Alam Ed Arias
32a950893e Merge branch 'next' into slope-fixes 2016-03-31 12:17:40 -04:00
Alam Ed Arias
d77e541f29 Merge branch 'next' into bp_random2 2016-03-31 12:15:09 -04:00
Monster Iestyn
e34da95c4c DEVMODE's automap now supports slopes 2016-03-31 16:32:25 +01:00
Inuyasha
fc8e7728cd I meant to extend this to 4 seconds but forgot 2016-03-31 06:57:11 -07:00
Inuyasha
690b65b47f "Sonic can now become Super Sonic" exists again
Fixed an off-by-one array error in the process
2016-03-31 06:51:04 -07:00
Inuyasha
3812b6bc20 the abs() is necessary; force unsigned shift and signed result 2016-03-31 06:48:08 -07:00
Alam Ed Arias
283c64ee20 Merge branch 'next' into camera-fix 2016-03-30 20:49:44 -04:00
Alam Ed Arias
9fcd06f152 Merge branch 'next' into skybox-hotfix 2016-03-30 20:49:20 -04:00
Alam Ed Arias
f84d76c683 Merge branch 'next' into portal-fix 2016-03-30 20:43:25 -04:00
Alam Ed Arias
44afedd85f Merge branch 'next' into patch-scaling-flip-fix 2016-03-30 20:42:59 -04:00
Alam Ed Arias
d26c486c6d Merge branch 'next' into polyobj-teeter-fix 2016-03-30 20:42:33 -04:00
Alam Ed Arias
bdcdf8ddab Merge branch 'next' into closestpointonline 2016-03-30 20:42:07 -04:00
Alam Ed Arias
4370459166 Merge branch 'next' into slope-fixes 2016-03-30 20:41:33 -04:00
Alam Ed Arias
a935ac21e8 Merge branch 'next' into bp_random2 2016-03-30 20:40:48 -04:00
Alam Ed Arias
75f65c4d44 using abs() on unsigned have no effect 2016-03-30 20:17:09 -04:00
Alam Ed Arias
51aa7692d8 Merge branch 'master' into next 2016-03-30 20:15:08 -04:00
Alam Ed Arias
d90536967d removed/remline ununsed code 2016-03-30 14:05:07 -04:00
Alam Ed Arias
b169529dfd switich to do the angle math in signed, then run it thur abs() 2016-03-30 11:47:27 -04:00
Inuyasha
9cec9093bb denom of A_CheckRandom can't be zero, that would be bad 2016-03-30 06:20:57 -07:00
Alam Ed Arias
0fe6ee5339 cleanup abs warnings 2016-03-30 00:22:12 -04:00
Inuyasha
caf081b6f5 Merge branch 'bp_random2' of http://git.magicalgirl.moe/STJr/SRB2 into bp_random2 2016-03-29 16:35:21 -07:00
Inuyasha
480f9be51f gotta start compensating for xorshift's needs 2016-03-29 16:27:57 -07:00
Inuyasha
3dc4cfc229 Simplicity is a virute... don't overcomplicate things. 2016-03-29 16:27:56 -07:00
Inuyasha
a3e940fe65 Compensate for insufficient RAND_MAX values. 2016-03-29 16:27:56 -07:00
Inuyasha
ac03ce39c8 *_Random is now *_RandomByte.
P_RandomChance is now a macro for something that should happen a
certain percentage of time.

P_SignedRandom was moved to a macro. Nobody cared.

# Conflicts:
#	src/p_inter.c
2016-03-29 16:27:55 -07:00
Inuyasha
ce2c2de58a P_Random now using a variant of xorshift
This actually passes most diehard tests, as opposed to the old RNG.
It's also similarly fast.

Internally the PRNG generates a fixed point number from [0,1) now,
which makes P_RandomKey and P_RandomRange much easier to
calculate. P_Random is just a simple shift, as well.

Also, the lack of floating point math in P_RandomKey and
P_RandomRange now is probably for the best.
2016-03-29 16:27:25 -07:00
Monster Iestyn
1108a52959 Check change in ceilinglightsec for markceiling code, not floorlightsec 2016-03-29 22:44:16 +01:00
Monster Iestyn
ee00da6a74 Another thing that probably needed to check for slopes 2016-03-29 22:32:09 +01:00
Monster Iestyn
ef832dd8b8 Fixed how two adjacent FOFs can prevent each others' walls from displaying if they're at least partially covered
Also some miscellaneous tweaks and changes to account for slopes properly
2016-03-29 18:59:56 +01:00
Monster Iestyn
6bda1a57a5 Fix FOF plane light underside checks 2016-03-29 15:40:01 +01:00
Monster Iestyn
bc8ea700ed Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into closestpointonline 2016-03-26 18:32:51 +00:00
Alam Ed Arias
583ffd2537 Merge branch 'next' into patch-scaling-flip-fix 2016-03-25 22:40:17 -04:00
Alam Ed Arias
f50a46a0cd Merge branch 'next' into camera-fix 2016-03-25 22:40:04 -04:00
Alam Ed Arias
b11236a591 Merge branch 'next' into skybox-hotfix 2016-03-25 22:39:51 -04:00
Alam Ed Arias
21b13acd4b Merge branch 'next' into polyobj-teeter-fix 2016-03-25 22:39:41 -04:00
Alam Ed Arias
b29a176275 Merge branch 'next' into slope-fixes 2016-03-25 22:39:11 -04:00
Alam Ed Arias
8d3ded4020 Merge branch 'next' into portal-fix 2016-03-25 22:38:56 -04:00
Alam Ed Arias
c23d971bcb Merge branch 'master' into next 2016-03-25 22:37:48 -04:00
Alam Ed Arias
0f853640e2 macosx: We need CoreFoudation for SDLMain 2016-03-25 22:23:47 -04:00
Alam Ed Arias
077781cc56 macosx: drop CoreFoundation linking 2016-03-25 22:11:39 -04:00
Alam Ed Arias
2c4a27c7c6 macosx: let fix linking to SDL frameworks 2016-03-25 22:07:34 -04:00
Alam Ed Arias
18f51b343b build: more mac fixes 2016-03-25 20:37:14 -04:00
Alam Ed Arias
dadf8e1260 cmake: remove fixed HWRENDER define 2016-03-25 20:21:56 -04:00
Alam Ed Arias
0c9081f762 cmake: try to fixup mac build 2016-03-25 20:10:14 -04:00
Alam Ed Arias
de2d327da7 Merge branch 'next' into patch-scaling-flip-fix 2016-03-25 18:47:21 -04:00
Alam Ed Arias
169210138d Merge branch 'next' into camera-fix 2016-03-25 18:45:57 -04:00
Alam Ed Arias
5945b8f16c Merge branch 'next' into skybox-hotfix 2016-03-25 18:45:00 -04:00
Alam Ed Arias
42aa41c552 Merge branch 'next' into polyobj-teeter-fix 2016-03-25 18:44:30 -04:00
Alam Ed Arias
49b1c277af Merge branch 'next' into portal-fix 2016-03-25 18:43:07 -04:00
Alam Ed Arias
62d93a349f Merge branch 'next' into slope-fixes 2016-03-25 18:42:01 -04:00
Alam Ed Arias
a567ce8e8e Merge branch 'master' into next 2016-03-25 16:40:13 -04:00
Monster Iestyn
3698c2583d wrap prevention code now takes flipped patches into account 2016-03-25 20:04:49 +00:00
Monster Iestyn
76d71bda92 destend now scales the added-on patch width properly if needed 2016-03-25 19:43:17 +00:00
Monster Iestyn
ec5b272fa6 Unless I'm mistaken, scalesteps/heightsteps should be divided by stop-start, not stop-start+1. Revert this commit if that was intentional. 2016-03-19 23:19:05 +00:00
Monster Iestyn
28631c30b7 Fix maskedtextureheight being set outside of ESLOPE code 2016-03-19 22:25:49 +00:00
Monster Iestyn
a82c19adb1 Fix sprites displaying behind "closed doors" when slopes are present.
For the record, thok barriers count as "closed doors" in SRB2 level contexts
2016-03-19 16:19:58 +00:00
Monster Iestyn
6623a9148e Fix HOMs by actually bothering to check if either side of a seg has slopes for height-checking code 2016-03-18 23:58:58 +00:00
Monster Iestyn
e941687d4c R_RenderMaskedSegRange now checks for slopes in the sector lightlist
in other words, midtexture rendering should now correctly account for slopes from FOFs that could affect lighting/colormap
2016-03-18 20:33:16 +00:00
Monster Iestyn
5dd0e533b3 Removed unused "supdate" variable 2016-03-15 21:18:25 +00:00
Alam Ed Arias
6301deb2a5 Merge branch 'master' into next 2016-03-14 13:25:37 -04:00
Inuyasha
2ecdd9e6f9 Branch and revision information in builds
Also makes comptime.bat work with git if able.
Development builds will now show the branch and the SHA1 hash of the revision. Also been tested to work with subversion, where it displays "Subversion r####". You know, just in case.
2016-03-14 12:43:08 -04:00
Alam Ed Arias
f5b56f2a07 fixup 2016-03-14 12:28:22 -04:00
Alam Ed Arias
f9949a3026 dropping NOVERSION, you will not build SRB2 without a SCM 2016-03-14 12:24:51 -04:00
Monster Iestyn
13f4ef2f34 Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into slope-fixes 2016-03-12 23:06:37 +00:00
Monster Iestyn
accab7da6a Fixed precipitation not checking for slopes 2016-03-12 23:03:56 +00:00
Monster Iestyn
c67683eb0a Fixed slope walls displaying sprites through them if they weren't completely above you
Sadly this does not fix ALL sprite issues, but just some of them at the least
2016-03-12 19:59:32 +00:00
Monster Iestyn
d82c9a66db Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into skybox-hotfix 2016-03-11 17:13:31 +00:00
Wolfy
3232549971 Merge branch 'changeangle-hotfix' into 'next'
Changeangle hotfix

Fixes an issue with A_ChangeAngleAbsolute reported on the MB https://mb.srb2.org/showthread.php?t=41236

See merge request !59
2016-03-11 02:57:51 -05:00
Alam Ed Arias
81fc9df8d3 Merge branch 'master' into next 2016-03-10 18:02:23 -05:00
Alam Ed Arias
65c94218b9 Merge branch 'next' into changeangle-hotfix 2016-03-10 17:39:35 -05:00
Monster Iestyn
5b89164cf7 Fix camera going nuts around intangible polyobjects 2016-03-10 20:50:54 +00:00
Inuyasha
83e9eb6df4 patch.dta officially in use. Version number updated. 2016-03-09 18:30:11 -08:00
Alam Arias
771c1ecb8a Merge pull request #68 from Yukitty/revert-Lua-angles
Revert "Change angle_t handling in Lua."
2016-03-09 11:58:51 -05:00
Inuyasha
a7cb049b65 leave a dummy string in dehacked, nothing more.
a courtesy fuck you to gitlab for making me have to keep
the previous screwed up bullshit in this branch.
2016-03-09 06:23:57 -08:00
Inuyasha
f40cfb0271 Revert "MFE_DUMMY now exists to fill the slot where MFE_PUSHED was, bleh"
This reverts commit 4625118ee8.
2016-03-09 06:22:40 -08:00
Monster Iestyn
4625118ee8 MFE_DUMMY now exists to fill the slot where MFE_PUSHED was, bleh 2016-03-09 14:03:20 +00:00
Monster Iestyn
bf415b8618 Revert "Shifted down the last few mobj eflags to close gap left by MF2_PUSHED -> MFE_PUSHED undo"
This reverts commit 280e932f02.
2016-03-09 13:59:10 +00:00
Monster Iestyn
280e932f02 Shifted down the last few mobj eflags to close gap left by MF2_PUSHED -> MFE_PUSHED undo 2016-03-09 13:38:30 +00:00
JTE
54f95eb387 Revert "Change angle_t handling in Lua."
This partially reverts commit ef0e61fc33.
2016-03-09 08:38:10 -05:00
Inuyasha
5a38088623 Well, we don't need "experimental" slopes anymore either
Not when we have properly working ones!
2016-03-09 01:09:21 -08:00
Inuyasha
6aa708b5af I don't think we need the BLUE_SPHERES define anymore... 2016-03-09 00:49:35 -08:00
Inuyasha
436bcdf19a Objectplace handles slopes.
Sorry MI, I'm hijacking your branch for a bit.
2016-03-08 23:43:43 -08:00
Inuyasha
7ae87cc2c6 Revert "No more stupidity for No More Enemies special plz"
This reverts commit 474ad01b46.
2016-03-08 22:22:30 -08:00
Inuyasha
cfcd7ce0d3 Readded EvalMath to Lua.
There is a caveat to this: The first time EvalMath is used, a
deprecated function warning will be shown to the user that tells
them to use _G[] instead.

This reverts commit 9d36cf37bd.
2016-03-08 22:15:26 -08:00
Inuyasha
694220155e Revert "MF2_PUSHED is now MFE_PUSHED, for the simple reason that it makes more sense as an eflags object flag than a flags2 object flag!"
This reverts commit c8c7878005.

# Conflicts:
#	src/dehacked.c
#	src/p_mobj.c
#	src/p_mobj.h
2016-03-08 21:30:12 -08:00
Alam Ed Arias
407bf4f39d Merge branch 'next' into polyobj-teeter-fix 2016-03-07 16:46:32 -05:00
Alam Ed Arias
55a6355e15 Merge branch 'next' into slope-fixes 2016-03-07 16:45:51 -05:00
Alam Ed Arias
b173c3e31e Merge branch 'next' into portal-fix 2016-03-07 16:44:59 -05:00
Alam Ed Arias
178d904bb9 Merge branch 'master' into portal-fix 2016-03-07 16:22:41 -05:00
Alam Ed Arias
c4b0c6ec56 Merge branch 'master' into gl-slopes 2016-03-07 16:22:10 -05:00
Alam Ed Arias
3ab3de20d7 Merge branch 'master' into polyobj-teeter-fix 2016-03-07 16:21:32 -05:00
Alam Ed Arias
6ab6cc959c Merge branch 'master' into slope-fixes 2016-03-07 16:16:40 -05:00
Monster Iestyn
eab51414f3 Fix typo in A_ChangeAngleAbsolute 2016-03-07 21:16:02 +00:00
Monster Iestyn
60ea2ecb77 Whoops, forgot these 2016-03-07 21:02:35 +00:00
Monster Iestyn
2f539a4df9 R_RenderThickSideRange now checks for slopes in the front sector's lightlist
This appears to fix a few holes that have been known to appear with FOF slopes sometimes, dunno how they actually came about exactly but this apparently sorts them out
2016-03-07 20:42:25 +00:00
Monster Iestyn
4ab2c336e7 Possibly fixed the issues with LibGME mentioned in issue #14.
Not even the HAVE_LIBGME macro was defined apparently, huh.
2016-03-06 19:32:07 +00:00
Monster Iestyn
099e25824f First person view now should correctly take the skybox centerpoint's angle into account 2016-03-05 16:29:25 +00:00
Wolfy
e769b7882c Merge branch 'lua-sector-lines' into 'next'
Lua sector lines

Adds support for "sector.lines" in Lua, an array containing all the linedefs in a particular sector variable:

#sector.lines returns the number of lines in the sector.

sector.lines\[ _i_ \] (e.g. sector.lines[0], sector.lines[1], sector.lines[2], etc ....) gives you individual linedefs in the sector. If the number you supply is equal to or greater than #sector.lines, this returns nil.

Test script for your benefit: (see comments)

Type "luatest" in console in any level and you'll get a few print messages that tests these features for sectors[0]

See merge request !32
2016-03-04 10:23:42 -05:00
Wolfy
7eaf3cf221 Merge branch 'new-SOC-lump-names' into 'next'
SOC_**** lump name support

Exactly what it says on the tin: lumps with "SOC_" prefix now are read as SOC lumps like with MAINCFG/OBJCTCFG. Go nuts.

As a bonus, I've changed things with SOC lump detection so MAINCFG, OBJCTCFG and the new SOC_**** lumps are loaded in the order you find them in WAD files (rather than an arbitrary load-MAINCFG-then-load-OBJCTCFG thing as before). All of these are still loaded after Lua scripts though, mind.

See merge request !38
2016-03-04 10:23:20 -05:00
Wolfy
891c7843ca Merge branch 'Lua-video-lib-expansion' into 'next'
Lua video lib expansion

New video/drawer library functions for hud.add to use:

v.width() and v.height() return the screen width and height respectively (in other words you get the screen resolution), while v.renderer() returns the string for the renderer used ("software", "opengl", or "none").

Possibly add more stuff later, but for now these things at the least can be merged in next

See merge request !40
2016-03-04 10:21:15 -05:00
Monster Iestyn
4302cfaa00 Merge branch 'playerspawn-hook' into 'next'
Add PlayerSpawn hook to Lua

I don't know how I did this but I did. Something about staring at code from 3AM till 5AM...

Here's a test script too:

```Lua
addHook("PlayerSpawn", function(player) player.health = 99 end)

```

See merge request !48
2016-03-04 10:19:18 -05:00
Inuyasha
e6f7b8ab26 Merge branch 'version-constants' into 'next'
Version constants for Lua

Pretty simple thing. Allows scripters to use VERSION, SUBVERSION, and VERSIONSTRING to check the game's version and potentially futureproof scripts. Have tested and confirmed working on my end.

See merge request !55
2016-03-03 22:33:36 -05:00
Inuyasha
a8bca89dbd Merge branch 'backport_unslot-music' into 'next'
BACKPORT: removal of music slots

Relevant commits cherry-picked. Basically everything except the internal music track name switches.

See merge request !43
2016-03-03 22:31:21 -05:00
Yukita Mayako
b368936b03 Fix bad logic in LUAh_NetArchiveHook rewrite...
Argh, I knew I was forgetting something! archFunc is the argument to be passed to the hooks, not tables!
2016-03-03 17:30:46 -05:00
Yukita Mayako
9d6e75ae4f Cleanup LUAh_NetArchiveHook prototype mess. 2016-03-03 17:30:10 -05:00
Yukita Mayako
0bdc976d50 Shut up compiler warning. 2016-03-03 17:19:35 -05:00
Yukita Mayako
7ae871c7f8 Fix errenous stack pop.
This function is intended to leave the stack in the same state it recieved it.
2016-03-03 17:19:21 -05:00
Yukita Mayako
0b704ba618 Updated NetArchiveHook to lua_hooklib.c
Fixes I_Assert failure crash due to hooks working differently now.
2016-03-03 17:07:05 -05:00
Monster Iestyn
4f9bb15e4d "Loading SOC from" console message now also displays the name of the SOC_ lump 2016-03-03 18:31:17 +00:00
Inuyasha
61a0d1bcd1 don't use lstring
you have space for a null terminator there...
2016-03-03 03:09:35 -08:00
Inuyasha
7349cbdbc0 Backwards compatibility.
A test WAD for all possible use cases I can think of
can be found here:
https://dl.dropboxusercontent.com/u/3518218/21/secret/bc_test.wad
2016-03-03 02:54:07 -08:00
Monster Iestyn
668cc85d7b P_ClosestPointOnLine can now (optionally) take custom coordinates that you want to make up your line 2016-03-02 20:31:04 +00:00
wolfy852
ab288a7d1a Allow Lua to read VERSION, SUBVERSION, and VERSIONSTRING constants 2016-03-01 17:48:10 -06:00
Monster Iestyn
eb1c85db48 Merge branch 'slope-fixes' of http://git.magicalgirl.moe/STJr/SRB2.git into slope-fixes 2016-03-01 19:55:48 +00:00
Monster Iestyn
98fd5ca63b Made some FOF-related seg code account for slopes, as requested by some TODOs
The funny thing is you really can't see ANY change here unless you have a sloped FOF intersecting a sector floor/ceiling (and a second FOF on the other side), which has other problems anyway lol
2016-03-01 19:55:13 +00:00
Inuyasha
fc35c8557e Super color code cleaning, speed 50%, nothing special 2016-02-29 01:18:33 -08:00
Monster Iestyn
ffa9a4e056 Removed the removal of SF_SUPER from skins other than Sonic
# Conflicts:
#	src/r_things.c
2016-02-29 01:16:17 -08:00
Inuyasha
372002d2ad Merge branch 'backport_state-animations' into 'next'
BACKPORT: FF_ANIMATE simplistic state animations

this is a lot more complex due to the need to remove the dispoffset related code as well as a lot of the redefinitions; combined with the code changes due to the sprite2 system in internal master.

~~BEFORE ACCEPTING THIS: get sryder to look at and fix any possible brokenness with OpenGL MD2s~~

See merge request !45
2016-02-29 03:04:00 -05:00
Inuyasha
be642b41e2 Merge branch 'backport_special-stage-fade' into 'next'
BACKPORT: special stage fade

literally a straight cherry-pick of the old repository, this is a very simple change after all.

See merge request !44
2016-02-29 03:02:30 -05:00
Inuyasha
4bb7143967 Merge branch 'fof-flag-change-hotfix' into 'next'
Fof flag change hotfix

This fixes rendering issues caused by changing FOF flags mid-level via Lua or linedef type 445. Everything else that toggles FF_EXISTS already had this fix it turns out.

Not sure if this is safe for master too, could someone check that for me?

See merge request !53
2016-02-29 02:57:47 -05:00
Inuyasha
e2b3adc04f Randy Heit -> Randi Heit 2016-02-28 18:21:37 -08:00
Monster Iestyn
4b447b3d0d Don't add polyobjects to a mobj's sector nodes list. This causes the player to teeter whenever they are above the polyobject's bottom, whether or not it is solid
Also, a minor tweak for the teetering code itself, though it looks a right mess and probably should be redone in the future
2016-02-28 18:30:29 +00:00
wolfy852
c3166e40b0 Update names in credits
Same as the commit in internal, minus toaster's name (by request, of course.)
2016-02-27 14:27:14 -06:00
Monster Iestyn
c7ba1d1532 Make sure target sector's lightlist is reset whenever FOF flags are changed.
This fixes how removing certain flags (such as FF_EXISTS) from FOFs can cause HOMs on walls bordering their target sectors. Also fixes how the force-FOF-to-vanish linedef special can leave behind the FOF's shadow
2016-02-26 18:11:12 +00:00
Inuyasha
f5ba192f0b remove extraneous va() calls 2016-02-25 23:31:48 -08:00
Alam Ed Arias
2ba90082c3 Merge branch 'next' into gl-slopes 2016-02-26 02:14:00 -05:00
Alam Ed Arias
2b12e5ff20 Merge branch 'next' into backport_unslot-music 2016-02-26 02:11:29 -05:00
Alam Ed Arias
07d331676b Merge branch 'next' into slope-fixes 2016-02-26 02:09:03 -05:00
Alam Ed Arias
77dc27d070 Merge branch 'next' into backport_state-animations 2016-02-26 02:06:57 -05:00
Alam Ed Arias
0a2078d0c0 Merge branch 'next' into playerspawn-hook 2016-02-26 02:05:24 -05:00
Alam Ed Arias
49877262e3 Merge branch 'next' into backport_special-stage-fade 2016-02-26 02:00:38 -05:00
Alam Ed Arias
9d3f7d760b Merge branch 'next' into portal-fix 2016-02-26 01:58:55 -05:00
Alam Ed Arias
8d2b4102d1 Merge branch 'next' into Lua-video-lib-expansion 2016-02-26 01:58:19 -05:00
Alam Ed Arias
18688f476f Merge branch 'next' into new-SOC-lump-names 2016-02-26 01:58:07 -05:00
Alam Ed Arias
09d2bbc448 Merge branch 'next' into lua-sector-lines 2016-02-26 01:57:15 -05:00
wolfy852
8f0abb267e Don't mix declarations and code 2016-02-25 22:47:52 -06:00
wolfy852
5c9aaf2fe4 Move hook into G_SpawnPlayer 2016-02-25 22:28:19 -06:00
Alam Ed Arias
b3b5521e1b Merge branch 'master' into next 2016-02-25 18:33:29 -05:00
Alam Ed Arias
8a369d969b whitespace clean 2016-02-25 18:31:40 -05:00
Inuyasha
1e15ed2f7b Merge branch 'i-hate-stupid-speedrun-tricks' into 'next'
Fix chain launching

Basically you're not allowed to launch off a chain the frame you touch it anymore.

Coincidentally the changes here allow you to actually use PF_*STASIS in a Lua script now and have it work as you'd expect it to (it lasts for a tic).

See merge request !49
2016-02-25 18:12:39 -05:00
Inuyasha
aa4414d706 Merge branch 'sdlmix-master' into 'master'
cpuaffinity/sdl_mixer changes

Hopefully this will alleviate SDL2 sound issues.

If not, hopefully this will give us info on what the hell is going on.

See merge request !51
2016-02-25 18:12:10 -05:00
Inuyasha
f10279d61b Very minor performance improvement. 2016-02-25 14:35:05 -08:00
Monster Iestyn
3802ec33de Fixed how dying players who were standing on slopes just jump off to the side 2016-02-23 22:53:24 +00:00
Inuyasha
6dda71bef7 I guess this is becoming the "try to make SDL_mixer work" branch
Move InitSubSystem calls into proper places,
don't use AUDIO_S16LSB (bad according to SDL_mixer docs)
Add error checking
2016-02-22 23:08:35 -08:00
Inuyasha
b258b9b503 remove cpuaffinity code from SDL
still exists in DD (while it exists) but no longer saves.
No reason whatsoever for affinity to be settable by the game itself.
2016-02-22 23:08:34 -08:00
Alam Ed Arias
0369f39ef4 Merge branch 'master' into gl-slopes 2016-02-22 00:15:26 -05:00
RedEnchilada
bcd05b1c63 Also fixed it for MD2s 2016-02-21 23:04:14 -06:00
RedEnchilada
ce793dfe28 Fix vissprite-related crashing in OGL 2016-02-21 22:50:29 -06:00
Monster Iestyn
f87f1b7b1a Fixed compiler errors as well as a ton of tab spaces (apparently it's a common problem in this file anyway but whatever) 2016-02-21 11:37:59 -06:00
Monster Iestyn
3058648fdc Fix elemental flame trails not spawning when going up slopes 2016-02-16 17:58:08 +00:00
Monster Iestyn
03470118cd Added missing ESLOPE ifdef from when I first did these fixes for slope compiling 2016-02-15 20:57:35 +00:00
Monster Iestyn
fa1bc5a09b Whoops forgot this for last commit 2016-02-15 20:55:57 +00:00
Monster Iestyn
b5673ed101 Fix player spawning on slopes 2016-02-15 20:46:56 +00:00