Commit graph

714 commits

Author SHA1 Message Date
Alam Ed Arias 3bfc402241 whitespace cleanup 2016-01-21 13:53:21 -05:00
Alam Ed Arias 6189d1a2ca whitespace cleanup 2016-01-21 13:53:21 -05:00
Inuyasha d6d662b2dc Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-01-20 09:43:53 -08:00
Inuyasha 9d5718760d interscreen is a lump name and thus needs lstring
... not just lstring though, but the behavior with i that is used elsewhere.
2016-01-20 09:42:35 -08:00
Inuyasha d36e9a425f Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-01-20 09:27:50 -08:00
Inuyasha 7d6dc3a5bb fix bad lstring usage in map header lua
This is not how you use pushlstring! This is actually sending uninitialized memory to Lua, which is making scripts have inconsistent results (duh?)

c/o JTE: "Tell Red they're a doofus."
2016-01-20 09:25:28 -08:00
Inuyasha d15aee9d44 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-01-20 04:41:56 -08:00
Inuyasha 61eb9c01d1 Merge branch 'coloropposite-hotfix' into 'next'
Coloropposite hotfix

Quick fix to prevent ColorOpposite(MAXSKINCOLORS) or higher input from giving results out of the actual array's bounds. In other words, preventing it from giving you nonsense values or something.

I created the function for Lua to begin with, so clearly this is 100% my fault once again. Welp.

See merge request !31
2016-01-20 07:40:05 -05:00
Inuyasha 55f0e5cab5 objectplace stability fix
Objectplace reallocates the mapthings list to add one more mapthing. By itself there's no problem with this.
But, mobj->spawnpoint is a pointer to the mapthing's location in the mapthings list.
So by reallocating the mapthings list, all references to mobj->spawnpoints point to freed memory.

... Oops.

Now when objectplace reallocates the mapthings list it actually corrects the locations of all mobj's spawnpoints to point to the new list.

Hooray, you can use NiGHTS objectplace again if you really want to.
2016-01-20 01:24:30 -08:00
Inuyasha 96913c4a47 objectplace stability fix
Objectplace reallocates the mapthings list to add one more mapthing. By itself there's no problem with this.
But, mobj->spawnpoint is a pointer to the mapthing's location in the mapthings list.
So by reallocating the mapthings list, all references to mobj->spawnpoints point to freed memory.

... Oops.

Now when objectplace reallocates the mapthings list it actually corrects the locations of all mobj's spawnpoints to point to the new list.

Hooray, you can use NiGHTS objectplace again if you really want to.
2016-01-20 01:13:21 -08:00
Monster Iestyn c6a2bde7d9 Use modulo, not bitwise AND. My fault once again, whoops.
The point here is ColorOpposite(MAXSKINCOLORS) would have given an actual result of its own since MAXSKINCOLORS & MAXSKINCOLORS is still MAXSKINCOLORS. This shouldn't happen though, as both Color_Opposite[MAXSKINCOLORS*2] and Color_Opposite[MAXSKINCOLOR*2+1] aren't defined.
2016-01-18 19:46:00 +00:00
Inuyasha 6fd3036112 Makefile can run comptime.bat from src\ too 2016-01-16 11:39:39 -08:00
Inuyasha 071006bcb0 Makefile can run comptime.bat from src\ too 2016-01-16 11:35:34 -08:00
Alam Ed Arias 1a56d48cd9 Merge branch 'public_next' into master 2016-01-14 12:37:04 -05:00
Alam Ed Arias 106287aca5 SDL: config.h.in is pre source tree, config.h for each cmake build 2016-01-14 12:32:04 -05:00
Monster Iestyn 99fad84674 Added missing SHORT macros around these variables, they're needed for big-endian builds to use these properly
...I'm to blame for this particular slipup as it happens, surprise surprise
2016-01-14 16:41:40 +00:00
Monster Iestyn e31c7ae3fa Removed dummied-out Pope XVI code 2016-01-14 16:41:33 +00:00
Monster Iestyn a52f31f30e doomtype.h tweaks
some of the mess in here really bothers me
2016-01-14 16:41:26 +00:00
Monster Iestyn 01ef2d3ca3 If this isn't an accidental copy+paste then I'd be very surprised 2016-01-14 16:41:19 +00:00
Monster Iestyn 7e94ee8422 From what I can tell, correcting this one value in finetangent[] shouldn't cause any harm at all, so... 2016-01-14 16:41:10 +00:00
Monster Iestyn 1e131d2786 Partial undo of what I did last commit to make Inu happy again.
Note: polyobj_t's "translucency" is apparently a SIGNED integer, so in theory it's possible to get polyobj flats to use the "spanfunc = splatfunc" line using negative values. If this is not meant to happen, this should probably be fixed asap

