Commit graph

643 commits

Author SHA1 Message Date
Monster Iestyn
66175d87b8 removed unused macros from doomdef.h 2016-02-08 20:10:32 +00:00
Alam Ed Arias
985b9a11cc Merge branch 'travis-ci' into 'master'
Travis-CI builds

Merge support to build SRB2 for Linux system via Travis-Ci
This will build SRB2 with GCC and Clang to make sure we do not break Linux/GNU builds

See merge request !41
2016-02-07 21:57:26 -05:00
Alam Ed Arias
2dc9a4b34a Merge branch 'master' into next 2016-02-07 21:22:28 -05:00
Alam Ed Arias
6b626f1b27 build: cmake is messly 2016-02-07 20:53:27 -05:00
Alam Ed Arias
3ba827f33d Merge branch 'master' into travis-ci 2016-02-07 00:39:25 -05:00
Monster Iestyn
ae2b1e8ea1 Use <= instead of ==, so that sprites for second-tier portals and beyond still display
thx Red for spotting this
2016-02-06 21:06:52 +00:00
Monster Iestyn
166fafd717 Fixed div-by-zero crash relating to portals, drawsegs and midtextures
Had to remove Red's scale hack in order to do so, because it utterly fails when the drawseg doesn't actually belong to the portal in the first place.
2016-02-06 18:57:26 +00:00
Alam Ed Arias
07fc74eaf5 clang: fixup a few clang warnings 2016-02-05 22:38:40 -05:00
Alam Ed Arias
68054a49e3 clang: cleanup 2016-02-05 22:32:14 -05:00
Alam Ed Arias
f4886657c1 clang: fixup a few clang warnings 2016-02-05 22:12:12 -05:00
Alam Ed Arias
864baeda05 cmake: fixed up to handle Clang and AppleClang 2016-02-05 21:49:24 -05:00
Monster Iestyn
9973bedd5f Free the memory of all clipping arrays for each portal properly
Not the actual fix I'm intending to make with this branch, but it's needed anyway
2016-02-05 16:38:33 +00:00
Inuyasha
5320424269 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next 2016-02-03 18:09:08 -08:00
Inuyasha
c05c43cfee Merge branch 'monster-misc' into 'master'
Monster Iestyn's Miscellaneous (netplay-compatible) changes

Just cleaning up some unused or unnecessary things left in the source code, see the commits for exact changes made if you like.

May add more stuff to this branch later, there's no rush really.

See merge request !39
2016-02-03 21:06:57 -05:00
Inuyasha
84fb4d108a Merge branch 'diagonal-spring-rings-tweak' into 'next'
Diagonal spring rings tweak

If you didn't know before, those special placement ring lines for diagonal springs only use multiples of 45 for their angles in-game. In other words, they only face any of the 8 basic cardinal directions (N, S, E, W, NE, NW, etc). Considering that springs themselves don't follow the above behaviour, you can probably work out that's a bad thing.

This branch changes that of course, if you couldn't guess from context. Diagonal spring rings can now be placed with any angles like most thing types already could!

See merge request !37
2016-02-03 21:05:44 -05:00
Inuyasha
f17be6641e Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next 2016-02-03 18:00:28 -08:00
Monster Iestyn
0455b572dc Removed weird test for water planes in HWR_Subsector
It crashes when you try to test it anyway, lol
2016-02-03 17:58:44 -08:00
Monster Iestyn
d1b89c9320 Quick fix for another drawer lib function while I'm here, cough 2016-01-31 22:52:02 +00:00
Monster Iestyn
04528eb3e6 <Inuyasha> MonsterIestyn: what about render_none? 2016-01-31 22:15:17 +00:00
Monster Iestyn
dafe0ccd11 Added v.width(), v.height() and v.renderer() to Lua's drawer/video library 2016-01-31 21:53:14 +00:00
Monster Iestyn
2e58f6c4d9 Fixed that odd bug where PolyObjects sometimes leave a vertex or two in their control sectors
Turns out the seg-searching code falsely assumed it'd find frontfacing segs first, who knew?
2016-01-31 13:05:30 -06:00
Monster Iestyn
2d94b2a85f keys.h doesn't need to be included twice here lol 2016-01-31 17:10:57 +00:00
Monster Iestyn
deb958a796 Remove unused "INVERSECOLORMAP" macro 2016-01-31 17:06:03 +00:00
Monster Iestyn
9e29b69a29 Remove unused "firstnewseg" variable 2016-01-31 16:49:04 +00:00
Monster Iestyn
8b56cd76c7 doomtype.h tweaks
some of the mess in here really bothers me

(cherry-picking this commit of mine from next since it only fixes a small oversight with compiling and adds a comment)
2016-01-31 15:08:16 +00:00
Monster Iestyn
cd198d6809 merge SOC_****, MAINCFG and OBJCTCFG searches into one big search for any of them
This makes it so that it doesn't matter what order you place SOC lumps within a WAD... relative to other SOC lumps at least, anyway
2016-01-30 17:19:05 +00:00
Monster Iestyn
5cae87430f Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into new-SOC-lump-names 2016-01-30 16:39:55 +00:00
Inuyasha
e49f531ba1 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next 2016-01-29 18:27:33 -08:00
Alam Ed Arias
82bfce7683 Merge remote-tracking branch 'magicgirl/master' 2016-01-29 20:29:28 -05:00
Inuyasha
e6f0a4be18 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next 2016-01-29 16:01:57 -08:00
Inuyasha
f500986692 use RGB for screen texture, not RGBA
the screen texture does not need an alpha channel.
the fact that it had one made OGL copy the topmost pixel of the screen texture's alpha channel.
which, naturally results in the screen becoming partially transparent and letting you see the working texture in the background.
2016-01-29 16:01:05 -08:00
Monster Iestyn
7d603c320b Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into diagonal-spring-rings-tweak 2016-01-29 19:40:04 +00:00
Alam Ed Arias
e8cf4cdaac SDL2: compile SDL with SDL_main for Win32 2016-01-29 00:33:11 -05:00
Alam Ed Arias
c47ff7b3c6 let make the main() entry point noreturns 2016-01-28 21:37:41 -05:00
Alam Ed Arias
050ce857c4 let not care for main() being noreturn 2016-01-28 21:31:18 -05:00
Alam Ed Arias
0d327c7c16 kill logical-not-parentheses warning in g_game.c
g_game.c: In function 'G_CheckDemoStatus':
g_game.c:5588:22: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
   if (!modeattacking == ATTACKING_RECORD)
                      ^