Conflicts:
	src/f_wipe.c
2016-01-14 16:40:55 +00:00
Monster Iestyn 734419d549 FF_TRANSSHIFT is meant for transmaps linked to states, not anything else!
I'm surprised how the source code flew in the face of this fact for so long and just used it everywhere, that's just silly.

Conflicts:
	src/f_wipe.c
2016-01-14 16:39:31 +00:00
Monster Iestyn 69550e98fe Since cv_pointlimit is handled in P_CheckPointLimit, I've just created P_CheckTimeLimit for cv_timelimit.
It helps make P_UpdateSpecials less messy-looking anyway.
2016-01-14 16:32:30 +00:00
Monster Iestyn 693058adae Replaced the old finetangent[] with a new more accurate one I made using a Python script.
Actually uses 0 and 65536 now! (and also INT32_MIN)
2016-01-14 16:32:22 +00:00
Monster Iestyn d4f2d24921 Fix up lib_finetangent so tan() returns values starting from "0" in Lua (finetangent itself hasn't been touched)
Also fixed how the function went out of the array's bounds for ANGLE_180 and above (or negative angles)
2016-01-14 16:32:13 +00:00
Monster Iestyn a0df3cec7b Move finecosine[] declaration to where it really belongs in the source code 2016-01-14 16:32:02 +00:00
Inuyasha 420a27ce11 Attempt to play nice to cmake. 2016-01-14 07:46:28 -08:00
Inuyasha ff21b571b4 SVN needs the revision prefixed with 'r' 2016-01-14 07:46:28 -08:00
Inuyasha 06dea3ab78 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-01-14 07:46:27 -08:00
Inuyasha dd6df4cc79 Merge branch 'versioning' into 'master'
Updates to comptime.sh/comptime.bat for branch/revision info

Basically makes comptime.bat work with git, displays branch and SHA-1 hash of revision information in the menu, etc.

See merge request !23
2016-01-14 10:39:29 -05:00
Inuyasha c2f40b6b00 Attempt to play nice to cmake. 2016-01-14 07:37:58 -08:00
Inuyasha a4badcfe54 Revert the revert because it turns out Rob is a doofus
player.dta was in a sort of mishmashed half designed for one SPR2 layout and half the other.

This reverts commit cc0fbf1c1b.
2016-01-14 06:35:10 -08:00
Inuyasha cc0fbf1c1b Revert "Several changes to split jump anims from spin anims:"
This reverts commit 27b65e3569.
2016-01-14 04:57:17 -08:00
Inuyasha ada7e6497a SVN needs the revision prefixed with 'r' 2016-01-14 04:36:27 -08:00
Inuyasha 752d97dfb3 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-01-14 04:31:48 -08:00
Inuyasha f2b2cd3f7a Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next 2016-01-13 22:55:15 -08:00
Monster Iestyn 529f5af614 Removed a few old OpenGL-specific hacks that compensated for lack of dispoffset
(I won't touch overlays for now)
2016-01-13 22:50:16 -08:00
Monster Iestyn 4a8dd8031e dispoffset now works in OpenGL 2016-01-13 22:50:15 -08:00
Monster Iestyn 049689334d large dispoffset values no longer cause sprites to be distorted
more detailed description: vissprites now store dispoffset in a separate variable from (y)scale, and uses it to influence order between sprites without it affecting the actual drawing of the sprites themselves
2016-01-13 22:50:14 -08:00
Inuyasha fea0a9577a Further optimization of fading code because I'm crazy
The less branches, the better.

Optimization is a bitch, you know.
2016-01-13 22:48:39 -08:00
Alam Ed Arias 5ead3c0e30 Merge remote-tracking branch 'public/master' into next 2016-01-14 01:45:45 -05:00
Inuyasha 24d1874fd6 Merge branch 'Rob-request-player-anims' into 'master'
Rob request player anims

[21:44:35] <@Rob> As far as I can tell the player-anims that I requested work
[21:44:45] <@Rob> That can probably be merged at this point

See merge request !22
2016-01-14 00:52:26 -05:00
Inuyasha 2450e2d43c Merge branch 'sp-supers-for-everyone' into 'master'
Sp supers for everyone

Getting simple changes out of the way.

See merge request !21
2016-01-14 00:39:40 -05:00
Inuyasha ef4aad3655 Merge branch 'monster's-miscellaneous-meddling' into 'master'
Monster's miscellaneous meddling

A miscellaneous assortment of code-cleanup and other changes, plus fixing up SRB2's tangent array so it behaves more as expected (especially on the Lua side).

More specific details of the changes:

(MUST-HAVE CHANGES)
* `finetangent[]` has been entirely redone in the same manner as finesine/finecosine.
* Lua's tan() function shifts `finetangent[]` results by `ANGLE_90` to get what you EXPECT it to return (e.g. `tan(0)` actually returns 0 now). This means finetangent itself doesn't need to change its general arrangment, this only affects Lua specifically.
* Lua's tan() function now also doesn't go out of `finetangent[]`'s bounds at all. Before, `tan(ANGLE_180)` through `tan(ANGLE_MAX)` and such would just give you values unrelated to the array in question, which was clearly a bad thing.

(CAN PROBABLY LIVE WITHOUT?)
* `finecosine`'s definition moved from r_main.c to tables.c.
* Created `P_CheckTimeLimit` for `cv_timelimit`, much like `cv_pointlimit` has `P_CheckPointLimit`. It cleans up `P_UpdateSpecials` a bit at least.
* Some code cleanup relating to translucency maps - these are kind of unimportant, I was about to stop `FF_TRANSMASK` being used everywhere, but this was apparently a bad idea so I backtracked a bit.
* Re-added `_MSC_VER` check around MSVC-specific code in doomtype.h, in case it wasn't defined (and `__OS2__` was). Also left a comment there regarding `__BYTEBOOL__`.
* Fixed an apparent copy+paste goofup in `joyaxis_cons_t[]` for the Wii-specific code.

See merge request !10
2016-01-13 22:22:53 -05:00
Monster Iestyn 4eb8ba7bf7 Merge branch 'fix-md2s' into 'next'
Fix md2s

shoutouts to MI for breaking them accidentally

I was about to just commit this straight to next but it's the perfect reason of why code review is beneficial and I'd be a hypocrite to point that out and then skip the process

See merge request !28
2016-01-13 22:20:31 -05:00
Inuyasha 437b0ac692 Merge branch 'reduced_palette' into 'master'
Reduced palette

You guys should know what this is by now. If you don't, you really need to catch up. =P

We should check with toaster and others involved to check this thing is actually ready to go though, the number of changes to the palette itself over the last year has been absurd.

See also http://git.magicalgirl.moe/STJr/SRB2Internal/issues/8

See merge request !13
2016-01-13 21:03:12 -05:00
Inuyasha 08cb91d5f0 Merge branch 'inu-misc' into 'master'
Yeah, whatever, this is changing stuff that was already all my own
anyway, and I already extensively tested it in the *first* place
when I was measuring the amount of time it took.

Honestly this could be merged into public master, but pfft...

See merge request !19
2016-01-12 23:09:25 -05:00
Monster Iestyn 22cf800f2f Fixed implicit declaration of some functions if compiling without OpenGL support
Not related to Wolfy's problems afaik... this branch seems to be turning into a misc compiling fixes branch now
2016-01-12 15:42:40 +00:00
Monster Iestyn de576c56a5 Removed void typedef for GLPatch_t used when HWRENDER is undefined
Apparently all parts of the source code that require GLPatch_t are themselves used only if HWRENDER is defined. Do I need to say more?

Not sure if this will fix Wolfy's latest problem or not though
2016-01-12 15:42:36 +00:00
Monster Iestyn 997ae7dcc9 Fixed what appears to be a minor including error in sdl/i_system.c
Basically, Wolfy's linux (non-CMake) compiling apparently fails here, and config.in.h actually lives outside of the sdl folder. Blame a particular someone for blindly copy+pasting these includes in this file without considering the consequences when adding support for CMake everywhere.
2016-01-12 15:42:25 +00:00