2016-01-28 21:15:51 -05:00
Alam Ed Arias
10e1aaaf85 appveyor: no need for DEPFLAGS 2016-01-28 12:08:08 -05:00
Alam Ed Arias
7fdb5cfcfb move disabled warning out of mingw 2016-01-28 12:06:00 -05:00
Alam Ed Arias
2176b21e62 ignore noreturns 2016-01-28 11:49:23 -05:00
Alam Ed Arias
7a09a82489 new flags: DEPFLAGS, to tell the depend step where are the headers 2016-01-28 11:41:02 -05:00
Alam Ed Arias
f0842d2200 appveyor: add debug and sdl mixer 2016-01-28 11:33:36 -05:00
Inuyasha
d76e21b546 fix bind out of bounds / keystring misreading 2016-01-28 08:15:34 -08:00
Alam Ed Arias
d0ce9170da appveyor: build for GCC 5.2 2016-01-27 01:39:12 -05:00
Monster Iestyn
80fb282334 Fixed math for calculating current texture in texture animations 2016-01-23 18:59:17 +00:00
Alam Ed Arias
181c875016 SDL: config.h.in is pre source tree, config.h for each cmake build 2016-01-22 17:25:19 -05:00
Inuyasha
4df951224b Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2 into public_next 2016-01-21 14:51:33 -08:00
Monster Iestyn
674ff51153 Fix shadowing in mapheaderinfo_get 2016-01-21 20:27:35 +00:00
Monster Iestyn
ccb0abb853 Diagonal ring springs should now be able to face any angle 2016-01-21 20:19:43 +00:00
Alam Ed Arias
c33d20acff whitespace cleanup 2016-01-21 13:50:05 -05: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
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
Monster Iestyn
5abdb08a25 #sector.lines now returns the number of linedefs in the sector 2016-01-20 16:03:17 +00:00
Sean Ryder
7d914913dd Tabbing 2016-01-20 15:55:32 +00:00
Monster Iestyn
79e3e2351d Finally bothered to add in a method to obtain sector.lines' size internally to prevent going out of bounds.
Admittedly I knew of this particular method from the start but wanted to avoid it in favour of a less-hacky looking method of getting sector.lines' size ...but there was none to be found at all.
2016-01-20 14:56:52 +00:00
Monster Iestyn
3dc0f2b4ff Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into lua-sector-lines 2016-01-20 14:22:11 +00: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
Monster Iestyn
103027124b Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into lua-sector-lines 2016-01-20 12:31:21 +00: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
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
Monster Iestyn
af3c4755dc All lumps with the "SOC_" prefix in their names are now read as SOCs. 2016-01-17 19:43:26 +00: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
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
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
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
Sean Ryder
6a67609b74 Merge branch 'master' into md2_colourchange 2016-01-12 23:52:04 +00: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
Monster Iestyn
a8e4234d74 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-11 14:51:55 +00:00
Monster Iestyn
be266c27e1 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-10 20:56:09 +00:00
Monster Iestyn
146011937a 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-10 18:24:58 +00:00
RedEnchilada
6929b6fe4b Make internal slope functions static and remove from header 2016-01-03 10:33:45 -06:00
Monster Iestyn
8cad9a6dc8 We can compile the slopes code now, yay! My brain hurts.
Compiling errors fixed in this commit:
* Various cases of mixed declaration and statement code
* Implicit declaration of slope functions (read: you forgot to put "include "p_slopes.h" in MORE than a few places)
* an odd case of a bad fixed_t to float typecase, cause by using P_GetZAt directly inside FIXED_TO_FLOAT
* a few minor cases of bad unsigned-signed comparisons
* no prototypes for some of the new slope functions. For goodness sake Red, this is basic stuff!
2016-01-03 10:30:36 -06:00
Monster Iestyn
b043520411 NextLevel for level headers can now take the special strings "Title" "Evaluation" or "Credits" in place of their usual numbers (optionally, that is) 2016-01-03 10:29:53 -06:00
RedEnchilada
b9b1e2b298 Fix MD2s 2016-01-02 21:53:43 -06:00
Nipples the Enchilada
0a0f16a001 Merge branch 'actions-tweaks' into 'next'
Actions tweaks

This just rewrites the action A_SetTargetsTarget currently, dunno if I'll bother to tweak any more actions in the near future \*shrugs\*

That said, PLEASE check whether the action works properly before accepting the merge. It's been a while since I last did anything with this branch, so I forget entirely whether I tested it or not.

See merge request !27
2015-12-30 14:45:37 -05:00
Nipples the Enchilada
93c31b5b72 Merge branch 'angles' into 'next'
FOF slope/ground slope weirdness fix

Solves STJr/SRB2Internal#26 .

See merge request !26
2015-09-26 18:51:34 -04:00
RedEnchilada
773e5fbda6 Fix sloped FOF/ground weirdness ( STJr/SRB2Internal#26 ) 2015-09-24 15:35:55 -05:00
Alam Ed Arias
3917b02132 Merge branch 'angles' into 'next'
Slopes and stuff

Adds support for slopes, slopes on FOFs, slopes on translucent FOFs, slopes on FOFs with holes in the flat, slope physics, dynamic slopes, vertex slopes, dynamic vertex slopes, and a ham sandwich to the game. Only for software mode right now, though. (OGL still gets the physics and the sandwich.) Some things still need to be done, but for now this can be merged in to be finished later.

Please make sure nothing in the vanilla game breaks before giving the thumbs up for this merge.

Since this doesn't merge automatically, if the code review turns out positive and nobody else has done it, I'll handle the merging.

See merge request !22
2015-09-03 15:57:01 -04:00
Alam Ed Arias
04c1a507ba Merge remote-tracking branch 'public/hotfix-hook_NetVars' into next 2015-09-03 13:54:12 -04:00
Yukita Mayako
52e2087ee7 Fixed NetVars hook mistakenly assuming index starts from 0. 2015-09-03 13:13:55 -04:00
Monster Iestyn
775ccde424 Add M_Options(0); to F4/F5/F7 code to prevent them going to Main Menu instead of SP/MP pause menus when the latter should be shown 2015-09-01 22:56:45 -04:00
Monster Iestyn
0f038f9a3b Add M_Options(0); to F4/F5/F7 code to prevent them going to Main Menu instead of SP/MP pause menus when the latter should be shown 2015-09-01 12:45:26 +01:00
RedEnchilada
9155fd6c14 Fix unexpected behavior with colormaps in sloped sectors
To be specific: when a sector had a sloped ceiling and a colormap was
placed above it, the colormap wouldn't fill anything above where the
ceiling height is at the sector's midpoint. This is fixed.
2015-08-24 22:09:19 -05:00
Yukita Mayako
2fb03a7cff Merge branch 'next' of git@git.magicalgirl.moe:STJr/SRB2.git into angles
Conflicts:
	src/p_map.c - Automatically resolved by mergetool
2015-08-22 09:52:11 -04:00
Alam Ed Arias
96c71c68c8 remove NEED_FIXED_VECTOR and fix angelchk testcase 2015-08-21 21:27:20 -04:00
Alam Ed Arias
c64e4d58b7 git warning: new blank line at EOF 2015-08-21 20:47:00 -04:00
Alam Ed Arias
f3d40c34a0 git warning: trailing whitespace 2015-08-21 20:46:41 -04:00
RedEnchilada
d5884a6957 Add Chee to credits
(she helped port important drawing code!)
2015-08-21 18:23:37 -05:00
Monster Iestyn
f8b439769a Fixed Tag and H&S getting each other's suicide behaviors by mistake. 2015-08-15 13:00:49 +01:00
Alam Ed Arias
79ecbc407e Merge branch 'pointtoangle-fix' into 'next'
Tweaks to R_PointToAngle and R_PointToAngle2

Exactly what it says in the title! See commit description for more information on what I did, since I'm too lazy to write it all up a second time. =P

Could someone check that these changes don't cause anything else in particular to go wrong in the game or source code? I haven't checked myself that much yet, mostly because I totally forgot about this thing until now, lol.

See merge request !19
2015-08-14 18:10:33 -04:00
Monster Iestyn
b449bd826a Rewrote A_SetTargetsTarget to be more sensible and efficient 2015-08-13 19:42:00 +01:00
RedEnchilada
50b5e978cc Support ceiling/backsector vertex slopes 2015-08-03 23:09:50 -05:00
RedEnchilada
1f5fc04d60 Add vertex slopes 2015-08-03 22:15:59 -05:00
RedEnchilada
c7b6cd705f Separate P_LoadThings into two functions to make the next commit cleaner 2015-08-03 19:27:10 -05:00
RedEnchilada
14ea936f74 Sync mobj->standingslope in netgames 2015-08-03 18:06:42 -05:00
RedEnchilada
51284c01d8 Start using slope flags/id in creation process 2015-08-03 17:39:33 -05:00
RedEnchilada
049bbce5c0 Add data to slope struct that will be useful later 2015-08-03 17:37:50 -05:00
RedEnchilada
6026fa42eb Add masked FOF slopes (+other rendering tweaks) 2015-08-03 14:47:05 -05:00
Sryder13
d050a60f36 Change a few colours. 2015-08-03 02:01:56 +01:00
Monster Iestyn
fa935be129 Fixed the issue where diagonal springs couldn't teleport you to their centers anymore (guess whose fault that was! =D ). Basically I just made P_DoSpring boolean, which probably could be useful to Lua peeps as well. (it returns true if you were sprung, false if not) 2015-07-28 19:28:51 +01:00
Sryder13
cc3d3a67e6 Colour Changing MD2s
I don't know how I can move my old branch over so I've just created a new one.
2015-07-26 20:14:47 +01:00
Monster Iestyn
6138845930 Removed all "-1"s from R_PointToAngle and R_PointToAngle2, in order to allow ALL basic compass directions at the least to be given the right angle by these functions.
Note: Before this change, North and West directions would be returned as ANGLE_90-1 and ANGLE_180-1. This caused the pusher polyobjects in THZ2 to slowly move sideways as a side-effect (and probably caused similar bugs in the past too, these functions have barely been touched in a decade it turns out.)
2015-06-21 16:58:34 +01:00
Alam Ed Arias
ac5c8f10e9 Merge remote-tracking branch 'public/lua-32bit-changes' into next
Conflicts:
	src/lua_mobjlib.c
2015-06-18 10:22:07 -04:00
Alam Ed Arias
c4ac9643ad Merge branch 'goop-dampen' into 'next'
Goo Water (THZ Goop) adjustements

At Nev3r's request:
Adjusted goop so that you spend less time bouncing around in it. The goop will become a walkable surface with a higher velocity threshold.

The actual goop physics haven't been altered as far as the initial entrance and underwater time is concerned, only leaving goop and subsequent bounces has been dampened significantly.

See merge request !7
2015-06-18 10:11:27 -04:00
Alam Ed Arias
904c3c227b Merge branch 'trigonometry-fix' into 'next'
finesine table

I pasted in finesine from #11 and made a merge request.

This has been lightly tested to ensure the renderer doesn't immediately break. No ill effects have been observed so far.

See merge request !17
2015-06-18 10:09:04 -04:00
Alam Ed Arias
b2e330d64c Merge branch 'idk-what-to-call-this-branch' into 'next'
A_SetObjectFlags tweak

Only reset the sector/blockmap links on an object calling A_SetObjectFlags if the MF_NOSECTOR|MF_NOBLOCKMAP flags change. Fixes a freeze related to LD442 demonstrated in MascaraSnake's example WAD at https://dl.dropboxusercontent.com/u/27962790/statetest.wad .

See merge request !11
2015-06-18 10:06:46 -04:00
Alam Ed Arias
f0054be951 whitespace fixup 2015-06-18 10:05:51 -04:00
Alam Ed Arias
a03fc205b4 Merge branch 'hotfix-pltz' into 'next'
Re-add/fix broken platform momz mobj code.

The changes in this branch re-add the platform's momentum to players and mobjs which leave the platform (eg. by jumping) so that they move with relative velocity as expected. This behavior was unintentionally broken in SRB2 2.0, which adds a lot of artificial difficulty to certain segments of the levels, where you have to jump between high velocity moving platforms which seemingly cut your jump height to nothing.

Not only has the behavior been fixed, but it has now been enhanced to move the camera while free-falling between platforms as well, completing the illusion of full relative velocity with minimal hiccups. [Observe.](http://i.imgur.com/zmSfUyp.gifv)

See merge request !14
2015-06-18 10:04:54 -04:00
Alam Ed Arias
f7747f43ba Merge branch 'misc-fixes-tomerge' into 'next'
Miscellanous fixes to merge

These are the commits from the "miscellanous-fixes" branch that are okay to merge in.

Bugs fixed include the following:
* CTF flags respawning incorrectly: they cannot z position themselves correctly, and they cannot flip themselves.
* The weird "jumping" spring/monitor effect: this is the result of an internal mobj_t pointer (tmfloorthing, specifically) not resetting itself to NULL for the next object's thinker, resulting in Z movement code thrusting the object vertically at tmfloorthing->momz.

See merge request !18
2015-06-18 09:51:59 -04:00
Monster Iestyn
b564a169d8 Starting work for getting sector.lines in Lua: it WORKS at the least, but I have no way to determine the size of the array itself as of yet 2015-06-17 21:00:10 +01:00
STJrInuyasha
45515df790 Make sure "word" in readlevelheader gets reset
... because some things (Lua. custom header entries) move it.
https://mb.srb2.org/showthread.php?t=40580

(Technically breaks netgame compatibility for Lua-heavy mods, so in next.)
2015-06-13 15:56:28 -07:00
Yukita Mayako
0af32ee2fa Move garbage collection out of Lua hooks.
That's supposed to be run once a frame, not once per hook
per mobj per frame you moron. If you just run it seven
thousand times a frame, of course your framerate will drop.
2015-06-10 13:42:45 -04:00
Yukita Mayako
c139e93fe6 Applied new finesine table.
finesine[0] == 0 now. This naturally fixes a bunch of math fudging.
No ill effects have been observed so far.
2015-06-10 12:07:08 -04:00
Yukita Mayako
06b82d172b lua_pushfstring only allows %d not %x
Stupid JTE.
2015-06-10 11:06:56 -04:00
Yukita Mayako
6ac5013802 Only push userdata to the stack when needed!!
Dummy, what do you think you're doing? If you
just push mobjs and players into Lua all willy-
nilly everywhere, you'll wind up generating
tons of metatables and stuff you arne't even
gonna use!

Oh. Thanks me, I'm really smart.
2015-06-10 08:06:16 -04:00
Yukita Mayako
120c9c5ad5 Change int32_t to __int32 on MSC.
I can't just say screw it and include the full
doomtype.h here (windows.h conflict?) so a
small hack here will have to do. :I
2015-06-10 07:41:44 -04:00
Yukita Mayako
ecdf3412c0 Rewrote the entirety of lua_hooklib.c
This _should_ solve some significant performance
issues Lua experiences. If not, I will be very
upset for having wasted so much time and effort.

There will be bugs, this kind of thing needs to
be thuroughly tested and this is just the first
iteration of it.
2015-06-10 07:28:09 -04:00
Yukita Mayako
36cf4c1bd2 Fix comma error. 2015-06-09 19:53:35 -04:00
Yukita Mayako
fc649ce195 Merge branch 'next' of git@git.magicalgirl.moe:STJr/SRB2.git into hotfix-pltz
Conflicts:
	src/dehacked.c
	src/p_mobj.h
2015-06-09 07:38:21 -04:00
Yukita Mayako
9a9025b1ee Remove pmomz from players who are on ground.
Assume that every frame the player is on the ground, their pmomz will
be re-set properly if the floor is moving, therefore if the platform
STOPS, we need this to set it to 0.
2015-06-09 06:59:34 -04:00
Monster Iestyn
b88600dac6 tmfloorthing and tmhitthing are set to NULL at the start of P_MobjThinker, preventing any weird cases of carrying over the previous mobj's floor object or such.
This fixes the issue with upside-down springs shooting downwards if you touch another of its kind. Also fixes one of the issues with monitors in Icicle Falls (after you phase inside the East-most float-bob FOF's monitor via the other bug and jump up to break it while there, the NEXT monitor moves upwards too)
2015-05-31 13:57:27 +01:00
Yukita Mayako
c16516ef0d Partial revert.
This partially reverts commit a1c67e7e67.
2015-05-29 17:22:31 -04:00
Yukita Mayako
a1c67e7e67 Add MFE_APPLYPMOMZ to fix camera movement.
Here's how it works: When a player walks off the
moving platform, it applies their pmomz once, and
then _keeps pmomz set_ so that the camera still
adds pmomz to its movements until they hit another
floor. This way, the camera doesn't jerk around.
2015-05-29 13:53:06 -04:00
Monster Iestyn
c6ade27b6a Fixes to CTF flag respawning, particularly reverse gravity and z-positioning. 2015-05-29 14:59:13 +01:00
Yukita Mayako
213a0caa23 Hotfix amendment
Also gain velocity from walking off an "up" elevator normally?

This _looks_ incorrect because the camera stops matching
the platform movement the moment you step off, but I
assure you it is a correct and accurate movement.
(Try it with chasecam off.)
2015-05-29 05:47:01 -04:00
Yukita Mayako
3bc56a91b2 Hotfix for platform movement being dropped on players.
Now players will apply platform movement when jumping,
but only if the platform is moving the same direction
as their jump is, and all other objects will have an
appropriate pmomz in reverse gravity FOF situations.
2015-05-29 04:34:53 -04:00
RedEnchilada
e00d682185 Fix issue with objects getting stuck IN floors 2015-05-25 13:25:23 -05:00
RedEnchilada
5e18db79e9 Fix mobjs sometimes clipping through floors (whoops!) 2015-05-25 12:16:19 -05:00
RedEnchilada
d9d3752b4e Unbreak FOF specials 2015-05-25 11:46:09 -05:00
RedEnchilada
32759312a1 Shut up the Kalaron 2015-05-24 18:22:56 -05:00
RedEnchilada
bddcf98355 Remap slope line specials to 7xx range: shim old values for now 2015-05-24 15:59:17 -05:00
RedEnchilada
a9d49cd9fa Make all specials reliant on floor touch work right with sloeps
(I might've missed some, though)
2015-05-24 12:53:30 -05:00
RedEnchilada
a9dba0ffd1 Condense GetFloor/CeilingZ into fewer functions, and use macros for the rest 2015-05-24 11:27:52 -05:00
RedEnchilada
e0d97e4b1a Slope planes should now not turn into static in 99% of cases 2015-05-23 16:27:15 -05:00