Commit graph

6807 commits

Author SHA1 Message Date
toasterbabe
3857b720cd * Make music reset when game over is dealt with more consistent.
* Make setting steallives to true respawn every game overed spectator.
* Make a minimum on the number of lives GetLives can get you.
* Add "You'll steal a life on respawn" to spectator screen.
2017-06-01 18:44:19 +01:00
Monster Iestyn
10b835e799 Whoops, this broke my non-NEWCLIP test build 2017-05-31 17:17:08 +01:00
toasterbabe
464699fce2 * Make handling of life theft more consistent.
* Make sure that a life theft always takes you from 0 (or less) lives to 1 life.
* Fix a bracket level typo that meant new Co-op style respawning was being done for all gametypes.
2017-05-31 17:07:24 +01:00
Monster Iestyn
cefd92fc8e Merge branch 'master' into opengl-improvements 2017-05-31 15:18:42 +01:00
Monster Iestyn
3f9bebd05e Merge branch 'public_next'
# Conflicts:
#	src/doomdef.h
#	src/lua_thinkerlib.c
2017-05-31 15:18:05 +01:00
toasterbabe
4353fa65a2 * Spectatoring for game over supported.
* Don't lose lives when you die as a spectator.
2017-05-30 20:31:51 +01:00
toasterbabe
9fbcd6e883 Accidentially broke game overs. Fixed now. 2017-05-30 17:07:37 +01:00
Alam Ed Arias
6847a89bc2 OpenGL: check for 1.3+ or 2.0+, not just 1.3/2.X to 4.X 2017-05-29 23:04:03 -04:00
Alam Ed Arias
6be7693ecb OpenGL: Load the GLU and OpenGL 1.3 multitexturing functions during runtime 2017-05-29 22:52:51 -04:00
toasterbabe
947e9ed34f Stop rolling sound spam by not doing some stuff that probably shouldn't be happening. 2017-05-29 22:43:22 +01:00
toasterbabe
ff7ee4aa12 ...forgot to check in these changes 2017-05-29 22:19:31 +01:00
toasterbabe
2f3e4c3c65 * Per Mystic's request, made lives for 100 rings individual.
* P_GiveCoopLives bundles the coop lives reward for everyone versus reward for one person in other gametypes thing into one function. Available in Lua.
2017-05-29 22:18:02 +01:00
toasterbabe
fd873185ae * Respawn players that are spectators if it's not a special stage.
* No need to call a function for changing the number of lives when we're within bounds.
2017-05-29 21:59:24 +01:00
Monster Iestyn
f96844b262 Fix screenshots taken in OpenGL with 1366x768 being messed up
This is based on GZDoom's own fix for the same issue, had to add support for glPixelStorei first though
2017-05-29 21:28:36 +01:00
toasterbabe
da05371e69 woops 2017-05-29 21:24:09 +01:00
toasterbabe
726cd9757b Spectators in new Coop instead of staring at a dead screen all the time!
Needs a bunch of changes to HUD rendering, especially in splitscreen, which doesn't try to show spectator stuff whatsoever. Also, if you're the player whose respawn determines when the map reloads, you'll see the spectator text during the front half of the fade. Unless, of course, it's 2-player mode.
2017-05-29 21:23:00 +01:00
toasterbabe
964df31ee5 * Combine cv_sharedstarposts and cv_respawntype into cv_playstyle (Individual, Sharing, Together).
* Put steallives on menu.
2017-05-29 00:03:46 +01:00
toasterbabe
4239036cec Life theft! No menu item, but anything is possible with zombocom.
cv_steallives, defaults to "On"
2017-05-28 21:55:41 +01:00
toasterbabe
f9120e3a44 Some corrections. 2017-05-28 21:43:53 +01:00
Yukita Mayako
9f3fda37b0 Merge branch 'next' into hotfix_thinkers.iterate 2017-05-28 15:07:20 -05:00
Nevur
16336dbe22 I'm pushing this because I'm having issues. Changes so far:
-Folders aren't loaded as lumps anymore
-Can now load an arbitrary number of TEXTURES lumps in PK3s. Name them textures.gfz, textures.thz, ..., for example.
2017-05-28 21:47:15 +02:00
toasterbabe
2765868940 * Add new cvars to menu.
* Don't try to respawn on a checkpoint if you don't have any lives.
2017-05-28 18:09:05 +01:00
toasterbabe
ce181da83c ...i am fool 2017-05-28 17:08:41 +01:00
toasterbabe
965e1f6b45 * Make 100 rings give everyone a oneup in New Coop.
* Make oneup boxes only give everyone a oneup in New Coop.
2017-05-28 17:07:20 +01:00
Alam Ed Arias
2223283208 Merge branch 'next' 2017-05-28 11:37:16 -04:00
toasterbabe
c508695c5a LF2_NORELOAD support 2017-05-28 16:05:55 +01:00
toasterbabe
3723eff9f7 The start of the Co-Op revamp! Not tested over netplay yet, but uses TD's implementation of various Co-op friendly things as a reference (or in one place an outright code steal, thanks Sryder!)
* cv_sharedstarposts - Makes everyone share starposts, defaults to "On"
* cv_respawntype - Defaults to "Starpost". If set to that, people respawn at the starpost you just hit (assuming cv_sharedstarposts is on - may have to combine the two variables later, but seperate for testing for now). The other option is the old, unrestricted spawning. We COULD add TD bubble spawning at a later time using this variable, though.

The level DOES reset if everyone dies, but not in a way which allows for Mystic Realm style non-resetting resets. I'll handle that later.
2017-05-28 15:33:35 +01:00
Monster Iestyn
0536e1d862 Merge branch 'update-to-v2.1.19' into 'master'
Update to v2.1.19

It should says what on the tin.

See merge request !190
2017-05-27 20:24:45 -04:00
Yukita Mayako
e192c5be4d Merge branch 'next' into hotfix_thinkers.iterate 2017-05-27 15:45:13 -05:00
Monster Iestyn
806b101984 Merge branch 'master' into next 2017-05-27 20:10:48 +01:00
Monster Iestyn
7294e15ec6 Merge branch 'ignore-askinfoviams' into 'master'
Ignore askinfoviams

Turns out PT_ASKINFOVIAMS is an obsolete packet type anyway, the MS doesn't send it at all. So let's just ignore it in the netcode then. (the online page just acts like a client and sends PT_ASKINFO, and is not part of the MS itself)

See merge request !191
2017-05-27 15:09:14 -04:00
Yukita Mayako
c44a935b04 Rewrote thinkers.iterate to handle invalid pointers elegantly. 2017-05-27 14:03:27 -05:00
toasterbabe
55b85e257e Per MI's disabling of PT_ASKINFOVIAMS, don't outright remove DELFILE, just mark it for replacement. 2017-05-27 20:02:49 +01:00
Monster Iestyn
d20efa5a74 Entirely ignore PT_ASKINFOVIAMS packets, since it turns out it's not even sent by the MS anyway 2017-05-27 19:06:46 +01:00
toasterbabe
2c7fb73432 Minor optimisation. (I'm picking at this branch! I should stop doing that and work on something else.) 2017-05-27 15:10:16 +01:00
toasterbabe
d685060aef Store importance (nmuslumps check) to prevent having to do it again when doing d_netfil stuff. 2017-05-27 14:01:26 +01:00
toasterbabe
33d5373e84 Don't need this addition any more. 2017-05-27 13:13:00 +01:00
toasterbabe
cbe56b1b06 Essentially - show how close the numwadfiles is getting to the maximum as WELL as the packetsizetally. 2017-05-27 12:36:33 +01:00
Alam Ed Arias
877e9510f7 Update version number to v2.1.19 2017-05-26 21:38:49 -04:00
Alam Ed Arias
86a76a9766 Makefile: disable GETTEXT by default 2017-05-26 18:10:53 -04:00
Alam Ed Arias
0e0769d11a Merge branch 'master' into disable_gettext 2017-05-26 18:06:57 -04:00
Monster Iestyn
11d57fba1b Merge branch 'master' into next 2017-05-26 23:02:06 +01:00
Monster Iestyn
3928b75b7a Merge branch 'netcode-hotfix' into 'master'
Netcode hotfix

Various netcode fixes are included in this branch. Most important of all of course is a fix for the Net_CloseConnection invalid node -32769 detected message thing, or rather what actually caused that to occur.

It's a merge to master since everything here should be compatible with 2.1.18: the only main changes are related to recieving packets (whether you're the host of a netgame or a client), which AFAIK shouldn't cause desyncs if you played with these fixes on a 2.1.18-hosted netgame (or hosted a netgame with the fixes and 2.1.18-using players join you).

See merge request !185
2017-05-26 18:00:43 -04:00
Monster Iestyn
0bb4e76e73 Merge branch 'too_many_wads_in_netgames' into 'next'
A bunch of bugfixes about too many wads in netgames

Fixes:
* Having bunch of music WADs added and then breaching the file limit(s) through joining a server with important files added. http://mb.srb2.org/showthread.php?t=42662
* Having a bunch of music WADs added, joining a server, and then breaching the file limit(s) when the server adds a file. https://mb.srb2.org/showthread.php?t=34664
* Informing the adminplayer whenever they try to send a request addfile net command but the file limit(s) are reached.

Done into next because I might as well be 100% safe, even though this could probably work on master as well.

See merge request !187
2017-05-26 17:58:53 -04:00
Monster Iestyn
1699d8a05f Merge branch 'missiles_n_slopes' into 'next'
Missiles 'n slopes

Fixed that thing where missiles like sliding up slopes for some reason.

This isn't a 1:1 fix compared to non-slopes - missiles still like stepping up over the borders of sloped sectors and will continue going as long as they never touch that ground again, whereas they can never step up on flat ones - but this fixes the most egregrious issue.

See merge request !181
2017-05-26 12:25:31 -04:00
toasterbabe
db2f8a50ba Make sure that the number of files you're trying to add is properly considered! 2017-05-26 16:16:10 +01:00
toasterbabe
d3bd17d862 Make the zeroed temperature gauge actually look right. 2017-05-26 16:04:10 +01:00
Monster Iestyn
4d1af86431 Cleanup part 2, make ye old 2.1.18 warning a debugfile only message, and make the node == -1 have its own debugfile only message too
Also get rid of a stray newline
2017-05-26 15:30:26 +01:00
Monster Iestyn
ab5835cd3b Remove cruft from my initial days of fumbling with this branch
textcmd[0] for PT_NODETIMEOUT can't hold anything < 0 anyway, and you'd probably have to really try to get >= MAXNETNODES
2017-05-26 15:26:00 +01:00
Monster Iestyn
e09270276e Display node's IP when printing the "sending file to node n" message, if noticedownload is turned on 2017-05-26 14:38:59 +01:00
Monster Iestyn
569af9f4c1 I am dumb, SV_AbortSendFiles already does what SV_RemoveFileSendList was made to do 2017-05-26 14:19:18 +01:00
Monster Iestyn
7979f84e25 whoops 2017-05-26 13:58:34 +01:00
Monster Iestyn
aecc97ded3 PT_REQUESTFILE checking:
* if you sent it to a client rather than the server, game over, your connection is closed
* if files that don't exist or are too large are requested are listed, game over, your connection is closed (they should have been checked on YOUR side beforehand, silly)
* if the server has downloading disabled anyway, ...yeah, you get the idea

Don't worry, I made sure Got_RequestFilePak cleaned up the full file request list for the node in case of failure
2017-05-26 13:39:54 +01:00
Monster Iestyn
437780d503 Add missing break for MT_EGGCAPSULE's switch case in P_SpawnMobj (sorry!) 2017-05-25 18:40:48 +01:00
Monster Iestyn
a23e9bc32b Fix size_t printing 2017-05-25 18:10:20 +01:00
toasterbabe
fe9ebbd1ca Files which are unimportant are not sent in the fileneeded list.
This removes exactly one feature in exchange for a greater number of files to be loaded. I asked around, and people don't actually like what it currently does (load unimportant server-side files if you can findfile it locally), so.

Can be reverted if requested.
2017-05-25 17:58:32 +01:00
Monster Iestyn
58236af6f7 Tweak to D_MapChange: if you failed to start a server, DON'T send a map change command 2017-05-25 16:55:59 +01:00
toasterbabe
47e171250f * Prevent joining a server if you have too many files loaded to add the remainder.
* Made the check in Got_RequestAddfilecmd more comprehensive, since I might as well. Just something to tweak a little later in internal.
2017-05-25 16:06:39 +01:00
toasterbabe
5c302d7ffc Partial implementation of fix for Got_RequestAddfilecmd (the other half - the limitation on the size of the filesneeded section of the serverinfo packet - will be applied in internal.) 2017-05-25 15:34:21 +01:00
toasterbabe
2aa1215716 Fix a thing where the host adds a WAD and you have too many WADs loaded to add it. 2017-05-25 15:22:32 +01:00
toasterbabe
9fcf40b5a3 woops 2017-05-24 22:36:59 +01:00
toasterbabe
e2f6366292 Minimum fill for temperature gauge if you have any wads loaded at all. 2017-05-24 22:05:41 +01:00
toasterbabe
c2705b4662 * Make wads that don't modify the game not count towards the internal packet size tally in w_wad.c, like they wouldn't in d_netfil.c.
* Now that it's consistent, removed the redundant packet size tally check in d_netfil.c.
2017-05-24 21:45:03 +01:00
toasterbabe
74c4ad4bad Minor refactor, plus cutting out a potential bug of setting dir_on[] to -1. 2017-05-24 20:55:35 +01:00
toasterbabe
e41976fb05 https://cdn.discordapp.com/attachments/293238104096112641/317023848493088779/srb20016.png
* Visual Indicator of modifiedgame/savemoddata.
* Other assorted improvements to layout.
2017-05-24 20:55:05 +01:00
Monster Iestyn
c92aaa74a4 I think PT_CLIENT2MIS was meant to do this too, probably 2017-05-23 18:46:34 +01:00
Monster Iestyn
7147e0fcaf Improve previous PT_TEXTCMD/PT_TEXTCMD2 check, add another one to ignore zero size textcmds! 2017-05-23 17:35:32 +01:00
Monster Iestyn
0b0b738a6f Don't allow non-servers to receive PT_RESYNCHGET 2017-05-23 16:34:56 +01:00
Monster Iestyn
ff1cc07a1d Implemented toaster's suggestion to make a macro here 2017-05-23 16:29:09 +01:00
Monster Iestyn
9e3bdc5ee2 Prevent bad PT_TEXTCMD/PT_TEXTCMD2 textcmd[0] sizes? 2017-05-23 16:13:42 +01:00
Monster Iestyn
fdfd6e1c0b Whoops don't do that for PT_REQUESTFILE 2017-05-22 22:20:08 +01:00
Monster Iestyn
c70839334e Added a bunch of missing checks to prevent non-server players from sending other non-server players stuff 2017-05-22 22:17:51 +01:00
Monster Iestyn
3784d765e4 Remove extra whitespace I added 2017-05-22 20:47:38 +01:00
Monster Iestyn
28444c12dd Some more things I overlooked in this fix 2017-05-22 16:54:39 +01:00
Monster Iestyn
247ed56e17 Don't allow nonsense PT_ASKINFOVIAMS packets, nor any at all if offline 2017-05-22 16:44:50 +01:00
Monster Iestyn
6062223eb5 Merge branch 'master' into next 2017-05-22 13:23:46 +01:00
Monster Iestyn
5aeb4b5919 Revert "Loop through rebound packets until you found a good one or ran out of them"
On second thought, this was probably unnecessary anyway.

This reverts commit 1078a642df.
2017-05-20 21:29:05 +01:00
Monster Iestyn
284e539c66 Don't bail out in Y_StartIntermission in dedicated mode, this causes the game not to add on score bonuses for players from the server's view of things! 2017-05-19 16:31:23 +01:00
Monster Iestyn
1078a642df Loop through rebound packets until you found a good one or ran out of them 2017-05-19 11:52:50 +01:00
Monster Iestyn
5a1fc6098e Attempts to prevent stupid stuff from happening 2017-05-19 11:25:28 +01:00
Nevur
19c46f3732 More PK3 work.
-Removed code duplicity on map resource reading.
-Fixed all known PK3-related bugs so far except for the ones mentioned below.
Issues:
-Blockmap and reject matrix still aren't loaded yet when using a map WAD.
-Palettes and colormaps aren't loaded (by extension, TRANS tables might not work either).
2017-05-18 21:13:18 +02:00
Monster Iestyn
229e75ab8b Removed all code in Y_FollowIntermission that's already handled in G_AfterIntermission
Only real difference here is that CEcho messages will always be cleared when going to credits/evaluation, but that's hardly a loss tbh.
2017-05-18 17:23:19 +01:00
Monster Iestyn
d2313ea32b G_ExitLevel tweak: Use HU_ClearCEcho() instead of HU_DoCEcho(""), the latter causes an empty line to appear in log.txt 2017-05-18 17:10:44 +01:00
Monster Iestyn
bc79365cf4 Moved Y_EndGame from y_inter.c/h to g_game.c/h, renamed it to G_EndGame 2017-05-18 16:54:58 +01:00
Monster Iestyn
fd1efff338 Added the META_ACTION userdata type to Lua, created getActionName() to return string name
SRB2's built-in action types will now all be pushed as META_ACTION, state_t.action can be assigned META_ACTION and return it

getUserdataType returns "action" for META_ACTION variables
2017-05-17 20:36:40 +01:00
Monster Iestyn
21d29c8550 Merge branch 'public_next' 2017-05-17 16:19:01 +01:00
Monster Iestyn
1781ccf4ca Merge branch 'master' into next 2017-05-17 16:16:50 +01:00
toasterbabe
593416328a String addition to the addfile menu suggesting to visit the modifications page! No change to actual functionality, just secondary utility. 2017-05-16 23:43:21 +01:00
Monster Iestyn
551ed797db Merge branch 'jumping_fixes' into 'master'
Nojumpspin fix

MI can attest to this being a problem that's now solved.

To test, check out root/!LatestSRB2Files/srb2win_branch_jumpfixes.exe and root/MonsterIestyn/robohood.wad.

See merge request !95
2017-05-16 17:02:20 -04:00
Nevur
d4c324eb30 PK3 stuff again.
-Now can load map WAD files inside Maps/ directory, but they must only contain map data explicitly!

Known problems:
-There's an issue causing a crash with palettes and colormaps in PK3s.
-SS_START and SS_END don't work now. Will check later.
-Standalone lumps for maps in the Maps/ folder don't work anymore; perhaps I should keep that functionality?

Notes:
-It's now a mashup of something dumb that I wanted to do and yet piling hacks again.
-A lot of code duplicity with map lump loading functions.
2017-05-16 21:10:02 +02:00
toasterbabe
5f8cfb47e4 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into addfile_menu 2017-05-16 19:54:54 +01:00
toasterbabe
87f32abc24 i have no idea whether this will fix the garbage or whether it'll get broken again, but here's an attempted fix for VAda's name 2017-05-16 14:11:10 +01:00
Monster Iestyn
17a06dd6c4 I_GetConsoleEvents: Split KEY_EVENT code into a function of its own, like with I_GetEvent's event types
One benefit of this is that event_t data need only be created if KEY_EVENT is found, since the other event types never do anything anyway
2017-05-15 18:39:59 +01:00
Monster Iestyn
87085f2475 SDLSetMode: merge wasfullscreen/windowed mode code into one block 2017-05-15 16:35:32 +01:00
Monster Iestyn
a340f2c8ed Impl_CreateWindow: re-use "flags" for SDL_RENDERER_* flags, remove unnecessary curly braces 2017-05-15 16:19:28 +01:00
Monster Iestyn
4979ab6b8e Not really important or anything, but checking render_soft == rendermode rather than rendermode == render_soft always bugged me. And it's not consistent with the rest of the source code (or at least most of it) anyway. 2017-05-15 15:43:31 +01:00
Monster Iestyn
d1bbd1261e VID_SetMode: SDLSetMode should use vid.width/vid.height, not windowedModes[modeNum].
If modenum was < 0 or >= MAXWINMODES, that would make windowedModes[modeNum] be out of bounds and possibly crash the game.
2017-05-15 15:36:51 +01:00
Monster Iestyn
093800cb06 I_FinishUpdate: OglSdlFinishUpdate should never run for render_soft, even if screens[0] somehow is NULL 2017-05-15 15:24:40 +01:00
Monster Iestyn
f8482421e5 Don't need to use WADFILENUM/LUMPNUM in this function, since W_CheckNumForNamePwad returns just the lump number, not a combined WAD + lump number frankenstein's monster
This is just in case someone actually tries to dump in C_START/C_END and "add" colormaps using them, not that they would ever be used currently anyway.
2017-05-15 14:38:55 +01:00
Monster Iestyn
222807c6f6 Fix R_InitExtraColormaps reporting 6 or more colormaps every time you loaded the game, even though we haven't used C_START/C_END in more than a decade now
Note to self: W_ functions are awfully confusing with returning with LUMPERROR or INT16_MAX. Should sort out what's going on there if necessary
2017-05-15 14:29:31 +01:00
toasterbabe
65a202e843 ACTUALLY let's do this better 2017-05-14 19:25:46 +01:00
toasterbabe
b13a9ad9d1 Support for negative scroll speeds on title screen 2017-05-14 19:20:00 +01:00
toasterbabe
b864e45487 Added reset for titlemap (and other title attribute) changes so that the title screen never ends up being some half-formed hybrid
Also because I could I added it for intro changes too
2017-05-14 16:45:08 +01:00
toasterbabe
bdcd9125d2 Fixed that thing where missiles like sliding up slopes for some reason.
This isn't a 1:1 fix for non-slopes - they still like stepping up over the borders of sloped sectors - but this fixes the most egregrious issue.
2017-05-14 14:47:09 +01:00
toasterbabe
ba4275c415 title screen hud hook 2017-05-13 22:38:06 +01:00
Monster Iestyn
d91471b053 check spr2names not sprnames, whoops 2017-05-13 21:43:04 +01:00
Monster Iestyn
c2f03c5953 Fix compiler errors 2017-05-13 21:28:44 +01:00
Monster Iestyn
5113163e07 Merge branch 'master' into lua-spritedefs 2017-05-13 21:16:42 +01:00
Monster Iestyn
9a9b2fcc2d Merge branch 'master' into mapthing-spawn-hook 2017-05-13 21:06:49 +01:00
Monster Iestyn
8d483cdc47 Fix whitespace on that one line toaster pointed out 2017-05-13 20:51:10 +01:00
Monster Iestyn
e45e740a65 Merge branch 'master' into lua-lump-load-only 2017-05-13 20:40:38 +01:00
Monster Iestyn
ed81c9abcb Fix paper sprites apparently "turning" around sometimes when you turn the camera, when they're supposed to be still (sawb.wad for instance)
I cleaned up some of Sryder's changes a little too I guess
2017-05-13 12:49:30 +01:00
yellowtd
f5fa67b7ad no idea why this was stashed while the last commit before this one was made.. 2017-05-12 20:54:06 -04:00
yellowtd
13c748531f bootmap
(+indentation fix)
2017-05-12 20:48:20 -04:00
Alam Ed Arias
459d8064ee Merge branch 'master' into public_flatsprite 2017-05-12 20:42:55 -04:00
Sryder
32c4ddca5c Remove accidental leftovers
Accidentally left a comment and stuff in there from previous attempts

# Conflicts:
#	src/hardware/hw_main.c
2017-05-12 23:39:55 +01:00
Sryder
ec0f30f849 Fix a one character bug with clipping 2017-05-12 23:39:01 +01:00
Sryder
3f0f645c70 Flat sprites for OGL
# Conflicts:
#	src/hardware/hw_main.c
2017-05-12 23:38:44 +01:00
Monster Iestyn
635789c1ec Merge branch 'public_next'
# Conflicts:
#	src/doomdef.h
2017-05-12 23:03:38 +01:00
Monster Iestyn
b8ffeeb59f Update version number to v2.1.18
Don't worry, I remembered to update MODVERSION as well this time :)
2017-05-12 16:06:27 +01:00
Monster Iestyn
f0de3a407d Merge branch 'public_next' 2017-05-11 22:58:03 +01:00
toasterbabe
6eaf936889 Make symbol conversion a #define instead of copypasted code. 2017-05-11 22:09:01 +01:00
toasterbabe
9445455fb1 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch 2017-05-11 22:02:12 +01:00
Monster Iestyn
55fd0aba91 Merge branch 'master' into next 2017-05-11 20:47:12 +01:00
Monster Iestyn
96c63bf95b Whoops forgot this bit too 2017-05-09 20:17:46 +01:00
Monster Iestyn
8582406dd2 prevent invalid nodes from crashing Net_CloseConnection, print a warning and return instead 2017-05-09 15:13:19 -04:00
toasterbabe
3e7377930f FIX FOR MI'S CRASH 2017-05-09 17:38:00 +01:00
toasterbabe
3e9cc51953 Change config recognition method 2017-05-09 17:09:40 +01:00
toasterbabe
fd81a82cca Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into addfile_menu 2017-05-09 16:45:58 +01:00
toasterbabe
28752afa6a Fix inconsistencies in spacing in m_cond.h 2017-05-09 16:28:20 +01:00
toasterbabe
61fcbe9b36 Implemented the two NiGHTS Emblem types in the TUDD via var modifications to ET_GLOBAL!
* GE_NIGHTSPULL (for it to chase you once paralooped) - Sun emblem
* GE_NIGHTSITEM (for hidden until paralooped) - Moon emblem

Combined means that you essentially have to loop it twice.

Also, revamped NIGHTSITEM to suck a little less (and have more compatibility with MT_EMBLEM).
2017-05-09 16:20:26 +01:00
toasterbabe
cd512d014a <Alam_Squeeze> s_sound.c: In function `S_StartCaption':
<Alam_Squeeze> s_sound.c:409: warning: 'same' might be used uninitialized in this functio
2017-05-09 14:42:23 +01:00
toasterbabe
e69b08178f <Alam_Squeeze> p_floor.c: In function `EV_CrumbleChain':
<Alam_Squeeze> p_floor.c:2932: warning: 'widthfactor' might be used uninitialized in this function
<Alam_Squeeze> p_floor.c:2932: warning: 'heightfactor' might be used uninitialized in this function
2017-05-09 14:42:06 +01:00
toasterbabe
cb9012c2ca Accidentially removed newline 2017-05-09 14:22:53 +01:00
toasterbabe
a4b74e7d3f <Alam_Squeeze> m_menu.c:1907: error: `M_DrawScreenshotMenu' undeclared here (not in a function)
<Alam_Squeeze> m_menu.c:1907: error: initializer element is not constant
<Alam_Squeeze> m_menu.c:1907: error: (near initialization for `OP_ScreenshotOptionsDef.drawroutine')
<Alam_Squeeze> m_menu.c:9353: warning: 'M_DrawScreenshotMenu' defined but not used
<Alam_Squeeze> Makefile:770: recipe for target '../objs/Mingw/Debug/m_menu.o' failed
<Alam_Squeeze> make: *** [../objs/Mingw/Debug/m_menu.o] Error 1
2017-05-09 14:19:54 +01:00
toasterbabe
378b913e66 <Alam_Squeeze> lua_blockmaplib.c:269:7: no newline at end of file
<Alam_Squeeze> Makefile:770: recipe for target '../objs/Mingw/Debug/lua_blockmaplib.o' failed
<Alam_Squeeze> make: *** [../objs/Mingw/Debug/lua_blockmaplib.o] Error 1
2017-05-09 14:18:45 +01:00
toasterbabe
0cc838bca7 <Alam_Squeeze> make: *** [../objs/Mingw/Debug/m_menu.o] Error 1
<Alam_Squeeze> s_sound.c: In function `S_StartCaption':
<Alam_Squeeze> s_sound.c:416: warning: comparison of unsigned expression >= 0 is always true
<Alam_Squeeze> Makefile:770: recipe for target '../objs/Mingw/Debug/s_sound.o' failed
<Alam_Squeeze> make: *** [../objs/Mingw/Debug/s_sound.o] Error 1
2017-05-09 14:17:34 +01:00
toasterbabe
ba41d46587 Thanks Alam for letting me know I was messing up!
* Search case is now handled via cvar instead of assumed based on system.
* filemenusearch (previously strsystemstr) uses static char[] to prevent stack suffering.
* New cvar for searching from start of string instead of anywhere in it!
* Menu tweaked for the above.
* Reverted slash from pathsep.
2017-05-09 14:09:09 +01:00
toasterbabe
2696ed52fd Fixed the thing where Robo Hood's jump was messed up.
Also, ditto re Super Sonic's floaties.
2017-05-09 12:50:28 +01:00
toasterbabe
7f83e0d134 * Prevent crash if you go to a map and it doesn't exist.
* Handle music fix in smarter way.
* Enums!
2017-05-09 11:09:58 +01:00
toasterbabe
3a4e091ba6 * Fix titlemap music change bug reported by Larztard
* Clean up titlemapinaction so that it isn't true when you're playing
* Don't print "SPEEDING OFF TO [ZONE] [ACT 1]..." on screen if it's a titlemap - keep a nice and pretty black screen
2017-05-09 00:48:07 +01:00
toasterbabe
dd57e47574 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into titlemap
# Conflicts:
#	src/r_main.c
2017-05-08 23:58:44 +01:00
toasterbabe
f87c7f428d Compiling fixes 2017-05-08 23:51:12 +01:00
toasterbabe
72baa4e2d0 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into addfile_menu 2017-05-08 23:43:21 +01:00
toasterbabe
90d21f5c39 woops broke little green loaded icon for all, fixed 2017-05-08 23:08:40 +01:00
toasterbabe
013da12088 Minor tweak - this probably makes more sense to the casual player, and doesn't obscure anything to people who would otherwise know what checksum means. 2017-05-08 22:57:14 +01:00
toasterbabe
b5b5b983a5 re-order mpause menu addons to be at top 2017-05-08 21:43:56 +01:00
toasterbabe
54ac157c6c Disable log.txt, errorlog.txt, and config.cfg from being "loadable" (exec-runnable) from the addfile menu. 2017-05-08 21:04:26 +01:00
Monster Iestyn
9238b2d50f Merge branch 'level-specials-setup-stuff' into 'master'
Level specials setup stuff

Some changes to level setup, largely inconsequential for gameplay but maybe helpful for Lua scripting:

* gravity, weather, and some other internal variables are set to their defaults before loading things, so their values from a previous level don't affect mobj spawning potentially
* Tag lists are also initialised before loading things, so that tag-based search functions (such as P_FindSpecialLineFromTag) can be used internally for the maces and particle generator. This should probably extend to Lua as well
* the level header "forcecharacter" no longer recognises "255" as "None" anymore. This is because it no longer takes skin numbers (as of whenever that change was added... version 2.0?), and level headers are auto-cleared when edited anyway.

See merge request !88
2017-05-08 15:15:50 -04:00
toasterbabe
06721bd041 kill/resurrect secrets if to be changed 2017-05-08 18:42:24 +01:00
toasterbabe
1fc835e4a3 Made the refreshdirmenu stuff SLIGHTLY less hacky. 2017-05-08 17:28:48 +01:00
Monster Iestyn
41130465b4 Use NF instead of normal P_SetMobjState to prevent endless looping 2017-05-07 22:21:17 +01:00
toasterbabe
4c495cafc9 thanks mi for my life 2017-05-07 20:59:20 +01:00
toasterbabe
59dfba967f Change from "on/off" to "yes/no" - makes more sense here 2017-05-07 20:50:48 +01:00
toasterbabe
4e0d015803 Good:
* Improved layout of addons menu.
* Disabled input for 5 tics after a console-touching enter key command on the menu, so that weird stuff doesn't happen.
* Added Add-on options.
* cv_addons_option - chooses save location. A little smaller in scope than the weird Default/HOME/SRB2/Custom thing for screenshots - now it's SRB2 Folder and Custom.
* cv_addons_folder - goes with Custom for above.
* cv_addons_md5 - chooses whether to identify files on the addons menu with name comparison only, or with checksum comparison as well (more intensive hence not default).
* cv_addons_showall - chooses whether to show just supported file extensions, or all
* Some minor other refactors.

Bad:
* Screenshot options menu crashes on access for some reason (to do with itemOn not being valid?????) looking into
2017-05-07 17:14:57 +01:00
Nevur
ea2846394e More PK3 work. Now we're getting somewhere.
-DEFLATE-compressed lumps work properly now.
-All "big" lumps are supported now with the exception of WAD maps.

Notes:
-Compiler spits out a shitload of warnings still.
-Individual lump reading clashes with folders of the same name (see TEXTURES lump, and the Textures/ folder).

Signed-off-by: Nevur <apophycens@gmail.com>
2017-05-07 12:30:06 +02:00
toasterbabe
f3b054fc8f Consistency with deeznux. 2017-05-06 23:44:21 +01:00
toasterbabe
a4fc3372ca Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into addfile_menu
# Conflicts:
#	src/m_menu.c
2017-05-06 23:24:21 +01:00
toasterbabe
a59dc43cfd Appropriate rename. (I would have done more in this commit, but I need to merge deez nux.) 2017-05-06 22:56:13 +01:00
Monster Iestyn
a2915bbb5d Merge branch 'Deez_NewUserXperiences' into 'master'
New User Experiences - Menus, Closed Captioning, and other non-substantial tweaks

Hello! I'm going to words.

* Menu stuff!
    * Scrolling menus when there's lots of options instead of doing lots of nestling!
    * Video Options, Server Options, and Screenshot Options have been updated to take advantage of this.
    * Headings are prettier in general to match the level platter's headers!
    * Expose a bunch of stuff Mystic wanted exposed, without iundating the player!
    * Little arrows!
* Better, clearer control menus!
    * I know this is probably related to the above, but whatever.
    * Very organised with lots of renaming and magical clarifying context headings!
    * Killed the analog-only Camera L/R keys in favour of merging them with the regular turn keys in that context!
    * Also little arrows!
* Statistics!
    * One page instead of two, loses a lot less info than you'd expect!
    * The benefit of having them on one page is greater than the loss of being able to individually discern which of your Score/Time/Rings is incomplete.
    * ALSO also little arrows!
* Secrets checklist!
    * Scrolls vertically!
    * Allows for autogeneration of conditions based off conditionset, which allows for names of required levels to be hidden if you haven't played them yet!
    * Still allows overriding condition string per traditional checklist.
    * This allows us to show every secret's condition without letting it be spoiled or overflowing the everything.
    * Also ALSO also little arrows!
* Closed captioning!
    * Console command "closedcaptioning on/off".
    * Shows stuff in the bottom right hand corner of the screen.
    * sfxinfo[sfx_name].caption = "Butt.".
    * S_StartMusicCaption(string, tics, optional player) allows for a caption to play without being anchored to a specific sound.
* Color Profile!
    * Using only the best in advanced cube-based majyks.
    * cv_gamma now goes from -15 to +5!
    * cv_saturation - from 0 to 10!
    * A new menu for modifying the hue, saturation and gamma of specific corners of the cube (RYGCBM) independently of the master options!
    * Screenshots/Video Mode now supports turning on/off circumstantial color profile alterations (cv_screenshot_colorprofile).
* Spring cleaning!
    * cv_allcaps is dead.
    * Sudden death and old match scoring (25 points for shield damage as the only change??) is dead
    * A few things are taken off the menu because they're not that relevant to have.
    * cv_competitionboxes now applies to race as well.
    * Failed teleports go nuh-uh.
    * Question mark boxes don't have doomednums anymore, so they can't be placed in singleplayer and used to get free lives by playing with the tv_extralife etc stuff.
* Other tidbits!
    * HUD offsets are tweaked to give one digit less space to score and one digit more space each to time and rings to match up the right edges.
    * Emerald tokens show up on the level complete screen and are loaded into a coin slot at the end of the tally.
    * Speaking of Emerald tokens, they now give score all the time, and continues instead of 50 rings when you have all Emeralds.
    * Moved Race HUD down, and made it go bing bing bing BONG.
    * V_DrawCroppedPatch now properly handles topdeltas.
    * Minor tweak to GFZ3 eggmobile's pinch to be more lenient.
    * Hudnames for skins now replace full stops with katakana dots. We could make it replace a different character instead if we really wanted to, but I figure this matches what is desired.

Check out ```<root>/!LatestSRB2Files/srb2win_branch_deeznux.exe``` to try it out.

See merge request !91
2017-05-06 17:53:41 -04:00
toasterbabe
bf740f60cc Whitelist menu stuff so VAda can have his XP themed icon set without setting ismodified. ;P 2017-05-06 20:22:47 +01:00
toasterbabe
da239d36e8 background https://cdn.discordapp.com/attachments/293238104096112641/310476917218344970/srb20012.png 2017-05-06 19:14:50 +01:00
Nevur
8ef6d6fd9e A bit more work on PK3.
-Expanded folder recognition for PK3s. Some resources are still not loaded from them yet.
-Took a glimpse at how maps are loaded, since the flat recognition is rooted somewhere there; did nothing yet about it though.
-Working towards "generalizing" how new resources are handled. Some var and functionality redundancy is still present.
2017-05-06 16:52:53 +02:00
toasterbabe
de46e72545 * "Type to search..." prompt.
* Menu shuffling for addons. Shows up on main menu and MP pause menu if you're host/admin (not encouraged in SP).
* The menu yells at you in red text if you're playing, warning of issues.
2017-05-06 14:59:54 +01:00
toasterbabe
b1785e1f97 Improved conditions for case insensitive filesystem support. 2017-05-06 14:23:51 +01:00
toasterbabe
afe24bd4f0 Get rid of stack overflow code because filesystem case insensitivity is Windows exlcusive, so we can just create a wrapper function for there instead of rolling our own. 2017-05-06 13:37:10 +01:00
toasterbabe
b2cbbb63c6 Prevent holding down one of the string change keys being free lag generation. 2017-05-05 22:22:49 +01:00
toasterbabe
50db610fc8 Fixed bug for single folder search results. 2017-05-05 22:18:48 +01:00
toasterbabe
03eb1a5d56 * Make no results instead of generic search search message. https://cdn.discordapp.com/attachments/293238104096112641/310153659356938241/srb20007.png
* Page up and page down now work!
2017-05-05 22:15:16 +01:00
toasterbabe
0081fa839d Search box is now standardised in style, and the menu is jiggered around a little bit for cleanness! https://cdn.discordapp.com/attachments/293238104096112641/310143962440794114/srb20006.png 2017-05-05 21:02:37 +01:00
toasterbabe
308503d5b8 Little polish things I forgot to tweak. 2017-05-05 16:53:17 +01:00
toasterbabe
8f2490d588 Search!
https://gfycat.com/DizzyEnergeticCygnet

I will make it prettier.

(Also: stristr. Since the Windows (and others?) standard library doesn't have it for some reason, I modified code someone put on StackExchange as a stopgap; once I'm ready to get on IRC for the day, we'll discuss attribution/rewriting.)
2017-05-05 16:29:46 +01:00
toasterbabe
ba04e982b2 Make the temperature gauge for added WADs start at zero, not however much the mainwads provided.
Also, mainwads now accounts for music_new, and that's added via DEVELOP instead of something we might forget to remove later.
2017-05-05 14:43:39 +01:00
toasterbabe
c7c88b7d99 Change sounds and start element for folder navigation. 2017-05-04 22:52:49 +01:00
toasterbabe
e2ca5b53a1 Bonk. Thanks be to MI.
https://cdn.discordapp.com/attachments/293238104096112641/309777511871545354/srb20006.png
2017-05-04 20:50:21 +01:00
toasterbabe
0c565dc2f8 Pretty! https://cdn.discordapp.com/attachments/293238104096112641/309741256618147841/srb20005.png
Will upload patch.dta when I can.
2017-05-04 18:57:36 +01:00
toasterbabe
09b659c67a Fix cross-platform preparefilemenu's function signatures, and rename the one input it takes over-all to make more sense. 2017-05-04 16:22:58 +01:00
toasterbabe
ca038e8fb6 Split non-drawing functionality outside of M_DrawAddons.
Also, make the bar full if you've somehow managed to hit MAX_WADFILES, so you're not susprised.
2017-05-04 16:22:02 +01:00
toasterbabe
55fe0592cd Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into addfile_menu 2017-05-04 11:54:54 +01:00
toasterbabe
3521fbae4e Improved the temperature gauge for how close you are to hitting the wadlimit.
* It now has a more natural colour graduation. https://cdn.discordapp.com/attachments/272849790285512717/309624385730379777/srb20009.png
* It now considers the amount of space adding a file with a very short name would take up, and subtracts that from the total span to get a hopefully more accurate reading.
2017-05-04 10:48:53 +01:00
toasterbabe
055b59f6fb Did some research, discovered implementing rewinddir() was as easy as setting a value to zero! Now we don't have to open and close the same folder, but instead just jump back to the beginning. 2017-05-03 22:57:48 +01:00
toasterbabe
66f56bbba3 * Menu always updates for file load... by doing the refresh in the drawing function, eep. Oh well.
* M_StartMessages when file loading goes wrong! (Determined by CONS_Alerts of warning level CONS_WARNING and CONS_ERROR happening after W_LoadWadFile has been called.)
* Now actively tries to keep your place on the menu if files are deleted between calls to preparefilemenu().
* More enums! DIR_ (for if you want to try embed more metadata in the dirmenu strings) and REFRESHDIR_ (for refreshing the menu and handling warnings).
* Handle changing size menu between calls to opendir() better.
* Don't crash on draw/enter attempt if one of the dirmenu's is null.
* Moved the addons menu to OP_MainMenu instead of MainMenu for now so it can be tested in MP without needing to mess with several menus.
* Display the amount of space used for serverinfo_pak's fileneeded on the addons menu, both visually and with a percentage.
2017-05-03 22:36:08 +01:00
Nevur
b60010f0f1 Tweaked so that it spits out an error for unsupported compression formats. 2017-05-02 19:20:29 +02:00
Nevur
0c73dae57d Submitted changes so far. Deflate doesn't work yet, apparently. 2017-05-02 18:04:16 +02:00
toasterbabe
da003d61c3 Checking whether a file is loaded or not in the menu, and then forbidding multiple load attempts!
Obviously this doesn't work for files you run using exec, but that is the nature of things.
2017-05-02 15:10:52 +01:00
Nevur
9246ab8429 Tweaked lump reading functionality.
-Removed functions exclusively used by W_ReadLumpHeaderPwad.
-Merged those functions into the main one, optimized the structure.
2017-05-02 15:40:31 +02:00
toasterbabe
20fff0ef23 More feature-rich and better engineered.
* Instead of needing to press backspace, going back is now handled via an "(up arrow) UP..." entry in the table.
* Maximum depth is now #define'd instead of dotted around everywhere.
* Enums!
* Exec for .txt (with confirmation dialog) and .cfg (without)!
* Complaints about folders and etc now mention the folder names.
* A shrinking folder now prevents dir_on[] from going beyond its end.
2017-05-02 11:51:37 +01:00
toasterbabe
881f5e70ce * Additional, better freeing.
* Position remembering when going up a level.
2017-05-02 00:12:07 +01:00
toasterbabe
605580358d Addfile menu!
Basic as fuck UI, and the controls for manipulating it suck, but the basic elements of the feature set I'm looking for have been implemented in some form or another. More at a later time.

MI, be glad I didn't do this in deeznux ;P
2017-05-01 23:40:08 +01:00
Monster Iestyn
1e59a807e4 Merge branch 'skybox-improvements' into 'master'
Skybox improvements

Some improvements to skyboxes and new features for them:

* *The Thing's Z position now determines the relative z position of a skybox viewpoint from the ground, the Thing's angle no longer affects the Z position at all.* This should also fix objectplace breaking skyboxes after you place a Thing, and allow Z heights to be more easily controlled by custom skybox mobjs set by Lua's `P_SetSkyboxMobj`.
* The skybox viewpoint Thing's "Parameter" value (or the multiple of 4096 added to the Thing type, if you're still using SRB2DB) determines the ID number for a viewpoint or centerpoint, a value between 0 and 15. By default the game uses the viewpoint and centerpoint using ID 0. Note: this ID system does not apply to custom skybox mobjs set by Lua, only to `MT_SKYBOX` mobjs spawned by Things for a map.
* **Linedef type 448** has been added as a linedef executor special for changing the skybox viewpoint and/or centerpoint used, making use of the new ID system mentioned above:
 * By default, only the *viewpoint* will be changed. The front x offsets set the ID of the new viewpoint to use; if the number is out of range (numbers accepted are 0 to 15), the game will simply not use any viewpoint at all.
 * If the "*Block Enemies*" flag is set, the centerpoint will be changed as well. In this case the front y offsets set the new centerpoint ID to use.
 * If the "*Solid Midtexture*" flag is set, the viewpoint will **not** be changed at all. Combine this with Block Enemies to make the linedef type change only the centerpoint if needed (otherwise the linedef will do nothing lol).
 * By default, only the player who triggered the linedef will see the skybox being changed. If a player did not trigger the linedef executor directly, no change will be seen by anyone. If the "*Not Climbable*" flag is set, the skybox change will be "global", i.e. it will be seen by all players in the map.

In my folder on the FTP I've made a subfolder called "skybox improvements", and in it are the following files:
* srb2win-skyboximprov.exe - the test exe for this branch I've compiled myself
* skyboxchange-test.wad - an edit of my test map for my skybox change Lua script release on the MB, to test out the new skybox change linedef type.

See merge request !89
2017-05-01 14:38:33 -04:00
Monster Iestyn
7f936d8b57 Add CONS_Alert warning as toaster suggested 2017-05-01 19:34:53 +01:00
Nevur
1b881afb99 Remember when I said I'd stop for today? I lied.
-Lumps are loaded fine now. Essentially non-compressed PK3s are supported now.
2017-05-01 19:16:30 +02:00
Monster Iestyn
c4e7bef01a Merge branch 'public_next' 2017-05-01 17:38:35 +01:00
Nevur
e125dedbe9 sdad 2017-05-01 18:33:41 +02:00
Nevur
65b89f6c0f Oops. It should compile now. 2017-05-01 16:43:52 +02:00
Nevur
2c614f8f2c More work on PK3 handling.
-Moved the MD5 check for added files up so it avoids unnecessary work when you mess up and re-add a file.
-Using compression enum for compressed lumps now.
-Vastly improved central directory seeking algorithm, big files are read fine now. Thanks a lot JTE!
-Improved remaining central directory navigation algorithm, we know and expect what data is coming from now on, after all.
-TX_ textures and sounds are replaced, but textures crash the game on mapload, and sounds are simply mute when replaced. Might have to do something with caching, I don't know yet.
2017-05-01 16:37:32 +02:00
toasterbabe
59397d7cb3 More sound naming consistency! (Sorry.) 2017-05-01 13:48:20 +01:00
toasterbabe
1af1bbee3e Free level select memory whenever it isn't possible to go back to the menu. 2017-05-01 12:56:18 +01:00
toasterbabe
5180bff05b Fix typo. 2017-05-01 11:40:02 +01:00
Monster Iestyn
18fa73ba05 Merge branch 'admin-ban-fix' into 'next'
Admin ban fix

Okay, THIS time admin bans should work properly. Turns out the relevant code for banning did not properly consider the case of admins doing the banning, at least until now.

Unlike my last attempt at fixing admin bans (!165), this one would require both host and admin to have the fix exe assuming everyone else would be using 2.1.17, so I'm merging to next instead of master.

See merge request !167
2017-04-30 21:05:07 -04:00
Monster Iestyn
0dabef730d Merge branch 'allowteamchange-fix' into 'next'
Allowteamchange fix

Fixes "allowteamchange no" to actually work properly and NOT desync you from the game in most cases. You can now switch TO spectator freely (as intended it turns out), and switching FROM spectator is prohibited. The "Enter Game" menu option in Match/Tag now displays one of those blue window notices just like with "Change Teams" in CTF/Team Match if you cannot change teams right now. Everything else works as you'd expect.

The de-sync issue was originally reported here https://mb.srb2.org/showthread.php?p=789965#85

See merge request !168
2017-04-30 21:04:07 -04:00
Monster Iestyn
ce1422a70b Starting work for v.getSpritePatch and v.getSprite2Patch, dunno if these work yet mind 2017-04-30 22:53:05 +01:00
toasterbabe
d669a4e84a Introducing pMasterPalette.
Used instead of pLocalPalette when attempting to determine objective truths, such as "the colours of this gif without color profile modification" and "what indicies should this colormap remap to".

Also, made f_wipe.c's paldiv only get calculated once.
2017-04-30 22:18:06 +01:00
Nevur
448ceefe84 Little progress made. The code from everywhere still looks for the basic WAD structure of the lumps.
-Removed a redundant boolean related to texture loading in P_AddWadFile.
-Started working on handling PK3s differently, except that I'm not sure about what I'm doing.

I don't know what to do from now on for today, so I'll leave it here for now.
2017-04-30 20:05:26 +02:00
toasterbabe
cfd47d33e9 Got rid of redundant writes. 2017-04-30 18:15:46 +01:00
toasterbabe
bb764a7b30 Stacked force shield icons instead of the full-flashing dichotomy.
https://cdn.discordapp.com/attachments/293238104096112641/308275437782433792/srb20025.gif

THIS IS THE LAST THING I PROMISE
2017-04-30 17:25:18 +01:00
Nevur
376d2a2da3 Further work on PK3 support.
-PK3 files are now properly loaded as files.
-PK3 lumps are still being treated the same way as WAD files. It means they're dependant on markers, if that makes any sense in the context of a ZIP file (it doesn't). I haven't worked out this part yet but I obviously intend to do so.
-I don't know if the lumps' position address is correct, we'll figure out when I fix the thing from above.
2017-04-30 17:43:11 +02:00
toasterbabe
588ef776da Stop the s3k shields spawning in ultimate. Whoops! (I considered it okay to modify in this branch because box spawning was already tweaked here.) 2017-04-30 15:41:03 +01:00
Nevur
afba4b2abd Started to work towards PK3 support.
-Tweaked compression conditional to a switch-case format, looking towards adding several comrpession algorithms; haven't removed the previous "compressed" boolean yet.
-Added dynamically allocated name strings for lumps; haven't removed the previous name field.
-Added rudimentary PK3 central directory recognition; nothing is actually loaded in the end.
2017-04-30 14:49:33 +02:00
toasterbabe
1e051a8893 Improve captions code clarity, and also make music captions flash before they disappear. 2017-04-30 11:16:31 +01:00
toasterbabe
9affcd98cb Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into Deez_NewUserXperiences 2017-04-30 10:46:53 +01:00
toasterbabe
52b19da009 Add a little header to the colour cube menu so you see the state of ALL of the colours, not just the three that fit on screen at once.
https://cdn.discordapp.com/attachments/293238104096112641/307998638246723597/srb20016.png
2017-04-29 23:00:40 +01:00
toasterbabe
3523d6ab8a Final modifications to the control menu.
* Completely hides instead of greying stuff out.
* "Modifications" has been renamed to "Add-ons", since that's a more direct term.
2017-04-29 22:42:16 +01:00
toasterbabe
fb6045dd7d Last few improvements for normal menus. 2017-04-29 22:01:14 +01:00
toasterbabe
2f435dd85a Make closedcaptioning's onchange give an indicator of success. 2017-04-29 18:51:21 +01:00
toasterbabe
82cbb3d282 Some final name updates for now. 2017-04-29 18:24:37 +01:00
toasterbabe
22f5b67af6 Fixing a race condition forcing speed shoes captions to disappear almost instantly. 2017-04-29 18:10:09 +01:00
toasterbabe
b1d5bc3190 Reset captions where appropriate (including in S_StopSounds(), as it should have been doing all along). 2017-04-29 17:53:24 +01:00
toasterbabe
e0d7b1ae24 Music symbol for music. (requires patch.dta) 2017-04-29 17:18:19 +01:00
toasterbabe
a625c4f725 Katana dot in hudnames, as desired. 2017-04-29 17:04:13 +01:00
toasterbabe
0af9de2ba6 Bugfix: When you stop hearing the music, allow the caption to expire sooner rather than later. 2017-04-29 16:40:31 +01:00
toasterbabe
73f1550242 There are now captions for specific types of music! (Currently signified with an M, but I'll change that in a bit...) A whole lotta things needed to be modified for this, though.
* Serious refactor of - and internal exposure of - what has become S_StartCaption().
* Renaming of a few existing captions.
* The prevention of access to - or writing over - sfx_None's stuff in SOC or Lua.
* The new Lua wrapper function S_StartMusicCaption(string, tics, optional player), which essentially allows custom music captions to be created. (This is best used for stuff like final lap music in SRB2 Kart or bonus time in a thokker-like game, not a comprehensive Now Playing expy. That'd be a different kettle of fish.)

Also, updated all the lock-on stuff to use P_IsLocalPlayer instead of rolling my own.
2017-04-29 16:27:52 +01:00
toasterbabe
94add11fab Updated captions to:
* be more efficient
* fade away early if they stop playing
* make their current max stick-around time longer
* make the fade time/etc easier to modify
2017-04-29 12:58:40 +01:00
toasterbabe
bdaa0aea9b More coherent sound selection to prevent confusion of token and score boxes. 2017-04-28 22:55:54 +01:00
toasterbabe
deba4dcf0d Made updating the captions a part of S_UpdateSound(), not SCR_ClosedCaptions() (which really should have been render-only all along). 2017-04-28 22:46:21 +01:00
toasterbabe
2d9c37d800 MONITORS IS UNFUCKED
A less memetic message: On permission of Mystic, rejiggered a few things such that Race uses cv_competitionboxes, allowing the menu to be nicer.

Also:
* disabled the doomednum for ? boxes
* made A_MixUp play sfx_lose if you're in a gametype that can't use it
* Removed the all-teleporters option from cv_competitionboxes. It could just be done by tweaking the random monitor toggles, anyways.
2017-04-28 22:45:17 +01:00
Monster Iestyn
21950687ed Make sure noreload levels don't do anything weird with the skybox mobj pointers, especially if Lua was involved
We can assume skyboxviewpnts/skyboxcenterpnts sort themselves out from reloading all the Things at least I guess?
2017-04-26 21:34:22 +01:00
Monster Iestyn
bdb3c2ea0e extrainfo now determines "skybox ID", a number between 0 and 16 to identify the viewpoint or centerpoint
also I made that change skybox linedef exec special I guess (linedef type 448)
2017-04-26 18:16:01 +01:00
Monster Iestyn
6c619af9ce Use the skybox mobj's actual z position, rather than using the spawnpoint angle!
This means setting the skybox view angle is no longer stupid, objectplace no longer breaks skyboxes, and Lua-defined skybox mobjs can actually set a Z position more easily now.
2017-04-26 17:12:57 +01:00
Monster Iestyn
5608c4b4e7 Merge branch 'public_next' 2017-04-26 16:17:29 +01:00
Monster Iestyn
058ad4df88 Merge branch 'master' into next 2017-04-26 16:15:40 +01:00
Monster Iestyn
1462c638cb Added the "lua_lumploading" variable for restricting certain Lua functions to lump load time only 2017-04-25 21:45:53 +01:00
Monster Iestyn
d4c330678a level header's "forcecharacter" parameter doesn't take skin numbers anymore, so this isn't needed! 2017-04-25 20:39:32 +01:00
toasterbabe
8ae91de9db Per Inu's request, semi-broken (both game mechanically and engineering wise) directional information has been removed from the Captions. It's now "in-level" (dot) and "sourceless" (no dot) only. 2017-04-25 16:03:51 +01:00
Monster Iestyn
c16ae57f91 Merge branch 'addfile-directories-fix' into 'next'
Addfile directories fix

This is a fix for this bug: https://mb.srb2.org/showthread.php?t=42279

See merge request !166
2017-04-24 20:46:38 -04:00
Monster Iestyn
e03577d957 Merge branch 'falling-rocks-fix' into 'next'
Falling rocks fix

This fixes the rock spawners' rocks not being removed if they rolled down to the ground from a slope rather than bouncing (see https://mb.srb2.org/showthread.php?t=41963)

See merge request !162
2017-04-24 20:41:32 -04:00
toasterbabe
c7c908eed3 Emerald tokens being used as actual game tokens on the end-of-act screen!
https://gfycat.com/PlumpShowyBream https://gfycat.com/AlarmingLoathsomeBelugawhale
2017-04-24 21:56:17 +01:00
Monster Iestyn
f099782c91 Spinning/swinging maces/chains and Particle generators can now use P_FindSpecialLineFromTag! 2017-04-24 21:05:28 +01:00
Monster Iestyn
13cb656f0b Whoops forgot this 2017-04-24 20:43:58 +01:00
toasterbabe
922603fbca Fix V_DrawCroppedPatch's handling of topdeltas. 2017-04-24 20:39:32 +01:00
Monster Iestyn
4e96f624e7 Split off part of P_SpawnSpecials into a new function called P_InitSpecials
This allows tag lists, gravity, weather, and the "CheckFor" vars to be initialised before running P_LoadThings or P_ResetDynamicSlopes, in case they could affect mobj spawning or cause a netgame desync somehow by carrying over the previous level's values
2017-04-24 20:33:39 +01:00
yellowtd
068c9d6294 titlemap - skipintro bugfix
game crash with -skipintro enabled, hopefully fixes it and causes no issues anywhere else
2017-04-24 12:52:51 -04:00
Monster Iestyn
7f7c7c58ab Use less-than, not less-than-or-equals, since deststop is off-screen 2017-04-24 17:41:50 +01:00
toasterbabe
9c58d1def8 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into Deez_NewUserXperiences 2017-04-24 15:50:20 +01:00
toasterbabe
18ad6a3a0d Minor tweak to the balance of GFZ3. 2017-04-24 15:38:22 +01:00
toasterbabe
60b7649141 Complete the secrets checklist. 2017-04-23 18:45:54 +01:00
toasterbabe
8d477aefd5 Minor improvements here and there. 2017-04-23 01:12:00 +01:00
toasterbabe
aed8b0b9fd #moreclues (except instead of clues they're sound name fixes) 2017-04-23 00:49:57 +01:00
toasterbabe
785213827b Made the code easier to maintain, and added support for more UC's. 2017-04-23 00:39:20 +01:00
toasterbabe
bcf0df7cb6 Ended up being stressed and not getting any real work done, so figured I'd finish up the checklist system. 2017-04-23 00:16:09 +01:00
toasterbabe
9a8ae7cd64 Okay, I lied. Here's a little bit of cleanup. 2017-04-22 12:53:57 +01:00
toasterbabe
c1bd4f570c The start of an unlockable checklist revamp. Require more UC_ constant acknowledgement and the ability to scroll, but I can't work on this for a while so. 2017-04-22 12:14:15 +01:00
toasterbabe
f8c09d7475 More better sound names. (I'll push something good at some point, I promise!) 2017-04-21 23:41:31 +01:00
toasterbabe
7556b407b2 Fix crash on loading level without a header. 2017-04-21 23:37:14 +01:00
toasterbabe
37fc95ca08 Added modifying sound captions to Lua infolib.
Also, replaced ridiculously ambiguous "impossible error" with more descriptive alternative.
2017-04-21 21:54:56 +01:00
toasterbabe
3cce495675 Made PCX use cv_screenshot_colorprofile.
Also, optimised gif headwrite's palette writing.
2017-04-21 20:29:06 +01:00
Monster Iestyn
ed9dfaa617 Merge branch 'master' into polyobject-checksight-fix 2017-04-21 16:32:38 +01:00
Monster Iestyn
f77e107c1a Merge branch 'no-doubling-texture-heights-plz' into 'master'
No doubling texture heights plz

If you didn't know, apparently SRB2 was hardcoded to double the height of 64x64 textures created using TX_START/TX_END. This has frustrated some a lot. This branch removes this hack at last (there doesn't appear to be any visual issues resulting from removing it, anyway).

srb2win-nodoubletexheight.exe can be found in my FTP folder.

See merge request !85
2017-04-20 21:00:48 -04:00
yellowtd
fd97fdd683 titlemap - cameraref subsector
apparently it recalculates without this line, so it should give a tiny performance boost?
2017-04-20 20:26:32 -04:00
yellowtd
cf454dd6fc titlemap - Fix impending doom (???) camera mobj search
the last implimentation would have apparently stopped working eventually? Idk
2017-04-20 20:26:13 -04:00
yellowtd
f70b89b22a titlemap - support for map camera object
allows a camera thing to be placed for alternate camera placement besides player and DM starts
2017-04-20 20:25:53 -04:00
Monster Iestyn
839dc6bcc1 Merge branch 'hud-drown-numbers-fix' into 'master'
First person HUD drown numbers fix

This branch fixes the following issues with the first person HUD when drowning:
* "0" turning into Sonic's drown sprite, since both sprites happen to be named DRWNA0
* SF_MACHINE's special drowning numbers from 3rd person not being used

See merge request !80
2017-04-20 16:20:00 -04:00
toasterbabe
aa475c9d26 Realised color profile disabling for screenshots didn't work in GL, so updated the menu to show that.
Also, made other minor menu tweaks.
2017-04-20 20:16:10 +01:00
toasterbabe
4f59fa35b3 Add headings to Video Options menu. 2017-04-20 19:27:19 +01:00
toasterbabe
8b46ee76ff Disable colour profile influence on screenshots and gifs if you want. 2017-04-20 18:59:27 +01:00
toasterbabe
9d46ba281f Screenshots now contain the palette you're actively looking at, as opposed to the palette the game/map has! This makes sense for colorblind users being able to store their precious memories, and it matches up with how gifs palettise. 2017-04-20 13:17:11 +01:00
toasterbabe
29d5af61c1 Correcting gamma to match base SRB2. 2017-04-20 13:15:32 +01:00
toasterbabe
bef9520556 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into Deez_NewUserXperiences 2017-04-19 23:03:47 +01:00
toasterbabe
c3840ba01d Colour Cube Calibration Menu! (called "Advanced Color Settings" because No Fun Allowed...)
https://cdn.discordapp.com/attachments/237798387070664724/304343382073933824/aa.png

Also, a "Reset all" button for the Monitor toggle menu, a ton of new cvars to match up with the colour cube calibration, and a bunch of variable renames related to colour cube operations.
2017-04-19 22:24:28 +01:00
Monster Iestyn
3edbf0a085 Fixed P_CheckSight not considering polyobject top and bottom at all
This was actually kind of easier to do than I expected, though I can't tell if there's anything else I need to do or not
2017-04-19 22:19:46 +01:00
Monster Iestyn
f0256c41be Be gone ye old texture hack 2017-04-19 20:00:19 +01:00
Monster Iestyn
8ffa741cda Merge branch 'master' into mapthing-spawn-hook 2017-04-19 17:46:38 +01:00
Monster Iestyn
3ff899858c Merge branch 'master' into opengl-improvements
# Conflicts:
#	src/doomdef.h
2017-04-19 14:53:50 +01:00
toasterbabe
9b13caccae greem 2017-04-18 23:40:57 +01:00
toasterbabe
c2edd6224d Figured out what was up. I didn't quite understand my original array! 2017-04-18 23:38:38 +01:00
toasterbabe
83e16da83b Introducing the Colour Cube! https://cdn.discordapp.com/attachments/293238104096112641/304015171385294850/aa.png
Basically in preperation of supporting colourblindness modes I implemented the following link when loading palettes.
http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter24.html

This basically means I can do whatever the hell I want to the colour profile of incoming paletties, and nobody can stop me. Muahahahaha etc.

Also, I added a saturation feature to show off its full potential, converted gamma from a table to a factor of the calculation, tweaked some menus and made the default value of cvars show up on sliders. Because that's how I roll.
2017-04-18 23:21:10 +01:00
yellowtd
b68d1ebdb3 titlemap - fix game crash with skybox point
game crash on skybox object use fix
2017-04-18 17:47:20 -04:00
toasterbabe
eea7dc4224 Fixed titlemap wipe lasting too long/happening twice over 2017-04-18 17:46:26 -04:00
yellowtd
217f7ebd38 miru asked me for help and im a smelly toast
* Fix Crashes With Respect To Switching Between The Normal Title And Her Magic One
* Clean Up A Bit Of Code
2017-04-18 17:45:43 -04:00
yellowtd
1c93b07c86 Titlemap - Maincfg variables, unplayability crash fixes 2017-04-18 17:36:54 -04:00
yellowtd
7e43272932 begin titlemap
idk my bff jill
2017-04-18 17:23:23 -04:00
Monster Iestyn
0f2c9c40a2 Hardcoded the big gargoyle 2017-04-18 20:38:13 +01:00
Monster Iestyn
941ab72204 Hardcode new/updated xmas scenery object type/state info 2017-04-18 18:32:52 +01:00
toasterbabe
e34e8f85e2 Including a statement about performance on the resolution menu. 2017-04-18 17:45:43 +01:00
toasterbabe
6d7355e9af Add score on Emerald Token pickup (and make the all-emerald bonus a continue in SP) as requested. 2017-04-18 17:45:23 +01:00
Monster Iestyn
0e358b3d9f Add new Pity shield orb state info, remove unused Pity states 2017-04-18 17:36:04 +01:00
toasterbabe
8e3a3e792e Moved the Race HUD down a little bit, and improved the sound selection. 2017-04-18 16:42:42 +01:00
toasterbabe
39fa4fea4a * Update some sound names.
* Make the continue and the flag capture use different sound numbers.
* Make the fancy new race countdown go beep.
2017-04-18 15:57:52 +01:00
toasterbabe
8aa3928458 A consistency error I should've caught earlier, considering this sound is used for DSZ3's missiles as well as GFZ3's laser. 2017-04-18 12:53:16 +01:00
toasterbabe
cf82ef1f79 As requested by Mystic in That Topic, made the end-of-act time bonus for 30 seconds halved and removed the 45 seconds bonus option. 2017-04-18 12:33:19 +01:00
toasterbabe
e93e5176c0 Consistency in firing sound naming. 2017-04-18 12:32:30 +01:00
toasterbabe
528132ad6d Sound always happens on SoundOptions menu now. It was weird not having those. 2017-04-18 12:32:06 +01:00
toasterbabe
fbdc8d3d9e MP pause menu text for Player setup loses the 1 if you're not in splitscreen 2017-04-17 22:41:23 +01:00
toasterbabe
c8186644e7 Improved splitscreen offsets. 2017-04-17 22:34:38 +01:00
toasterbabe
314870bdc2 Support captions for player 2 in 2-player. (You can't tell which screen the sounds are coming from without visual cues normally, so there isn't two seperate caption lists.) 2017-04-17 22:21:16 +01:00
toasterbabe
dd566b77b9 More improved sound names. 2017-04-17 19:52:44 +01:00
Monster Iestyn
93efb3084e Merge branch 'mi-a-bit-of-cleanup' into 'master'
MI's unimportant code cleanup

Just removing a bunch of unused variables/function prototypes from the source code and similarly minor stuff, nothing here should change gameplay much (if at all).

See merge request !71
2017-04-17 14:43:50 -04:00
Monster Iestyn
798628eef1 Merge branch 'mi-minor-refactoring' into 'master'
MI minor refactoring

Just moving the locations of some consvar externs from d_netcmd.h to other header files in which I think they should REALLY belong. Ultimately this should not affect gameplay whatsoever, it's just code cleanup.

See merge request !81
2017-04-17 13:40:51 -04:00
toasterbabe
08e7a7cb4d Clean up captions code to allow for different numbers defined at compile time. 2017-04-17 18:15:42 +01:00
toasterbabe
bec7a184f1 Bweh heh heh. 2017-04-17 17:16:21 +01:00
toasterbabe
c95fcab831 Slight table update. 2017-04-17 15:55:07 +01:00
toasterbabe
74169529fb Correcting a ridiculous crash-causing oversight. 2017-04-17 15:53:54 +01:00
toasterbabe
ff97b3aed4 Alter offsets of HUD numbers a little bit to satisfy OCD (have discussed with Mystic, he offered a solution similar but not identical to what I am committing) 2017-04-17 15:42:01 +01:00
toasterbabe
3551509ed8 * Remaster the sound stacking methodology such that the same sound effect updates its previous position rather than heading to the bottom.
* Put brackets around the sound names on the reccomendation of a friend who works with disability in gaming.
* Update a bunch of sound names to better match what they actually do in SRB2.
2017-04-17 14:38:56 +01:00
toasterbabe
db282caefe * Fix a bug with sounds overlapping.
* Make sounds with identical names (as opposed to just identical sfx's) stack together.
* Corrected a few names.
2017-04-17 02:03:44 +01:00
toasterbabe
3e29ee3f01 Closed captioning!
* Provides a helpful description for the hearing impaired, whether permanent, temporary or situational.
* Consvar "closedcaptioning", with on/off values available.
* Only works if sounds are on. This is frustrating. I will see what I can do to allow it to work with sounds off in future, but for now it's dependent in order to properly accept or decline sounds.
* Thanks to MI for making that wiki page a lot more comprehensive a few days ago.

* Weapon ring is now a seperate sfx_wepfir instead of doubling up on sfx_thok.

* Also, made V_StringWidth work with V_NOSCALESTART.
2017-04-17 01:09:47 +01:00
toasterbabe
7c07978277 Disable irrelevant/dangerous-to-tweak options on the server menu under cetain conditions. 2017-04-16 15:00:58 +01:00
toasterbabe
dff95bc30a Further tweak to server options menu, returning resynchattempts to the menu alongside taking Master Server out of data options because that doesn't make sense at all 2017-04-16 14:20:38 +01:00
toasterbabe
24192f54d1 Revamp statistics screen to put everything on the same page. http://imgur.com/a/kZrfm
* Also, inverted the direction of PGUP and PGDN.
2017-04-16 00:12:37 +01:00
Monster Iestyn
a6f830ddff Add the "MapThingSpawn" hook to Lua 2017-04-15 21:41:22 +01:00
toasterbabe
b0ebb40913 Headers for the controls menu. 2017-04-15 21:40:30 +01:00
toasterbabe
f35cac3b55 Rejigger Server menu a smidgen to encourage scrolling down, clean up, and reinstitute hidetime. 2017-04-15 20:25:53 +01:00
Monster Iestyn
7629a0710e Make sure quakes are scaled for skyboxes
While I was at it I also refactored most of the skybox view scaling code so it isn't needlessly duplicated
2017-04-15 20:21:54 +01:00
toasterbabe
68f5460387 * Added little arrows to the statistics pages.
* Made it possible to switch statistics pages using left and right arrows. Their previous functionality has been given to Page Up and Page Down.
* Swap over header style to the new version for everything.
* Move Master Server into Data Options, since it needs to be exposed somewhere.
2017-04-15 16:41:27 +01:00
toasterbabe
2a40804ea2 Offset tweak so "General" on the netgame settings menu doesn't go only SLIGHTLY off the screen and stop appearing when you scroll down. 2017-04-15 15:42:25 +01:00
toasterbabe
fd5c72d4c0 * Revamp sounds menu to show you the current status of the different kinds of sounds and musics, and basically behave like a cvar without being a cvar.
* Show resolution on main Video page.
* Optimise by using V_RightAlignedString instead of V_DrawString with V_StringWidth.
* Revamp sliders. (Requires a new patch.dta I'll upload in a little bit in order to be perfect, but does pretty well w/o replacement graphics too.)
2017-04-15 15:36:19 +01:00
toasterbabe
47bcc2747c * Fixed highlighting text on scrollable menus.
* Revamped base video menu and moved all the relevant stuff from the Game Options Menu onto it. Still mulling on where to put the Master Server reference.
2017-04-15 14:05:51 +01:00
toasterbabe
e2b063b2a8 Scrolling menu option now available!
* Revamped Netgame Options Menu to scroll and also be less suck.
* Renamed a few other options here and there.
2017-04-15 13:36:40 +01:00
toasterbabe
cafb54cc37 * Tweak pre-key control menu. Not exactly as desired, but exposes flipcam and is functional enough for now.
* Change names of axes.
* Seriously defuck joystick selection for the default number of joysticks available.
* Renames a few other options.
2017-04-15 01:08:26 +01:00
toasterbabe
df8078d9a5 Move Game Status up so it shows up on first opening the menu, considering it has an effect in singleplayer but talk doesn't. 2017-04-15 00:18:56 +01:00
toasterbabe
37bd729fe8 Scrolling, monolithic control configuration page. Relies on sphere's patch.dta update for arrow symbols. 2017-04-15 00:15:09 +01:00
toasterbabe
30b10b05d3 Change analog mouse to apply turning buttons, because aa. 2017-04-14 21:01:45 +01:00
toasterbabe
85b71aa685 End to old match scoring toggle. 2017-04-14 20:51:25 +01:00
toasterbabe
174921c1e1 End to sudden death. 2017-04-14 20:46:48 +01:00
toasterbabe
95d89078f5 Removal of cv_allcaps for console stuff. 2017-04-14 20:43:30 +01:00
toasterbabe
99a04cca9c First part of revamp: Removing Camera Rotate L/R keys, and giving the two situations where they had any unique functionality (Analog mode and NiGHTS objectplace) suitable replacements. 2017-04-14 20:29:08 +01:00
Monster Iestyn
181c8bd742 These convar externs aren't moving files, I'm just shifting them up to live with their relatives 2017-04-14 19:56:51 +01:00
Monster Iestyn
0921244ba4 Move analog consvars to g_game.h 2017-04-14 19:00:46 +01:00
Monster Iestyn
488c4071ba Moved screenshot/movie consvar externs to m_misc.h 2017-04-14 18:14:15 +01:00
Monster Iestyn
46c3c42eba cv_controlperkey probably belongs in g_input.h too 2017-04-14 18:02:35 +01:00
Monster Iestyn
887e7e0b7d Moved most of d_netcmd.h's 2P mouse consvar externs to the files with their 1P counterparts 2017-04-14 17:45:27 +01:00
Monster Iestyn
3696463aa8 Just to make toaster happy I'll do this :V 2017-04-14 17:16:09 +01:00
Monster Iestyn
180829e95c Rewrote first person HUD's drown numbers drawing 2017-04-13 22:09:03 +01:00
Inuyasha
5e4f960f3a fixed drawfill to be more consistent w/ other functions
doesn't draw off of the sides, and doesn't ignore snapping or widths for reasons that don't make sense
(for instance: the green bar in MI's test script showed *above* the blue one in non-green resolutions in 2.1.17)
2017-04-12 15:34:13 -07:00
Monster Iestyn
80637b336b Starting work, noclimb inverts direction (haven't tested if it actually works or not yet) 2017-04-11 22:33:04 +01:00
toasterbabe
db4002cd7f Remove now-unused code. 2017-04-10 11:49:14 +01:00
toasterbabe
48ed7835d7 Add a helpful comment in order to make people who look at this in future suffer less. 2017-04-10 11:41:26 +01:00
toasterbabe
e333dd62f0 I did it!!!!!!!!!!!!!!!!!!!!!! 2017-04-10 11:34:56 +01:00
toasterbabe
8ee8bd532b Got it rendering slopes far away from the origin properly at the expense of having weird offsets near it. Still experimenting, but closer than ever before. 2017-04-10 10:51:52 +01:00
toasterbabe
54e0a0c17d Reeeeeeeeeeeeeed fix ur slops
Recreated my previous code using floats in case the issue was overflowing that could be mitigated using floating point precision - but still doesn't work. Pulling my hair out.
2017-04-09 15:22:42 +01:00
toasterbabe
dca98e9eb8 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into alignment_v2 2017-04-08 21:04:03 +01:00
toasterbabe
2636375f94 GL supporting. 2017-04-07 16:51:43 +01:00
toasterbabe
477ada7477 Clarified comments. In case it wasn't clear, P_SKIN now allows field patching (this was unfortunately done in the large merge commit, so easily buried). 2017-04-07 15:59:25 +01:00
toasterbabe
8f9ee2da30 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch
# Conflicts:
#	src/dehacked.c
#	src/p_setup.c
#	src/r_things.c
2017-04-07 15:37:22 +01:00
toasterbabe
5eda275335 Consider objectplace 2017-04-07 13:08:31 +01:00
toasterbabe
25754ad708 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into directionchar 2017-04-07 12:48:48 +01:00
toasterbabe
73ea33d3a1 Fixing the fuckup I made when creating the new palette. 2017-04-06 16:42:52 +01:00
toasterbabe
f6aa546c44 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into directionchar 2017-04-06 14:44:24 +01:00
Monster Iestyn
bfaf60ceef Merge branch 'public_next' 2017-04-05 21:05:57 +01:00
toasterbabe
7d970fa2f7 Tweaked CA2's relationship. 2017-04-05 20:18:40 +01:00
toasterbabe
af2cf44f9e * Skidding doesn't turn.
* Rolling only turns on keypresses at minimum horizontal speed.
2017-04-05 16:43:23 +01:00
toasterbabe
61b19aff58 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into directionchar
# Conflicts:
#	src/p_user.c
2017-04-05 16:01:02 +01:00
toasterbabe
89f518a8a3 FuriousFox discovered a crash, realised I wasn't careful here. 2017-04-04 23:12:43 +01:00
Monster Iestyn
81c3d6820e Merge branch 'commandline_skinselect' into 'next'
Command-line skin selecting fix

Fixed http://mb.srb2.org/showthread.php?t=42312.

Also, fixed being able to change your skin colour during credits/cutscenes in singleplayer.

See merge request !158
2017-04-04 16:49:55 -04:00
toasterbabe
6c923b26e7 woops forgot to push this 2017-04-04 21:29:44 +01:00
toasterbabe
3efa66d537 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/m_menu.c
2017-04-04 21:03:35 +01:00
Rob
8fdbc5669c Merge branch 'level_select' into 'master'
Revamped Level Select (platter view)

Seriously revamped every level select instance in the game to use a more attractive and easier to navigate platter view, including:

* Game CLEAR! save (Title/Pause menus)
* Secrets Menu (including custom ones)
* Record Attack/NiGHTS Mode
* Server creation (Online/2P)
* MP Pause level select (Online/2P)

As a result, the layout of the last three above menus has been changed to varying degrees of difference.

Also, bonus feature: using level select (or MAP MAPxx without -force) in Co-op multiplayer won't reset your score, will keep any lives you have above the startinglives variable, and will not take away all your emeralds. The -force thing prevents both warping directly to special stages to rack up the emeralds AND ensures there IS a way to start a new game.

Check out <root>/!LatestSRB2Files/srb2win_branch_levelselect.exe with the latest patch.dta to see more.

Also, LF2_WIDEICON lets you do this. https://gfycat.com/MenacingClearAngora

See merge request !68
2017-04-04 12:23:18 -04:00
toasterbabe
76b56a0285 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/p_user.c
2017-04-04 16:55:20 +01:00
toasterbabe
d5575669fa Handled some of MI's concerns. 2017-04-04 16:50:33 +01:00
Rob
c4984bec46 Merge branch 'changed-defaults' into 'master'
Suggested default settings

Making a merge request for suggested new default settings, because saying "hey, I think this would be a better default, you guys should try it" in IRC won't actually get people to give you opinions on them ;p

Camera distance is 160 now, height is 25, and speed is 0.3 (previously 128, 20, 0.25, respectively). Mouse sensitivity on both axes is now 12, previously 35. The default move/look/jump/spin keys is Mystic's proposed scheme from the New Player Experiences topic (https://mb.srb2.org/showthread.php?t=42095).

Camera settings also now can save to your config.cfg, and they won't try resetting back to the default at every chance it gets. (~~As a side effect, analog mode won't have higher cam_dist anymore. Poor analog mode, no one cries for you.~~ Now increases cam_dist in analog mode by x1.2!) This makes it so everything that's different can be easily reverted back to the older setting.

Test exe in my folder, <root>/TehRealSalt/srb2win_changed-defaults.exe

See merge request !75
2017-04-03 23:45:33 -04:00
toasterbabe
caeb515783 On request, swapped out MT_PARTICLE dust for MT_SPINDUST dust. 2017-04-03 19:01:30 +01:00
toasterbabe
1e64b096fd Bugfixes and code cleanup.
* Getting hit whilst on a swinging mace doesn't send you off in roll/jump state.
* P_GetJumpFlags replaces a bunch of copypasted code.
* Homing attacking a spring sends you directly on its path, rather than rocketing off in the direction you were preiously hurtling in.
2017-04-03 18:28:02 +01:00
toasterbabe
0c792ff67a Add missing flag reads. 2017-04-03 16:05:13 +01:00
toasterbabe
1c737f33c5 Camerascale fix to apply to more stuff. 2017-04-03 13:33:05 +01:00
toasterbabe
643daa3394 Updated coloropposite table for the purpose of the .wads under development. 2017-04-03 13:23:05 +01:00
Alam Ed Arias
4fa188cf01 build: fix 64-bit builds 2017-04-01 17:22:24 -04:00
Monster Iestyn
bf29b5c6d1 Print warning message in console if line->next is NULL 2017-04-01 20:16:48 +01:00
toasterbabe
ab34bd231b No need for oldxoffs. 2017-04-01 16:25:20 +01:00
toasterbabe
0ff036c2e2 Some progress!
http://i.imgur.com/yVPJQpp.png

Previously, both were visual garbage. So it's gettin' there.
2017-04-01 16:20:20 +01:00
toasterbabe
837291c013 Woops, need to ensure functional equivalence to what came before. 2017-03-31 17:08:46 +01:00
toasterbabe
d5ba29eb9b Get plane scrolling effects working the same on and off slopes in both renderers again. 2017-03-31 16:45:47 +01:00
toasterbabe
79ec8fbf29 Minor refactor. 2017-03-31 16:29:50 +01:00
toasterbabe
b924a7d902 Interesting consideration: flat angle wasn't used to determine seperate visplanes. This is obviously incorrect behaviour. Enabling this restriction makes flat alignment on slopes ALMOST work identically to normal, but not quite.
Also, made the fudge a const, since it may as well be one.
2017-03-30 23:56:14 +01:00
toasterbabe
d62a628346 Consistency between software off-slope and GL on+off-slope flat alignment! (Software slopes are now MORE broken with respect to this, but that comes later.) 2017-03-30 22:48:13 +01:00
Monster Iestyn
1c331219f2 Merge branch 'public_next' 2017-03-30 21:50:13 +01:00
Alam Ed Arias
8f25dc62cc Merge branch 'master' into next 2017-03-30 08:11:26 -04:00
TehRealSalt
b5d1bff18a Scaled down cam_height default
25 was picked over 24 due to 160/25 being exactly proportional to
128/20.
2017-03-29 18:30:45 -04:00
TehRealSalt
9c9bc7b3e3 Merge remote-tracking branch 'refs/remotes/origin/master' into changed-defaults 2017-03-29 18:28:34 -04:00
TehRealSalt
a84eed162d Save mode
Lets modders set how the game should be saved. Likely useless for
vanilla, but helpful for other mods. This was spawned out of selfishness
for SUGOI to make it only save at the hub, but mods like Boss Mayhem,
which has a hidden map and an act 3 (without any other acts) in the
normal SP campaign, and other mods where the default is detrimental
would benefit as well.

0 for default, 1 for always, 2 for never (no constants because bonustype
doesn't have them either). Won't save if the game is modified, if using
a no-save slot, if playing ultimate mode, or if in a special stage, even
if savemode is set to always.
2017-03-29 18:25:09 -04:00
Alam Ed Arias
4c992845e7 Merge branch 'next' into allowteamchange-fix 2017-03-29 17:03:03 -04:00
Alam Ed Arias
70677817bb Merge branch 'next' into admin-ban-fix 2017-03-29 17:01:47 -04:00
Alam Ed Arias
114d295f89 Merge branch 'next' into addfile-directories-fix 2017-03-29 17:00:42 -04:00
Alam Ed Arias
0ffc0f1974 Merge branch 'next' into falling-rocks-fix 2017-03-29 16:59:30 -04:00
Alam Ed Arias
74db3b51ac Merge branch 'next' into commandline_skinselect 2017-03-29 16:58:19 -04:00
Alam Ed Arias
108b0c2732 Merge branch 'master' into disable_gettext 2017-03-29 16:56:44 -04:00
Alam Ed Arias
5feccaad2a Merge branch 'next' into touching_fixes 2017-03-29 16:55:06 -04:00
Monster Iestyn
48777e60ed check i not add, silly 2017-03-29 21:27:44 +01:00
Monster Iestyn
d7b4b05d9a Fix remaining mixed-declaration-and-code issue detected when compiling 2017-03-28 21:30:31 +01:00
toasterbabe
53711e9143 Having thought about it for more than two seconds, it definitely is not safe to even consider letting people delete sprite2's. 2017-03-27 16:06:33 +01:00
toasterbabe
b73b38c326 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch 2017-03-27 15:57:50 +01:00
toasterbabe
734d215b35 Corrected oversight. 2017-03-27 15:29:19 +01:00
toasterbabe
5065fa302a Mutiability flag-ised as requested by Rob. 2017-03-27 15:03:21 +01:00
toasterbabe
79f2d616fc Modified melee/twinspin springboost. 2017-03-27 14:37:40 +01:00
toasterbabe
302305ccf5 Fixing SF_NOSUPERSPIN, which has been broken ever since the super walk animation was added. 2017-03-27 14:22:03 +01:00
TehRealSalt
e5245c508d Reimplemented analog mode cam_dist increase, slight comment updates
Analog mode's camera is now x1.2 of your actual cam_dist setting,
instead of being strictly 192. "analog on" seems to reset this modifier
every once in a while, but "useranalog on" prevents this. The wiki
itself says that you should only change useranalog though, so it
shouldn't be too big of a deal.
2017-03-26 17:11:04 -04:00
toasterbabe
698e53a518 Per Mystic's request, sped up hammer animation. 2017-03-25 14:06:27 +00:00
toasterbabe
805784a175 Made it possible for nojumpspin characters to juke the Minus into exposing itself by jumping over it slowly, allowing its vulnerability to be exploited. 2017-03-25 12:51:38 +00:00
toasterbabe
8d9b616f00 Fixed repeatable bounces sending you hog-wild if you went into water shallow enough to only spend a single frame in before hitting the ground. 2017-03-25 12:42:39 +00:00
TehRealSalt
dbcbcf5da3 Changed defaults, camera settings save
Camera settings: distance from 128 to 160, height from 20 to 32, speed
from 0.25 to 0.3
Mouse sensitivity from 35 to 12
Default control setup is Mystic's proposed scheme from the New Player
Experiences topic (https://mb.srb2.org/showthread.php?t=42095)

Also, camera settings now save to config, and they no longer try to
reset back to the default at every chance it gets (you can die, start a
new game, or exit, all while still keeping your preferred setting)
2017-03-25 03:13:02 -04:00
toasterbabe
0bd093faf7 * Fixed weird hitbox thing when using a shield ability that puts you into a spin (when CA2_NOJUMPSPIN).
* Fixed bug with the magnet shield homing attack and charability homing attack not properly updating the player's target/tracer.
* Made flashing of lockon/got flag icons slower.
2017-03-24 13:51:23 +00:00
Alam Ed Arias
8f4f8c6e77 Merge branch 'master' into next 2017-03-24 00:14:14 -04:00
Alam Ed Arias
59d91e0793 build: r_bsp.c:213:23: warning: inlining failed in call to 'R_DoorClosed': call is unlikely and code size would grow [-Winline] 2017-03-23 23:13:31 -04:00
toasterbabe
fa29f7deca A bunch of stuff again.
* Lock on targets bob now, and are used for CA_HOMINGTHOK and SH_ATTRACT as well.
* Flag stuff is now animated like it was designed to be but which was kinda messed up.
* Cork sounds.
* P_SpawnLockOn(player_t player, mobj_t lockon, statenum_t state) for Lua.
* Added homing/firing CA2_GUNSLINGER stuff at egg guard shields.
* Fixed homing stuff wrt egg guard shields and sea egg balloons.
* Fixed attract orb goin' gold when doing a CA_HOMINGTHOK homing ability.
* Fixed positioning of player during homing attack.
* Cleaned up lockon spawn code.
2017-03-23 19:11:22 +00:00
TehRealSalt
965846b0da More consistency
As per MI's request
2017-03-23 01:17:31 -04:00
toasterbabe
ddf8db12af Big commit, sorry. I broke several things trying to get other things to work and it's only now that all the code that worked yesterday works today!
*P_LookForEnemies is now side-effect-less and only provides a pointer to the found mobj
*player-jumping is dead, long live PF_STARTJUMP
*per Mystic's request, CA2_GUNSLINGER has a targeting icon. It also has a more restricted vertical aiming range.
*mobj for this is in the game as requested
*fast teetering animation flag
*general code cleanup
2017-03-22 18:51:30 +00:00
TehRealSalt
92e785a9f2 Map emblem type flags
As per toaster's request
2017-03-22 14:45:26 -04:00
TehRealSalt
b418ac0acb Level completion emblems
Simple port of something I made for a 2.1 exe mod that Mystic mentioned
needed doing on the 2.2 Priorities topic
(http://mb.srb2.org/showpost.php?p=790613&postcount=4). Adds emblem type
"map", which gives you an emblem upon beating the map it's for. Var sets
more specific conditions; 1 for all emeralds completion, 2 for Ultimate
mode completion, 3 for Perfect Bonus completion. (These can be easily
removed if requested; these were added simply because it was easy to
implement for modders.)

Criticism on the way it's coded and/or how it is implemented is highly
encouraged. Test wad is <root>/TehRealSalt/levelemblems.wad,
pre-compiled exe is <root>/TehRealSalt/levelemblems.exe.
2017-03-22 12:59:16 -04:00
toasterbabe
90893c02a3 * Added restriction to prevent combination of CA2_GUNSLINGER and ringslinger on.
* Swapped usage of player->spinitem to player->revitem for bullet type selection, since spinitem is used coming out of zoom tubes (which are universal).
* Switched the optional boolean for "bullet" in the Lua wrapper for P_LookForEnemies to be false by default.
* Allowed CA2_GUNSLINGER users to target Detons.
* Cleaned up some code here and there.
2017-03-21 23:24:57 +00:00
toasterbabe
7ac0373dbf After usability complaints:
* CA2_MELEE/CA_TWINSPIN combination abilities (ground hit, somersalt) disabled.
* Enabled movement controls whilst using CA2_MELEE in the air.
* CA2_GUNSLINGER no longer requires charging. In exchange, it involves a cooldown in which you can't move.
* CA2_GUNSLINGER lock-on distance improved, and aiming allowance reduced to compensate.
* Lots of cleanup/gravflip allowances for homing/targeting code.

* Unrelated: Flickies now properly face the direction they're supposed to when getting knocked out of the egg capsule.
* Unrelated: Thok trail fades like spindash trail now.
* Unrelated: Using CA_HOMINGATTACK when nowhere near an enemy uncurls you.
2017-03-21 16:04:49 +00:00
toasterbabe
9d9f3e5e1a Changed the race HUD to bounce a bit because I'm having fun. 2017-03-21 15:59:13 +00:00
toasterbabe
a6f5357cbd * fixed spindash
* fixed whitespace
2017-03-21 02:06:24 +00:00
toasterbabe
f24302adfb Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-03-21 00:56:03 +00:00
toasterbabe
59bc0da022 Introducing CA2_GUNSLINGER.
* Mildly hacky proof of concept! Will de-hack later.
* Charge up your ability!
* You can only damage others if it's at full power.
* Fires directly at enemies/bosses when at full power. Does NOT aim at players.
2017-03-21 00:54:47 +00:00
toasterbabe
ee74fa4042 * Changed how CA2_MELEE handles nocontrol to not tweak pw_nocontrol.
* Added CA_TWINSPIN/CA2_MELEE spring boosts.
* Made it so you can't land with CA2_MELEE twice.
* Fixed stray #endif from NiGHTS fixes.
2017-03-20 19:04:33 +00:00
toasterbabe
a4c1c3195f Cleanup.
* Fixed a major hack from when I SPR2ised NiGHTS by spawning in a null object.
* Made P_LookForEnemies better in preperation for the future.
* Changed some defaulting characteristics of P_GetMobjSprite2.
* Fixed CA_DOUBLEJUMP potentially counting as a float.
* Killed some extremely small boolean functions and replaced them with #defines.
2017-03-20 16:57:24 +00:00
toasterbabe
f0c364c71c For melee:
* Fixed underwater hop going too high.
* Added helpful comment.
* Changed animation speed.
2017-03-19 22:22:39 +00:00
Monster Iestyn
a979b425e0 Merge branch 'TEXTURES_More' into 'master'
Transparent patch support in TEXTURES

Adds transparent patch functionality for the TEXTURES format.
Duplicates source-to-cache column drawer functions and adds extra functionality which uses trans tables.
Changes how the column drawer is picked so it's done once per patch instead of per column.

See merge request !72
2017-03-19 16:17:31 -04:00
Monster Iestyn
5877cc40d9 You actually don't need to set ColumnDrawerPointer to &R_DrawColumnInCache etc, C allows you to set it directly to R_DrawColumnInCache etc. ColumnDrawerPointer can then be called without the (* ) stuff 2017-03-19 20:08:33 +00:00
Monster Iestyn
351a391e43 Fixed errors reported while compiling 2017-03-19 19:43:02 +00:00
toasterbabe
9fd09c07f3 <Rob> The host should not be able to switch their skin if skin switching is locked
<Rob> That is completely unfair
2017-03-19 17:18:41 +00:00
toasterbabe
3a6f659b93 She's a lot more complete.
* Melee now has a proper weightiness to it with a landing frame.
* If you have twinspin too, do a somersalt when running and hitting the melee button.
* If you have melee, go into the melee landing frame when twinspinning into the ground.
2017-03-19 16:48:35 +00:00
toasterbabe
1582aee909 No more switching characters in forcecharacter maps! 2017-03-19 13:48:54 +00:00
toasterbabe
8aaf3ac851 ...copypaste failure 2017-03-19 12:49:29 +00:00
toasterbabe
7c852b575a Inu made some suggestions about the skinnamepadding stuff, so here's the fix. 2017-03-19 12:45:01 +00:00
Inuyasha
0e9761bc57 HUD changes don't trip isgamemodified
(some HUD patches renamed because they're dumb)
2017-03-19 05:37:04 -07:00
toasterbabe
99f13c88ae Made jump damage flag application less hacky. 2017-03-18 21:06:06 +00:00
toasterbabe
98095292d6 Rob wanted hudnames that were less than 5 padded at the front. Whilst I tested it and didn't think it was a good idea, I'm committing the code anyways lest some fool wish to try it in future. 2017-03-18 17:02:34 +00:00
toasterbabe
842c27e78b Let's not use terms like this so plainly, right? 2017-03-18 14:20:42 +00:00
toasterbabe
096921cbbf Added a bit of a fun limitation.
* Made it so (player->availabilities & 1 << skinnum) is only true if skins[skinnum] DOES have an availability method, and always false otherwise.
* This means that setting your availabilities to INT32_MAX is no longer the equivalent of having gotten all skins.
* This means we can detect and kick cheat engine script kiddies who try to fool the server that they can use everything.
* This means availabilities of 0x00 is now valid, so make it all F's for an invalid not-in-game.
2017-03-18 13:03:29 +00:00
toasterbabe
ced6cd4349 Why do we want to end Ian, anyways? Action Man is a good boy. #deepcut 2017-03-18 10:12:14 +00:00
toasterbabe
87ba3411a4 * Fixes forceskin causing desynchronisations, baby! Checks only when attempting to send.
* Makes the forceskin print more consistent with the skin print.

* Disabled the printing of availabilities.
2017-03-18 00:41:40 +00:00
toasterbabe
0060caaf1a Fixed synchronisation of skin changes and forceskin.
There's an outstanding issue - you can set forceskin to whatever you want to as the host. This needs to be fixed, but I'm commiting my successes first.
2017-03-17 23:11:32 +00:00
toasterbabe
b66ded844e compile fix 2017-03-17 23:09:15 +00:00
toasterbabe
8903a0e185 Yeah, this wasn't network safe. 2017-03-17 17:18:14 +00:00
toasterbabe
ed3569feae Woops. 2017-03-17 16:47:37 +00:00
toasterbabe
6fa319041a A serious defuckening of my fancy character select code. 2017-03-17 14:27:17 +00:00
toasterbabe
3fdb8a3181 this video game is haunted because it was built on an abandoned endian preservation 2017-03-16 20:55:41 +00:00
toasterbabe
60a2e26569 First attempt at making skin availabilities netgame-synchronised. However, I am completely unable to test this right now, since I'm on uni internet which is super locked down; in order to have it not get tangled up with anything else, I'm committing it now in a potentially broken state so that it can be reverted at a later date if necessary. 2017-03-16 18:57:42 +00:00
toasterbabe
a65ffc6b24 * Cleaned up a bit of irrelevant oldbrak goop.
* Made it so the goop always appears on-top of the player.
2017-03-16 11:23:23 +00:00
toasterbabe
95e4a23a69 pw_ingoop is now CR_BRAKGOOP because i can't stop refactoring CAN'T STOP WON'T STOP 2017-03-15 21:51:35 +00:00
toasterbabe
b53e69b949 Corrected a silly oversight. No, you can't swap your carry stuff when recycling! 2017-03-15 20:42:01 +00:00
Nevur
191623e246 Made tweaks suggested by toaster to make the code a bit less dumb. 2017-03-15 15:46:04 +01:00
toasterbabe
b2c0930807 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-03-14 18:12:47 +00:00
toasterbabe
7aeeb278fe Increased space in pflags (because we were getting VERY close to full capacity), which I will re-organise when this branch is closer to completion.
* PF_NIGHTSMODE is now CR_NIGHTSMODE as part of player->powers[pw_carry]. This is because it's mutually exclusive to every other "carry" type.
* PF_SUPERREADY is dead because it literally just checked for all 7 emeralds and 50 rings. That's it. You couldn't even appreciably alter its presence with Lua. That logic has been placed back in P_SuperReady.
2017-03-14 18:11:17 +00:00
Monster Iestyn
7a37794316 Merge branch 'crumble-FOF' into 'master'
Crumble fof

Basic (but kind of WIPish still) support for remote falling of FOFs by linedef execs or Lua. Originally started for Nev3r to use his dark magic on.

Making this MR so people actually remember I was doing something regarding crumbling FOFs, it's been months since I did stuff for this now mind...

* linedef type 446: basic setup is same as the remote shatter one (436), except the FOF of course falls down rather than shatters. By default the FOF respawns
 * *No Climb*: the FOF *doesn't* respawn
 * *Block Enemies*: respawning ability is determined by the FOF's flags (if it has FF_NORETURN it doesn't return, if it doesn't it does return)
 * *Block Enemies + No Climb*: inverted version of above
* EV_StartCrumble for lua, format: `EV_StartCrumble(controlsec, rover, [floating?, [player, [origalpha, [crumblereturn?]]]])`
 * *controlsec* is the FOF's control sector
 * *rover* is the FOF itself
 * (optional) *floating?* does the FOF float on water after crumbling? Defaults to false (NOTE: probably should be set to `rover.flags & FF_FLOATBOB` for best results currently, kind of weird otherwise)
 * (optional) *player* is the player that caused the FOF to fall; needed for some effects such as who to award points to if you killed someone =3 Defaults to nil
 * (optional) *origalpha* is the FOF's original alpha before crumbling (the thinker for respawning + floating crumbling FOFs tinkers with the alpha for some reason). Defaults to rover.alpha
 * (optional) *crumblereturn?* will the FOF respawn afterwards? Defaults to false (NOTE: probably should be set to `not (rover.flags & FF_NORETURN)` for best results currently, kind of weird otherwise)
 * the return value of EV_StartCrumble means something I forget offhand now ...it's either true or false though, mind

See MonsterIestyn/crumble-fof on the FTP for a test exe (srb2win-crumblefof.exe), a test map for the linedef, and a test lua script for EV_StartCrumble (which can also be tested in the map).

See merge request !55
2017-03-13 14:30:44 -04:00
Monster Iestyn
386fec037f Merge branch 'lua-more-stuff' into 'master'
Lua more stuff

More new Lua features and fixes:
* Most Lua functions that deal with stuff that exists only in levels now should spout Lua errors instead of crashing the game if you try to use them outside of levels. Likewise, accessing any of the tables that contain level-only stuff (players, sectors, lines, etc etc) spouts Lua errors too outside of levels.
* `userdataType(variable)` now exists: this function simply returns the type of the userdata variable given as a string (e.g. `userdataType(players[0])` returns "player_t", `userdataType(sectors[0])` returns "sector_t"). This also includes "minor" userdata types for array members of other userdata types, such as .powers of player_t variables or .lines of sector_t variables (which would give the strings "player_t.powers" and "sector_t.lines" respectively).
* The Lua hook "MobjMoveBlocked" now exists: functions for this hook are called whenever a mobj attempts to move horizontally but is blocked by a wall or solid mobj (or whatever else can cause P_TryMove to return false, assuming it doesn't remove the mobj). In theory this hook could be very useful for behaviour such as sliding or bouncing off walls without the need of flags like MF_SLIDEME or MF_BOUNCE etc. Format for use is just like most generic mobj hooks: `addHook("MobjMoveBlocked", functionname, MT_OBJECTTYPE)`, where `functionname` is a function that takes a single mobj_t argument.

See MonsterIestyn/lua-more-stuff on the FTP for a test exe (srb2win-lua-more-stuff.exe) and some test scripts for the above changes.

See merge request !67
2017-03-13 14:29:35 -04:00
Monster Iestyn
731ee115a3 Merge branch 'public_next' 2017-03-13 18:25:26 +00:00
Alam Arias
7d25ab361a Merge branch 'next' into allowteamchange-fix 2017-03-12 21:50:31 -04:00
Alam Ed Arias
cb98c2d972 Merge branch 'master' into next 2017-03-12 21:34:19 -04:00
Alam Ed Arias
4e8972cd24 build: no warning or error about logical-ip or tautological-compare 2017-03-12 21:16:37 -04:00
Alam Ed Arias
9cac1e9e62 build: fixup WFALGS/WFLAGS mistake 2017-03-12 21:09:06 -04:00
Alam Ed Arias
81fe46213d build: do not overwrite the -Wno-error switchs 2017-03-12 20:51:45 -04:00
Alam Ed Arias
42ecca817d build: disable tautological-compare and logical-op 2017-03-12 20:43:35 -04:00
Alam Ed Arias
b01d5da60f build: fixup GCC54 endif 2017-03-12 20:23:30 -04:00
Alam Ed Arias
e0b2a4a779 build: add suport for GCC 6.3 2017-03-12 17:45:18 -04:00
Alam Ed Arias
2823c7bffb build: fixup warnings from GCC 6.2.1 2017-03-12 17:23:56 -04:00
Nevur
be9ca534d7 Whitespace indenting. 2017-03-12 20:26:45 +01:00
Nevur
144514247d Added exceptions to the transparent column drawers to avoid modifying pixels with the cyan color. 2017-03-12 20:02:29 +01:00
toasterbabe
b9ddc0226e Fixed a thing where super float started on the float frame normally and then immediately went to the float run frame a tic later. 2017-03-11 18:15:44 +00:00
toasterbabe
5b77ca5fed Reverted change where NiGHTS drilling sprites were technically the super version of flying sprites. It was not helpful to modders at all, and was only justifiable as a rutheless attempt at efficiency in storage. 2017-03-11 18:14:58 +00:00
toasterbabe
e20292844d * SPR2_DRL0-C are gone. They're now (FF_SPR2SUPER|SPR2_NGT0-C). This frees up a bunch of badly-used freeslots, considering that you can't be super AND NiGHTS at the same time.
* Speaking of, actively enforced not being able to be Super and NiGHTS at the same time.
* Also on that note - SPR2_TRNS is now the NiGHTS transformation. The Super transformation is (FF_SPR2SUPER|SPR2_TRNS).
* SPR2_NPAN is now SPR2_NSTN, since it matches Super Sonic's stun animation rather than the pain animation.
* Fixed a bunch of things where Super float was handled badly with 2AM brain.
* Fixed the R_ProjectSprite error going out of spr2names' bounds.
* Fixed order of FF's in dehackéd.
* Fixed that thing where Super Sonic was blue for 1 tic after transformation, and the life icon was a blue Super Sonic.
2017-03-11 17:14:39 +00:00
toasterbabe
75ac351940 It's 2am, I'll upload the exe and player.dta to the ftp later.
* Super sprites are now deliniated via an additional S_SUPER lump between S_START and S_END. Above are normal sprites, below are super sprites. Handled internally via FF_SPR2SUPER.
* Sprite2 numbers are now appropriately limited for the data type that stores them.
* SPR2_SPIN is now SPR2_ROLL, SPR2_DASH is now SPR2_SPIN and SPR2_PEEL is now SPR2_DASH. Makes more sense, right?
2017-03-11 02:09:01 +00:00
toasterbabe
7f7d51a474 comment updates 2017-03-06 19:03:05 +00:00
Nevur
13dbe7d3a3 Fixed issue with vertical offsets being broken.
Add a vertical flip variant for the translucent column drawer.
Translucency is now properly distributed: 0.00 leads to no render at all, 0.1 to TRANS10, ..., 0.9 to TRANS90, 1 to regular column drawer.
2017-03-05 18:53:34 +01:00
Nevur
829be5bd43 Changed how R_GenerateTexture picks the function to draw the columns so it checks once per patch.
Also had to set the same args for all of the three current column drawer functions.
2017-03-05 12:49:09 +01:00
Nevur
bf5a10e4b7 The translucency feature is now functional, but it doesn't exactly work as expected. Need to make it behave like FOF translucencies etc., I guess. 2017-03-05 00:29:10 +01:00
Nevur
bb49362577 Add rudimentary and non-working code for translucency on patches. 2017-03-04 20:59:43 +01:00
Monster Iestyn
0f014fe20a Merge branch 'master' into next 2017-03-04 17:16:33 +00:00
Monster Iestyn
b0f4bbb44b Played TD's Stormy Streets enough to know precipitation sprites didn't get an overflow test of their own
(various large invisible blocks used in the level cause rain to make splashes high above the main level, high enough to make ghostly rain splash sprite artifacts appear sometimes in nearby areas)
2017-03-02 19:37:21 +00:00
Monster Iestyn
c43b41815f Make "Enter Game" option use the big blue window notice if you cannot switch teams, instead of falling back on changeteam's own console notice 2017-03-02 14:28:52 +00:00
Monster Iestyn
b837d5b23d Fix teamchange/teamchange2 to block changing FROM spectator rather than changing TO spectator
This way they're consistent with Got_Teamchange, which is the cause of the "illegal team change" desyncs
2017-03-02 14:25:46 +00:00
Monster Iestyn
6f2f244aef Remove "playerdeadview" variable; it's not been used for its stated purpose for who knows how long now
Besides rankings popping up when you die just sounds weird anyway, maybe I'm just used to SRB2 not doing it I guess
2017-02-22 21:07:29 +00:00
Monster Iestyn
6efb15c6e8 Fix Ban_Add usage for NONET 2017-02-20 21:36:05 +00:00
Monster Iestyn
7424df8180 Make sure I_Ban and Ban_Add are only used by the server
Also make sure the server actually uses Ban_Add if an admin banned someone
2017-02-20 19:58:29 +00:00
toasterbabe
76c15a0e97 Salt's suggestion. 2017-02-18 21:17:20 +00:00
toasterbabe
cf45067d9c Gametype descriptions.
https://gfycat.com/RelievedUnselfishChinchilla (competition's desc is slightly reworded but I'm too lazy to retake the gfy)
2017-02-18 17:09:03 +00:00
toasterbabe
2f9db4486a Minor corrections. 2017-02-18 14:03:49 +00:00
toasterbabe
c882851f14 Wide icons for the level select platter's exclusive usage.
https://gfycat.com/MenacingClearAngora

More for what's coming than what's here right now, but still quite pretty as a placeholder.
2017-02-17 01:45:21 +00:00
Monster Iestyn
84727f4205 Created W_OpenWadFile for opening WAD files with the path correction code.
This is used by Command_Addfile in the MD5 calculation code, so that it can search subfolders properly and allow addfile in netgames to treat them the same way as in SP
2017-02-16 21:55:17 +00:00
Monster Iestyn
a27367cdd4 Remove unused ObjectPlace_OnChange prototype (from when Objectplace was a consvar, which it is not anymore) 2017-02-15 21:16:56 +00:00
toasterbabe
758bec6963 Fixed a bunch of awkwardness where Metal wouldn't reset himself properly when his target died. 2017-02-14 02:07:08 +00:00
toasterbabe
a04ae45a93 MORE CUES 2017-02-13 18:53:16 +00:00
toasterbabe
3feac5bc90 bad bounce https://gfycat.com/DeliciousReliableGentoopenguin 2017-02-13 18:04:08 +00:00
toasterbabe
5f3cfc6729 Some cleanup. 2017-02-12 14:16:52 +00:00
toasterbabe
6dfef794a4 Metal Sonic's bounce attack is much nicer. Also, a bunch of other minor tweaks. 2017-02-12 01:28:12 +00:00
Monster Iestyn
8f1deb9128 Remove unused "runcount" variable from p_local.h 2017-02-11 23:28:42 +00:00
Monster Iestyn
a51548abea "t" is not needed to take out fencepost cases from viewangletox 2017-02-11 23:24:12 +00:00
Monster Iestyn
a5001a6af9 Removed unused function prototypes in d_main.h
Also corrected what appears to be a typo in some comments above?
2017-02-11 22:56:08 +00:00
Monster Iestyn
f4e5233c7e Remove unused sscount variable
(it's only set to 0 in software, and only ++'d in OpenGL, what kind of sense does that make?)
2017-02-11 22:41:15 +00:00
Monster Iestyn
0def5330c0 Merge branch 'master' into mi-a-bit-of-cleanup 2017-02-11 21:13:28 +00:00
toasterbabe
a66567ea0f borp https://gfycat.com/AcceptableWhiteJabiru
doesn't do anything in ogl sorry, inu might change that later but
2017-02-10 23:24:06 +00:00
Monster Iestyn
8a421a05d9 admin bans with custom ban messages should now be recognised by the server properly 2017-02-10 20:31:58 +00:00
toasterbabe
9fc757f388 Inuyasha: You were right.
* Changed the order of Record/Nights Attack and its level select menu option so that you go from the main menu to the map page to level select, rather than main menu to level select to map page.
* Cleaned up a lot of code.
2017-02-10 14:54:05 +00:00
toasterbabe
8cdcb2c416 * You can now bounce off of springs without unbouncing.
* You can now bounce off the bottom of goop areas.
* Fixed that long-standing bug where you could accelerate whilst rolling.
2017-02-09 23:24:47 +00:00
toasterbabe
7b4688732b * Float ability now properly stacks with dashmode.
* Corrected a scenario where you could get a CTF flag mid-dashmode and have dashmode properties forever.
2017-02-08 16:46:16 +00:00
toasterbabe
29c48c1992 As defined in spec, lose a bit of chain each time you bounce on land. 2017-02-08 16:08:36 +00:00
toasterbabe
aa6f170daf Spindash averaging experiment. Much nicer - and clearly communicates the forcing of direction - a little better than the instant jump. 2017-02-08 12:51:31 +00:00
toasterbabe
a684f2ee7b Fix for ghosts and thok items. 2017-02-08 12:29:45 +00:00
toasterbabe
b2de969d52 Refactor. 2017-02-07 13:13:03 +00:00
toasterbabe
66d160be43 On second thoughts, this is better. 2017-02-07 10:55:42 +00:00
toasterbabe
32084502ce This makes more sense. 2017-02-07 10:41:46 +00:00
toasterbabe
006d25eaac * On Mystic's request, tweak to conditions to always show immediate feedback for everything except thokking.
* Melee attack hotfix.
2017-02-06 23:34:19 +00:00
toasterbabe
0e40299f3e Replace hacky flag abuse with timer (which can be used later when developing pushing sprites). 2017-02-06 20:36:21 +00:00
toasterbabe
61ec599830 * Handles spindash, etc better.
* Handled better up against walls.
* Now always catches thok and thoklikes.
2017-02-06 20:19:17 +00:00
toasterbabe
371940205b ICE PHYSICS FUN https://gfycat.com/ActualComplicatedBonobo 2017-02-06 18:11:33 +00:00
toasterbabe
90f7ae0188 * Handle more missing cases where it should've been forced - namely analog mode, shield abilities, and waterslides
* Have special handling for carrying.
* Use rmom* instead of mom* - so conveyors are handled properly
2017-02-06 17:31:48 +00:00
Monster Iestyn
f9b41898a9 Don't allow skipping stats in record attack/nights attack 2017-02-05 22:04:29 +00:00
toasterbabe
d670189c89 * Fixed the Mode Attack cv_nextmap issue Salt found.
* Improved the defaulting system to work cross-gametype.
* Cleaned up the code. Less hacks!
2017-02-05 21:20:32 +00:00
toasterbabe
260b461c39 Drawangle.
Mystic wanted it, just play it - too busy to give proper commit description. Will outline everything it is in the merge request when that happens.
2017-02-05 18:15:20 +00:00
Monster Iestyn
dc249c6cd5 D_ModifierKeyResponder now checks for ev_console as a "key down" event
console window uses ev_keyup too so don't worry about turning off
2017-02-04 23:26:37 +00:00
toasterbabe
abc218de38 I am bad at conditions. 2017-02-04 21:41:43 +00:00
toasterbabe
5170fafcac * CA_BOUNCE is now more pleasant to control.
* CA_MELEE can now break downwards like CA_BOUNCE, and CA_TWINSPIN can break both up and downwards.
2017-02-04 18:25:16 +00:00
toasterbabe
ba652864a6 Revamped roll-on-landing to work even from jumping, for the purposes of slopes! (But not from PF_THOKKED.)
Salt has wanted this for a while, and this was the only branch I had open which it was appropriate for. :P
2017-02-04 17:08:14 +00:00
toasterbabe
c04ee6bfb7 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-02-04 15:19:02 +00:00
Monster Iestyn
9a2b7b2091 Better plan, use ?: for deciding between floorz/ceiling checks based on gravity 2017-02-03 20:13:16 +00:00
Monster Iestyn
659a62db88 Make sure rocks spawned by the rock spawners despawn when they're on the floor and not moving 2017-02-03 18:47:20 +00:00
toasterbabe
3aa7573c86 Made code repetition less. 2017-02-02 16:10:37 +00:00
toasterbabe
42518a1759 For consistency purposes, added trailing ellipses to level selection prompts I added. 2017-02-02 16:02:07 +00:00
toasterbabe
590ffae391 Maximum length for name strings on level platters. http://i.imgur.com/FFXmVlY.png 2017-02-02 12:52:39 +00:00
toasterbabe
55e736250a Clear out some irrelevant/redundant functions now there are no non-platter Level Selects available. 2017-02-02 12:32:02 +00:00
toasterbabe
05ebc93f6c After discussion with Mystic and Rob, you now keep your lives, score and emerald count when changing maps in Co-op mode. Reset when you declare -force. 2017-02-01 21:31:35 +00:00
toasterbabe
8625c8bfbd Removed extraenous space. 2017-02-01 21:30:10 +00:00
toasterbabe
8ebb4a3c3f Making things nicer for the server creation menus of 2P mode and NONET executables. 2017-02-01 17:36:19 +00:00
toasterbabe
4efeb02978 Added some useful options to the Server setup menu, including a jump-link to the relevant Options screen. Think it should be a little smarter designed, though, but I'd rather commit what I have then let it languish. 2017-02-01 17:21:04 +00:00
toasterbabe
873e768a44 Server page (and splitscreen server page) started.
http://i.imgur.com/jJ3YZUd.png

Will be discussing what to do with the space freed under "server options" the heading on IRC tomorrow.

(MI, if you're looking - the mistake was that I set up an IT_CALL menu line as IT_CVAR by mistake, which of course caused a crash when trying to get ((consvar_t *)M_GameTypeChange)->string. ;P )
2017-01-31 23:56:09 +00:00
Monster Iestyn
72bd3e28ed Fix sprtopscreen from getting integer overflows once and for all in R_DrawRepeatMaskedColumn
Fixes TD's terminal from freezing the game this time, oh boy
2017-01-31 22:10:31 +00:00
toasterbabe
3cb2f178c6 Getting closer to done.
Updated the mid-game gametype/level select menu! Just need to combine it with the server creation menu, and then I'll be ready to make a merge request...
2017-01-31 18:48:50 +00:00
toasterbabe
b5fef5f46a Forgot to vertically align collected emblems on nights page 2017-01-31 11:04:50 +00:00
Monster Iestyn
3212ee0b0f Fix endless loop of R_DrawRepeatMaskedColumn if both sprtopscreen and sprbotscreen are CLAMPMAX (INT32_MAX)
This fixes the grid floors in TD's Lava Mountain freezing the game if they go off the bottom of the screen far enough (they have ACWRFL1A as the wall texture, which is a single patch texture with holes)
2017-01-30 21:08:13 +00:00
toasterbabe
f56f76692c Put size of BEST GRADE back to 2.1 levels. To make space for it, I left-aligned * LEVEL RECORDS *. http://imgur.com/a/3i7GT 2017-01-30 20:55:31 +00:00
toasterbabe
8d3804a201 * Renamed the confusing "Reselect Level" to "Back to Level Select".
* Updated layout of NiGHTS attack page to match Records attack.
* Improved code.
2017-01-29 22:00:07 +00:00
toasterbabe
df3ba30263 * Revamped Time and Nights attack.
Still need to figure out the way to sort pressing esc on reselect level sending you back to the title screen. This will need further whittling before I can call this a solved section and move onto MP stuff.
2017-01-29 19:25:43 +00:00
toasterbabe
a23da9ae43 * Level Platter system added to Record/NiGHTS Attack modes.
* Made quality-of-life improvement for starting the player off on the "right" map more reliable.
2017-01-28 13:13:03 +00:00
toasterbabe
3574b598d6 * Make unlockable levels (as opposed to ones which are part of the main campaign) have a different coloured (dark orange) text background.
* Better comments.
2017-01-28 10:34:58 +00:00
toasterbabe
70068c664d * Dark blue background behind text underneath map icons.
* Traditional menu cursor now added.
2017-01-28 00:56:28 +00:00
toasterbabe
2737d08107 * Singleplayer save-complete level select now following new system.
* More comprehensive "pick up where you left off" system.
* Made individual map name selection actually take into account the map name AND the act number if the heading isn't the zone name.
2017-01-27 23:16:35 +00:00
toasterbabe
7178ae5916 Hefty refactor.
* Named all the new functions/etc "Platter" instead of "NewList", to make maintenence easier and also because it sounds delicious.
* The code, as a whole, is much cleaner.
* Allows for multiple items under the same heading now, with highlights and spacing consistently handled.
* Allows for picking up where you left off between menus now (assuming the same map is available on multiple screens).
* Defined M_CanShowLevelInList in terms of the two compartmentalised functions cleaved from it, in order to ensure consistency and prevent code duplication.
2017-01-27 14:42:57 +00:00
toasterbabe
521ab3ca1a The visuals now work nicely. Future work involves porting this with minimal code repetition to the other sections of the game that use the old level select system. 2017-01-27 00:02:47 +00:00
toasterbabe
4a68f191c8 Mostly-complete structural work, very much incomplete rendering work. 2017-01-26 19:14:52 +00:00
toasterbabe
d2d88a919b * Allowing for changing skins on command line startup again.
* Fixing an inconsistency with being able to change skin colours when you shouldn't be able to, much like the previous skin change issue that was fixed.
2017-01-26 12:47:47 +00:00
Monster Iestyn
cfb5a9d904 Merge branch 'better_papercollision' into 'master'
Better papercollision

Diagonal bounding boxes are no longer root 2 larger than they should be. Testwad is <root>/toaster/sawb.wad. Nice and simple.

See merge request !49
2017-01-25 17:34:43 -05:00
Monster Iestyn
d0861a084a Merge branch 'master' into crumble-FOF 2017-01-25 19:38:07 +00:00
Monster Iestyn
18d018b8ff Merge branch 'master' into opengl-improvements 2017-01-25 19:37:35 +00:00
Monster Iestyn
08baf2ebb8 debugfile is only used by DEBUGFILE code, no need to declare/define it for anything else 2017-01-25 19:36:32 +00:00
Monster Iestyn
58abd6f056 Merge branch 'master' into lua-more-stuff 2017-01-25 17:32:08 +00:00
Monster Iestyn
921b57e904 Merge branch 'slopewall_transfer' into 'master'
Slopewall transfer

As @Nev3r wants. Go along a slope, hit a wall? LAUNCH! Well, I mean. He wants it slightly less weak. I have already made it less weak than P_SlopeLaunch.

Also also I made the trail that goes behind the player when they're rolling take into account vertical momentum as well as horizontal, so that being launched directly up didn't leave you trailless.

Test with <root>/!LatestSRB2Files/srb2win_branch_transfer.exe and <root>/Nev3r/ACZMaster.wad (roll down slope directly in front of you).

See merge request !66
2017-01-25 12:30:20 -05:00
toasterbabe
97a6f786a3 De-meming. 2017-01-25 17:23:57 +00:00
toasterbabe
ad3b20584b After IRC discussion, made the shells only cause pain to enemy players. 2017-01-25 17:19:12 +00:00
toasterbabe
939a7b8b2e Fixed the missing Mario Puma/poodoo sounds. 2017-01-25 17:00:40 +00:00
toasterbabe
cdf388810b Added modified Mario shells. They now hurt everyone if you touch them from the side, and can be stopped by anyone if they stomp on their tops. 2017-01-25 14:53:09 +00:00
toasterbabe
91cbeb5e1a Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into patch_hardcode 2017-01-25 12:24:09 +00:00
Monster Iestyn
fb8140312b Merge branch 'flat_alignment_revamp' into 'master'
Revamps of several dated linedef type effects

Felt like being productive so made some things I hate suck less.

Linedef type 7 (flat alignment) now works as follows.
* Linedef angle (from v1 to v2) is flat angle.
* Origin of flat is manipulated to match v1's coordinates - unless ML_NOKNUX is flagged, in which case uses frontside x and y offsets as flat offsets instead.
* ML_NOSONIC prevents changing floor.
* ML_NOTAILS prevents changing ceiling.
* Both of the above flags at once prints a warning.
* (THZ and probably a few other maps need updating.)

Linedef type 540 (friction) now works as follows.
* Controlled by x offset instead of length - offset of -100 is maximum iciness, offset of +483(!!!) is the maximum sludginess BUT things are scaled such that +100 is about the maximum sludginess any reasonable human being would want in a level, 0 is ORIG_FRICTION)
* Not reliant on a sector special to function (can be applied solely by tag to in-map sectors or solid FOF control sectors)
* Uses less memory, perform less calculations, and not bug out objects which just happen to use movefactor for something
* PHYSICS CHANGE: Low friction surfaces actively impede your acceleration (and make your animation speeds faster to give off that Looney Tunes out-of-control effect)
* (ACZ and Frozen Hillside needs updating.)

Sector types 1 and 3 in section 3 no longer do anything.

Linedef type 3 (zoom tube) now works as follows.
* Abs of frontside x offset is speed in units of FRACUNIT/8.
* Abs of frontside y offset is waypoint sequence number.
* Effect 4 flag rotates the player to match the waypoint direction (same as before).
* (ERZ needs updating.)

Linedef type 11 (rope hang) now works as follows.
* Abs of frontside x offset is speed in units of FRACUNIT/8.
* Abs of frontside y offset is waypoint sequence number.
* Effect 1 flag makes rope transfer one-way. (same as before)
* No climb flag makes rope static. (same as before)
* (ACZ and maybe ERZ need updating.)

Linedef type 258 (laser) is almost the same as before, but has altered functionality.
* Its flashing is less obnoxious. (56.25% to 68.75% instead of 100% to 0%, at half the speed)

Linedef type 14 (Bustable block parameters) is new, and works as follows.
* Tagged to the control sector of a block that is likely to be busted (via executor or collision, doesn't matter)
* Concatenation of frontside textures is MT_ object type to spawn, defaults to MT_ROCKCRUMBLE1 if not present
* Sound played when being busted is object type's activesound
* Frontside x offset is spacing (in fracunits) of spawned particles, defaults to 32<<FRACBITS
* Frontside y offset is the fuse of spawned particles in tics, defaults to 3*TICRATE, if set to -1 fuse is not set
* Effect 1 flag makes particles "fly out" horizontally and vertically from the center of the FOF

Sector types 7 through 15 in section 3 no longer do anything.

Linedef type 250 (Mario Block) is almost the same as before, but has new functionality and is slightly different in another way.
* No Climb flag turns it into a brick block (set on Custom FOF via presence of FF_SHATTERBOTTOM - busts when hit from the bottom, player hits their head/fist/whatever, no more upwards momentum)
* Effect 1 flag makes it an invisible block (set on Custom FOF via absence of (FF_SOLID|FF_RENDERALL|FF_CUTLEVEL) - intangible from every side except the bottom. Becomes visible and tangible when it's hit once)
* Only updates side textures when moving down or stationary, not whilst moving up - more fidelity to the source material, less processing on the CPU, everyone wins.
* If FOF master linedef has a backside, then: [If there's items in it the FOF's flats are set to that of the backside sector's ceiling, otherwise the floor.] Otherwise, no flat change.

Linedef type 4 (Speed Pad parameters) now works as follows.
* Frontside x offset is speed in fracunits.
* Effect 4 flag doesn't center the player. (same as before)
* Effect 5 flag sends them off in rolling frames.
* Frontside upper texture is sound to play on launch, defaults to sfx_spdpad when not given

Sector type 6 in section 3 no longer does anything.

Object type 757 is changed as follows, and no longer works on its own - see Linedef type 15 for more details.
* Tag via its angle field
* Number of objects to spawn per tic around it via its z field, if zero then just spawn at center
* Is flipped if given MTF_OBJECTFLIP.
* (ERZ and Seraphic Skylands - if we use that map - needs updating)

Linedef type 15 (Fan particle spawner parameters) is new, and works as follows.
* Tag is tag of object(s!)
* Object type set via concatenation of frontside textures, MT_PARTICLE is default
* The length of the linedef is the radius the particle is spawned out (zeroed if z field is 0)
* Frontside x offset is speed upwards
* Frontside y offset is number of degrees to turn each tic (zeroed if z field is 0)
* Frontside floor and ceiling heights are the heights in which the particle is bound through some fun mathematics

A_ParticleSpawn is changed, too.
* Object type is now changed through actor->threshold instead of var1 to support Linedef type 15.

Test executable uploaded at /toaster/srb2win_branch_flatalignment.exe on the ftp.

Test file uploaded at /toaster/flatalignment.wad on the ftp.

Breaks compatibility with 2.1 so put in internal.

See merge request !29
2017-01-24 16:49:43 -05:00
Monster Iestyn
32562068ba On second thought, I'll revert the P_TryMove bit to how it was before and just stuff an extra P_MobjWasRemoved check in
this way it won't cause as much conflict with the slopetowall transfer branch
2017-01-24 20:21:50 +00:00
Monster Iestyn
4b97333ed7 Merge branch 'plane-displacement' into 'master'
Plane displacement

Basic support for plane displacement, no netplay support as of writing but this is what Nev3r wanted moreorless at least.

Linedef types 66-68 are the plane displacement specials; 66 = move floor only, 67 = move ceiling only, 68 = both

Front sector = control sector
Tag = tag of target sectors to be moved whenever the control sector floor moves
Linedef length = movement factor relative to control sector movement, 256 = 1:1 with control sector. 128 is half as much, 512 is twice as much, etc.

Whenever the control sector floor moves (not ceiling, never ceiling), the selected planes of the tagged sectors all move (mind, they have a tic delay due to how it all works, it's not perfect really). No support for reverse speeds yet sorry.

EDIT: oh, btw, test exe and test map are included in my folder on the FTP (srb2win-plane-displacement.exe and plane-disp-test.wad, respectively)

See merge request !61
2017-01-24 14:29:38 -05:00
toasterbabe
5eb561297b Limit of 45 degrees before you can start transferring up the wall. 2017-01-23 20:30:56 +00:00
toasterbabe
19f31b958d * Put all of the wall transfer code in one place.
* Made the name of P_PrepareSlopeToWallTransfer (now P_GetWallTransferMomz) make sense.
* Bugfixed the case where you couldn't reliably guess the angle of the wall you just hit.
2017-01-23 17:23:42 +00:00
toasterbabe
12da89b1ce Late night commit!
* Seriously reworked a lot of stuff behind the scenes, thanks to Red's comments.
* More consistent behaviour.
* Launching power is now scaled to the slope's angle relative to the wall you hit, so no massive launches when you hit the side of a steep slope.
* The code is a lot messier and the function name doesn't make any sense any more, so I need to clean that up in the morning.
* Need to figure out how to prevent tiny launches that uncurl you when spindashing up against walls.
* Spindashing trails now takes into account vertical momentum as well as horizontal - it was stupid not seeing your spintrail just because you weren't moving very fast horizontally!

No exe uploaded because it's almost 2am.
2017-01-23 01:40:11 +00:00
toasterbabe
aa6453382e SLOPE-TO-WALL TRANSFER 2017-01-22 18:26:05 +00:00
Monster Iestyn
e3ded1671c Added MobjMoveBlocked Lua hook
Also slightly edited P_XYMovement to properly check the mobj still exists before checking its eflags for MFE_SPRUNG, while I was at it
2017-01-21 23:49:18 +00:00
toasterbabe
4e8ce1b77f CEZ1 flames now implemented.
Please note Brak flames use a FF_ANIMATE state instead of the normal flame ones because they are spammed a lot, and the normal ones make particles.
2017-01-21 20:32:33 +00:00
Monster Iestyn
acfbce21c9 Merge branch 'gfz3_laser' into 'master'
GFZ3 Unfuckening

Some tweaks to the GFZ3 Eggmobile's behaviour to make it less frustrating for old and new players alike.

* GFZ3 Eggmobile's laser won't change its angle when you move left and right anymore.
    * Changed because its ability to move quickly was extremely punishing for new players (see ProJared's youtube video on the matter).
    * http://gfycat.com/PassionateUnknownAgama (the twitching on the third laser has been fixed since this was recorded)
* GFZ3 Eggmobile will, when too far away from the ground and moving upwards, slow itself down vertically.
    * This was punishing and annoying for both old and new players alike.
    * http://gfycat.com/CornyLeftDungbeetle (old values - the typical settling height is slightly lower now)

See merge request !42
2017-01-21 13:46:04 -05:00
toasterbabe
90b2236711 Fixed flame jets. (I'll upload the patch.dta required to run this exe when I'm ready to make a merge request.) 2017-01-21 12:39:59 +00:00
toasterbabe
399a6c1d47 * ALMOST SORTA IMPLEMENTED A NON-HACKY SPINNING FLAMEJET. For some reason, they wanna step down onto the platform - and I've been figuring this out for too long to see what's causing that tonight.
* Hardcoded a bunch of stuff from patch.dta. All works fine, but still more to do.
2017-01-21 01:09:39 +00:00
Monster Iestyn
c9b623390f Add code for saving/loading planedisplace_t thinkers to/from $$$.sav 2017-01-20 20:17:40 +00:00
toasterbabe
0ddb8b0b33 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch 2017-01-20 13:54:42 +00:00
Monster Iestyn
930527a3d6 Reduced code for userdataType significantly
UTYPE_* enum wasn't needed, meta2utype is now the meta string and return string for each userdata type
2017-01-19 21:35:53 +00:00
Monster Iestyn
45d373a2a2 Merge branch 'doubledecker-detons' into 'master'
No more double-decker Detons

Oversight of a tiny hack when working on the flickies branch meant detons released twin flickies when hitting stuff. As cute as that is, it's also pretty weird.

See merge request !62
2017-01-19 14:07:18 -05:00
Monster Iestyn
1b542c6501 Added userdataType(userdata) function to Lua!
This new function returns a string representing the type of userdata the variable given (e.g. mobj_t, player_t), it even works on "minor" userdata types (player_t.powers, skin_t.soundsid, sector_t.lines, etc)
2017-01-19 18:30:55 +00:00
Monster Iestyn
1935a2ffa6 Merge branch 'public_next'
# Conflicts:
#	src/d_clisrv.c
#	src/doomdef.h
#	src/p_map.c
2017-01-19 16:54:47 +00:00
Monster Iestyn
2ac3f68438 Added in-level checks to a lot of these functions and tables for Lua use
This makes it less likely for the game to crash when stuff is used outside a level when they shouldn't be
2017-01-18 22:02:28 +00:00
toasterbabe
e5cffa5237 Comment correction. 2017-01-17 14:48:15 +00:00
toasterbabe
5138255b94 The problem was triplefold!
* Value was getting populated even when it was irrelevant. That's fine, just move it after the valueless parsemode switch.
* Oh, it's struppr'd, of course it's going to compare badly with a lowercase string.
* ...oh, strncmp returns zero when it's equal, not true. Right.

<root>/toaster/smilespatch.wad and !LSF test exe updated on the FTP, btw.
2017-01-17 13:22:27 +00:00
toasterbabe
30b0d8af57 * Streamlined P_SKIN parser to have multiple internal "parsemodes" instead of redundant code.
* Instead of "reset = SPR2_ONE_\nreset = SPR2_TWO_", it is now possible to type "reset\nSPR2_ONE_\nSPR2_TWO_.
2017-01-17 12:55:49 +00:00
toasterbabe
299ba49161 Introducing skin patching! (Also, DELFILE is super dead.)
* Create a normal skin, but replace the S_SKIN lump with an almost empty one named P_SKIN.
* Provide "name = existing skin name as one of the first line (comments allowed)
* Reset individual spritenames back to zero sprite2s (or one for SPR2_STND to prevent complete removal) via "reset = SPR2_****" statements.
* No support for changing skin properties that are non-visual at the moment, but I don't really feel like it's wise to have those changable with patch alone. (Hello, tons of "modern Sonic" wadfiles which just change vanilla Sonic's ability to CA_HOMINGTHOK!)
* Sprites patch over.

To see an example in action, look at <root>/toaster/smilespatch.wad.
2017-01-17 00:16:23 +00:00
Alam Ed Arias
a29ced725d Merge branch 'master' into next 2017-01-16 16:41:38 -05:00
Alam Ed Arias
628d1c4dab DD: Mingw 3.4.5 build fix 2017-01-16 16:40:16 -05:00
toasterbabe
19cd010091 Fixed a stupid bug involving jumping at spikes on FOFs in reverse gravity caused by my own incompetence/assumptions. 2017-01-16 17:52:06 +00:00
toasterbabe
020234cc5f Fixed crash bug. It's weird that linedefs' backsides aren't NULL but are instead 0xFFFF when invalid, so instead I used something which DOES take null pointers as a parameter. 2017-01-16 17:33:07 +00:00
toasterbabe
da42165169 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp 2017-01-16 17:14:58 +00:00
toasterbabe
acf0d4ad5b Detons no longer release duplicate flickies when they hit walls.
(I COULD have hacked around the hack, but when a line tells you it's a hack and it makes things work by removing it, you remove it.)
2017-01-16 17:09:57 +00:00
toasterbabe
85977c271b Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-01-16 16:52:09 +00:00
Monster Iestyn
6e65c6bd9e Merge branch 'master' into opengl-improvements 2017-01-16 15:45:15 +00:00
Inuyasha
3169b538be Hey! If you change this, add 1 to the MODVERSION below!
Otherwise we can't force updates!
2017-01-15 16:34:30 -08:00
Monster Iestyn
ba3f001a09 I dun goofed, THIS is why FuriousFox disappears like that 2017-01-15 22:24:38 +00:00
Monster Iestyn
4ac709141a Added LJSonic to credits, altered how my own name + nick is shown in credits 2017-01-15 19:23:25 +00:00
Monster Iestyn
e59fb38802 Update version number 2017-01-15 18:49:33 +00:00
Monster Iestyn
691d368434 if this is what caused resynching to randomly turn some people spectators then welp 2017-01-15 18:36:38 +00:00
Monster Iestyn
c0fb3fce73 Merge branch 'master' into next 2017-01-14 19:23:31 +00:00
Louis-Antoine
4a4f0ea7ee Merge branch 'netcode-shit' of https://github.com/LJSonik/SRB2 into netcode-shit 2017-01-14 19:26:31 +01:00
Louis-Antoine
8298ed3559 DEBUGMODE -> _DEBUG =) 2017-01-14 19:24:22 +01:00
Alam Arias
6611b01635 Merge branch 'master' into netcode-shit 2017-01-13 20:48:42 -05:00
Louis-Antoine
b8b720088e Oh? a cookie on the ground
*takes the cookie*
2017-01-13 23:10:00 +01:00
Alam Ed Arias
94025ae947 Merge branch 'master' into lua-additions 2017-01-13 16:47:57 -05:00
Louis-Antoine
490778cdab Why does DD exist 2017-01-13 22:34:16 +01:00
Louis-Antoine
da06b9417a Merge branch 'netcode-shit' of https://github.com/LJSonik/SRB2 into netcode-shit 2017-01-13 22:02:06 +01:00
Louis-Antoine
7cca60a027 Merge branch 'master' into netcode-shit 2017-01-13 21:48:24 +01:00
Louis-Antoine
005485cf9c Fixed a warning 2017-01-13 21:30:30 +01:00
Louis-Antoine
e9cb6d0331 -Added a timeout for game state downloading to prevent definitive join freezes in some cases. The timeout has a minimum value of "jointimeout" and gets higher as the game state grows in size
-If the server tries to kick a joiner who is downloading the game state, they will get a timeout instead, because a regular kick would only happen once the game state has been downloaded
-Added a timeout for player ticcmd packets, again to prevent freezes to happen in some cases
-File/game state downloading is now faster, the speed is controlled by the "downloadspeed" cvar, in packets per tic
-The reason is now properly shown when the server refuses connection
-Changed the default values of "nettimeout" to 10 seconds (previously 15) and "maxsend" to 4 MB (previously 1)
-Added a "noticedownload" cvar that displays a message in the server console when someone is downloading a file
2017-01-13 20:53:52 +01:00
Alam Ed Arias
e7a1c81355 Merge branch 'cmake_nasm' into 'master'
CMake: Fix nasm Linux builds

When compiling under Linux with CMake and nasm/yasm enabled, the operation would fail during linking with undefined symbols related to the tmap files.
This commit adds support for passing flags to the assembler and passes ```-DLINUX``` in order to compile.

After this change, binaries are successfully compiled with either nasm or yasm on Linux systems.
Tested on Ubuntu.

See merge request !153
2017-01-12 17:21:05 -05:00
Monster Iestyn
a38c2cf38e clipping code didn't seem so bad this time (at least compared to without), let's enable it now? 2017-01-12 21:44:27 +00:00
Monster Iestyn
df534887e9 Remove pointless drawtextured variable and redundant fake planes checks (R_FakeFlat would already have made gr_frontsector/backsector something else if they were) 2017-01-12 21:43:37 +00:00
Alam Arias
456f5cf6e8 Merge branch 'next' into patch-1 2017-01-11 15:50:54 -05:00
Tasos Sahanidis
5216da13f0 Don't check if SRB2_ASM_FLAGS is defined and add docstring for the assembler 2017-01-11 21:52:14 +02:00
Monster Iestyn
e727fea427 Merge branch 'master' into next 2017-01-11 19:40:51 +00:00
Monster Iestyn
b1168b1728 Merge branch 'CMake-inline_ASM' into 'master'
CMake: split inline ASM code from vid_copy.s code

See merge request !151
2017-01-11 11:37:21 -05:00
frozenLake
d865877ca2 Merge branch 'next' into patch-1 2017-01-11 10:49:37 -05:00
Tasos Sahanidis
0f52606953 Pass -DLINUX to n/yasm 2017-01-11 03:16:48 +02:00
Monster Iestyn
e87324b814 Made some efforts to improve efficiency of new code, hard to tell if I've made it better or worse though honestly
R_IsEmptyLine is now a thing too btw
2017-01-10 20:07:02 +00:00
Monster Iestyn
c5e99050fc More progress, NEWCLIP added to doomdef.h, sadly it actually all lags the game so I've disabled it for now
Other notes:
* on second thought I'll keep the hw_clip functions' gld prefixes rather than HWR, not like it matters either way
* despite the extra lag it does fix the issues with translucent walls and such when displayed at different vertical angles, such as with the GFZ1 waterfall
2017-01-10 18:01:03 +00:00
Monster Iestyn
edba7834ae Merge branch 'master' into plane-displacement 2017-01-10 14:52:57 +00:00
Monster Iestyn
93a40eb87a Merge branch 'master' into opengl-improvements 2017-01-09 22:13:34 +00:00
Monster Iestyn
e37d680a4a Starting work on porting hw_clip.c/h code, Makefiles and CMake can compile them at least
Other notes:
* Renamed all new functions to have HWR_ prefix instead of gld_, for consistency
* HWR_FrustrumSetup and HWR_SphereInFrustum are disabled and require HAVE_SPHEREFRUSTRUM. This is because 1) SRB2CB did not need the code, so presumably neither will we, and 2) there are some OpenGL API functions used there that due to our way of using OpenGL we don't use outside of r_opengl.c, which makes dealing with HWR_FrustrumSetup complicated in theory
* The new clipping functions are not added to OpenGL's "main" rendering code itself just yet, they're just available to use now once hw_clip.h is included
2017-01-09 22:13:26 +00:00
toasterbabe
38c7436565 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/d_clisrv.c
2017-01-09 11:10:47 +00:00
frozenLake
e3b94c04fd Added transmaps to non modifying lump list. 2017-01-08 18:13:46 -06:00
Monster Iestyn
3d07915be2 Merge branch 'vada_flickies' into 'master'
Hardcoded VAda Flickies

Many thanks to MI for his help, even if he has sinful opinions on what the collection of creatures should be called. ;P

* Flickies are now handled via A_FlickySpawn instead of hardcoded in P_KillMobj, so there can be mobjtypes with MF_ENEMY which don't create flickies, or other mechanisms which can much easier.
* Added map header "FlickyList" (aka "AnimalList") parameter, which can either be set to:
    * A species (eg: "Rabbit" or "Bluebird", amongst 17 currently supported types in dehacked.c table FLICKYTYPES - including the seed from Sonic CD, which isn't limited to 'soniccd on' in the console now)
    * Any valid mobjtype that isn't MT_NULL (eg: "MT_FLICKY_GHOST")
    * A comma-seperated list of either of the above, up to 64 entries long (eg: "Cow,MT_FLICKY_SPIDER,Chicken")
    * "All" - sets behind-the-scenes stuff to use every 'normal' type of flicky in FLICKYTYPES (a distinction which can be utilised to hide secret level flickies where they wouldn't be appropriate for the main game)
    * "Demo" - sets behind-the-scenes stuff to use the five flickies closest to the species used in the game's long history.
    * "None" - prevents any flickies from spawning.

"Demo" is functionally the default value if you don't include a FlickyList parameter in the header at all.

Of note, a bunch of functions are now created:
* A_FlickySpawn - spawns flicky.
* A_FlickyAim - aims for area near target, but not directly on them - turns around when hitting wall
* A_FlickyFly -  flies/swims around target (calls A_FlickyAim)
* A_FlickySoar - hacky alternate fly (calls A_FlickyAim)
* A_FlickyCoast - slowing down before going off again
* A_FlickyHop - fracunit-scale precision for A_BunnyHop
* A_FlickyFlounder - A_FlickyHop with randomisation
* A_FlickyCheck - State-setter for falling, or being on-ground
* A_FlickyHeightCheck - State-setter for falling, or being below a certain height relative to target
* A_FlickyFlutter - A_FlickyCheck, but with a slow fall/movement (calls A_FlickyCheck and A_FlickyAim)

I don't need to enumerate the object types and states that have been added, do I?

Oh yeah, I also made it so get_mobjtype's failure value was MT_NULL and prohibited SOC from editing the properties of it to compensate.

IN ADDITION: Killed "soniccd" console command, since it made things more complicated and honestly being able to specify Sonic CD seeds in the level header is a better option.

See merge request !60
2017-01-08 17:36:25 -05:00
Alam Ed Arias
55925cabe8 win32: fixup printf warnings 2017-01-08 14:06:30 -05:00
Alam Ed Arias
fca88d2e98 Mingw: disable GetText support 2017-01-08 13:54:52 -05:00
Monster Iestyn
166c6746cd Merge branch 'public_next' 2017-01-08 16:05:32 +00:00
Monster Iestyn
87dc33a78d Merge branch 'master' into next 2017-01-08 15:59:34 +00:00
Inuyasha
cdc9bf3a60 Merge branch 'cb_update' into 'master'
Update Code::Block project

See merge request !145
2017-01-08 10:32:22 -05:00
Monster Iestyn
22020dda03 Merge branch 'savegame-hotfixes' into 'next'
Savegame hotfixes

Yes, this another netgame related fix! Named this "savegame hotfixes" rather than "ERCZ hotfix" or the like in advance of the fact we probably need a general branch for other $$$.sav fixes?

Anyway, fixes included in by this branch:
* ERCZ's lava falls now act as expected rather than being stuck in place for the map's duration, fixing all other known desynchronisation issues known in the map for the time being (yay)
* Changing sector tags in a map no longer causes joiners to netgames to have their SRB2 application stop responding etc
* Player names should no longer turn red in the console in gametypes outside of CTF/Team Match if a resynch occurs (not $$$.sav related, but it's related to netplay so I lumped it in anyway)

See merge request !150
2017-01-07 18:32:07 -05:00
Monster Iestyn
ad30c41179 Fix egg guard shields being endlessly killed by lasers. Simply make sure they have health first before killing them! 2017-01-07 18:02:55 +00:00
Monster Iestyn
45fdfd9f37 Merge branch 'eggscalibur_fixes' into 'next'
One Eggscalibur fix

Use mobj->watertop instead of mobj->spawnpoint->z. CEZ3 is far from fixed in multiplayer, but this is still one less thing to worry about.

See merge request !148
2017-01-07 10:47:02 -05:00
Monster Iestyn
12ae6bb22a Merge branch 'public_next'
# Conflicts:
#	src/d_clisrv.c
#	src/r_things.c
2017-01-07 15:03:59 +00:00
Monster Iestyn
cd0ec0881d Merge branch 'plane-fixes' into 'next'
Software plane rendering fixes/cleanup

This is mostly cleanup, with the exception that polyobject planes should now behave somewhat better than they do in 2.1 currently (translucent polyobj planes should now always be actually translucent regardless of where you view them from, for instance). I can't claim I've fixed their rendering once and for all though, there may still be bugs for all I know...

See merge request !136
2017-01-06 21:19:09 -05:00
Monster Iestyn
c601a409e1 Merge branch 'texture-fixes' into 'next'
Some texture-related fixes

Bugs fixed in this branch:
* upper/lower/middle textures with non-existent texture ids being capable of crashing the game. For instance, RVZ1 has colormap codes on non-colormap linedefs, which causes them to wind up with invalid texture ids because of how the game tries to interpret lower/upper textures with "#" followed by characters on normal linedefs. Fortunately these "textures" are normally not visible anyway (since they're all in control sectors) unless they are swapped with in-level textures by some crazy Lua script of some sort...
* animated single-patch textures with holes displaying garbage on first viewing (see this thread: https://mb.srb2.org/showthread.php?t=42195)
* the heights of the lighting (shadows or colormapping) from water/translucent/shadowcasting/etc FOFs become messed up when displayed on repeated midtextures.

See merge request !144
2017-01-06 21:15:22 -05:00
Alam Ed Arias
0b572b6eee CMake: split inline AMS code from vid_copy.s code 2017-01-06 15:48:19 -05:00
Monster Iestyn
5e12f3497a Merge branch 'flat-changing-hotfix' into 'next'
Flat changing hotfix

This should fix how Lua scripts that change flats in levels, particularly to flats that don't already exist in the level, cause SRB2 to crash for anyone who joins a netgame afterwards. (I'm not sure if it's a consistent thing or not though)

Probably needs a good test to verify the issue is completely fixed before being merged in. Maybe there are other minor things I didn't account for in this fix? I don't know!

See merge request !141
2017-01-05 19:46:44 -05:00
Monster Iestyn
5358359ddb Added the thinker creation function and the thinker itself, we now have functional plane displacement thinkers! 2017-01-05 20:29:48 +00:00
Monster Iestyn
f2a58a74ef Stupid me 2017-01-03 22:48:06 +00:00
Monster Iestyn
4d8ca41e65 Fix player colors mysteriously turning red if a resynch occurs outside of CTF/Team Match. Not technically a $$$.sav fix, but still netplay related of course
At least, I assume this is how it's happening for some, I haven't been able to get the full info since WHERE IS EVERYBODY?
2017-01-03 22:43:46 +00:00
Monster Iestyn
b768c4b961 Sync sector tags and tag list variables properly
Dunno who thought it was a good idea to lump tag, nexttag and firsttag together in $$$.sav, but that meant changing sector tags caused SRB2 to stop responding since it lead to the tag lists being broken
2017-01-03 20:48:39 +00:00
Monster Iestyn
a0d095e707 Fix sector floordata/ceilingdata/lightingdata pointers not being NULL when they should be
This fixes ERCZ's lava falls not moving after joining a netgame at that stage. Possibly explains other various floor/ceiling related netgame quirks that haven't been noticed until now, maybe even in multiplayer levels.
2017-01-03 18:47:46 +00:00
Monster Iestyn
be21588761 Merge branch 'master' into next 2017-01-03 16:06:50 +00:00
Monster Iestyn
5400707aa7 Merge branch 'remove-secplanes' into 'master'
Remove secplanes

This is just removing SSNTails's old port of ZDoom's secplane code and math, from back when he attempted slopes himself. The slopes we've had since 2.1.15 however do not need these, so we can pretty much toss the code for them out now (nothing uses them anyway).

See merge request !149
2017-01-03 11:05:13 -05:00
Logan-A
eb8f608fd7 Merge branch 'master' into netcode-shit 2017-01-02 15:18:28 -05:00
Monster Iestyn
d5803160dd Remove all traces of SSN's old port of ZDoom's secplanes for slopes, since our slopes do not need them 2017-01-02 19:12:09 +00:00
toasterbabe
a4fe3580e2 Forgot to commit this compiling fix. 2017-01-02 19:07:20 +00:00
toasterbabe
eb22f347f3 Made Eggscalibur use mobj->watertop instead of mobj->spawnpoint->z because that's not netgame-safe.
CEZ3 STILL has some ridiculous inconsistencies, but this is one less to worry about.
2017-01-02 19:04:33 +00:00
Louis-Antoine
04747ff79e Fixed a memory leak on client side 2017-01-02 20:02:49 +01:00
Monster Iestyn
c1392cee25 Merge branch 'master' into next 2017-01-02 18:09:23 +00:00
Monster Iestyn
6d07c6baab Merge branch 'fixedrounding-hotfix' into 'next'
FixedRounding hotfix

Fix the FixedFloor, FixedTrunc, FixedCeil, and FixedRound functions.

See merge request !142
2017-01-02 13:05:30 -05:00
toasterbabe
ebd436bf2f Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into touching_fixes 2017-01-02 17:58:47 +00:00
toasterbabe
0d49d4ba3f Fixed seed spawning not properly accounting for reverse gravity. 2017-01-02 14:00:03 +00:00
Louis-Antoine
478da43660 Cooked another cookie 2017-01-01 23:52:27 +01:00
Louis-Antoine
4373afcdb2 Cooked a cookie 2017-01-01 23:27:06 +01:00
Louis-Antoine
b347b818e7 -Fixed broken net commands, thus fixing (or at least greatly improving) chat/commands/joins/leaves and possibly other annoying bugs
-Updated packet name list so the debug file no longer shows garbage packet names
-Replaced byte values with actual net command names in the debug file. Only the first net command in a packet will be shown though
-Added a MOBJCONSISTANCY define that makes the game takes all revelant mobjs to be counted in the synch seed
-Added a PACKETDROP define that adds two console commands "drop" and "droprate" to simulate bad internet by dropping packets
-Added/changed comments here in there in the netcode
-Fixed a minor error that would ignore one of the urgent ack slots
-Added a space between the map name and "zone" for the messages shown in a joiner's console
2017-01-01 23:07:34 +01:00
toasterbabe
3f92a2305a * Modified MT_SEED to have aesthetically nicer behaviour.
* Removed Soniccd command, as flicky selection involves a P_RandomKey call - this messes with replays and demos.
2017-01-01 21:54:30 +00:00
toasterbabe
df88d888e6 Prevented Mario mode from bailing out P_InternalFlickySpawn. What's the point? Goombas don't call A_FlickySpawn... 2017-01-01 18:16:21 +00:00
Monster Iestyn
0e6e52eabe Start mobjnums at 1 instead of 0, so that the first found mobj can be relinked as a target etc to other mobjs properly
This fixes Brak's electric barrier disappearing for joiners to ERZC. There seems to be some issues with the lava falls there too I've found, but the electric barrier actually stays around now at least
2017-01-01 17:03:13 +00:00
toasterbabe
6ed8d99b48 * Added "Flickylist = DEMO" option, creating the five species of flicky similar enough in appearance to the Freed Animals from the days of yore.
* Set the default flicky group to be equivalent to Flickylist = Demo.
* Refactored a little. (This also removed a crash-causing typo in a Z_Free in P_ClearSingleMapHeaderInfo.)
2017-01-01 16:57:07 +00:00
toasterbabe
21b316e9a4 Made the flicky turning-around-when-hitting-walls work better and not take up another struct variable which a user of A_FlickyCheck might not want taken. 2017-01-01 16:42:39 +00:00
toasterbabe
f8d37e5df7 fix commenting and indentation that was rushed for new years 2017-01-01 00:39:33 +00:00
toasterbabe
be140d8143 Added "Flickylist = All" option.
Couldn't get it to default to anything - it was causing crashes, and new years is in ten minutes, so let's do that tomorrow.
2016-12-31 23:47:47 +00:00
Monster Iestyn
6ca806a8c0 Fix FOF lighting being stupid with repeating midtextures. 2016-12-31 20:44:16 +00:00
Louis-Antoine
d4f153d3ca Random changes in the netcode lol 2016-12-31 19:26:33 +01:00
toasterbabe
311886e582 * Ported in all of the Flickies from flickiesreduced8.wad except for the Flicker and seed.
* Fixed a crash bug in the Flicky fly function I introduced sleepily last night.
2016-12-31 16:55:06 +00:00
toasterbabe
d3a70eb1db * All Flicky A_ functions ported.
* Corrected MT_EGGSHIELD spawning a flicky.
* New compared to the Lua implementation: Flickies turn around when they hit walls!
2016-12-30 19:16:20 +00:00
toasterbabe
bf8bff82ba * MT_EGGTRAP (egg capsule center mobj) converted over to flickylist system.
* MT_EXPLODE's anims partially FF_ANIMATE'd.
* A_FlickySpawn turned into a wrapper for internal function that does what A_FlickySpawn did but returns a pointer to the spawned flicky.
2016-12-30 14:04:04 +00:00
toasterbabe
d9177f778f * Made what MI had compile.
* Added the ability to read in mobjtypes as well as from a short list of flicky constants.
* Added a new state, S_XPLD_FLICKY, which is the new deathstate of all badniks.
* Put the disabled animal-spawn-on-P_KillMobj behind a #define.
* Renamed the branch and associated properties to something not rife with sin.
2016-12-29 17:02:05 +00:00
Monster Iestyn
7711f64eb7 Whoops forgot to commit this extra thing I was doing (just disables the old code for animal spawning) 2016-12-27 21:14:19 +00:00
Monster Iestyn
cecc1912fe Starting work on adding new system for spawning animals; added A_FlickySpawn and level header "animallist"/"flickylist" parameter
No idea if this compiles yet (let alone if what is there works at all), just getting this out the way so I can work on certain other things *cough plane displacement cough*
2016-12-27 21:01:20 +00:00
Inuyasha
8fb9a3b3d5 Ignore modifier keys in chat
(Fixes LSHIFT typing D repeatedly into chat)
2016-12-26 21:32:35 -08:00
toasterbabe
4a53d96099 * Fixed changing skins during differing-length sprite animations resulting in sprite errors.
* Added PF_BOUNCING to a place where it would likely be wanted.
2016-12-26 18:36:57 +00:00
toasterbabe
2ba3afaeda Implemented unique attract shield sound (patch.dta). 2016-12-26 13:02:26 +00:00
toasterbabe
90758b47ec * Limit spawning of endsign head to if a sprite for it exists.
* Rearrange colouropposite so lavender's opposite is crimson, considering gamegear.
2016-12-25 22:20:20 +00:00
toasterbabe
877065250e Some NiGHTS change oversights I forgot to correct before. 2016-12-25 19:56:33 +00:00
toasterbabe
5164ee7fc9 Fun gameplay tweak: Turn CA_FLOAT into a limited CA_SLOWFALL when moving slowly, to double down on it being for speedrun characters and punishing slowing down. Rob-approved. 2016-12-24 22:23:34 +00:00
toasterbabe
578b809557 * Turned CA_DASHMODE into SF_DASHMODE.
* SF_DASHMODE users can now dash on water.
* Gave CA_HOVER its own states/sprite2s.
* Gave Super Sonic's hover his own hover-run state/sprite2.
2016-12-24 20:57:39 +00:00
toasterbabe
102f26182b * Tweaks to CA_BOUNCE.
* Tweaks to drowning number placement for altered sizes.
2016-12-24 14:23:11 +00:00
toasterbabe
f60233027d On Rob's suggestion: Allow your controls to turn CA_BOUNCE users to turn on a dime when coiling for the next bounce. 2016-12-24 13:31:23 +00:00
toasterbabe
942065ba9f * CA_BOUNCE users now play animation/sound when bouncing on enemies, monitors.
* CA_BOUNCE users harmlessly bounce off Sharps.
2016-12-24 13:17:53 +00:00
toasterbabe
b84ad05061 Okay, failed experiment fixed. (This has nothing to do with the ability to pierce bustable FOFs, I just modified it for kicks to see what would happen.) 2016-12-24 00:12:29 +00:00
toasterbabe
a61f5e4521 * CA_BOUNCE can now break downwards. 2016-12-23 23:58:12 +00:00
toasterbabe
0a7fe9569d * Fixed issue where CA_BOUNCE users can harmlessly bounce on deathpits (and not Cakewalk style!)
* Minor quality-of-life improvements to CA_BOUNCE handling.
2016-12-23 23:13:31 +00:00
toasterbabe
10a137620a First commit, CA_BOUNCE almost completed. 2016-12-23 17:31:07 +00:00
Inuyasha
37c8ef6369 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-12-22 17:46:39 -08:00
Inuyasha
f4b0591174 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next 2016-12-22 17:44:28 -08:00
Alam Ed Arias
97f87827f4 hardware: init undef vars in HWR_SortVisSprites 2016-12-22 19:42:00 -05:00
Alam Ed Arias
fca398ae4d Win32 Debugger: no need for Win32 interface code for SDL 2016-12-22 19:40:02 -05:00
Alam Ed Arias
1c16a4e670 m_aatree: add newline 2016-12-22 19:39:37 -05:00
Alam Ed Arias
fc9a86f6d2 Mingw: fixup unsigned/signed compare 2016-12-22 19:39:14 -05:00
Alam Arias
fe3916a60d Merge pull request #147 from LJSonik/hook-optimisation
Hook optimisation
2016-12-22 18:26:49 -05:00
Monster Iestyn
0538c98251 Added missing checks in HWR_AddLine from the software version, move v** vars to the top since R_PointToAngle calls use the same values anyway 2016-12-21 22:31:09 +00:00
Monster Iestyn
41dfba65c9 Hack to make sure even (extra)subsectors without planepolys have segs adjusted
this fixes a crash in (old) GFZ2 at the ramp as a result of creating pv1/pv2. This probably means before pv1/pv2 there could have been some silly typecasting from vertex_t to polyvertex_t to get fixed vertex coords and such...
2016-12-21 22:10:27 +00:00
Monster Iestyn
106e1aa8d5 Merge branch 'master' into opengl-improvements 2016-12-21 19:49:02 +00:00
Monster Iestyn
d782638da8 Merge branch 'zlib_pkgconfig' into 'master'
Zlib pkgconfig

Linux build to include libgme by default

See merge request !116
2016-12-18 21:44:19 -05:00
Monster Iestyn
752eca5253 Changed how return values work for the iteration function supplied to searchBlockmap 2016-12-18 16:53:11 +00:00
Monster Iestyn
7bcb595eaf don't make NF_SUBSECTOR available to Lua either unless HAVE_LUA_SEGS is defined 2016-12-18 15:36:19 +00:00
Monster Iestyn
8e56582728 Created R_CheckTextureCache to make sure midtexture/FOF walls cache their textures before choosing colfunc_2s, for software mode 2016-12-17 19:59:54 +00:00
Monster Iestyn
a9cfd12e04 Created R_GetTextureNum to make sure top/bottom/midtexture texture ids are always valid in rendering code for both software and OpenGL (and also for the Solid Midtexture effect physics code) 2016-12-16 21:38:53 +00:00
Louis-Antoine
db20bfb3c3 Generic mobj hooks are now run before mobjtype-specific mobj hooks, and player/linedef executor hooks now have their own lists 2016-12-15 21:05:54 +01:00
Monster Iestyn
6ae2c24484 Merge branch 'public_next'
# Conflicts:
#	src/p_user.c
2016-12-14 18:53:00 +00:00
Monster Iestyn
f8961d396f Initial commit of what I've done so far, DOES NOT COMPILE 2016-12-13 22:42:47 +00:00
toasterbabe
d8d5f31898 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-12-13 22:03:59 +00:00
toasterbabe
fe6b4c4875 Reduced momentum killing of groundpound into slime per Mystic's request. 2016-12-13 21:48:16 +00:00
Sryder
2e72539df2 Remove accidental leftovers
Accidentally left a comment and stuff in there from previous attempts
2016-12-13 21:22:40 +00:00
Sryder
4fb2a18846 Fix a one character bug with clipping 2016-12-13 21:18:05 +00:00
Sryder
39d4f22660 Flat sprites for OGL 2016-12-13 21:02:23 +00:00
Monster Iestyn
6f8969aec0 Merge branch 'spindash-dust' into 'master'
Spindash dust

Charging a spindash kicks up dust, we all know this feature was dying to get in at some point. Bubble and flame forms of spin dust are included from FSonic, for underwater and elemental respectively.

Oh, and as a bonus I reorganised the spindash/spinning/other ability2 stuff code to look a bit neater and more organised.

New resources:
* MT_SPINDUST - the object
* S_SPINDUST1 to 4 - the normal form's states
* S_SPINDUST_BUBBLE1 to 4 - the bubble form's states
* S_SPINDUST_FIRE1 to 4 - the bubble form's states
* SPR_DUST - the normal form's sprite set (uses frames A to D, just pinch FSonic's sprites really)
* SPR_FPRT - the flame form's sprite set (frame A only)

SF_NOSPINDASHDUST disables spindash dust for a character

See merge request !52
2016-12-13 15:15:33 -05:00
Monster Iestyn
aa82042cf8 Merge branch 'credit_switch' into 'next'
No switching skins mid-credits/custom cutscene in SP

Does what it says on the tin.

See merge request !129
2016-12-13 09:33:53 -05:00
Monster Iestyn
68c8b8a68a Merge branch 'multipatchtex-translucent-cyanpixel-fix' into 'master'
Multi-patch texture support for transparency AND translucency

Fixes the transparent bits of the multi-patch glass texture in THZ1 turning cyan when linedef types 900-908 are applied for translucency

See merge request !56
2016-12-12 14:29:44 -05:00
Monster Iestyn
3f3a26b7d4 Merge branch 'zoom_fix' into 'master'
Zoom tube camera fix

Fixed a mistake where I accidentially allowed people to change the player angle whilst in a zoom tube when previously improving them.

See merge request !57
2016-12-12 14:29:03 -05:00
Monster Iestyn
1ec97c242a Merge branch 'smooth_ropes' into 'next'
Smoother ropes and zoom tubes

Makes rope hangs and zoom tubes suck less. Specifically, they handle corners (and vertical height changes, ala sloped rope hangs) a LOT nicer. Ported from internal.

See merge request !139
2016-12-12 14:18:36 -05:00
Sryder
93901847d3 Fix the Fixed Rounding functions 2016-12-12 00:06:48 +00:00
Monster Iestyn
ab423f99c6 Optimising retrieval of sector_floorpic/ceilingpic
As LJSonic has pointed out, there's no need for a for loop in either case; just use sector->floorpic/ceilingpic as a levelflats index directly

(Besides, if that was to stop any out-of-bounds indexes being used, that's hardly the way to do it anyway)
2016-12-09 21:18:06 +00:00
Monster Iestyn
d294c9d15c P_NetUnArchiveWorld now uses P_AddLevelFlatRuntime instead of P_AddLevelFlat.
Also created P_CheckLevelFlat to just return the flat # from a name, since that's all P_NetArchiveWorld really needed from P_AddLevelFlat anyway
2016-12-08 21:45:25 +00:00
Alam Ed Arias
5e74318fb2 Merge branch 'master' into next 2016-12-06 17:29:43 -05:00
toasterbabe
77399b8fb9 * Disabled #define SECTORSPECIALSAFTERTHINK. This did not need to be done in next, since it could have subtle consequences which we'd rather not deal with in the hyperextended patch cycle as-is.
* Removed the adding of SF_TRIGGERSPECIAL_TOUCH for sectors with slopes in them. Too many undesired consequences, I'll handle them another way.
2016-12-06 21:49:59 +00:00
toasterbabe
3c8f5b4629 Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into touching_fixes 2016-12-06 21:28:33 +00:00
Monster Iestyn
7c07f39019 Make sure flipped things placed directly on ceiling get MFE_ONGROUND
This fixes ceiling springs apparently flying down with you in various scenarios
2016-12-05 22:07:16 +00:00
Prisima the Fox
dd13df2308 Whoops, didn't see the duplicate line. 2016-12-03 18:18:16 -05:00
Monster Iestyn
84f3102ad0 Added FLIPX support for single patch textures with holes
This completes FLIPX/FLIPY support for all textures
2016-12-01 22:37:33 +00:00
Monster Iestyn
52a84cf309 Fix negative y offsets for both normal and y-flipped patches 2016-12-01 21:43:27 +00:00
toasterbabe
c833497d39 Correcting slip-up I made when originally improving zoom tubes. 2016-12-01 14:40:58 +00:00
toasterbabe
02d78b355b Smoother ropes and zoom tubes ported from internal. 2016-12-01 14:33:44 +00:00
toasterbabe
a901f88d24 Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into touching_fixes 2016-12-01 14:14:20 +00:00
Monster Iestyn
ae3e11369e Revert "(Messiness warning) attempt to start using SDL_SetRelativeMouseMode instead of the old hacks of making the mouse do movement without leaving the window and be hidden"
This reverts commit 347b531881.

(Too experimental, may end up adding new bugs; let's just keep it to clean up for now)
2016-11-30 17:21:28 +00:00
Monster Iestyn
410b55ebcd Work on FLIPX/FLIPX support:
*Added FLIPX/FLIPY support for multi-patch textures and single-patch textures without holes
*Added FLIPY support for single-patch textures with holes; I'll sort FLIPX support out later
2016-11-28 22:21:54 +00:00
Monster Iestyn
cc2612c2d8 Merge branch 'master' into TEXTURES-additions 2016-11-27 19:49:56 +00:00
Monster Iestyn
347b531881 (Messiness warning) attempt to start using SDL_SetRelativeMouseMode instead of the old hacks of making the mouse do movement without leaving the window and be hidden
Seems to work so far though
2016-11-25 21:13:39 +00:00
Prisima the Fox
d788cb7676 Keeping the lua_gettop(gL) thing, otherwise the player/reason values will be pushed once to the stack each for every hook. Thanks MonsterIestyn! 2016-11-25 15:20:41 -05:00
Monster Iestyn
38f7af9281 Added ability to use custom-defined lines with P_PointOnLineSide such as with P_ClosestPointOnLine 2016-11-24 22:01:51 +00:00
Monster Iestyn
aa146dee41 Disabled all seg_t/node_t-related Lua code for now
To re-enable support for the above, uncomment the define HAVE_LUA_SEGS line in lua_script.h. Plain bbox userdata stuff is not disabled (though currently it's not used anyway)
2016-11-24 21:11:44 +00:00
Monster Iestyn
73b8790946 Merge branch 'master' into lua-additions 2016-11-24 19:35:06 +00:00
toasterbabe
a9c68a78e9 Slope correction. 2016-11-24 15:23:13 +00:00
toasterbabe
095a438e9e * Super float now back on spin button, again takes precedence over shield actives.
* Fixed BIG mistake where ShieldSpecial hook bailed out of the entire function instead of just the shield section.
2016-11-24 14:29:29 +00:00
toasterbabe
1424c3f6cd Regardless of what I'm doing next, this removal of limits in this place still should've been done a while ago. 2016-11-23 22:20:47 +00:00
Monster Iestyn
8bbbeff2a9 Make Impl_SDL_Scancode_To_Keycode look a bit neater
This way it's easier by eye to see from the list which SDL scancode maps to which SRB2 key code
2016-11-23 17:08:37 +00:00
Monster Iestyn
5cf4767aed Clearing away lots of disabled code (some of it would no longer work on SDL2 anyway) 2016-11-23 16:51:37 +00:00
Monster Iestyn
153ba39f19 Remove remnants of SDLK_ stuff, we use scancodes now not keycodes
(Apparently SDLK_LMETA/SDLK_RMETA don't exist anymore in SDL2 anyway?)
2016-11-22 22:41:02 +00:00
toasterbabe
05f58df709 Some changes and corrections.
* Cleaner A_ParticleSpawn code.
* Removed several hacks with Mario blocks, and corrected a mistaken assumption with when the FOF's thinker is being applied.
* Made the flashing of T_LaserFlash even less obnoxious.
2016-11-22 16:21:30 +00:00
Monster Iestyn
1606a45b18 Some cleanup/reorganisation in SDLSetMode and Impl_CreateWindow 2016-11-21 22:07:05 +00:00
Monster Iestyn
208546165b Comment out SDL2STUB from Impl_SetWindowIcon 2016-11-21 20:59:44 +00:00
Monster Iestyn
168f8d5c5e Un-stub Surfaceinfo and just print the parts that still work in SDL2
This means the console command vid_info also works properly too now (well, it does nothing in OpenGL mind)
2016-11-21 20:40:02 +00:00
Monster Iestyn
f4705b01f4 Don't call SDLESSet
Turns out sdl12's version of this function only did stuff for DC/GP2X ports; support for them have been cut out for SDL2, so for now let's just not use the function at all
2016-11-21 19:42:39 +00:00
toasterbabe
e34ef54166 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp
# Conflicts:
#	src/info.c
#	src/p_mobj.c
2016-11-20 19:21:10 +00:00
toasterbabe
85fb02aaf6 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions
# Conflicts:
#	src/p_inter.c
#	src/p_user.c
#	src/st_stuff.c
2016-11-20 16:44:38 +00:00
Monster Iestyn
2941521806 Add R_Draw2sMultiPatchTranslucentColumn_8, for columns of multi-patch textures used as midtextures on two-sided linedefs with both transparency AND translucency
...that was a mouthful
2016-11-16 18:43:25 +00:00
Monster Iestyn
f5f2542849 Go through all the polyobjects to find leftover polyobj planes to add to the draw nodes list
I'm convinced there's going to be some stupid side effects from doing this, but it's the quickest way I can fix the polyobj planes not all appearing anyway
2016-11-16 17:50:44 +00:00
Monster Iestyn
eab2df5627 Merge branch 'public_next' 2016-11-16 12:20:37 +00:00
Monster Iestyn
694bb73ef7 Merge branch 'master' into next 2016-11-16 12:16:51 +00:00
Monster Iestyn
42f985cda5 Remove pdupx/y and just use sdupx/y for everything, thanks Inuyasha 2016-11-16 12:10:56 +00:00
Monster Iestyn
0726dbe018 Started work on making HWR_DrawFill support V_NOSCALESTART properly ...so far I've got the console text select highlight in the right place outside of 320x200 (and 320x200 is still fine), but for whatever reason it's too large in width and height
Oh well, we're part of the way there, anyway
2016-11-15 20:33:07 +00:00
Monster Iestyn
1bb53ce5f3 Merge branch 'next' into plane-fixes 2016-11-15 18:40:48 +00:00
Inuyasha
f02f06aed8 Merge branch 'spr2stuff' into 'master'
Stupid spr2 fix

Name on tin

See merge request !53
2016-11-13 17:40:35 -05:00
Alam Ed Arias
b9b5d20300 Makefile: move ZLIB flags outside of GME check 2016-11-13 17:34:53 -05:00
Monster Iestyn
6e70acc82d Added SF_NOSPINDASHDUST to disable spindash dust 2016-11-13 22:33:57 +00:00
toasterbabe
7746553273 * Fixed A_1upThinker having a standing sprite for a single frame on spawn.
* Removed the noalt stuff because it's not actually helpful. Everything's gotta come back to something at some point or there'll be errors.
2016-11-13 22:33:10 +00:00
Inuyasha
c4996aad7e So how long have these been pulling the wrong sprites? 2016-11-13 14:29:19 -08:00
Monster Iestyn
c81665b9af Added flame version 2016-11-13 22:02:29 +00:00
Inuyasha
908907d668 Merge branch 'spr2stuff' into 'master'
Sprite2 changes

Some stuff!

* Lua access to sprite2.
    * Introducing new Lua-exclusive function, P_IsValidSprite2(mo, spr2). Basically just a wrapper for (((skin_t *)mobj->skin)->sprites[spr2].numframes > 0), useful for creating custom sprite2 defaulting functions since hooking into P_GetMobjSprite2 wouldn't be worth it.
* FF_ANIMATE support for sprite2s. The var2 of the state works identically to normal FF_ANIMATE, but var1 is completely disregarded - it just runs all of the frames available to that one sprite2 animation set.
    * As a result, a bunch of states which were either not previously animatable or had animated at constant speed now get animation without state changes.
* P_SetMobjState now supports sprite2 defaulting like P_SetPlayerMobjState does.

See merge request !51
2016-11-13 16:59:26 -05:00
Inuyasha
63622cb2dd Update new music cues to use correct names 2016-11-13 13:55:32 -08:00
Inuyasha
e62b0f219f Merge branch 'damage-control' into 'master'
Damage control + Match rebalancing

This is two branches in one since while I was working on damage-control's changes months back, I felt it was best Match rebalancing was merged in here too (thanks JTE for helping me do so).

Changes from damage-control:
* `player->health` (formerly the "HUD copy" of `player->mo->health`) is now `player->rings`, and is also now the player's actual ring count.
* `player->mo->health` (formerly rings + 1) is now always 1 when alive, regardless of ring count; if player with rings is damaged, this is untouched.
* P_RingDamage now includes ring spilling code.
* P_ShieldDamage now has a damagetype argument, allowing me to remove the last MT_NULL hack left in from the pre-damagetype days that I forgot about.
* The old "switch-to-seestate" enemy damaging behavior in P_DamageMobj has been removed. This was a Doom left-over and doesn't really affect SRB2's enemies anyway - see, Doom enemies had a random chance of using seestate or painstate, SRB2 enemies always use painstate.
* Other minor efforts to reorganise damaging code and have it make more sense, but otherwise nothing that should affect gameplay in general.

Changes from match-rebalancing:
* New weapon/ammo dropping behavior: if you have the weapon panel + ammo, you drop the panel (but not the ammo); if you don't, you just drop the ammo.
* New Match ammo consumption: Weapon rings can now be fired with no rings at double the ammo cost.
* New emerald behaviour: collecting all 7 emeralds no longer turns you super (read: Match super is dead now) but instead steal points from enemies and gives you and teammates invincibility + sneakers
* Tails ringslinger buff: Any character with CA_FLY will now throw rings 1.5x as fast.

See merge request !28
2016-11-13 16:47:05 -05:00
toasterbabe
b7298a5574 Revert "Nev3r wants to make barrels which are both shootable and die when you break them like you break monitors."
This reverts commit 286a8b0289.
2016-11-12 15:39:47 +00:00
toasterbabe
0cca852eb6 Revert "Correction of some other relevant places to the previous commit."
This reverts commit a88b21f703.
2016-11-12 15:39:42 +00:00
toasterbabe
11a391dbb5 Making FF_SPR2ENDSTATE consistent between P_SetMobjState and P_SetPlayerMobjState. 2016-11-12 15:06:49 +00:00
toasterbabe
a88b21f703 Correction of some other relevant places to the previous commit. 2016-11-12 14:34:25 +00:00
toasterbabe
286a8b0289 Nev3r wants to make barrels which are both shootable and die when you break them like you break monitors.
To that end, I've made MF_MONITOR *without* MF_SHOOTABLE act like MF_MONITOR does, and MF_SHOOTABLE allow for both missiles AND players to destroy. This has had the side effect of allowing MF_ENEMY and MF_BOSS to use MF_MONITOR as a substitute for MF_SHOOTABLE that doesn't allow missiles to cause them damage, which might be useful for Jetty-syns.
2016-11-12 14:08:27 +00:00
toasterbabe
645e7298c0 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-11-12 13:43:02 +00:00
toasterbabe
20677c7a66 * Introducing new Lua-exclusive function, P_IsValidSprite2(mo, spr2). Basically just a wrapper for (((skin_t *)mobj->skin)->sprites[spr2].numframes > 0), useful for creating custom sprite2 defaulting functions since hooking into P_GetMobjSprite2 wouldn't be worth it.
* All Lua-originated sprite2 settings are now forced through P_GetMobjSprite2. Makes sense because of SPR2_JUMP, which none of the main characters have sprites for yet all use.
* Cleaned up P_GetMobjSprite2 to not set irrelevant, otherwise-unused variable.
2016-11-11 23:23:41 +00:00
toasterbabe
4756b4ce2c Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into spr2stuff 2016-11-11 21:38:35 +00:00
toasterbabe
9aa41582c3 Lua support for sprite2. 2016-11-11 21:37:28 +00:00
Inuyasha
c545194bef update colors to new palette 2016-11-10 16:53:27 -08:00
toasterbabe
d8096d237a Nullification of a lot of irrelevant nextstates for infinite length states. It makes sense. 2016-11-11 00:30:49 +00:00
Inuyasha
1ff498fcfd Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
# Conflicts:
#	src/console.c
2016-11-10 16:20:03 -08:00
toasterbabe
6c1483266c You know, I should've converted these with the earlier commit. Silly me. 2016-11-11 00:15:41 +00:00
toasterbabe
07e5fe9546 Swapped around in an attempt to streamline. 2016-11-10 22:35:33 +00:00
Monster Iestyn
47c67472ff Added bubble form of spin dust 2016-11-10 21:09:05 +00:00
toasterbabe
fc64feee60 FF_ANIMATE now cooperates with Sprite2, and to this end a few player states which have non-varying animation speeds (some which previously had a speed of 0) now use it. 2016-11-10 18:27:01 +00:00
Monster Iestyn
ce97c1e986 Added basic spindash dust
Also cleaned up some of the code in P_DoSpinAbility while I was at it
2016-11-10 17:51:10 +00:00
Monster Iestyn
fea97b4880 Merge branch 'master' into next 2016-11-10 16:45:49 +00:00
toasterbabe
080b3c1d6d Decouple the Sprite2 defaulting from P_SetPlayerMobjState. 2016-11-10 16:05:40 +00:00
Inuyasha
2569a1eda6 Merge branch 'console-improvements' into 'master'
Console improvements

* Unused console backgrounds no longer take up memory
* Input cursor can now move left and right
* Support for selections (Shift-arrow keys, CTRL-A, etc)
* Clipboard support (CTRL-C to copy, CTRL-V to paste, CTRL-X to cut)
* Fixed handling of simultaneous modifier key presses

https://dl.dropboxusercontent.com/u/3518218/21/console.gif

None of this affects chat yet, that's not part of the console. I'll look at it later.

See merge request !133
2016-11-09 20:42:56 -05:00
Prisima the Fox
b1ce5896aa Remove boolean remnants 2016-11-08 10:30:01 -05:00
Monster Iestyn
5be8e4f1b0 Make new pv1/pv2 seg pointers, so AdjustSeg doesn't modify the v1/v2 pointers directly anymore
Yes I know they're void * in r_defs.h's seg_t definition, it's quicker than trying to figure out if including hardware/hw_glob.h is a good idea or not
2016-11-07 21:55:56 +00:00
Monster Iestyn
14cd274baa Change 0xF7 to 0xFF in R_GenerateTexture 2016-11-07 20:27:12 +00:00
Monster Iestyn
817f0908e4 made HWR_CreateBlendedTexture's color switch case take up not so many lines, and only one V_GetColor call is used now 2016-11-07 18:34:51 +00:00
Alam Ed Arias
93c9841360 move Windows zlib options out of PNG to ZLIB 2016-11-06 15:11:02 -05:00
Monster Iestyn
bbd67a6960 Merge branch 'master' into opengl-improvements 2016-11-06 18:02:34 +00:00
Monster Iestyn
cb1fbbf345 Merge branch 'public_next' 2016-11-06 18:02:12 +00:00
Monster Iestyn
f97301b8b8 Merge branch 'master' into next 2016-11-06 17:59:35 +00:00
Monster Iestyn
2dfb841c38 Correcting slight mistake I made 2016-11-06 17:50:04 +00:00
toasterbabe
01f3aa5743 Fixed collision for MF_PAPERCOLLISION with respect to diagonals. 2016-11-06 16:46:27 +00:00
toasterbabe
b5a6bfe046 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-11-06 16:03:12 +00:00
Monster Iestyn
05860b2fa1 Ensure file is closed whenever MD2 reading errors happen 2016-11-05 20:51:48 +00:00
Monster Iestyn
b00c680437 Add MD2_INDENT and MD2_VERSION so we can cleanly check that it's a valid MD2 from magic number/version 2016-11-05 20:40:48 +00:00
Monster Iestyn
43cdcc94f9 remove commented-out HWRENDER code in V_DrawContinueIcon 2016-11-05 19:54:49 +00:00
Monster Iestyn
795b3aa552 Call V_DoPostProcessor only in software mode (it cancels itself in OGL anyway) 2016-11-05 19:54:38 +00:00
Monster Iestyn
2df7d8c4aa Merge branch 'public_next' 2016-11-05 19:52:27 +00:00
Monster Iestyn
7b9328781f Merge branch 'master' into next 2016-11-05 19:36:04 +00:00
Monster Iestyn
8909b7c27b Change >= to >, I THINK having exactly 4096 vertices is safe? 2016-11-05 17:38:36 +00:00
Louis-Antoine
6f4699fb77 MobjThinker, MobjCollide and MobjMoveCollide hooks are now directly linked to the mobjtype they belong to, so you no longer iterate through all existing hooks. 2016-11-04 18:56:25 +01:00
Inuyasha
55400a262d go fuck yourself stupid compiler
...your guesses should not be treated as errors.
2016-11-04 02:02:26 -07:00
Inuyasha
010c52aed2 show highlight BG over ellipses if highlight extends offscreen
+ bug fixes
2016-11-03 19:36:43 -07:00
Inuyasha
bb92986aee Merge branch 'console-improvements' of http://git.magicalgirl.moe/STJr/SRB2 into console-improvements
# Conflicts:
#	src/sdl/i_system.c
2016-11-03 17:31:24 -07:00
Inuyasha
e245cdfcbf Console with moving cursor, selections, etc 2016-11-03 17:30:30 -07:00
Monster Iestyn
efe02e2a42 allow triangle/frame limits too 2016-11-03 22:53:49 +00:00
Monster Iestyn
561a0fe768 Attempt loading of an MD2 only once; if we failed then don't bother again
This keeps my new error messages from flooding the console and log.txt
2016-11-03 21:06:23 +00:00
Monster Iestyn
2ec972af54 check numVertices, bail out and print error message if there are too many
I added similar checks for the other num* but it seems some MD2s break the other limits without knowing anyway ...so I've commented these checks out for now, unless we have further discussion regarding them later on
2016-11-03 20:40:17 +00:00
Alam Ed Arias
1f6388a2e0 Fix up Win32 interface code misdeclaration of I_ClipboardPaste() 2016-11-03 14:35:32 -04:00
Alam Ed Arias
8040a68fa0 Clipboard: remove Win32 code for SDL Clipboard API 2016-11-03 14:29:51 -04:00
Alam Ed Arias
f3751828cb Merge branch 'master' into next 2016-11-03 12:51:48 -04:00
Inuyasha
bb20cfd6be Clipboard copy/paste testing
(unfinished, but basics work)
2016-11-03 01:43:57 -07:00
STJrInuyasha
b2c71944f6 Revert "Chat and console improvements" 2016-11-03 00:34:15 -07:00
Alam Ed Arias
941df72b6f Merge branch 'master' into next 2016-11-03 02:06:49 -04:00
Inuyasha
c277125fe7 modifier key status made globally accessible
now also properly handles L/R simultaneous presses
2016-11-02 15:23:22 -07:00
Inuyasha
8107765677 make console back color use just one section of memory
let's be honest, it's pretty dumb to have every single possible back colormap in memory when only one is being used at a time
2016-11-02 14:26:35 -07:00
toasterbabe
e67f48df83 Forgot to revert the other files. 2016-11-02 20:35:53 +00:00
toasterbabe
7b12820c82 Tweaked P_CheckSolidLava to avoid changing its function signature, and P_CanRunOnWater now supports slopes too. 2016-11-02 20:32:36 +00:00
Louis-Antoine
8b72b553be Fixed warnings 2016-11-02 20:10:08 +01:00
Louis-Antoine
2d72b2fac6 You can now move the cursor in command prompt and chat, using left/right, ctrl+left/right, home/end, and select text with shift 2016-11-02 19:31:06 +01:00
Alam Ed Arias
67d2211bca whitespace: cleanup 2016-11-01 15:54:52 -04:00
toasterbabe
d21b091b96 * Slope/gravity support for quicksand complete.
* Space sector support complete, bounds of drowning now altered slightly.
* Knuckles climb now has symmetrical slope support for both normal and reverse gravity.
* All slope-determining topheight and bottomheight code is now identical in form.
* Camera postimages now support slopes properly.
2016-10-31 22:14:34 +00:00
toasterbabe
d13ca362d6 Quicksand now supports slopes and also reverse gravity. 2016-10-31 21:34:43 +00:00
toasterbabe
04a38a683b Okay, this is a biggun. Pay attention, everyone.
Moved the handling of P_PlayerInSpecialSector to P_PlayerAfterThink from P_PlayerThink.
* This allows the player to get hurt on sloped lava surfaces that are moving downwards.
* Also prevents the player from standing on death pits for 1 tic.
* Prevents the player moving 1 extra tic's worth of movement of pain when hit by sector.
* Thankfully, no consequences re conveyors.
* Like, the only consequences I've found have been positive. However, this DOES need to be thoroughly investigated before it can be allowed anywhere near Next itself.
2016-10-31 20:15:11 +00:00
toasterbabe
a2dabd7041 Fixed a bunch of things MI pointed out. 2016-10-31 14:03:53 +00:00
toasterbabe
1bbbe15ee5 Fixed a bug with being able to go under the lava because P_CheckSolidLava doesn't take slopes into account.
(neither does P_CanRunOnWater, but I don't think it's necessary to make that check more complicated as you probably shouldn't be able to waterrun up steep surfaces anyways)
2016-10-31 13:53:52 +00:00
toasterbabe
1e1a6c32f0 Corrected non-complete set of cases. 2016-10-31 09:34:24 +00:00
toasterbabe
6a2e101ebe Forcing on triggerspecial_touch for slopes, because pain slopes and it would be a pain to handle this manually. 2016-10-31 00:03:07 +00:00
toasterbabe
2d50dd1fd1 A bunch of fixes that allow for proper handling of triggerspecial_touch. Not perfect, but I don't have any more time to spend tonight. 2016-10-31 00:02:38 +00:00
Monster Iestyn
4d46190418 Merge branch 'public_next' 2016-10-30 19:34:54 +00:00
Alam Ed Arias
5fed10913f Merge branch 'master' into next 2016-10-30 13:02:01 -04:00
toasterbabe
f77c3444a3 Don't use shield abilities after the armageddon's used up! 2016-10-30 14:23:53 +00:00
toasterbabe
6570912b1a Fixed gold monitor collision (which relied upon the shitty old collision blocking in order to not destroy your momentum) to work with my slopes_n_objects fixes from public next. 2016-10-30 14:09:51 +00:00
toasterbabe
08a4fc8382 Tweaks to the way the force whoosh is handled so it stays centered AND doesn't allow an infinitesimal jump. 2016-10-30 14:01:56 +00:00
Alam Arias
51cb45cd4b Merge pull request #119 from ilag11111/linux64-soundcrash-fix
Prevent resampling-related crashes on Linux 64-bit
2016-10-29 14:14:41 -04:00
toasterbabe
31d569a15b No more changing skins when you're in singleplayer and manage to enter a hole in the gamestate defenses! 2016-10-29 18:12:41 +01:00
toasterbabe
5a798bddbd Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-29 17:14:45 +01:00
Monster Iestyn
304f4625e5 Merge branch 'master' into crumble-FOF 2016-10-29 17:06:34 +01:00
Monster Iestyn
82d29b59c1 Merge branch 'master' into damage-control 2016-10-29 17:05:59 +01:00
Monster Iestyn
39f837e56f Merge branch 'master' into lua-additions 2016-10-29 17:05:31 +01:00
Monster Iestyn
cd3895f676 Merge branch 'public_next' 2016-10-29 17:03:38 +01:00
toasterbabe
1c1af15b4f Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-29 16:56:50 +01:00
toasterbabe
ab6fd676b5 YUP, I just fixed OGL Precipitation with this branch too. What the fuck? Squashing ancient bugs, woo. 2016-10-29 11:54:51 -04:00
toasterbabe
ff443251b1 P_IsPointInSubsector now works in both Software and GL, which means it can be used as the main driver behind support for Knuckles climbing on one-sided walls.
Also, the "teleport" devmode command can now gracefully handle coordinates specified outside maps with no/few thok barriers, which previously prevented teleport via the thok barrier bleed's sector floor and ceiling being equal.
2016-10-29 11:54:47 -04:00
Monster Iestyn
b1a53f6623 Merge branch 'public_next' 2016-10-29 16:52:43 +01:00
Monster Iestyn
8b5abd957c Merge branch 'slopes_n_objects' into 'next'
Fixing various problems with MF_SOLID collision

(I, toast, wrote the original merge request, but Alam made this merge request because I made a mistake. Twice. In a row.)

* Solid objects are now no longer intangible when your z is less than the other object's.
    * I originally thought the bug was limited to just solid objects on slopes (hence the branch name), and was wondering about undesired side effects - but looking at this gfy, this was a major bug that slopes made easier to expose.
    * Unfixed = http://gfycat.com/BareLimitedCavy
    * Fixed = http://gfycat.com/JubilantOffensiveGar
* You now properly lose your momentum when jumping at a solid object.
    * The way I fixed this was a hack, but it was originally a much worse hack which resulted in very bizzare physics issues, so...
    * Unfixed = http://gfycat.com/ShockingAbsoluteArthropods (also demonstrates the first bug)
    * Fixed = http://gfycat.com/EmbellishedCourageousGordonsetter

See merge request !119
2016-10-29 11:19:37 -04:00
Monster Iestyn
2ef1aaf15c Merge branch 'shield_issues' into 'next'
Fixed players disappearing when spindashing whilst wearing multi-layer shields

* Before: http://i.imgur.com/gxUFElo.png
* After: http://i.imgur.com/NxsOg94.png

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 aspect of the issue sooner.

(SORRY FOR THE MULTIPLE MR'S AGAIN I TOTALLY SUCK AT REMEMBERING TO MAKE SURE IT GOES TO NEXT INSTEAD OF MASTER)

See merge request !124
2016-10-29 11:19:09 -04:00
toasterbabe
8025ef2f79 At MI's suggestion (shields don't NEED to be tweaked, just overlays) 2016-10-29 16:08:19 +01:00
toasterbabe
fe67c6fbea Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2.git into shield_issues 2016-10-29 16:06:41 +01:00
toasterbabe
b9e7abe7ff Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-29 15:59:45 +01:00
Monster Iestyn
f4ddaf51ab Merge branch 'public_next' 2016-10-29 15:37:53 +01:00
Alam Arias
dfc83a5483 Merge pull request #128 from Yukitty/fix-animdefs
Fix ANIMDEFS process order
2016-10-28 22:45:37 -04:00
Monster Iestyn
5da972f314 Remove disabled LUA_BLOCKMAP code from lua_baselib.c 2016-10-28 18:56:07 +01:00
Monster Iestyn
dc1e7165f7 Created lua_blockmaplib.c, for Lua's blockmap library
my P_SearchBlockmap_* functions are now a single searchBlockmap function, you can choose between "objects" and "lines" with the first arg to decide what to iterate through. I also rearranged the argument order a bit for easy stack cleanup etc

I'll remove the old stuff later, don't worry, it's disabled for now
2016-10-27 18:10:30 +01:00
Monster Iestyn
60dcfd1021 Pop result of P_SearchBlockmap_Objects's function arg
Also P_SearchBlockmap_Lines is a thing now too
2016-10-25 22:39:27 +01:00
Monster Iestyn
98e43ac0d9 Fixed ffloor_t Lua variables not actually saving to $$$.sav
Stupid overlooked semicolons
2016-10-25 16:15:17 +01:00
Monster Iestyn
36b7156ff7 Turns out it does work yay, just had to make some tweaks really
Next question: should the calling mo be able to find itself in the blockmap, or should it skip itself?
2016-10-24 23:11:41 +01:00
toasterbabe
bfdaf5ee90 Fixed the Force stop's scaling properly. Woo! Branch is basically done now. 2016-10-24 20:51:23 +01:00
toasterbabe
a533701d85 You know what, let's make this less hacky. 2016-10-24 18:53:22 +01:00
toasterbabe
cc4d780371 Making things more scale-friendly (but it's not perfect...) 2016-10-24 18:40:48 +01:00
Monster Iestyn
c42e7ee4b4 Merge branch 'next' into slopes_n_objects 2016-10-24 16:50:06 +01:00
toasterbabe
bf873f8a9b Fixed a heinous modding bug with not properly updating dehacked.c, and added pf_SHieldability to debug. 2016-10-24 16:30:40 +01:00
toasterbabe
ea30450180 Minor correction to force-hud conditional. 2016-10-24 14:45:26 +01:00
toasterbabe
0ee2937392 Adding ShieldSpecial hook. (Activates under different circumstances to the JumpSpinSpecial hook, and can be used to cancel existing shield actions.) 2016-10-24 13:52:52 +01:00
toasterbabe
162c04c370 Bubblewrap shield now bounces on enemies and monitors instead of piercing through them. 2016-10-24 13:33:10 +01:00
toasterbabe
0ccf6fe6a9 I commented out this line a while ago because it didn't seem to be important, and flashingtics seems to be thoroughly set elsewhere. Here's an actual removal so it stands out on the git diff. 2016-10-24 12:43:54 +01:00
toasterbabe
3ce411b62a Mario mode is boring again. (I'm going to revert this commit as soon as possible, but shield_actions needs to be clean of Mario stuff for now.) 2016-10-24 12:35:40 +01:00
Monster Iestyn
5787817662 Committing my work on P_SearchBlockmap_Objects so far, no idea if it's even functional yet so I've commented it out for now 2016-10-23 23:13:11 +01:00
toasterbabe
a5a6ceff71 More thorough Mario soundification for new shield sounds. 2016-10-23 22:21:42 +01:00
Monster Iestyn
782353f968 Merge branch 'master' into lua-additions 2016-10-23 21:08:36 +01:00
Monster Iestyn
a7c8c60379 Merge branch 'master' into damage-control 2016-10-23 21:08:17 +01:00
Monster Iestyn
c3000a6db0 Merge branch 'master' into crumble-FOF 2016-10-23 21:07:59 +01:00
toasterbabe
3e3f595f1e Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-23 20:39:05 +01:00
toasterbabe
45d32b7f7c * Flameaura shield now has boosh sprites.
* MF2_SHIELD calls shield thinker (P_AddShield/P_ShieldLook).
* Multiple types of force shields now handled.
2016-10-23 20:34:43 +01:00
Monster Iestyn
6bf8e3dcad Merge branch 'development_stuff' into 'master'
Development improvements

An improvement to Objectplace I've wanted to make for a loooong time.

* 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.

Also, some changes to the devmode overlay:

* Plays nicely with showfps on - see http://imgur.com/a/zSzvm for the various cases (showfps on, devmode 65535, and both).
* Add PF_THOKKED to the flags in devmode DBG_DETAILED (as "TH").
* "Flags:" replaced with "PF:", "Heap used" replaced with "Heap". The latter is a debatable change, but the former isn't - otherwise the line is way too long compared to the rest of the stuff.

See merge request !45
2016-10-23 14:42:57 -04:00
toasterbabe
cfc9302bd3 Minor fix to ensure PF_FORCEJUMPDAMAGE is always known. 2016-10-23 17:05:17 +01:00
toasterbabe
956a8358c2 Important component for nojumpspin characters. 2016-10-23 16:26:36 +01:00
toasterbabe
c54d62851c Okay, this is a MUCH better solution than PF_JUMPDAMAGE. 2016-10-23 16:04:02 +01:00
toasterbabe
76ff26e6fb Revert "Thorough jumpdamage setting."
This reverts commit 8720252059.
2016-10-23 15:53:12 +01:00
toasterbabe
c18c014bef Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-23 14:47:37 +01:00
toasterbabe
8720252059 Thorough jumpdamage setting. 2016-10-23 14:42:37 +01:00
Monster Iestyn
e390598e13 Fix objectplace controls text so it displays "Weapon Next/Prev" 2016-10-23 14:35:35 +01:00
Inuyasha
fa187c5ae7 Merge branch 'unslot-music' into 'master'
Hardcoded music name switches

Like I said earlier, it's better if all the hardcoded music switches in 2.2 start with an underscore so that it's harder to accidentally overwrite them.

Should be accepted when music.dta is updated.

See merge request !17
2016-10-23 06:46:33 -04:00
Inuyasha
9d5e0b314b Autoload music_new.dta if it exists
Same no non-music lump requirement as music.dta, and is ignored with no error if music_new.dta doesn't exist
(should hopefully make playing around with music easier)
2016-10-23 03:44:51 -07:00
Monster Iestyn
bd153d83b7 Merge branch 'nix-srb1' into 'master'
Remove SRB1 Remake data

What it says on the tin.

See merge request !47
2016-10-22 22:18:36 -04:00
Monster Iestyn
587c0079e2 Started work on FLIPX/FLIPY support for patches. Doesn't do anything yet, but the parser should know how to look for them now
Note: I had to create M_UnGetToken in order to avoid problems with looking for patch parameters (marked by { and }) but not finding anything
2016-10-22 23:19:24 +01:00
Monster Iestyn
6473953c8c Merge branch 'master' into lua-additions 2016-10-22 14:59:01 +01:00
Monster Iestyn
1d70a9d9d2 Merge branch 'master' into crumble-FOF 2016-10-22 14:58:37 +01:00
Monster Iestyn
dd5fa80839 Merge branch 'master' into damage-control 2016-10-22 14:55:06 +01:00
Monster Iestyn
326ad8a14f Merge branch 'wallscrollbylinedef-fix' into 'master'
Wallscrollbylinedef fix

See commit description.

See merge request !43
2016-10-22 09:52:07 -04:00
Prisima the Fox
b5988e082c No more magic numbers 2016-10-21 16:27:15 -04:00
Prisima the Fox
c38457f23c No more magic numbers 2016-10-21 16:25:07 -04:00
Prisima the Fox
6733152651 No more magic numbers 2016-10-21 16:16:54 -04:00
toasterbabe
5ad7fc8495 A better check than for skin==0. 2016-10-21 12:34:16 +01:00
toasterbabe
6abd4d20d3 Further tightening. 2016-10-21 12:31:06 +01:00
toasterbabe
bda630ce41 I could do better than the previous commit. 2016-10-21 11:57:59 +01:00
toasterbabe
4c0ef9f0a3 * No ridiculously-fast float animation.
* No falling when you accidentially press spin.
2016-10-21 11:48:41 +01:00
toasterbabe
b34dc93a18 Fix to the previous commit to basically do what I wanted it to do as opposed to accidentially altering behaviour of jumping on crawlas. 2016-10-21 11:31:44 +01:00
toasterbabe
a053b117e1 Moved the Super Sonic hover over to holding down the jump button (which conveniently links it pretty closely to the thok, which could be called the Float Thok or something I dunno.)
Also, only one shield ability is selectively blocked by being Super now, and that's because Invincibility does it too and therefore I assume that's a match balance thing instead of a keyboard clash.
2016-10-21 11:08:32 +01:00
Prisima the Fox
defc7c1645 Oops; PlayerQuit isn't a boolean! 2016-10-20 23:26:41 -04:00
Prisima the Fox
fcf2fe79e0 Oops; PlayerQuit isn't a boolean! 2016-10-20 23:25:47 -04:00
Prisima the Fox
89e8766b77 "PlayerQuit" hook 2016-10-20 22:30:11 -04:00
Prisima the Fox
cfb2feff8e "PlayerQuit" hook 2016-10-20 22:25:11 -04:00
Prisima the Fox
cb62f08364 "PlayerQuit" hook 2016-10-20 22:23:50 -04:00
toasterbabe
f145898ca4 Woops. 2016-10-20 21:39:58 +01:00
toasterbabe
769962c884 Minor cleanup. 2016-10-20 21:15:41 +01:00
toasterbabe
59fccab8e5 Restructured things so nojumpdamage characters can use the elemental, bubblewrap and attract shields. 2016-10-20 20:55:15 +01:00
Monster Iestyn
3bc29919c2 Merge branch 'public_next' 2016-10-20 16:38:39 +01:00
toasterbabe
c1a8dd9a37 Minor refactor of what I did last night - as a modifiable state instead of hardcoded references. 2016-10-20 13:44:03 +01:00
Monster Iestyn
8e660ce863 Merge branch 'drawscaled-scalefix' into 'next'
v.drawScaled negative scales fix

Lua now errors if you try to use negative scales with v.drawScaled, rather than crashing as it does in 2.1.16 currently. Not much else to say here.

See merge request !126
2016-10-19 21:11:44 -04:00
toasterbabe
8fe932b0e7 * Force shield force stop completed
* Bubblewrap shield bounce now no longer allows thokking post-bounce, but still allows bouncing
* plus a bunch of tiny changes to clean up code around the place.
2016-10-20 00:33:12 +01:00
Yukita Mayako
cdb841ef54 Only P_InitPicAnims when wads are loaded.
Not in P_SetupLevel. That's just dumb.
2016-10-19 03:24:43 -04:00
Yukita Mayako
aa3e52f05e Fix ANIMDEFS parsing to allow overwrite.
ANIMATED and ANIMDEFS are now processed in reverse order,
and duplicate definitions in ANIMDEFS are dropped.
2016-10-19 03:24:26 -04:00
Monster Iestyn
f72e8a8ff8 Merge branch 'reverseplatform_clippingfixed' into 'next'
Fixing FF_REVERSEPLATFORM clipping fixes

Forgot the case where == 0.

Tested by @wolfy852 in Top Down, where the bugs this caused were first discovered.

See merge request !121
2016-10-18 17:19:48 -04:00
Monster Iestyn
fc44e53056 Merge branch 'slopes-even-more-fixes' into 'next'
Even more slope-related fixes

What it says on the tin pretty much:

Currently included fixes:
* Pusher specials applied to FOFs did not properly account for slopes applied to the bottom plane; this probably was just a minor slipup that appeared on adding the support in the first place, I take it? (some waterfall in the last section of SUGOI's Fudge Canyon is the only place I can think of offhand where this bug is noticable)

See merge request !114
2016-10-18 17:19:13 -04:00
Monster Iestyn
e1baf02b7a Lua now errors if negative scales are used with v.drawScaled 2016-10-18 22:07:20 +01:00
toasterbabe
6f1ce5c1ca Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into slopes_n_objects 2016-10-18 21:56:40 +01:00
toasterbabe
9b4c81ed0b Thundercoin shield complete. 2016-10-17 23:22:04 +01:00
toasterbabe
0e73924ebb Changed the pity shield sound to one with a higher volume. 2016-10-17 21:24:10 +01:00
toasterbabe
51ffa6d5ea Kill an overlay if the target is removed between P_AddOverlay and P_RunOverlays. 2016-10-17 21:23:58 +01:00
toasterbabe
beecd72a22 BUBBLE BOUNCE ANIMATION 2016-10-17 20:39:22 +01:00
toasterbabe
e107fe498b Adding new sounds for SRB2 shields. 2016-10-17 18:01:43 +01:00
toasterbabe
366e282495 Cleaned up the shield-ability stuff to be cleaner (and reduce MT_OVERLAY thinking). 2016-10-17 14:39:32 +01:00
toasterbabe
c693af96b1 * Bubble bounce completed (minus graphics).
* Flame burst fixed with respect to scale.
2016-10-17 14:03:32 +01:00
toasterbabe
76b30df528 * Slower Bubblewrap animation.
* Corrected bounce height for Elemental underwater.
* Using Elemental ability in goo is cancelled.
* Different Attract failure sound.
2016-10-17 00:27:29 +01:00
toasterbabe
76700241f6 Leaky Mario mode bug fixed. 2016-10-16 22:59:25 +01:00
toasterbabe
5ff507213b * Some shield constants renamed.
* Some shield sounds swapped (can be reverted later).
* Partial implementation of S3K shield abilities.
* The ability to elemental-groundpound onto gold monitors without going straight through them.
* Force shield ability removed because nobody could agree on it, we'll keep it blank until another idea can get through the disagreement juggernaut.
2016-10-16 22:28:50 +01:00
toasterbabe
2acfc72d86 Made P_SwitchShield take into account the force shield, then made A_ForceShield take the number of bonus hitpoints as its var1. (Also, drowning timer is properly reset by ALL protectwater shields, not just elemental.) 2016-10-16 12:45:31 +01:00
toasterbabe
ace44df8b4 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-10-16 01:32:05 +01:00
toasterbabe
aa8a454ea9 Turning some shield attributes into flags means that environmental protection and ring-pulling can be more elegantly handled. As a consequence, the S3 shields now have all their passives, and are just waiting on me to give them actives (two of which don't have the necessary sprites for...) 2016-10-16 01:23:00 +01:00
toasterbabe
3aa9d2a1b1 Sonic 3 shields implemented at a basic visual/functional level - no abilities yet. 2016-10-15 23:39:54 +01:00
Monster Iestyn
8931a6f0fb Merge branch 'public_next' 2016-10-15 22:31:56 +01:00
toasterbabe
6e47a07a04 Fixed monitors not making sounds if you had that monitor already and it wasn't mariomode. 2016-10-15 17:58:08 +01:00
toasterbabe
05aefc3ede Removed bit of code that'd never run. 2016-10-14 18:11:31 +01:00
toasterbabe
2d85b146ea Messed up the force shield stuff when implementing SH_MUSHROOM. 2016-10-14 14:44:49 +01:00
toasterbabe
91f9770caf Fixed up the coin-looping. 2016-10-14 11:23:13 +01:00
toasterbabe
2903180dee Treat the loss of the mushroom as a weapon-ring-spilling event in Mario-themed ringslinger, based on comments MI made on IRC about how different mariomode ringslinger would be. 2016-10-14 11:09:46 +01:00
toasterbabe
5e92ca1a4a Okay, made the Mushroom a seperate shield instead of a hacked pity shield. This is a lot nicer in general. 2016-10-14 10:43:46 +01:00
toasterbabe
8f1493e135 Start big. (He's been on the same powerpoint slide for 30 minutes now.) 2016-10-13 15:49:35 +01:00
toasterbabe
a119db3a85 Coins are no defense now! (This lecture is boring.) 2016-10-13 15:36:37 +01:00
toasterbabe
80300ac476 Fireflower is now on same level as all other shields, as opposed to being an additional stack layer. (MID LECTURE COMMIT STRATS YO) 2016-10-13 15:14:13 +01:00
toasterbabe
4997564d30 I like this timing more. 2016-10-12 23:55:16 +01:00
toasterbabe
a36912baef In Mario mode...
* shields give you 1000 points
* redundant shields don't make you puase
* checkpoints give you 2000 points
* falling down a deathpit is just falling, not bouncing
2016-10-12 23:47:18 +01:00
toasterbabe
dff9209bd2 A fix for the thing where you can get stuck inside a Mario block that has a monitor in it. 2016-10-12 22:06:40 +01:00
toasterbabe
71b7db4e0d Refinements to flashing. 2016-10-12 22:06:12 +01:00
toasterbabe
d4f0afa0d1 A Heckloada Mario Stuff
https://gfycat.com/MasculineSatisfiedAfricanwilddog and https://gfycat.com/PastCompetentGypsymoth describe this all in varying states of completion
2016-10-12 17:55:07 +01:00
toasterbabe
a842d96a48 Forgot to commit this change when moving everything over to shortmarioshifts. 2016-10-11 23:38:34 +01:00
toasterbabe
64a1fa5421 Players are half height in Mario mode when they don't have any shields, the Mario mode pity shield is invisible, and Mario mode players immediately get a pity shield when they lose any other type of shield. So basically that's a Red Mushroom, right?
https://gfycat.com/ThoughtfulAcademicChrysalis
2016-10-11 23:35:48 +01:00
Monster Iestyn
ff0b1d1dfa Split polyobj plane drawnode-creating code from ds->maskedtexturecol code, and add plane bounds checking 2016-10-11 22:35:46 +01:00
toasterbabe
d25e908b80 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions
# Conflicts:
#	src/p_map.c
2016-10-11 16:25:24 +01:00
Monster Iestyn
b66925e467 R_FindPlane now has a polyobj argument, R_DrawPlanes now skips polyobj planes, like it does with FOF planes 2016-10-09 21:48:25 +01:00
Monster Iestyn
1c23a84aa5 set floorcenterz/ceilingcenterz for all of R_Subsector to use, not just FOF planes 2016-10-09 20:55:04 +01:00
Monster Iestyn
405237d364 Merge branch 'SLADE_textures' into 'next'
Treating " as whitespace in TEXTURES (and animdefs too i guess)

SLADE adds this character in its TEXTURES editor and makes SRB2 cry unless the lump is manually edited; this just treats it as whitespace so we don't have to think too hard about it.

Also, two I_Errors now refer to the correct lump name.

See merge request !122
2016-10-09 11:23:01 -04:00
Monster Iestyn
c421edebf6 Merge branch 'master' into crumble-FOF 2016-10-08 17:13:08 +01:00
Monster Iestyn
b51d69e1ec Merge branch 'master' into lua-additions 2016-10-08 17:12:45 +01:00
Monster Iestyn
719220da4a Merge branch 'master' into damage-control 2016-10-08 17:12:13 +01:00
Monster Iestyn
f3efebe889 Merge branch 'vertical-sky-distort2' into 'master'
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
2016-10-07 17:30:15 -04:00
Monster Iestyn
f43d615607 Merge branch 'fof-slope-skew' into 'master'
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
2016-10-07 17:29:21 -04:00
Monster Iestyn
303648bf3b Merge branch 'horizontal_fix' into 'master'
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
2016-10-07 17:28:54 -04:00
Monster Iestyn
c5f51ded32 Merge branch 'horizon_lines' into 'master'
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
2016-10-07 17:28:25 -04:00
Monster Iestyn
9160c8aeb4 Merge branch 'animate_global' into 'master'
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

![](https://dl.dropboxusercontent.com/u/3518218/22/srb22-0008.gif)

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
2016-10-07 17:27:53 -04:00
Nevur
c558900c61 Deleted the Add_WallScroller function entirely from code.
Removed commented out instance using the function.
2016-10-07 18:56:10 +02:00
Inuyasha
ff4b39bab4 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into nix-srb1
# Conflicts:
#	src/info.c
2016-10-05 18:47:32 -07:00
Inuyasha
482f60e5bc warning: suggest parentheses around arithmetic in operand of '|' 2016-10-03 00:51:18 -07:00
Inuyasha
0fdfb1a472 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into animate_global
# Conflicts:
#	src/p_pspr.h
2016-10-03 00:27:49 -07:00
toasterbabe
5614ff5691 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_sprites
# Conflicts:
#	src/p_enemy.c
#	src/p_mobj.c
2016-10-02 19:38:53 +01:00
toasterbabe
664cfa2a9d Disabled MF2_LINKDRAW's ability to work in chains because it required modifying flags2 to prevent infinite loops, and that isn't network safe at all. 2016-10-02 18:17:23 +01:00
toasterbabe
490cf0183a Fixed some mistaken assumptions I made about the devmode overlay, and replaced "Flags" with "PF" to 1) make it clearer what type of flags they are and 2) use less horiontal space 2016-09-30 21:47:34 +01:00
toasterbabe
d318db3496 Minor offset adjustments. 2016-09-30 21:11:12 +01:00
Monster Iestyn
0fb89c620d Merge branch 'master' into damage-control 2016-09-30 21:05:44 +01:00
toasterbabe
eb310cc9c7 On MI's reccomendation, swapped FPS and %d/35's position so that only the description "FPS" moves. http://imgur.com/a/rQogE 2016-09-30 20:44:51 +01:00
Monster Iestyn
155882d2f1 Merge branch 'master' into crumble-FOF 2016-09-30 20:15:20 +01:00
Monster Iestyn
2f85704d87 Merge branch 'master' into lua-additions 2016-09-30 20:14:53 +01:00
toasterbabe
0d3ee9a109 Weapon rings are limited in how fast they can scroll, so I guess it's okay if objectplace is too - and makes it less awkward for people who do just use normal keys for weapon up/down for some reason. 2016-09-30 20:14:23 +01:00
toasterbabe
a2560c5217 Some tweaks to the devmode overlay.
* Plays nicely with showfps on - see http://imgur.com/a/7GzDM for the various cases.
* Add PF_THOKKED to the flags in devmode DBG_DETAILED (as "TH").
2016-09-30 19:40:30 +01:00
toasterbabe
cad54ee4a9 SERIOUS Objectplace improvement.
* 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.
2016-09-30 16:45:50 +01:00
toasterbabe
026eec4293 Merge branch 'master' into unca_scrooge 2016-09-30 16:28:07 +01:00
Monster Iestyn
20555c8887 Merge branch 'public_next' 2016-09-30 16:07:26 +01:00
toasterbabe
cdaab7ec9f * Upped speed of info.c's red and yellow horizontal springs
* Turn off friction for the one tic after touching a spring
2016-09-30 16:00:34 +01:00
toasterbabe
f6fc99b06d How did this disappear? 2016-09-30 14:38:56 +01:00
toasterbabe
a694ebc348 Fixed issue where holding spin when going into a non-horizontal spring would use your whirlwind shield ability immediately. 2016-09-30 14:33:15 +01:00
toasterbabe
9cbe7a342a Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into horizontal_fix 2016-09-30 14:26:40 +01:00
toasterbabe
aa4fca0339 Added description to P_SwitchShield. 2016-09-30 14:18:13 +01:00
toasterbabe
4f79157a50 Fixed that bug the wrong way, THIS is a much better solution for what I wanted to tweak. 2016-09-30 14:12:26 +01:00
toasterbabe
dc57a34213 Revert "Fixed another bug where you were able to use the whirlwind shield ability after using the force shield's dodge dash."
This reverts commit cbe703478c.
2016-09-30 14:06:53 +01:00
toasterbabe
cbe703478c Fixed another bug where you were able to use the whirlwind shield ability after using the force shield's dodge dash. 2016-09-30 13:56:19 +01:00
toasterbabe
f1fb276e5a Fixed a bug where using your shield ability just before your shield changed got you stuck in whatever state it left you.
To do that, P_SwitchShield was born! Don't use with Force.
2016-09-30 13:48:33 +01:00
toasterbabe
18ec4297ee Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-09-30 13:06:55 +01:00
Inuyasha
64e8c8581e add missing prototypes 2016-09-30 05:04:08 -07:00
toasterbabe
e05528e4a3 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-09-30 12:44:08 +01:00
toasterbabe
011af0daff Tweaks to some sections of the code that recognise what shields the player has. Specifically:
* introducing the new friend, SH_FORCEHP (which is used as a bitmask to get the extra hitpoints of a force-shield user)
* P_DamageMobj now considers the unimplemented shield constants as well as the implemented ones.
2016-09-30 12:15:22 +01:00
Inuyasha
afb22b968b FF_GLOBALANIM for synced animations
and a few other frame flag changes
2016-09-30 03:20:57 -07:00
Inuyasha
074cc9b965 Dehacked, as usual 2016-09-29 19:32:21 -07:00
Inuyasha
ae542e616a Fixed sprite conflict BS
Also added the eggman goldbox back
2016-09-29 19:24:05 -07:00
Inuyasha
f1b8bfcfe7 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into repeat-monitors
# Conflicts:
#	src/info.c
#	src/p_map.c
2016-09-29 18:08:50 -07:00
Inuyasha
92da141394 Yes, that stupid off-by-one due to spawning objects in the middle of thinkers being run still applies. 2016-09-29 17:27:33 -07:00
toasterbabe
041347bb6a eslopeless compiling fix 2016-09-30 01:26:23 +01:00
toasterbabe
d6a404e1ef * On Mystic's reccomendation - an alternate method which has the direction to shoot off based on the direction you're moving, not the direction you're holding.
* When not pressing any direction, you now go backwards by default - to emphasise that this is primarily for defensive, not offensive, purposes.
* The camera can now handle the player going backwards without them going completely off-screen.
* Fixed some overzealous checks.
2016-09-30 00:34:17 +01:00
toasterbabe
3eb3caacd5 Tweaked the elemental shield's piercing ability. Specifically:
* The spinfire ring is now capable of damaging enemies. (god, what a terrible hack this is)
* When ground pounding, you now bounce off the floor a little bit to make the ability less spammable.
2016-09-29 21:25:15 +01:00
toasterbabe
34d56561e4 Fixed MORE problems with landing on slopes. 2016-09-29 20:44:05 +01:00
toasterbabe
accd8bc5bd Minor fixes. Notably - no longer "deletes gravity" when hitting a slope mid-dash. 2016-09-29 20:36:08 +01:00
toasterbabe
35dda1cd72 Replaced the Force Shield's shitty drop dash I coded with a much more interesting and experimental ability.
* The Dodge Dash
* Allows you to dash - no control, no falling, no key response - for 2 + (number of extra shield hitpoints) tics.
* If you're holding movement keys down, you dash in the direction you're holding - otherwise, you dash directly forward.
* You're spinning (spindash spin, not jump spin) until your dash is over, then your momentum is cut down significantly and you end up in falling frames.
* It may not necessarily be super useful for Sonic, but it helps the other characters.
* http://gfycat.com/BogusFailingFritillarybutterfly
* http://gfycat.com/PoliticalIdealisticBallpython (outdated speed, shows any direction)
2016-09-29 20:02:58 +01:00
toasterbabe
bf01e9e5c3 Bustable material updated to:
* Take advantage of FF_MIDDLESTARTCHANCE.
* Be bound to the space of a slope.
2016-09-29 14:23:58 +01:00
toasterbabe
7a8c892233 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into gfz3_laser 2016-09-29 13:36:50 +01:00
toasterbabe
0cbbe3a3b3 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp 2016-09-29 13:36:20 +01:00
toasterbabe
8f181abbb2 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp
# Conflicts:
#	src/p_mobj.c
#	src/p_spec.c
2016-09-29 13:34:13 +01:00
Inuyasha
d7aae15a6f Merge branch 'animated-sky' into 'master'
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
2016-09-29 08:34:12 -04:00
toasterbabe
5a048df3d5 Messed up the indentation royally. 2016-09-29 13:07:24 +01:00
toasterbabe
c786dbda78 Improved the way GFZ3 Eggman slows down in the air when MF2_SKULLFLYing. 2016-09-29 13:06:07 +01:00
toasterbabe
7e8f7a59d1 This code never ran anyways, so. 2016-09-29 12:42:26 +01:00
toasterbabe
bf7ed0b9e9 I call this... the GFZ3 Unfuckening.
* GFZ3 Eggmobile's laser won't change its angle when you move left and right anymore.
    * Changed because its ability to move quickly was extremely punishing for new players (see ProJared's youtube video on the matter).
    * http://gfycat.com/PassionateUnknownAgama (the twitching on the third laser has been fixed since this was recorded)
* GFZ3 Eggmobile will, when too far away from the ground and moving upwards, slow itself down vertically.
    * This was punishing and annoying for both old and new players alike.
    * http://gfycat.com/ShabbyAncientEarthworm (old values - the typical settling height is slightly lower now)
2016-09-29 12:36:20 +01:00
toasterbabe
8445a1068e attempt 2016-09-28 16:31:14 +01:00
toasterbabe
99f60544db Fixed various issues arising from collision with exclusively horizontal springs. Of note:
* 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.
2016-09-28 16:26:29 +01:00
toasterbabe
9a2dd50e4d ...I should really check what I'm doing more thoroughly, sorry. 2016-09-27 19:03:57 +01:00
toasterbabe
a8be1e6b7d Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions
# Conflicts:
#	src/d_player.h
#	src/p_inter.c
#	src/p_mobj.c
#	src/p_user.c
2016-09-27 18:24:53 +01:00
toasterbabe
c70661186a Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_sprites
# Conflicts:
#	src/dehacked.c
#	src/p_inter.c
#	src/p_pspr.h
2016-09-27 18:11:20 +01:00
toasterbabe
55d8b419e2 MI's last few reccomendations fixed. 2016-09-27 17:51:17 +01:00
toasterbabe
8881a413f3 Fixed that really annoying bug where you disappear when spindashing on top of a FOF whilst wearing a multi-layer shield.
(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.)
2016-09-27 17:17:23 +01:00
toasterbabe
e801c581d3 Fixed off-by-one error with the relationship between FF_ANIMATE's var1/number of frames, FF_MIDDLESTARTCHANCE, and P_RandomKey. 2016-09-27 11:50:48 +01:00
toasterbabe
cf9ea19d11 Tweaked P_SetScale so it allows radii and heights set by Lua (and the skin's radius) to be kept, and tweaked the contents of the last commit to match. 2016-09-27 11:32:34 +01:00
Monster Iestyn
54b35c3975 Fix GME library path, consider 64-bit systems for png/zlib/SDL2 paths/libraries 2016-09-26 21:58:25 +01:00
toasterbabe
5f4f6fdac8 Public remake of a merge request I shouldn't have put in Internal in the first place. 2016-09-26 18:35:13 +01:00
toasterbabe
28f5e7d1bc Did I not commit this fix? Woops. 2016-09-26 12:25:10 +01:00
Inuyasha
1d71dfa5a3 animate icons using FF_ANIMATE
(this also means they last one second again, and the powerup is given after 1/2 a second, things which were lost when the flip was added)
2016-09-25 20:55:08 -07:00
Monster Iestyn
27acd8c3ac Added SRB2_CONFIG_USE_INTERNAL_LIBRARIES option (defaults to off right now), some WIP work on making it ...actually do what it says on the tin.
Basically, it manually sets *_FOUND, *_INCLUDE_DIRS and *_LIBRARIES instead of using find_package. Frankly I have no idea how well what I've done works currently though, not even sure if I've set the _LIBRARIES variables correctly. Again, it's WIP work, this can probably be fixed eventually I suppose.
2016-09-25 20:33:07 +01:00
toasterbabe
be0e898bae * Skin-controlled radius is no longer set each tic, only on skin change and player spawn.
* 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.
2016-09-25 18:21:52 +01:00
toasterbabe
64a9a94604 GETSPEED -> GETFRACBITS completion. woops 2016-09-25 15:23:22 +01:00
toasterbabe
9f69850c05 Basically seriously un-fucked the rope hang and zoom tube code from my experimentations (i just wanted to compare speed and distance and got carried away...) 2016-09-25 15:07:00 +01:00
Inuyasha
1a4b894589 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into repeat-monitors
# Conflicts:
#	src/info.c
2016-09-24 23:05:01 -07:00
toasterbabe
50a44d96b1 Changes to bubbles for new DSZ + bubble sprites (needs new patch.dta). 2016-09-24 17:15:42 +01:00
toasterbabe
28523760c3 FF_VERTICALFLIP, since I've been messing around with sprite stuff.
* 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
2016-09-24 14:23:00 +01:00
toasterbabe
da1db42b14 Forgot some compilers would complain about this. 2016-09-24 13:39:04 +01:00
toasterbabe
f933210c03 Let's simplify a lot of stuff. PF_CANCARRY instead of a horrible assortment of checks. 2016-09-24 13:18:08 +01:00
toasterbabe
eb64e4ccd9 Tightened some restrictions on Tails carry because right now the looseness leads to edge case noise spam when trying to pick up a player off a rope hang, for example. 2016-09-24 12:38:37 +01:00
toasterbabe
41b4d9c565 Fixed carry bug that I introduced a while ago. 2016-09-24 12:06:00 +01:00
toasterbabe
1de32b3dac Fixed my mistake with static rope hangs.
Also, the same smoothness changes have been ported over to zoom tubes!
2016-09-24 00:37:18 +01:00
toasterbabe
e16648a72b Introducing player->powers[pw_carry]! Also, I made rope hangs a lot smoother.
* PF_ITEMHANG -> CR_GENERIC
* PF_CARRIED -> CR_PLAYER
* (mo->tracer == MT_TUBEWAYPOINT) -> CR_ZOOMTUBE
* PF_ROPEHANG -> CR_ROPEHANG
* PF_MACESPIN -> CR_MACESPIN
2016-09-23 23:48:48 +01:00
toasterbabe
8ad72232be Helpful explanatory comments to assauge MI's fears. 2016-09-22 21:15:12 +01:00
toasterbabe
394ed30f44 Fixed the problem with the reverseplatform_clipping branch that caused springs to fall through platforms, as tested by Wolfs in TD. 2016-09-22 21:08:36 +01:00
toasterbabe
0568712a5e Prevent overflow when attempting to calculate the space between floor and ceiling. (I didn't notice any bugs as a result of the previous behvaiour, but you never know.) 2016-09-22 12:01:13 +01:00
toasterbabe
fa16abf7ae Fixed the thing where if you thok into a solid object you spin really fast in the air without moving OR losing your momentum. 2016-09-22 11:15:08 +01:00
toasterbabe
b8345aaf27 Solid objects are now no longer selectively intangible on slopes.
HOWEVER, since these changes to PIT_CheckThing do raise questions about whether there may be unintended side effects here. As a result, I may remake this for internal only if necessary.
2016-09-22 00:13:34 +01:00
toasterbabe
54f463ce81 Forgot dehacked.c description! 2016-09-16 17:15:16 +01:00
toasterbabe
db6e7fd985 Introducing MF2_LINKDRAW! I put it in this branch because it (ab)uses some structural changes I made for papersprites.
* Sets the sortscale of the mobj to that of its tracer.
* Basically, Smiles' tails won't clip through shields thanks to this.
* http://gfycat.com/GraveGlassEwe
* Also has support for chains of MF2_LINKDRAW!
2016-09-16 17:09:33 +01:00
toasterbabe
dcb82c292a Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into s_skinprovements 2016-09-12 19:23:44 +01:00
ilag11111
3b503f1336 Use function va to avoid having to delcare a new variable. Thanks MonsterIestyn. 2016-09-11 14:59:24 -07:00
ilag11111
4abfe1e8f3 Fix MinGW/AppVeyor build. 2016-09-11 10:57:14 -07:00
ilag11111
2798bd5c16 Ensure demo files will save to srb2home, where SRB2 already looks for them. 2016-09-11 10:40:49 -07:00
ilag11111
c977d17416 Prevent truncation when resampling sounds with non-multiples of 11250. 2016-09-11 09:41:18 -07:00
toasterbabe
ba78dda276 Just noticed when poking around in dashmodecode that it didn't actually get stopped from running when you were playing in CTF! 2016-09-10 22:44:28 +01:00
toasterbabe
cd0c2347df Ditto with regards to glideandclimb. 2016-09-10 21:13:51 +01:00
toasterbabe
f844fb3460 More strenous checking of ability for these animations in preparation for something I wanna try... 2016-09-10 21:00:57 +01:00
Alam Ed Arias
c9aebc6f81 libz pkgconfig 2016-09-09 17:41:30 -04:00
Monster Iestyn
9f87841936 Fix bottom of FOF with a pusher special not accounting for slopes 2016-09-08 22:55:11 +01:00
toasterbabe
fb377ad44f Minor tweaks to animations and endsigns. 2016-09-08 17:48:54 +01:00
toasterbabe
941bf8eb03 Corrected multiple oversights with swimming players dropping their friends when they shouldn't. 2016-09-08 14:38:57 +01:00
toasterbabe
df7b375f05 Corrected an oversight for horizontal springs the introduction of PA_JUMP caused. 2016-09-08 13:57:43 +01:00
Monster Iestyn
31b9e762e1 Merge branch 'public_next'
# Conflicts:
#	src/p_mobj.c
2016-09-05 21:28:43 +01:00
Alam Ed Arias
b949f49c68 Merge branch 'master' into next 2016-09-04 20:51:45 -04:00
Wolfy
484bb9535c Merge branch 'more-slope-fixes' into 'next'
More slope fixes (aka sorry guys I made another quick SUGOI fix)

Another slopes fix branch!

This branch currently includes a fix for:
* Knuckles gliding into a slope while in 2D mode causes him to try to "climb" on air above them, if the original non-sloped height is higher. Unfortunately he still tries to grab onto places that he can't really climb on, but at least now it's on the slope itself and not in mid-air lol. This issue is encountered in SUGOI's Retro Hill Zone, if you want to check for yourselves.
* Bustable FOF-busting code for both players AND pushables not accounting for slopes
* (Unrelated to slopes): Fix FF_SHATTERBOTTOM FOFs acting like THZ goop when stood on; I added this fix as a bonus because I encountered it in a test map of mine for the bustables fix

(Other fixes may or may not appear here in the near future, I haven't decided yet. Don't wait on me to get in any further fixes before merging, that said)

See merge request !110
2016-09-04 19:34:29 -04:00
Wolfy
58df0e76c3 Merge branch 'nights_bugfixes_i_almost_put_in_internal' into 'next'
Last-minute NiGHTS exiting bugfix

One single-line fix concerning the end of NiGHTS maps. Extremely small, literally zero side effects here, the only reason I'm not committing directly to master (aside from ettiquette) is that I don't have the ability to do so.

* The NiGHTS drone had a single tic of visibility when you hit the goal, which is evident stepping frame by frame through http://gfycat.com/ComplicatedComposedAoudad (the contents of which may or may not make it into 2.2). This is no longer the case.

See merge request !100
2016-09-04 19:27:12 -04:00
Wolfy
bcf7ca421c Merge branch 'DD_netplay_off' into 'next'
DIsable NetPlay on DirectDraw builds

Also disable UPnP support on NONET builds

See merge request !102
2016-09-04 19:01:26 -04:00
wolfy852
2d94256490 Shut the compiler up 2016-09-03 16:05:45 -05:00
toasterbabe
5bb0b5684e More irrelevant negation reduction, sorry. 2016-09-03 15:46:38 -05:00
toasterbabe
6ff75d2aa1 Double negation becomes single negation, with handy comment! 2016-09-03 21:37:52 +01:00
Wolfy
cce2a5e048 Merge branch 'RA_hotfix' into 'next'
Record Attack hotfix

Limit damage from http://mb.srb2.org/showthread.php?t=41847, basically.

Also fixed the message popup background because why not

See merge request !107
2016-09-03 16:29:28 -04:00
toasterbabe
0333c9db94 P_MobjCheckWater now properly accounts for changing heights (skin non-spin height for players, mobj height otherwise) instead of mobj info height.
Also, the particles made via spindashing in shallow water are now located behind the player. This does move the running particles too, but that's okay.
2016-09-03 20:00:29 +01:00
toasterbabe
c11d8da3a3 No need to check for under/overflow outside of the spindash code, let's just start at the mindash and not add power if you're over instead. 2016-09-03 16:20:04 +01:00
toasterbabe
2cee8c1a8d SORRY, I SHOULDN'T HAVE PUSHED THE PREVIOUS THING
Revert "Revert "Revitem is saved by tying it to leveltime instead of dashtime, whilst dashtime is now dead.""

This reverts commit 58f815ddbc.
2016-09-03 16:05:58 +01:00
toasterbabe
58f815ddbc Revert "Revitem is saved by tying it to leveltime instead of dashtime, whilst dashtime is now dead."
This reverts commit 0852a20014.
2016-09-03 15:51:38 +01:00
Monster Iestyn
a860c068d8 BONUS UNRELATED FIX: Fix FF_SHATTERBOTTOM FOFs acting like THZ goop when stood on 2016-09-02 22:53:55 +01:00
Monster Iestyn
8f02c50c10 Fix players and pushables not accounting for slopes on bustable FOFs 2016-09-02 21:41:45 +01:00
toasterbabe
0852a20014 Revitem is saved by tying it to leveltime instead of dashtime, whilst dashtime is now dead. 2016-09-02 18:12:46 +01:00
toasterbabe
73843764de Some more spindash changes. NOTE that this temporarily breaks the charging aura; if we want to, we can either kill that entirely or re-enable it - but none of the main characters are using it, and Lua makes having a dedicated charging aura irrelevant if the main characters don't use it...
* Spindash sound only plays six times during the charge, equally spaced up until you finish charging.
* Spindash animation speed increase rebalanced.
2016-09-02 17:27:39 +01:00
Monster Iestyn
eae47c9808 Fix Knuckles in 2D mode attempting to latch onto air when gliding into a slope. Now he just attempts to latch onto the slope directly (which I'll fix another time, if I can figure out how)
(fix for SUGOI's Retro Hill Zone)
2016-09-01 21:21:20 +01:00
toasterbabe
c07f273af0 Fixed some oversights with the spindash dashspeed changes 2016-08-30 16:41:00 +01:00
toasterbabe
42d527a955 Did a few things with spindashing:
* Fixed bug where being pushed off a platform whilst charging a spindash would leave you in your charging frames instead of your rolling ones when you hit the ground (http://gfycat.com/MassiveThreadbareItalianbrownbear for how it works now, http://gfycat.com/MarvelousEnlightenedAuk is how it used to work)
* Fixed bug where spindashing on top of a bubble spawnpoint led to you being able to move around in spindash frames (no gif since obvious desired behaviour is obvious)
* Spindash animation speeds up the faster you'll shoot off.
* The spin charging mechanism is now scale-independent, and only multiplies by scale when shooting off - less FixedMul calls, and potentially deals with weird quirks of changing scale whilst spindashing that nobody's discovered because there's no place to find that in the main game!

Also:

* Climbing animation defaults to rolling instead of walking, because what.
2016-08-30 15:00:01 +01:00
toasterbabe
8d8be8a7b2 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into s_skinprovements 2016-08-30 13:30:56 +01:00
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
toasterbabe
3bad307e2d Sorry, Inu. 2016-08-28 20:46:56 +01:00
Monster Iestyn
21aa444943 Merge branch 'cutscene-switch-fix' into 'next'
Cutscene switch fix

Yet another fix for SUGOI, lol: apparently going from a final level's post-cutscene straight to a custom credits cutscene gets the latter stuck forever in the first scene (because the game accidentally stops the cutscene responder from realising the custom credits cutscene is running). This branch of course makes a fix for that.

See merge request !108
2016-08-28 13:40:44 -04:00
Monster Iestyn
454b705d32 Merge branch 'wall-collision-fix' into 'next'
Wall collision fixes

Fixes included in this branch:
* A fix for a specific crash encountered in a SUGOI map (sound familiar?) caused by bouncing off a wall adjacent to a slope
* A fix for solid midtextures not accounting for Effect 3/Peg Midtexture properly (https://mb.srb2.org/showthread.php?t=41462)
* A fix for solid midtextures not accounting for texture y offsets properly for non-Lower Unpegged/Peg Midtextured midtextures
* A fix for solid midtextures not accounting for "infinite" repeats (Repeat Midtexture + no repeat count set)
* ~~A fix for Effect 4 on Polyobject First Line making that particular linedef's midtexture solid in addition to making planes visible - this is not wanted if you want a polyobject with both visible planes and full intangibility.~~ Apparently they never did this anyway, don't mind me \o/

See merge request !104
2016-08-28 13:33:14 -04:00
toasterbabe
e8775419d1 Removed now-irrelevant braces. 2016-08-28 14:09:15 +01:00
toasterbabe
25ab977862 ...didn't realise P_InsideANonSolidFFloor checks for FF_EXISTS itself, so HM 2016-08-28 14:06:20 +01:00
toasterbabe
c0f5f22b6a Suggested improvement by MI on irc. 2016-08-28 13:51:32 +01:00
toasterbabe
50ce152c69 Cleaned up some performance issues in Skytop Zone (2.1.16: THE SUGOI UPDATE) arising from some inefficiencies with P_GetMobjGravity. FPS drops only occasionally to 34 now, which is a big improvement when I was frequently getting 27 in Salt's 15andahalf.exe. 2016-08-28 13:19:17 +01:00
Monster Iestyn
2a6a21a4a2 Solid midtextures now account for "infinite" repeats 2016-08-27 17:14:21 +01:00
Monster Iestyn
541c53c3e1 Merge branch 'public_next' 2016-08-27 15:49:32 +01:00
toasterbabe
a587231aa4 Crash fix ported from internal. 2016-08-26 22:00:53 +01:00
toasterbabe
d17843aee1 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_sprites 2016-08-26 20:48:48 +01: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
Monster Iestyn
ab3f677e66 F_EndCutScene now sets cutsceneover to true BEFORE running Y_EndGame and the like, not AFTER 2016-08-25 17:58:54 +01:00
toasterbabe
14ff3906e1 Woops, forgot to port collision as well. 2016-08-23 00:45:26 +01:00
toasterbabe
41b3b3c5bd GCC 4.6 and lower fix 2016-08-22 23:42:06 +01:00
toasterbabe
e8d65f0b54 GCC 4.6 and lower fix 2016-08-22 23:39:27 +01:00
toasterbabe
e42885a23c Forgot to do this. 2016-08-22 23:01:36 +01:00
toasterbabe
c5675c0725 Merge branch 'new_spriteframe_angle' of http://git.magicalgirl.moe/STJr/SRB2.git into public_flatsprite
# Conflicts:
#	src/r_things.c
2016-08-22 22:56:30 +01:00
toasterbabe
2a74ea07ee Chee wanted paper sprites' code, so here it is for the public to see.
Note: Won't compile. Need to merge in the NAMEcLcR stuff first, let me do that.
2016-08-22 22:54:30 +01:00
Monster Iestyn
ead52294ab THE LINES LIVE AGAIN (initial horizon lines work commit) 2016-08-21 21:17:47 +01:00
toasterbabe
dc3be7b8a1 Removing now-irrelevant whitespace and cleaning up the last of the hack. 2016-08-21 15:42:09 +01:00
toasterbabe
f34a28e80e Removed a hack that caused the groundpound spinfire to hurt you if you lost your shield. 2016-08-21 13:55:16 +01: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
toasterbabe
79297d0cd7 Woops. 2016-08-20 17:34:59 +01:00
toasterbabe
c08e9674be As requested by Nev3r and VAda, seperating MF_PAPER into FF_PAPERSPRITE and MF_PAPERCOLLISION. 2016-08-20 15:15:48 +01:00
toasterbabe
ef6c2510a2 Did a few things to make this better.
* Reorganised R_DrawVisSprite to do less needless variable calculation.
* Corrected some clipping oversights.
* Made a few comments clearer.
2016-08-20 12:18:00 +01:00
Inuyasha
44df9358dd If the game becomes modified during a record attack run, end it
RA menu can be opened if the game is modified, but Start can't be selected. (Obvious reason: so scripts to display info can be used easier)
Fixed the stupid background for messages in the Record Attack menu, it was bugging me
2016-08-19 22:18:43 -07:00
toasterbabe
7d5bda709a Sorting is fixed! Turns out rover isn't a FOF, it's another sprite. Thanks @RedEnchilada for noticing this oversight!!
http://gfycat.com/EsteemedPleasedDuck <-- so great
2016-08-20 03:02:40 +01:00
toasterbabe
8df146b713 An additional proper overflow check, and also a little something I forgot earlier. 2016-08-20 01:03:35 +01:00
toasterbabe
552a67200c A revert of the sorting because it produced better (but not perfect) results for paper and normal mobj interaction.
Also, I added more sortscale handling in the places where I forgot it.

I probably need some help with the maths here to get this to work nicely. http://gfycat.com/LimpAgedDowitcher
2016-08-19 15:06:10 +01:00
toasterbabe
fbff05bd17 Fixed the between-objects sorting problem previously mentioned in the merge request. Now they're sorted by whichever sprite has an end closest to the camera, instead of the middle point previously used.
http://i.imgur.com/UyOKX5u.png <-- this common glitch with crawlas given MF_PAPER (THEY'RE NOT GOOD AT TURNING NEAR EDGES) used to show the behind-crawlas in front of the front-crawlas.

Unfortunately, I've just discovered this issue (which happens with the old version of the sorting code too): http://i.imgur.com/QNjbATB.png but to be fair these crawlas have gotten stuck inside the edges of this platform, so I'm not sure I can do anything about this without cutting off Sonic's feet when he stands on the ground? shrug
2016-08-19 12:26:26 +01: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
toasterbabe
66a845a33a silly me 2016-08-18 22:24:36 +01:00
toasterbabe
ff362534b4 An experimental attempt at collision correction, put behind a #define because it's buggy as SHIT. 2016-08-18 22:20:42 +01:00
toasterbabe
430a2e07cc Added linedef collision and fixed the following clipping bug, shown in gfy form. http://gfycat.com/BiodegradableNaturalHadrosaurus 2016-08-18 20:55:24 +01:00
toasterbabe
7786ef43e8 Okay, did a bunch of stuff. Getting ready to create a merge request, but not quite there yet.
* MF_AMBUSH is now MF2_AMBUSH, because it's something you turn on in a map editor, not with a SOC definition.
* Where MF_AMBUSH was is now MF_PAPER.
* MF_PAPER accesses all the stuff I did previously in this branch...
* ...as well as turn on paper-thin collision detection between mobjs, which I've gotten working but isn't perfect but it's still good enough for non-solid objects!!
2016-08-18 20:09:35 +01:00
toasterbabe
430d7cfbd2 Noticed some sorting issues, so introduced the sortscale struct variable. (SORRY, NO FLAG YET) 2016-08-18 15:45:44 +01:00
toasterbabe
ce8ae48222 I think this is as optimised as it's gonna get. Now onto the flag! 2016-08-18 12:55:04 +01:00
toasterbabe
2d3ebc5e49 Fixed the last of the odd stretching by:
* recognising that the offsets weren't going to be accurate if you just SWAPPED yscale and yscale2 over 180 degrees
* taking scale into account consistently

also, some optimisations
2016-08-18 12:40:45 +01:00
toasterbabe
9231a4653c SORTED, THANKS MI
http://gfycat.com/SimpleShallowDeviltasmanian

now to put this behind some sort of flag and optimise it
2016-08-17 22:19:28 +01:00
toasterbabe
66a737a7f0 fuuuuuuuu 2016-08-17 21:24:53 +01:00
toasterbabe
6c559946f0 ok no i misunderstood what he was getting at 2016-08-17 21:14:01 +01:00
toasterbabe
7096659450 Thanks to MI for helping me notice a scaling issue by code alone 2016-08-17 21:11:05 +01:00
toasterbabe
2244e9162b Some overflow checks. They're not proper like the other overflow checks, but they remove all the situations I've been able to discover without making stuff unnecessarily disappear. 2016-08-17 19:09:59 +01:00
toasterbabe
63e58a02f8 Fixed the issue mentioned in last commit, but still not the one from before that. Hrm. 2016-08-17 00:15:23 +01:00
toasterbabe
84c39c24f9 Renamed leftoffset to offset, to refer to its multifaceted uses.
Also, discovered another undesirable bug, but don't understand exactly what's going on so won't describe it here.
2016-08-17 00:03:09 +01:00
toasterbabe
10a8682620 resolved issue where the sides had the opposite scales over ANGLE_180.
also, i've sussed out WHAT'S going wrong here - the topleft pixel of the sprite will always be rendered at the height on the screen it would be rendered otherwise, which is causing the waving. now to figure out what to change to get that to move appropriately...
2016-08-16 23:38:59 +01:00
toasterbabe
a2b26c3bf4 Forgot a border of screen consideration 2016-08-16 23:25:01 +01:00
toasterbabe
27cdef0075 WOOPS, did not mean to leave it in the rangecheck, now it works close to desired
some complicated mathemagic leads to something which... seems CLOSE, but not perfectly accurate, so i think i need to tweak it more

http://gfycat.com/JovialSpitefulAmericancrayfish for current behaviour
2016-08-16 23:17:45 +01:00
toasterbabe
67f8a1295e Couldn't justify my hack in the long run, so it's back to adding and removing MF_NOCLIPTHING instead of the player pointer.
I DID make some steps towards re-implementing PIT_CheckThing for solids only in order to replace the hack long-term and hopefully use less CPU, but is currently disabled via #if 0 since I'm not comfortable changing the function signature of P_CheckPosition right now.
2016-08-16 17:49:20 +01:00
Monster Iestyn
df9ad4a0e6 wall-scroll-by-linedef specials now use just linedef dx/dy to determine scrolling direction, rather than the complex system that was in place before
If there's any reason to bring the old system back we could make it togglable by one of the linedef flags I suppose. Not that many people would actually use it though, most likely
2016-08-16 17:15:39 +01:00
toasterbabe
76e53ee3b6 this is shitty and glitchy but it compiles
remove all the places where i've set vis->scalestep to anything other than 0 to see something that LOOKS okay, but doesn't fulfil exactly what i want (that being a sprite that looks exactly like a midtexture)
2016-08-15 20:54:05 +01:00
Monster Iestyn
1530183ddf Fix multiple solid midtexture-related issues:
* Effect 3 (Peg Midtexture) is now accounted for properly, flipping the collision box position to match the actual rendered position of the midtexture
* Fixed incorrect application of y-offsets for non-lower unpegged midtextures collision boxes; +ve always goes up, -ve always goes down!
* Effect 4 now doesn't make midtextures solid for polyobjects at all - this "conflicted" with First Line having both Effect 4 (visible planes) and Effect 3 (intangible) simultaneously, where we kind of expect the first line's wall to not be made solid. This may be less of a problem in future SRB2 versions, but for now solid midtextures for polyobjects are disabled.
2016-08-14 16:56:41 +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
Monster Iestyn
f1a9634260 P_LineOpening now takes a mobj_t argument, instead of relying on tmthing
. tmthing can be NULL if called from PTR_SlideTraverse, so we should use slidemo instead

This fixes a crash that occurs in yet ANOTHER SUGOI map, involving bouncy walls next to sloped floors/ceilings
2016-08-13 21:41:18 +01:00
Alam Ed Arias
bdb5db878a NONET should also disable UPNP support 2016-08-13 10:12:14 -04:00
toasterbabe
be973d6990 expanded comment for future generations 2016-08-13 15:07:40 +01:00
Alam Ed Arias
da23d93b00 Disable netplay for DirectDraw builds 2016-08-13 10:03:17 -04: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
toasterbabe
9e38f44f34 Rob requested a reversion of the NiGHTS camera changes on exiting the level, so here we go. 2016-08-12 21:24:17 +01:00
toasterbabe
de77dc4413 Fixed a bug where NiGHTS form didn't properly account for changing skins mid-flight (devmode, maybe mp if standing on ground - haven't checked there)
Also as a consequence, DEFAULTNIGHTSSKIN is #defined in r_things.h instead of p_user.c.
2016-08-12 19:18:50 +01:00
toasterbabe
104fc8ba98 Partially reverted on Inu's reccomendation. 2016-08-12 16:01:03 +01:00
toasterbabe
7795e146fa Two seperate single-line fixes, both concerning the end of NiGHTS maps.
* The NiGHTS drone had a single tic of visibility when you hit the goal, which is evident stepping frame by frame through http://gfycat.com/ComplicatedComposedAoudad (the contents of which may or may not make it into 2.2).
* When completing a NiGHTS stage with a non-zero link, the link could flash up in the final few tics before the fade to black. This just checks for player->exiting to make sure it shouldn't be shown.
2016-08-12 15:56:07 +01:00
toasterbabe
8b519631f8 * Keep the camera still when ending a NiGHTS map. http://gfycat.com/ComplicatedComposedAoudad
* Correcting an earlier oversight with the SPR2_ defaulting system for super forms.
2016-08-12 15:40:17 +01:00
toasterbabe
9c02c81095 Now that it's not 3am, here's some fixes to what I pushed last night.
* That hacky anti-NiGHTS-deaxisment code I commented out because I thought it was visual only? Reimplemented in a way that is both more and less hacky. It's identical in result to the original code, but takes a roundabout method to get there.
* Sprite references for SUPE, SUPZ and NDRL are removed because they are now unused.
* Helper's flashing conditional is restructured to do less flag swapping.
* The check for super setting FF_FULLBRIGHT is limited to MAXTRANSLATIONS now, and also correctly takes into account MAXSKINCOLORS == SKINCOLOR_SUPERSILVER1.
* NiGHTS collision bounds aren't hardcoded anymore.
* NiGHTS link will never display when leaving stage.
* Slightly tweaked rules for the supercolor setting when doing a NiGHTS transformation, but only meaningful for setting FF_FULLBRIGHT.
2016-08-12 14:42:22 +01:00
toasterbabe
0c3256fa14 NiGHTS is now spr2-ised. i'll upload the relevant files and etc to the ftp
* if you can turn SF_SUPER, flash your skin's supercolor, otherwise be your normal color
* if your skin doesn't have a SPR2_NGT0 (horizontal fly), use Sonic's (this will hopefully be replaced by 2.2 with sprites of NiGHTS themselves)
* MT_NIGHTSCHAR made irrelevant, everything follows actor->target instead of actor->target->tracer now
* emerald is now player->mo->tracer instead of player->mo->tracer->target
* nightopian helpers flash for the 35 tics before they disappear
* nights capsule makes boss explosions/noises now (i can change it back i just like it better)
* drill off into the sky instead of fly up in floating pose (but no noise yet)

ALSO:
* default maxdash is now 70
* forgot to add supercolor to lua, it is there now
* SPR2_SMSL renamed to SPR2_SSTN (stun)
* any player with a skincolor that's in the super range is set to FF_FULLBRIGHT at state-set time, so no need to keep super players non-fullbright just because they use spin stuff
2016-08-12 02:57:37 +01:00
Alam Ed Arias
074dde5f78 Merge branch 'public_next' into master 2016-08-11 12:59:04 -04:00
Alam Ed Arias
fb8de61a81 Merge branch 'master' into next 2016-08-11 12:48:52 -04:00
toasterbabe
3310b02b68 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into s_skinprovements 2016-08-11 17:46:08 +01: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
a6f4178023 Rob requested new NiGHTS link colours, his wish is my command. (This is only vaguely appropriate for this branch, but the boat sailed on a specific Reduced_Palette branch a while ago.) 2016-08-10 23:51:35 +01:00
toasterbabe
8b333f5933 Forgot a comment. 2016-08-10 22:47:42 +01:00
toasterbabe
8f5258fc22 Two changes to the supercolor stuff.
* Don't allow arbitrary numbers to be used for a skin's supercolor, only strings.
* Devmode is no fun allowed mode, so turn off the god hyper flash there.
2016-08-10 20:31:18 +01:00
toasterbabe
b3b6d5c4f9 woops, renamed superwhite to supersilver during writing and forgot to change this comment 2016-08-10 19:54:07 +01:00
toasterbabe
810e1ec041 SUPERCOLOR BONANZA COMMIT.
* Several new supercolours.
	- SKINCOLOR_SUPERSILVER1-5 (for fun) - "Silver"
	- SKINCOLOR_SUPERPERIDOT1-5 (nyeheheh) - "Peridot"
	- SKINCOLOR_SUPERCYAN1-5 (for fun) - "Cyan"
	- SKINCOLOR_SUPERPURPLE1-5 (for fun) - "Purple"
	- SKINCOLOR_SUPERRUST1-5 (mecha/metal sonic) - "Rust"
	- SKINCOLOR_SUPERTAN1-5 (shadow/silver the hedgehog) - "Tan"
* SKINCOLOR_SUPER1-5 renamed to SKINCOLOR_SUPERGOLD1-5, one index for darkest is changed - "Gold"
* SKINCOLOR_TSUPER1-5 renamed to SKINCOLOR_SUPERORANGE1-5, ported properly to the new palette - "Orange"
* SKINCOLOR_KSUPER1-5 renamed to SKINCOLOR_SUPERRED1-5, ported properly to the new palette - "Red"

* new S_SKIN attribute - supercolor - uses an entirely different function to get the names (R_GetSuperColorByName instead of R_GetColorByName)

* a fun little secret - typing "god on" in the console whilst super makes the player hyper (visual only, no sparkles - just rainbow flash) - can be removed if no fun is allowed
2016-08-10 19:48:20 +01:00
toasterbabe
7b5fbad6a7 Changes to match the new default value and to make player acceleration perfectly match what it was previously. 2016-08-10 00:31:16 +01:00
toasterbabe
4ccb3b88d0 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp
# Conflicts:
#	src/p_mobj.c
2016-08-10 00:10:18 +01:00
toasterbabe
aa93f8a25c Refactored the movefactor changes that made the player go Looney Tunes style on ice. 2016-08-10 00:05:46 +01:00
toasterbabe
bc7389327a Mario invincibility colours now span solely the saturated colours (no white to black, no peach, no brown) 2016-08-09 13:59:31 +01: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
Monster Iestyn
841ee6eca0 Reduced GETFLAG macro args to just one as requested, true/yes are also valid now like with level header flags params (everything else is considered 'off') 2016-08-08 22:34:47 +01:00
Monster Iestyn
f46ec64958 each SF_ flag can be set by their own parameters again, does not replace "flags" but is an alternative to it
e.g.: super = 1 for SF_SUPER, noskid = 1 for SF_NOSKID, machine = 1 for SF_MACHINE
2016-08-08 21:17:51 +01: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
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
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
toasterbabe
6a865abb93 Bugfix for spike sound playing when attempting to attack non-solid spikes with CA_DASHMODE/CA_TWINSPIN/CA2_MELEE. 2016-08-06 23:54:38 +01:00
toasterbabe
c678220857 New S_SKIN attribute - "camerascale", another float. Acts as a scale modifier to t_cam_dist and t_cam_height. 2016-08-06 23:18:37 +01:00
toasterbabe
029fd156a8 Some nice optimisations to the new character select menu - no need to iterate up to 3 times a tic at the expense of ((32*2 + 2)*UINT8 - 3*INT32) memory. 2016-08-06 22:41:25 +01:00
toasterbabe
5e35d629f2 A clearer understanding of freeslots and their relation to FF_FRAMEMASK, explained via comment. 2016-08-06 21:22:38 +01:00
toasterbabe
9d870ea31d Enabling patch.dta, and also upping the number of SPR2_ slots (not just freeslots) to be equivalent to FF_FRAMEMASK. 2016-08-06 13:53:16 +01:00
toasterbabe
c9227dfbed Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into s_skinprovements 2016-08-06 12:34:26 +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
ebb1fd1470 node.children now also takes "right" and "left" as fields, as alternatives to integers 0 and 1
in other words node.children[0] == node.children.right and node.children[1] == node.children.left
2016-08-04 19:20:34 +01:00
Monster Iestyn
6ac84687d3 Merge branch 'master' into lua-additions 2016-08-04 18:55:14 +01:00
Monster Iestyn
e3ab77ef21 node.bbox now works with the format node.bbox(child, bboxcoord)
child can be 0 or 1 (or "right" and "left", alternatively)
bbox coord can be 0,1,2 or 3 (or "top", "bottom", "left" and "right", alternatively)

Also added some support for bbox userdata taking "top" "bottom"  "left" "right" fields. Not that there's any use for non-node bbox userdata just yet...
2016-08-04 18:54:29 +01:00
Monster Iestyn
f465de8f8c Nev3r's vertical sky distortion 2016-08-01 21:07:01 +01:00
toasterbabe
1ac1f27e4c Preparation for the SPR2_ freeslot branch's merger. *crosses fingers it happens soon* 2016-08-01 17:17:25 +01:00
Monster Iestyn
fe5b8c58af Add basic support for animated sky textures 2016-07-31 20:51:39 +01: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
03ddc1f29a define SRTICT_ALIGN to - if the system is x86/x64 system 2016-07-23 23:26:08 -04:00
Alam Ed Arias
ddce305c17 under clang, defined does not means true 2016-07-23 23:14:24 -04:00
Alam Ed Arias
82fad646e7 wad and lumps are unsigned, not signed 2016-07-23 23:02:10 -04:00
toasterbabe
436dfbb24f Crashed in THZ1 when testing going down the long section at the end, EIP blames this line, wasn't really necessary in the first place... fair enough. 2016-07-23 21:37:32 +01:00
toasterbabe
d0bb7293bd Maximum Drop Dash speed of 75*FRACUNIT. 2016-07-23 21:01:40 +01:00
toasterbabe
ad03bb5278 Force Shield's air ability is now the Drop Dash (thanks, Sonic Mania, for making me like the momentum redirection idea by recontextualising it to collision with the ground only!)
* Press spin in midair to make the shield flash solid repeatedly and make a number of ding noises.
* When the player with a flashing, dinging shield hits the ground, they are sent off in spinning form at the maximum of 2*abs(momz) VS the 3D hypotenuse of momx, momy, and momz.
2016-07-23 18:25:51 +01:00
Alam Ed Arias
7b88db478c Merge branch 'public_next' into private 2016-07-21 19:22:30 -04:00
Alam Ed Arias
5c234a817a Merge branch 'master' into next 2016-07-21 18:49:33 -04:00
Alam Ed Arias
f6b8b51ac2 Merge branch 'software-fixes' into 'master'
Software crashes fix... fix

Fixes a typo introduced by merge request !75 that caused upper textures to set the wrong ceiling clipping value when not visible, allowing all sorts behind the walls to be visible. This is most noticable in GFZ2 when the inside of the tunnel section is visible

...probably a good idea to make sure this one doesn't introduce any MORE visual glitches by mistake (again, compare with 2.1.15 if possible)

See merge request !93
2016-07-21 17:45:45 -04:00
Alam Ed Arias
df0a90957f Merge branch 'tilted-transparent-flats-fix' into 'master'
Fix for flats with transparent pixels on slopes

This fixes how R_DrawTiltedSplat_8 unintentionally allows the cyan pixels to NOT be considered "transparent" if after being remapped, depending on sector brightness and/or linedef type 606 colormaps, the result of remapping is not palette index 247 (the cyan we typically turn transparent). That is, the original colors from the source flat graphic are not checked, but instead the __result__ of coloring the flat under the respective colormap is checked for "transparent" pixels. This is only a problem for the tilted splat drawing function, not the regular one for non-sloped planes with cyan-pixel-using flats.

I found out about this bug from the issues Ritz was having with sloped 255-alpha translucent FOFs using transparent flats and his custom COLORMAP lump (and later when he applied a linedef type 606 colormap to the FOF) for his custom map. Thankfully he has some workarounds, but this should fix the code-side issues that caused his problems in the first place.

I also fixed stuff with another splat drawing function that's not currently used atm (maybe it will be in the future, if splats themselves are ever enabled again? *shrugs*).

See merge request !92
2016-07-21 17:14:43 -04:00
Alam Ed Arias
b02c824da8 Merge branch 'skybox-render-fix' into 'master'
Skybox rendering offset fix for third person/alt view camera

Fixes the issue reported in this thread: https://mb.srb2.org/showthread.php?t=41729

I dunno if this will negatively affect any existing skyboxes in SRB2's own levels, that said. I tried out THZ2 and CEZ1 with this fix at least but I forgot to compare them with how they are in 2.1.15 so _*shrugs_*

See merge request !94
2016-07-21 16:58:06 -04:00
Alam Ed Arias
9301344003 Merge branch 'macosx-hacking' into 'master'
OS X Makefile build setup

This merge request:

* Cleans up the OS X bundle resource location code and fixes a SIGSEGV and memory leak
* Simplifies and fixes the OS X desktop alert code, closing more leaks
* Adds the MACOSX build flag to the Makefiles, to allow building a binary (but not Mac app yet) of SRB2.

This is intended to make it easier for developers to build on Mac OS X, without having to pull in all of XCode. You can keep using CMake if you prefer.

To test, use `make -C src MACOSX=1 NONX86=1 SDL=1 NOASM=1` for a release build.

Left to do:

* Add a content bundling script to be run after building, and a flag to trigger doing that.
  `MACOSX_BUNDLE` maybe?
* Somehow get access to a Mac running PowerPC and figure out how to build a multi-platform binary.
* Add the proper magic to compile using gcc if requested. (Right now, compilation is done via LLVM/Clang)

See merge request !72
2016-07-21 15:38:46 -04:00
Alam Ed Arias
a9c521031d Merge branch 'gasjets_and_slopes' into 'next'
Gas jets, fan objects, springs and slopes

Whoop whoop whoop minor bugs that only get noticed due to weird experiments whoop whoop whoop

* For gas jets only: the object's standingslope is ALWAYS null. No drifting down the slope for you.
* For gas jets and fan objects: Now checks whether the player's top is below the bottom of the launcher, instead of its bottom. zdist calculation not affected, since it's signed and okay with being negative by about the height of the player.
* For all 3: the player's standingslope is NULL'd so the player isn't launched off at a wacky angle if they're standing on a slope then walk into the thing.

See merge request !91
2016-07-21 15:11:49 -04:00
Alam Ed Arias
1a0fcbd8dc Revert "Merge branch 'RemoveINetC' into 'master'"
This reverts commit 8607f5247c, reversing
changes made to 11d76a6562.
2016-07-21 14:42:00 -04:00
Alam Ed Arias
8607f5247c Merge branch 'RemoveINetC' into 'master'
Remove i_net.c

The code in i_net.c doesn't actually seem to be used in SRB2. I was able to compile a build without it, and hosting and joining netgames worked just fine (well, as fine as they can with the current state of the netcode...).

The vast majority of code in the file seems to be contained in HAVE_SDLNET ifdefs, and I'm pretty sure SRB2 has never used SDLNET in a public build. The only bit not contained in that block is I_InitNetwork(), which just prints an error and returns false.

Do we really need to keep it around? If not, I say get rid of it. It seems like useless clutter that is just going to confuse people who are trying to understand the source code.

See merge request !73
2016-07-21 14:15:58 -04:00
Alam Ed Arias
c5fe08dcd2 Merge branch 'aatree-refactor' into 'next'
Re-factoring AA tree code from m_misc.c/m_misc.h into its own files

What the title says. The AA tree-related code now lives in the files m_aatree.c and m_aatree.h. Part of why I did this was to solve this m_misc.h/w_wad.h cyclic dependency problem (involving MAX_WADPATH and AA trees themselves) mentioned in the now-removed comments, another reason was ...only OpenGL uses AA trees at all, why include the relevent structs/functions/otherwise anywhere except where is necessary (which is very few files as it turns out)?

Otherwise, it just looked better on its own rather than mixed with all the other stuff already in the m_misc files. Not really important or anything affecting gameplay at all I guess.

See merge request !82
2016-07-21 14:13:38 -04:00
Monster Iestyn
ea65e9e54f Add "damagetype" argument to functions for Lua hooks ShouldDamage, MobjDamage, MobjDeath and HurtMsg 2016-07-20 22:02:02 +01:00
Monster Iestyn
35d89a4fbf add DMG_* constants to dehacked.c lists 2016-07-20 21:21:14 +01:00
toasterbabe
d0cd1d951f Add prefoppositecolor to Lua. 2016-07-20 15:53:08 +01:00
toasterbabe
4435815c35 "prefoppositecolor" - exists solely for metal so he can have his sonic 4 peridot-background end sign when using skincolor_blue. not updating player.dta yet though. 2016-07-20 15:48:24 +01:00
Monster Iestyn
6ba568ac49 Fixed typo of mine that lead to the ceiling part of GFZ2's tunnel section being rendered wrongly 2016-07-20 15:11:36 +01:00
toasterbabe
f1311c515d Making FF_MIDDLESTARTCHANCE more useful for FF_ANIMATE animations. 2016-07-19 13:45:31 +01:00
toasterbabe
46e50a523f Let's be consistent with how other parts of the code handle this same issue of conditional operations surrounding non-conditional operations. 2016-07-19 01:19:03 +01:00
toasterbabe
cfcd25f2cd Fixing a bug which could be caused by tapping up/down on the character select at high speeds by ensuring that o is never negative instead of assuming the one circumstance it may have been negative under. 2016-07-19 01:03:40 +01:00
toasterbabe
333d8c882e Recreating NAMEcLcR sprite angle loading in internal, as Inu requested. 2016-07-19 00:04:00 +01:00
Monster Iestyn
77a40e9016 Slightly unrelated, but if R_DrawTranslucentSplat_8 is ever going to be used this is probably more efficient (also fixing early colormap application for the last part) 2016-07-17 23:01:07 +01:00
Monster Iestyn
9ad205f5ba R_DrawTiltedSplat_8 fix: apply colormapping AFTER checking the source pixel is cyan first 2016-07-17 22:33:37 +01:00
toasterbabe
ac2ff5e386 CA_MELEE. Mostly complete.
* When moving slowly, P_InstaThrust at S_SKIN's maxdash forward, and set momz to S_SKIN's mindash upwards. Plays a tok noise (not thok). Hurts enemies/bosses, busts spikes/monitors/all types of bustable blocks.
* When moving quickly... doesn't do anything yet, but WILL do a slide.

Also, P_DoSpinDash is now renamed to P_DoSpinAbility, and CA_TWINSPIN users can bust all bustable blocks on collision too.
2016-07-17 21:31:15 +01:00
toasterbabe
4168fc02cb Decided the forcing of S_PLAY_FALL when PF_THOKKED was present wasn't that great. 2016-07-17 18:57:03 +01:00
toasterbabe
4bd56b82be Better multiability support.
* CA_TWINSPIN - you can do it multiple times
* CA_DOUBLEJUMP - your jump height is reduced each time, like in Kirby games. The number of extra jumps once you've left the ground that are available is determined by the character's actionspd.
2016-07-17 17:41:44 +01:00
Monster Iestyn
4d0f0230de Fix chasecam/awayviewmobj viewz offset to be consistent with non-skybox frame rendering 2016-07-17 17:36:37 +01:00
toasterbabe
df8568642e Dashmode users can break spinbust blocks when dashing, twinspin users can break both spinbust and Knuckles-only blocks when twinspinning. 2016-07-17 16:34:07 +01:00
toasterbabe
cc9f874c5d Further improvements to the character select menu. 2016-07-17 16:21:46 +01:00
toasterbabe
9557cad235 Noticed some bad logic and typos, so correcting. 2016-07-17 15:56:31 +01:00
toasterbabe
9c48cbb68c Doing stuff for Rob, turns out the anim was designed to go twice as fast. Tally ho! 2016-07-17 01:22:50 +01:00
toasterbabe
898e17a441 SF_MACHINE characters create boss explosions on death.
Also, the gravity of drowning characters has been reduced to look more natural.
2016-07-16 23:26:52 +01:00
toasterbabe
8cb8990863 Merge branch 's_skinprovements' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into s_skinprovements 2016-07-16 22:44:01 +01:00
toasterbabe
f757fb3545 SF_MACHINE. Currently only changes drowning, but could do more.
* Electric sparks coming off entire body instead of bubbles coming out mouth
* Different sounds.
* Different icons.

These sprites are currently local only, but I'll be doing a lot of asset updating this evening since Rob asked me to so it won't be long until you can get them.
2016-07-16 22:43:49 +01:00
Alam Ed Arias
4e064dc335 whitespace: cleanup 2016-07-16 16:05:00 -04:00
Alam Ed Arias
e393b12cec Merge branch 'master' into s_skinprovements 2016-07-16 16:04:10 -04:00
Alam Ed Arias
4e322af6cb whitespace: cleanup 2016-07-16 16:03:32 -04:00
toasterbabe
0f79e9ea3b On Rob's request, the twinspin can break spikes. (woo) 2016-07-16 18:54:22 +01:00
toasterbabe
21ba204c9e Revert of the FF_MIDDLESTARTCHANCE changes for player states, although the flag still exists internally since there's no reason to remove it. 2016-07-16 18:34:42 +01:00
toasterbabe
765254f183 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into s_skinprovements 2016-07-16 17:24:19 +01:00
toasterbabe
d8065fa525 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into s_skinprovements
# Conflicts:
#	src/d_player.h
#	src/dehacked.c
#	src/info.c
#	src/p_user.c
2016-07-16 17:23:25 +01:00
Monster Iestyn
99ee3d5149 Merge branch 'side-springs' into 'master'
Sideways springs, horizontal hog-launchers, perpendicular plungers...

Call them what you like, they're in the code now. And have been for months!

Nev3r uses the hell out of these and I'm fed up of them being <!>'s all over the place, so please have 'em in master so we can update srb2.srb and make things better for all of us.

See merge request !30
2016-07-16 12:20:22 -04:00
toasterbabe
94490623b5 Cleanup of P_CheckUnderwaterAndSpaceTimer's conditional checks for future PF_ROBOT changes, where characters like Metal make electric zaps instead of bubbles. 2016-07-16 17:11:34 +01:00
Monster Iestyn
9b15247191 Merge branch 'dashmode' into 'master'
Dashmode

This branch Metal Sonic's abilities (CA_DASHMODE) to the game.

See merge request !26
2016-07-16 12:09:20 -04:00
toasterbabe
226785dcd6 Putting the swim animation checks in one place. 2016-07-16 14:45:22 +01:00
toasterbabe
cc35a5e1c1 Ported CA_HAMMER from new-character-actions in a way that takes advantage of all of the non-hardcodey things I've added in this branch.
Also, it's called CA_TWINSPIN because that's more inoccouous.
2016-07-16 13:55:12 +01:00
toasterbabe
df8be73787 ...fixed this error 2016-07-15 22:13:47 +01:00
toasterbabe
1e648e4709 Woops, forgot SOC parser. 2016-07-15 17:32:29 +01:00
toasterbabe
03fe312490 On MI's reccomendation, a skin flag to disable the effects of FF_MIDDLESTARTCHANCE for specific characters whose animations might not be symmetrical. 2016-07-15 17:30:52 +01:00
toasterbabe
01dc98f8f0 New frame flags for more complicated animations.
* FF_MIDDLESTARTCHANCE - has a 50% chance of starting the spr2 or FF_ANIMATE animation halfway in
* FF_SPR2ENDSTATE - if var1 == S_NULL, don't loop, just stop incrementing the frames. Otherwise, go to the state represented by var1.

The former is just something I did for fun, the latter is something that'll come in handy when porting in new-character-moves.
2016-07-15 16:48:30 +01:00
toasterbabe
9b68da63de Minor cockup with availability handling not being updated when I changed how it worked. 2016-07-14 17:10:17 +01:00
toasterbabe
b8fe20a086 Changing irrelevant comment. 2016-07-14 16:27:48 +01:00
toasterbabe
4c6ed6da76 The availability unlockable number for a skin is now available, read only, to Lua. 2016-07-14 15:51:03 +01:00
toasterbabe
417e9187d9 Realised the potential for out-of-bounds memory accessing, so put some limits in place to prevent that from happening.
(skin->availability is a UINT8, so it'll never be negative)
2016-07-14 14:45:15 +01:00
toasterbabe
caed5718c1 Characters can now be unlocked just like any existing unlockable.
Setup:
* S_SKIN needs an "availability" line. Set to 0 to have always available, otherwise is assumed to be UINT8 unlockable number. If it's a valid unlockable, its name will be copied over with the character's realname.
* Define an unlockable via SOC or hardcode. If you don't want it visible on the Secrets menu, just set its type to None. Everything else is as normal - you can set the conditionset to whatever, objective, height, nochecklist, nocecho...
2016-07-14 14:39:22 +01:00
toasterbabe
c5f6ae8aaa Fixed forceskin to not always allow due to bad logic. 2016-07-14 13:24:57 +01:00
toasterbabe
674ec3e515 Correction of the new default revitem setup. 2016-07-14 12:31:20 +01:00
toasterbabe
6e0c9f7e18 The "forcecharacter" level header now allows for hidden characters.
Also, new default for revitem to match player.dta, and an updated Force Skin netgame option name to reflect the fact it's string based now.
2016-07-13 22:28:23 +01:00
toasterbabe
76910a8e11 Sorry, one last change. I know I should be more certain when committing. 2016-07-13 20:24:39 +01:00
toasterbabe
f1b1e1aa9b I'm stupid. 2016-07-13 20:19:52 +01:00
toasterbabe
2ee22fc40a Dedicated servers have all skins unlocked for the purpose of forceskin.
Meanwhile, a sneaky sneaky for hiding hidden characters further.
2016-07-13 20:14:07 +01:00
toasterbabe
a108fcce5b Simplification of the hide check after discussion with Rob. 2016-07-13 19:10:31 +01:00
toasterbabe
824458a5ff Swimming animation! Since I know we want it for Smiles eventually.
Also, I guess CA_SWIM isn't forced into running on water anymore.
2016-07-13 18:18:18 +01:00
toasterbabe
c2aba46298 New S_SKIN attributes.
* radius - sets the player's radius for that skin.
* height - sets the player's normal height for that skin.
* spinheight - sets the player's spinheight for that skin.
* shieldscale - see http://i.imgur.com/BQ5DhKC.png for justification
2016-07-13 15:15:45 +01:00
toasterbabe
8087cde5db Correcting a few cockups. 2016-07-13 13:26:21 +01:00
toasterbabe
b2bfe3737a Rudimentary SOC shuffling if you add a character with the same name as a previous character to prevent character select from breaking. 2016-07-13 12:17:53 +01:00
toasterbabe
fcfe8c0132 More clearly defined handling for replacing character select images. Specifically takes into account whether the hidden character was added in this file or a seperate one.
Also, removed some commented out code regarding character selects, and removed a useless case for R_SkinAvailable().
2016-07-12 20:10:01 +01:00
toasterbabe
80a3d79d4d Some hacks added to forceskin to:
* support hidden characters
* take the skin->name, not the number
* display the skin->name in the menu

Also, minor tweaks to other things.
2016-07-12 14:40:20 +01:00
toasterbabe
b5108afe16 Substantial re-engineering for the foundations of hidden characters.
R_SkinUnlock defines the circumstances under which a skin is available. For simplicty's sake, I've currently bound it to an S_SKIN variable so I can toggle it easily, but it WILL be replaced with a hook into the savegame system at some point.
* Currently has three tiers of unlock - freebie (forceskin or modeattacking via a loaded replay), Ringslinger Only, and SP/Coop and Ringslinger.
* I don't know anything about netcode so I basically decided to make R_SkinUnlock relevant only under local circumstances, try as hard as possible to stop bad skin info from getting sent to the server, and then admit defeat once the server has the information. If this is a bad choice, please discipline me and show me how to fix it.
* Character Select now checks for whether the character is hidden or not on menu load and does/undoes it based on that info, but will never touch one disabled via SOC. I also used this opportunity to optimise, checking for/filling out charsel pictures instead of doing it later. (It now also includes special casing for a select screen with zero characters!)
* Mode Attack now hides hidden characters in its character select based on SP rules.

Things that still need to be done:
* ForceSkin_OnChange. Is there a graceful way to handle this?
* No obvious skin name conflicts. Add a salt to the names of hidden skins, and then remove it when they're unhidden?
* The gap between Knuckles' skin number and the first custom character anybody adds will be way too obvious. A seperate hidden skin numbering system? Start at 32 and count up from there? There's a few ways...
2016-07-12 03:15:58 +01:00
toasterbabe
ee92e043b9 Preparation for hidden characters, making sure R_SkinAvailable was being used where appropriate.
Also, bugfix for something my optimisation introduced.
2016-07-11 23:40:31 +01:00
toasterbabe
eee6a6ff45 Optimisations to the character select screen.
* If a character select character image is not set, don't iterate every tic - iterate on first image get and then save to the struct.
* A character select screen with only two characters now has special case handling.
* A memory leak in the making has been plugged. (specifically, picname not being Z_Free'd if the loop fails to do so)
* Logic/operation simplification.

Also, some typo corrections and clarity case movements of stuff in other files I've been looking at.
2016-07-11 23:01:43 +01:00
Alam Ed Arias
8f0994b38b Merge branch 'public_next' into master 2016-07-11 16:22:05 -04:00
Alam Ed Arias
765d68899f Merge branch 'master' into next 2016-07-11 16:10:40 -04:00
Alam Ed Arias
b347ed2ca6 Merge branch 'public_next' into master 2016-07-11 15:52:27 -04:00
Alam Ed Arias
59fd7bbe46 Merge branch 'public_next' (early part) into private 2016-07-11 15:50:06 -04:00
Alam Ed Arias
0c8fcb5e4d Merge branch 'master' into repeat-monitors 2016-07-11 15:29:06 -04:00
Alam Ed Arias
8693be0811 Merge branch 'master' into spr2-freeslots 2016-07-11 15:26:39 -04:00
toasterbabe
7c63a96bf1 Logic error. Now works as described previously. 2016-07-10 20:03:08 +01:00
toasterbabe
8431f64300 A thorough reimplementation of Nojumpspin for the SPR2_ age.
* SF_NOJUMPSPIN - Player's height is full whilst jumping, SPR2_JUMP defaults to SPR2_SPNG instead of SPR2_SPIN, and the player goes into fall frames if they start moving downwards or use their ability.
* PA_JUMP - for jumping (upwards in the case of SF_NOJUMPSPIN.
* SF_NOJUMPDAMAGE - Ala rosy.wad, don't damage enemies, etc when jumping into them.
* SF_STOMPDAMAGE - Just for fun. Ala in Mario, always damage enemies when you land on top of them (your gravity reference, not theirs).
* SF_MARIODAMAGE - SF_NOJUMPDAMAGE|SF_STOMPDAMAGE is reasonably accurate to the Mario games, and might as well be surfaced as such.

Also, a minor change:

* Instead of not spawning the revitem if your SPR2_ is SPR2_DASH, don't spawn it if it's set to 0. This requires the player.dta I uploaded a couple days ago to behave as it was previously.
* Don't get stuck in spindash frames if your maxdash is 0, and don't flash rolling frames if you're on goop.
2016-07-10 18:41:38 +01:00
Monster Iestyn
3fba690d0a Allow $$$.sav to archive and read ffloor_t userdata Lua extvars
Oh, and P_GetFFloorByID is now a thing, to assist with the above. Also added a suitable description for P_GetFFloorBySec
2016-07-10 17:58:54 +01:00
Monster Iestyn
c8a2eaf8a6 Make sure to invalidate sector.lines and all ffloors for the previous map's sectors as well
(yes, I changed my mind about doing it in public repo, probably too much hassle if we want 2.1.16 out soon)
2016-07-10 17:35:05 +01:00
toasterbabe
d8d8333719 S_SKIN now supports both DS* and sfx_* prefixes for sounds. 2016-07-10 13:22:49 +01:00
toasterbabe
7fe80a7f31 Minor optimisations and clearer code. 2016-07-10 12:35:24 +01:00
toasterbabe
8ab32ca93a Significant improvements to the Character select screen in preperation of implementing unlockable characters.
* Characters disabled through SOC are outright removed. No awkward gap in scrolling - no hint they were ever there in the first place.
* Vertical loop - the character select images are visually continuous. No matter where you are in the chain, you'll always see a hint of the character above or below your current selection in the chain.
* Smooth scrolling - Moto and Prime showed me a gfy from back during 2.1 development where it was super smooth. I didn't make it as slow as that one, but the smoothness was easy to add and the reason it was removed previously - gaps in the character select leading to varying speeds - is no longer relevant.
2016-07-10 02:05:59 +01:00
toasterbabe
26f34d1038 Compiling fixes. 2016-07-09 17:36:24 +01:00
toasterbabe
625cb39af7 Dashmode now destroys spikes and monitors on contact. Enemies? Probably not for now. 2016-07-09 16:53:41 +01:00
toasterbabe
cee37819cd Dashmode now has its own animation, SPR2_PEEL. Requires a new PLAYER.DTA. I made a lot of references to the peelout here because I'm not sure what else to call a Sonic character's faster-than-usual-running animation and SPR2_DASH was taken.
* SPR2_PEEL, SPR2_SPEE.
* S_PLAY_PEEL, S_PLAY_SUPER_PEEL.
* PA_PEEL.
* Dashmode actually starts charging from runspeed instead of the arbitrarily calculated (normalspeed - 5*FRACUNIT). This just made things easier, honestly, and it's 1 FU of difference compared to the current test case.
2016-07-09 14:52:49 +01:00
Monster Iestyn
61304dd833 Added NF_SUBSECTOR to dehacked.c lists 2016-07-08 22:58:09 +01:00
toasterbabe
0fefd86d1e More generic name for P_ElementalFireTrail upon MI's request 2016-07-08 22:56:17 +01:00
toasterbabe
940a58b5ca Shouldn't be true by default, WOOPS 2016-07-08 22:52:49 +01:00
toasterbabe
ec85357643 Didn't properly use the #defined numangles constant. 2016-07-08 22:05:13 +01:00
toasterbabe
f8dd9b64ab Elemental shield ability now coded. REQUIRES NEW PATCH.DTA FROM THE FTP.
- Press spin in midair to stomp directly downwards (losing horizontal momentum), creating a flickering fireball around you.
- No bouncing on enemies, item boxes, etc - just go straight through.
- Hurts other players on touch whilst you're stomping.
- Spawns a bunch of flames around you when you hit the ground.

Also:

- Electric shield's ability now uses different sounds, because I'm picky.
2016-07-08 21:55:17 +01:00
Monster Iestyn
f2b3640c6a Make sure seg/node arrays are invalidated in LUA_InvalidateLevel
(I'll fix sector.lines and ffloors and other things I missed in the public repo)
2016-07-08 20:43:02 +01:00
Monster Iestyn
4c723d05ac Added node_t and nodes[] to Lua
Still some issues with node.bbox, but the rest seems to work
2016-07-08 20:05:54 +01:00
toasterbabe
95ac0fa9a0 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-07-08 13:20:24 +01:00
toasterbabe
c5ca1a8f24 The dashmode struct variable now has a cap, per a Wolfs request. 2016-07-07 01:40:28 +01:00
toasterbabe
64ef2798a2 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into dashmode
# Conflicts:
#	src/d_clisrv.c
#	src/d_clisrv.h
2016-07-07 01:08:51 +01:00
toasterbabe
899123c58a Player doesn't go into super anims if they're not super, silly.
(This COULD be backported to .16, but I'm not gonna. Boss 5 is taking up all of my attention right now.)
2016-07-05 23:20:59 +01:00
toasterbabe
2d01e3f045 First hardcoded work for our good old friend Boss number 5.
(Look, I know I shouldn't be hardcoding things at this stage... but things broke terribly when I tried to convert A_BrakLobShot to Lua, so.)
2016-07-05 20:39:45 +01:00
Monster Iestyn
c775cdc5eb Added EV_StartCrumble to Lua 2016-07-01 20:27:09 +01:00
toasterbabe
8426ce8d9c Minor change to fans and gas jets that makes them work on slopes.
- Now checks whether the player's top is below the bottom of the fan/gas jet, instead of its bottom. zdist calculation not affected.
- mo->standingslope is NULL'd so the player isn't launched off at a wacky angle. (I also did this for springs, since Prime mentioned it was a problem for them too.)
2016-06-30 23:23:50 +01:00
Inuyasha
331ea9814f version numbers, etc 2016-06-29 20:01:22 -07:00
Monster Iestyn
88a805b331 Using colormap[n] on colormap userdata from v.getColormap (e.g. colormap[0] or colormap[255]) now gives you the palette color replacing that index 2016-06-24 19:17:35 +01:00
Inuyasha
26b3f2e0dc Merge branch 'toast_slopes' into 'next'
Some slope improvements/fixes (plus P_GetMobjGravity)

Dear Red, I did some things.

* Made the slope flag SL_NOPHYSICS actually have an effect like we wanted to, but didn't get around to implementing yet - activated by setting the slope's linedef flags to have ML_NOSONIC.
* Made downhill slope thrusts proportional to an object's gravity and friction.
* To make the above happen - seperated out the gravity value finding code in P_CheckGravity into a seperate function, P_GetMobjGravity. (p_mobj.c, p_local.h) I also made this function available to Lua.
* Turned those PANIC n console messages (which would inevitably be followed up with a crash, since we're accessing invalid memory immediately after) into a descriptive I_Error.
* Put the SRB2CB type-shimming behind an ESLOPE_TYPESHIM ifdef.
* Removed SPRINGCLEAN-ifdef'd code.
* Cleaned up some eosteric comments.
* NEW SINCE RED +1'd THIS: The teetering code now takes slopes into account pretty well. There are edge circumstances as outlined in commit 9d221f4f3f, but this is unilaterally better behaviour in every way and the teetering code was kind of a mess anyways.
* NEW SINCE RED AND ALAM +1'd THIS: P_ReverseQuantiseMomentumToSlope. Simple function that replaces the inverse angle stuff (which also wasn't using InvAngle, just ANGLE_MAX - angle - which is inaccurate!!)

Current testing files available at /toaster/slptst3.wad and /toaster/gravitytest.lua on the ftp.

I want to do more to the branch like implement SL_ANCHORVERTEX in the near future, but this is probably safe to merge in its current state.

See merge request !77
2016-06-22 19:03:58 -04:00
Monster Iestyn
3b2ab4da1d added linedef type 446, for making FOFs remotely fall down 2016-06-21 22:04:58 +01:00
toasterbabe
f93b31f0a7 FUCK C90 2016-06-20 02:08:07 +01:00
toasterbabe
20ffbbdc41 Climbing now supports one-sided linedefs.
The whole thing needs a refactor in general, but it's almost 2am here, I need my sleeb, and this fix would probably break something with 2.1 climbing if I made it any more/less (depending on viewpoint) complicated.
2016-06-20 01:50:47 +01:00
Alam Ed Arias
7126d57fd7 whitespace cleanup 2016-06-19 20:25:09 -04:00
toasterbabe
71f5d4ea85 ...completely misunderstood the reasons we weren't merging toast_slopes, mom holy fuck i'm stupid and bad
Enjoy your slopes without physics, people :D
2016-06-20 00:20:20 +01:00
Alam Ed Arias
60c91f12cb Merge branch 'next' into new_spriteframe_angle 2016-06-19 15:49:29 -04:00
Alam Ed Arias
24038d4d54 Merge branch 'next' into aatree-refactor 2016-06-19 15:48:22 -04:00
Alam Ed Arias
e87e747a29 clean up warning done in setup-fixes 2016-06-19 12:48:35 -04:00
toasterbabe
86721f1457 Compilation fix of the patch to disable this feature ( :c ). 2016-06-19 17:29:04 +01:00
toasterbabe
fa58993bda Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into toast_slopes
# Conflicts:
#	src/p_user.c
2016-06-19 16:59:49 +01:00
toasterbabe
1147428904 Revert "Changed teetering to match the discoveries made about it in the sectorlist_traversal branch in a way that matches my revamps here, since I DID change a lot."
This reverts commit 19b186e52e.
2016-06-19 16:38:11 +01:00
toasterbabe
f5f2c4ad48 Revert "Okay, NOW I fixed the compile error. Forgot to stage this."
This reverts commit 1723bb55f9.
2016-06-19 16:38:04 +01:00
Alam Ed Arias
8e98c78456 Merge branch 'next' (early part) into toast_slopes 2016-06-19 03:39:42 -04:00
toasterbabe
3fe87eff97 Disabling the functionality of SL_NOPHYSICS for 2.1 patches by never applying it 2016-06-18 23:55:43 +01:00
toasterbabe
9c277bfb22 Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into toast_slopes 2016-06-18 22:58:24 +01:00
Inuyasha
8fc61bb674 Merge branch 'sectorlist_traversal' into 'next'
Sectorlist traversal

MOM GET THE CAMERA

There's a LOT of code in the source that ended up mixing m_snext (the node for the next thing in the sector's thinglist) and m_tnext (the node for the next sector in the thing's sectorlist), so I renamed the following:

* m_snext ==> m_thinglist_next
* m_sprev ==> m_thinglist_prev
* m_tnext ==> m_sectorlist_next
* m_tprev ==> m_sectorlist_prev

Then, I changed all the instances where the code was trying to go m_thinglist_next on a mobj's touching_sectorlist (which would've just gone to the node for the next thing in the same sector, instead of the node for the next sector for the same thing). Notable samples:

* FF_SHATTER blocks now disappear the moment you go into their sector. You still can't give FF_SOLID to them because in that case they will still stop you if you never enter their sector at all (ie - clip on corners), but having them nonsolid no longer allows you to phase through entirely without busting them (which was the whole downside of making them intangible in the first place).
* You can now bump into multiple Mario blocks at a time, even if you're not exclusively in their sector.
* No more getting randomly stopped on the edges of bouncy FOFs.
* Landing on polyobjects might behave a little more consistently at the edge of their host sector.
* Teetering did a SHITTON of code that basically never got executed, and then had directly-blockmap-accessing code as a backup. The code was activatable by replacing the m_thinglist_next with m_sectorlist_next, but it behaved SUPER differently from what we're used to with teetering (if the player mobj's edge was JUST off the edge of a platform, you ended up in teetering frames - even if it looked like you could stand) so I ended up removing that section entirely.

Any objections?

See merge request !85
2016-06-18 16:52:21 -04:00
Monster Iestyn
9e31ab1393 Merge branch 'master' into next 2016-06-17 14:44:23 +01:00
Alam Ed Arias
56331d86c4 Merge remote-tracking branch 'origin/master' into build-modes 2016-06-17 08:55:20 -04:00
Inuyasha
ee180807d1 Merge branch 'setup-fixes' into 'next'
Fixes and changes related to the act of setting up a level (in other words, setup fixes)

Changes made in this branch so far:
* a REJECT lump of zero length (NOT to be confused with a REJECT lump of non-zero length with all-zeros, just to clarify) should no longer cause problems with netgames and otherwise. The game now checks if the lump exists, has the right name, and length is not zero - if it fails any of these, the REJECT lump is not loaded and P_CheckSight won't be allowed to use it. This means ZDBSP (no reject) should be safe(r) to use now!
* there's now a simple devmode-only message (requires "Setup" mode) if a sector is found to have no lines at all during setup. It's a far cry from the plot to I_Error the game I once had for that unsusal scenario, but such a level still works anyway so whatever.

See merge request !87
2016-06-17 08:05:09 -04:00
Inuyasha
191a4bc7d2 Merge branch 'reverseplatform_clipping' into 'next'
FF_REVERSEPLATFORM clipping

Ran into an issue whilst testing out one last feature (there's always one more...) for flat_alignment_revamp. This is a backported fix.

The bug was such that if you're falling through a platform with FF_REVERSEPLATFORM and not FF_PLATFORM, you'll be pushed downwards such that your head is against the bottom of the FOF. This just checks momz is greater than zero if it has FF_REVERSEPLATFORM to make sure it's okay to set ceilingz. (OR the alternative in reverse gravity.)

No test map because this was originally done for internal. Instead, test it on the other branch's test map.

See merge request !83
2016-06-17 08:01:03 -04:00
toasterbabe
41b35a923f Gave the new flag-based system for sprite angles actual flag names instead of relying on magic numbers.
Also, I did a wee smidgen of reorganisation.
2016-06-16 14:20:03 +01:00
toasterbabe
f08e996e76 MI corrections 2016-06-16 01:37:48 +01:00
toasterbabe
b1ab36561d Forgot to stage this, woops. Adds special casing to prevent the I_Error and makes the behaviour of the cL/cR more consistent in general such that it matches my description. 2016-06-16 01:20:35 +01:00
toasterbabe
52bf13367f New rotation functionality.
* NAMEcL refers to a frame which is seen for the entirety of an object's left side.
* NAMEcR refers to a name which is seen for the entirety of an object's right side.
* NAMEcLcR does both sides.
* Having just a NAMEcL requires you to fill in the opposite side either with NAMEcn where n is 1 and 5 to 8 OR fill in with a NAMEcR
* Switches down the centerline of the object instead of at the ANGLE_202h interval for normal sprites.
* Characters were selected for 1) ease of use 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
2016-06-16 00:59:54 +01:00
Monster Iestyn
5fd87351a8 Place precision of 4 on sprname string in the I_Error messages, so that you just get "PLAY" instead of "PLAYC2C8" or "PLAYA0" etc
This is so custom character creators won't get confused by having two different frames shown in the same message anymore, bleh
2016-06-13 22:52:20 +01:00
Monster Iestyn
a135def1bb Merge branch 'next' into aatree-refactor 2016-06-13 21:14:52 +01:00
Monster Iestyn
df55019d40 Merge branch 'master' into other-software-fixes 2016-06-13 21:13:51 +01:00
Monster Iestyn
9ae2a4036a Merge branch 'master' into next 2016-06-13 21:10:53 +01:00
Alam Ed Arias
a046d3807e strings return by M_GetText() can not be changed 2016-06-13 11:11:02 -04:00
Alam Ed Arias
2c8008e11e NULL checks 2016-06-13 10:07:10 -04:00
Monster Iestyn
9b037164bc Added debug messages for when REJECT lump is not loaded 2016-06-12 21:51:27 +01:00
Monster Iestyn
f94dd510ad change back to 8, add \0s 2016-06-12 21:16:41 +01:00
Alam Ed Arias
4d6a3e3398 FUNCMATH fun 2016-06-12 16:08:48 -04:00
Alam Ed Arias
1e507d3d1e added printf checks to hardware's I_Error 2016-06-12 16:08:48 -04:00
Alam Ed Arias
1e3631425f r_opengl: move DrawMD2i code to DrawMD2Ex 2016-06-12 16:08:48 -04:00
Alam Ed Arias
6271adcbe7 make sure !BLUA EXE works without warnings 2016-06-12 16:08:48 -04:00
Monster Iestyn
b4798538e2 Merge branch 'software-fixes' into 'master'
Software crashes fix

This branch SHOULD fix the many crashes people have reported lately that all point to the software renderer. Simply put, the software renderer allowed stuff to be drawn out of the screen even though that wasn't safe, and even the existing checks to prevent that didn't work.

If you saw me worrying about the sky HOMs I discovered in AGZ earlier in the commits for this branch, don't worry - it turns out that issue already existed in 2.1.15's srb2win.exe (and probably srb2dd.exe too) anyway, the changes in this branch didn't cause them. Hopefully nothing else broke then.

See merge request !75
2016-06-12 14:33:27 -04:00
toasterbabe
2c676eea43 P_ReverseQuantiseMomentumToSlope is now a function. (I was thinking about a macro, but couldn't get it down.)
Also, the teetering angle on slopes is now FRACUNIT/2 because there's literally no way to stand still on a slope that steep unless it doesn't have physics.
2016-06-12 19:27:34 +01:00
Monster Iestyn
305d32870f Effect 2 (No Midtexture Skew) now toggles off skewing for midtextures on single-sided lines, which was what was intended for them to begin with apparently.
This means the current skewing-by-default effect isn't changed, and OpenGL's equivalent code doesn't have to be touched since apparently it was already like that.
2016-06-12 18:47:27 +01:00
Alam Ed Arias
472dce1ae6 Do not why we are not checking REJECT\0\0, let fix this check 2016-06-11 21:42:02 -04:00
Monster Iestyn
1d0e74f9c0 "REJECT" is only 5 chars long, not 8. 2016-06-11 21:19:16 +01:00
Monster Iestyn
a7a7a7ee6d Added P_LoadReject function to properly check if REJECT lump is valid or not when loading it, so P_CheckSight can avoid accessing it if not.
This should mean that maps built with ZBSDP (no reject) should have less or no problems in netgames compared to the standard ZenNode maps now, hopefully. =)
2016-06-11 18:45:56 +01:00
Monster Iestyn
df92dc8d9e Print debugging message if sector->linecount is zero 2016-06-11 16:14:08 +01:00
toasterbabe
9e87f6d85d i did so much in this branch, so UPGRADE ME TO PROGRAMMER
note: once this is merged into internal, you should probably remove me from "programming assistance" so i'm not duplicated for no clear reason. unless you want me to slowly take over every section in the credits >:3c
2016-06-10 22:45:42 +01:00
Monster Iestyn
a04fcce3a9 Hack to fix midtextures for polyobjects being mucked up
"frontsector" in this part of the code isn't actually the polyobject's sector for back-side polyobject segs, it's the in-level sector the polyobject as a whole is being rendered in it turns out.
2016-06-09 22:07:43 +01:00
Monster Iestyn
20c2d84c78 Fix single side line midtexture skewing
Red apparently left in code for single-sided linedefs to NOT skew their midtextures ...but it doesn't work because it doesn't stop the skewing code from running instead, regardless of whether Effect 1 is on or not. If it's decided single-sided line midtextures shouldn't do this though, the non-skew code could just as well be thrown out lol (or something else I guess?)
2016-06-09 20:37:36 +01:00
toasterbabe
661da15146 Reinforcing encapsulation I originally broke down to allow for P_GetMobjGravity.
When I first wrote this, I thought the .h file that contained a function declaration needed to have the same name as the .c file the function was in. Now I know that's not the case, off to p_local.h with you.
2016-06-09 18:16:13 +01:00
toasterbabe
1723bb55f9 Okay, NOW I fixed the compile error. Forgot to stage this. 2016-06-09 15:24:23 +01:00
toasterbabe
c5ff41d6a6 Fixed compile error and placed the #undefs for xsign and ysign in more logical places. 2016-06-09 15:20:45 +01:00
toasterbabe
19b186e52e Changed teetering to match the discoveries made about it in the sectorlist_traversal branch in a way that matches my revamps here, since I DID change a lot. 2016-06-09 15:16:25 +01:00
toasterbabe
7af14c20ed Everywhere in the code that was doing things wrong has been changed.
Two interesting points of note:
* The touchspecial sector flag seems to actually do its job now.
* Detection of sectors with polyobjects in seems to have done this incorrectly, but this doesn't mess with anything about touching the polies themselves so it seems to really only handle edge cases where the polyobject was too close to the border of another sector (which would've likely made rendering glitches anyways).
* There was a whole swathe of teetering code that was basically never run properly because of this mistake. I did a simple fix at first, but you started teetering whenever you were slightly less than your radius away from a sector's edge, which was completely different and undesirable behaviour. Instead, I cut out the code that was never running, and just left the hacky method in instead since it was more accurate to what we want in general.
2016-06-09 14:56:24 +01:00
toasterbabe
17e0adcbac Renamed some struct variables so the problem this branch sets out to fix is more obvious at a glance.
* m_snext ==> m_thinglist_next
* m_sprev ==> m_thinglist_prev
* m_tnext ==> m_sectorlist_next
* m_tprev ==> m_sectorlist_prev
2016-06-09 14:16:02 +01:00
toasterbabe
0b920ee249 You know that problem where you bumped on the edges of Mario blocks and Bustable blocks and Bouncy FOFs sometimes? Wham. Bam. In the van.
Issue was caused by attempting to traverse the sector's thing-touching-list across all the things in the sector (which would inevitably have the same sector as the first node in mobj->touching_sectorlist) instead of traversing the thing's sector-touching-list (which has the same thing but different sector references).

I wonder how many times AJ copypasted this code with absolutely no idea why it wasn't working properly. I'll figure that out tomorrow, maybe set up some compiler macros so this mistake is never made again. For now, I must sleeb.
2016-06-09 00:02:50 +01:00
Alam Ed Arias
214cd404bd Merge branch 'public_next' into master 2016-06-08 15:29:25 -04:00
Alam Ed Arias
742353d0ab Merge branch 'master' into next 2016-06-08 15:06:17 -04:00
Monster Iestyn
29ea733ae5 Fix sprites in skyboxes not having clipping arrays actually set properly 2016-06-08 17:53:34 +01:00
Alam Ed Arias
366e870b0e SDL2: check Rel Mouse Mode directly 2016-06-07 17:16:11 -04:00
Alam Ed Arias
246e0c21be SDL2: do not use silly math in rel mode 2016-06-07 16:59:32 -04:00
Alam Ed Arias
70ce9421e4 SDL2: fixup ambiguous else in I_StartupMouse() 2016-06-07 16:21:15 -04:00
Alam Ed Arias
e4d57ad72c SDL2: try out relative mouse mode 2016-06-07 15:57:37 -04:00
toasterbabe
51c769247a Compiling fixes. 2016-06-07 19:44:43 +01:00
toasterbabe
aa113045d7 MI pointed out opportunity for more optimisation, and who could resist? 2016-06-07 18:18:47 +01:00
toasterbabe
9df72a966e Some simplifications after MI pointed out that the sector heights are the only thing accessed outside of the iteration. 2016-06-07 17:55:03 +01:00
toasterbabe
9d221f4f3f Teetering now supports slopes properly.
Behaves ALMOST as you'd expect. It gets the z position of the slope at the player coordinates when it comes to the sectorlist check (which is first), though, so there's a few oddities that are amplified with steep slopes:
* If the slope's sloping away from you at a steep angle, you might not be able to step down onto it, but you won't teeter (because it's at a step-down-able height if it extended to directly beneath you)
* If the slope's sloping towards you at a steep angle, you might end up in teetering frames when you're able to step down onto it (because it's NOT at a step-down-able height if it extended to directly beneath you)

HOWEVER, it would be pretty obnoxious to hold back code which is functionally superior in every way otherwise, and it doesn't really seem like there's a good way to get that checked tbph
2016-06-07 17:37:25 +01:00
toasterbabe
ba2fe378fb woops #2 2016-06-06 21:03:24 +01:00
toasterbabe
26744c2a6b woops #1 2016-06-06 21:02:47 +01:00
toasterbabe
7f3f46860b Forward-port of the fix to the backwards port. 2016-06-06 20:57:50 +01:00
toasterbabe
7c0eee6ff1 The fix now takes reverse gravity platform step-up into account properly. 2016-06-06 20:53:29 +01:00
toasterbabe
8e2212bb48 One more Mario block change. If FOF linedef has backside:
* If there's items in it set the FOF's floor and ceiling flats to that of the backside sector's ceiling
* Otherwise, set them to that of the backside sector's floor.

Otherwise, the flats do not change.

This allows for SMW style blocks which are much darker when empty then full on all sides.
2016-06-06 19:02:08 +01:00
toasterbabe
356dd03234 Mario block improvements. (I JUST CAN'T STOP)
* Only change texture when stationary or moving down, for additional fidelity to source material. This has zero overhead, and actually might REDUCE lag in some circumstances... my nitpickiness wins again.
* Apply ML_EFFECT1 to it to make it invisible and intangible (removing (FF_SOLID|FF_RENDERALL|FF_CUTLEVEL) from it) from every side except the bottom. Becomes visible and tangible when it's hit once. Might fuck over players in mp, but really our Mario blocks are so high in the air (and we'd need to update Pipe Towers to take advantage anyways) that they're super unlikely to get a kill this way
* Checks for the Brick Block have been switched over to the presence of FF_SHATTERBOTTOM instead of checking for the source linedef's flags every time.
2016-06-06 18:30:58 +01:00
toasterbabe
60dd8dab3c Backported clipping fix for FF_REVERSEPLATFORM collision. 2016-06-06 18:11:23 +01:00
toasterbabe
316cb9c24f cvmem -> threshold, on MI's reccomendation (I NEVER SLEEP) 2016-06-06 02:17:48 +01:00
toasterbabe
4b385eb7eb Forgot to take scale into account consistently. 2016-06-06 00:36:47 +01:00
toasterbabe
2ffc06c0bc Fan particle generators now suck less!
For the object...
* Tag via its angle field
* Number of objects to spawn per tic around it via its z field, if zero then just spawn at center
* Is flipped if given MTF_OBJECTFLIP.

Now there's a linedef type 15!
* Tag is tag of object(s!)
* Object type set via concatenation of frontside textures, MT_PARTICLE is default
* The length of the linedef is the radius the particle is spawned out (zeroed if z field is 0)
* Frontside x offset is speed upwards
* Frontside y offset is number of degrees to turn each tic (zeroed if z field is 0)
* Frontside floor and ceiling heights are the heights in which the particle is bound through some fun mathematics and/or BDSM

Of course, not every story has a happy ending.
* A_ParticleSpawn no longer accepts objects via its var1 because of how specialised it's gotten. Considering it can be set via abuse of actor->cvmem, I don't consider this an issue. Maybe you might disagree.
2016-06-06 00:00:31 +01:00
Monster Iestyn
69f556d40a Split AA trees code from m_misc.c/.h into m_aatree.c/.h
Also updated any relevant project files that I can think of to include the new files, as well as the makefile of course. Some of the other project files haven't been touched in years so I'll leave those alone ...unless someone objects
2016-06-05 21:29:40 +01:00
Alam Ed Arias
fc54ab5917 Merge branch 'master' into flat_alignment_revamp 2016-06-04 22:37:57 -04:00
Alam Ed Arias
b9a39f3043 Merge branch 'public_next' into master 2016-06-04 22:36:55 -04:00
toasterbabe
76a3c1687c Noticed an assymetry in the Zoom Tube code. I assume the forward-going zoom tube's cancelling of gliding and climbing solved some bug, so I'm mirroring it for the backwards version. 2016-06-05 02:20:26 +01:00
toasterbabe
94e4d3ddbf Good eye, MI. 2016-06-05 01:26:02 +01:00
toasterbabe
482c1ce665 Speed pads are now nicer.
Linedef type 4 now works as follows.
* Frontside x offset is dash speed.
* Effect 4 flag doesn't center the player. (same as before)
* Effect 5 flag sends them off in rolling frames. (as a result there is only one speed pad sector type now, not two)
* Frontside upper texture is sound to play on launch, defaults to sfx_spdpad when not given
2016-06-05 00:23:20 +01:00
toasterbabe
bdbfa178e6 Compilation fixes. (Silly .o files sticking around...) 2016-06-04 23:06:26 +01:00
toasterbabe
36da2e198d At least this one wasn't my fault ( :P ) 2016-06-04 22:08:51 +01:00
toasterbabe
7a3a293c96 Woops, forgot the 0. Now it takes advantage of the full range. 2016-06-04 21:23:15 +01:00
toasterbabe
b688f5763b Particle randomisation added to bustable blocks. 2016-06-04 21:19:52 +01:00
Monster Iestyn
2e9607938d Merge branch 'master' into next 2016-06-04 20:23:46 +01:00
toasterbabe
7c7a8413c9 Instead of hacking the existing Question Block thinker to ignore the object, let's just... not give the Brick Block a thinker in the first place. 2016-06-04 20:02:11 +01:00
toasterbabe
3591e92dfa Merge branch 'toast_slopes' of http://git.magicalgirl.moe/STJr/SRB2 into toast_slopes 2016-06-04 19:48:04 +01:00
toasterbabe
ba528a075e Last few changes as reccomended by Red. (<3 u, no hetero) 2016-06-04 19:47:40 +01:00
toasterbabe
58d0d2d5e9 Completely forgot P_FindSpecialLineFromTag was a thing. Now Linedef type 14 doesn't need to be in the same sector, but requires a tag... 2016-06-04 19:39:15 +01:00
toasterbabe
6f291d667e Bustable blocks revamped. I'm on a roll!
Linedef type 14 (Bustable block parameter)
* Applied to one of the linedefs of any FOF's control sector
* Concatenation of frontside textures is MT_ object type to spawn, defaults to MT_ROCKCRUMBLE1 if not present
* Sound played when being busted is object type's activesound
* Frontside x offset is spacing (in fracunits) of spawned particles, defaults to 32<<FRACBITS
* Frontside y offset is the fuse of spawned particles in tics, defaults to 3*TICRATE, if set to -1 assume infinite lifetime
* Effect 1/Slope Skew flag makes particles fly out

Linedef type 250 (Mario Block):
* No Climb flag turns it into a brick block (busts when hit from the bottom, player hits their head/fist/whatever, no more upwards momentum)
2016-06-04 18:59:24 +01:00
Monster Iestyn
4c422f6605 OpenGL: closed door/window detection code now accounts for slopes, just like in software 2016-06-04 18:31:21 +01:00
toasterbabe
52dd1c62c2 Duplicated constant removal. 2016-06-03 18:01:24 +01:00
toasterbabe
1e6b213d6c Okay, this is way beyond the scope of the branch... but low-friction surfaces (ice, oil, etc) now:
* Actively impede your acceleration
* Make your animation speeds faster whenever you're moving (to give off that Looney Tunes effect)

The former change is something that was present in the few low-friction circumstances in the classics, and makes low-friction surfaces more of an active challenge. The latter change is just something I did for fun to more clearly communicate that things are different with the physics here.

High friction surfaces DO NOT involve any of this, since it ended up basically cheesing their existing gameplay.
2016-06-03 17:26:50 +01:00
toasterbabe
5a0432816b Forgot to make this change; now the friction thinker is DEFINITELY using less memory. 2016-06-03 15:44:21 +01:00
Alam Ed Arias
083350cab2 whitespace cleanup 2016-06-02 21:25:04 -04:00
toasterbabe
27f825f41b Dedicated laser blocks flash less awfully now. 2016-06-03 02:23:27 +01:00
toasterbabe
55bb716c1e On FuriousFox's request: All waypoint sequences now use linedef frontside texture offset for speed and row offset for sequence, ending what is a very long reign of clusterfuck. 2016-06-03 01:30:07 +01:00
Alam Ed Arias
c23b40fa9c Merge branch 'public_next' into master 2016-06-02 18:39:08 -04:00
toasterbabe
fc0d6e5195 Movefactor removed from Friction thinker. Smaller memory footprint, less processing, and no more potential corrupting of what some objects use as a memory dumping ground. 2016-06-02 23:30:50 +01:00
toasterbabe
577f9e8801 Going beyond the scope of the branch:
*Friction linedef effect is now -
1) controlled by x offset instead of length - offset of -100 is maximum iciness, offset of +483(!!!) is the maximum sludginess BUT things are scaled such that +100 is about the maximum sludginess any reasonable human being would want in a level, 0 is ORIG_FRICTION)
2) not reliant on a sector special to function (can be applied solely by tag to in-map sectors or solid FOF control sectors)
2016-06-02 22:46:27 +01:00
Alam Ed Arias
31a59f8ae6 Merge branch 'next' into toast_slopes 2016-06-02 17:45:16 -04:00
Monster Iestyn
83c4dba4ce Fix crash reported by FuriousFox at http://mb.srb2.org/showthread.php?t=41536
Basically this makes sure numwadfiles is updated before loading the SOC/Lua scripts, so if a Lua script calls COM_BufInsertText with the contents "addfile scr_mysticrealm.wad" it can't overwrite the last written wadfile slot! Not that COM_BufInsertText really should be used like that to begin with
2016-06-02 20:16:25 +01:00
toasterbabe
c1caf21323 Reccomended by MI: Dividing by the original friction value just so slopes with normal friction don't behave differently between next and this branch. 2016-06-02 16:51:12 +01:00
toasterbabe
882622d2e7 ...I made two major mistakes with P_GetMobjGravity.
*Didn't take into account object scale
*Doubled force when on the ground (ignore what the comment of the line I moved says, it was relevant for slopes...)

This also led to a mistake with slopes, where I was double-multiplying by the gravity constant to get half (because of a quirk of numbers...)
2016-06-02 16:42:07 +01:00
toasterbabe
213a9632ca Let's multiply the thrust by the mobj's friction. You should have less chance of purchase on a slippery slope (tee hee) and more on a rough one, but the slopes were basically identical during testing before I implemented this change. 2016-06-02 16:09:33 +01:00
toasterbabe
80fceafcb9 Merge branch 'toast_slopes' of http://git.magicalgirl.moe/STJr/SRB2 into toast_slopes 2016-06-02 14:40:36 +01:00
toasterbabe
1493537dfc Moved the standingslope check in P_ZMovement to after the FOF and height adjustment as it is in P_PlayerZMovement, as reccomended.
Doesn't actually stop Crawla jittering, but might as well make it happen for consistency's sake.
2016-06-02 14:39:41 +01:00
wolfy852
919e3ed0e2 Make token available to Lua as a global variable
Reviewed by @RedEnchilada
2016-06-01 21:06:24 -05:00
Alam Ed Arias
507b336bd6 Merge branch 'next' into toast_slopes 2016-06-01 15:36:46 -04:00
Alam Ed Arias
208fb75a17 Merge branch 'master' into software-fixes 2016-06-01 15:35:55 -04:00
toasterbabe
44a6e8bb54 I_Error description syntax consistency (buzzword buzzword buzzword). 2016-06-01 19:52:12 +01:00
Monster Iestyn
43b6b2a53f Merge branch 'master' into next 2016-06-01 19:31:57 +01:00
Monster Iestyn
c863e311fe OpenGL: Fix upper texture Effect 1 only skewing 2016-06-01 19:22:54 +01:00
Monster Iestyn
bf85cc25bd OpenGL: Fix lower unpegged texture offset, fix lower unpegged + effect 1 so the texture actually skews 2016-06-01 18:51:38 +01:00
Alam Ed Arias
629dd8e08f Merge branch 'next' into toast_slopes 2016-06-01 11:47:22 -04:00
Alam Ed Arias
0444e8a14c Merge branch 'master' into next 2016-06-01 11:45:57 -04:00
toasterbabe
ae8b45965c No Size_t --> int
in an I_Error print!
[/rhyme]
2016-06-01 16:45:10 +01:00
Alam Ed Arias
87cf02e21b Merge branch 'master' into software-fixes 2016-06-01 11:17:57 -04:00
toasterbabe
76d108d760 Whoops, didn't realise pushing fixed and integer were different. My mistake. 2016-06-01 14:49:14 +01:00
toasterbabe
62c4338d60 Added P_GetMobjGravity to Lua. Check /toaster/gravitytest.lua for sample script. 2016-06-01 13:19:44 +01:00
Alam Ed Arias
f21c72b889 debug: always load exchndl.dll 2016-05-31 21:30:18 -04:00
Monster Iestyn
d24cc49443 Fix FOF height checks all over p_spec.c to account for slopes
This fixes certain sector specials and linedef executor specials etc not accounting for players/mobjs touching sloped FOFs
2016-05-31 21:31:29 +01:00
toasterbabe
7071fbe29e I made a mistake. Fuck git reverts, they are a nightmare, let's just do this the old fashioned way. 2016-05-31 18:13:17 +01:00
toasterbabe
d4d44777f4 Okay, now vertex slopes aren't placement-order-dependent any more. Hopefully this is the best way to handle things. 2016-05-31 17:43:27 +01:00
toasterbabe
d998ddfae4 When you haven't found all the vertices, it's just not safe to carry on. Hit them with a descriptive I_Error so they don't get confused as hell like Glaber did. http://mb.srb2.org/showthread.php?t=41455 for reference.
Also took the opportunity to nuke or otherwise neuter a bunch of Kalaron's bizzare ramblings (most are questions which have long-been answered by Red's efforts) at the same time.
2016-05-31 17:07:28 +01:00
Monster Iestyn
d5184847d6 Merge branch 'master' into software-fixes 2016-05-31 16:29:02 +01:00
Alam Ed Arias
7dd3a4ba7b Merge branch 'master' into next 2016-05-31 11:26:51 -04:00
toasterbabe
da2abbb39f Failed a build because C is an obnoxious language. 2016-05-31 16:24:51 +01:00
toasterbabe
6058eec1c9 Holy shit. I spent two hours staring at how garbage this code was and didn't even realise it was #ifdef'd out behind a define not even mentioned in doomdef.h. It's not actually used anywhere (superseded entirely by the much nicer, much more relevant P_NewVertexSlope()... out with you, ancient, foul demons who should've been SPRINGCLEANed long ago. 2016-05-31 16:14:21 +01:00
Monster Iestyn
8b2b49fb04 Just some final cleanup of the code I changed 2016-05-31 16:08:29 +01:00
toasterbabe
ad61050bb0 Whitespace removal. 2016-05-31 16:01:05 +01:00
toasterbabe
fa002e58ad Did a bunch of things to/for slopes.
*The No Physics flag now works (Red, you might want to doublecheck this to see whether I haven't missed any eosteric stuff out). Going downhill is a little bumpy, and I'm not sure whether that's good or not. Someone help me out here?
*The SRB2CB typeshims are now behind #ifdef ESLOPE_TYPESHIM instead of #if 1 for easier disabling.
*Slopes' downhill thrusts are now scaled with regards to object gravity. This is actually untested in gravities other than normal and reverse normal but it's one line which can be easily reverted in that circumstance. I also checked with MI to make sure this is how it's calculated elsewhere, so fingers crossed this doesn't cause any edge cases.
*As a consequence of the above point, there's now a function in p_mobj.c/h that returns an object's internal gravity - seperated out from the logic of P_CheckGravity, which really didn't need to be so monolithic. Multiply by global gravity to get the thrust. This should probably be available to Lua somehow, but I have absolutely no idea where to start with that. Wolfs, maybe?

Non-comprehensive test file available at /toaster/slptst3.wad on the ftp.
2016-05-31 15:01:19 +01:00
Monster Iestyn
eb90f4f50d welp no success in fixing the sky HOMs yet, committing progress anyway 2016-05-30 22:53:22 +01:00
toasterbabe
a8248fb6c9 Added new functionality, reorganised functionality from last commit, cursed a lot. Again, more info in merge request. 2016-05-30 22:44:23 +01:00
Monster Iestyn
a2aeece419 Significant rework of main seg-rendering code, to eliminate the possibility of drawing off-screen and crashing the game as result
NOTE: HOMs sometimes appear in the sky in maps like AGZ (map40), so this isn't completely fine yet. I'll fix that later
2016-05-30 21:53:29 +01:00
toasterbabe
7a1b309653 Making Linedef type 7 less awful. More details (and test file) in merge request. 2016-05-29 20:47:08 +01:00
Monster Iestyn
2c73e2a2cd Fix flung emeralds not disappearing in death pits
(assuming it wasn't an intentional behaviour thing of course)
2016-05-29 16:47:38 +01:00
Alam Ed Arias
209d76cb9d gcc-6: error: this ‘if’ clause does not guard... [-Werror=misleading-indentation] 2016-05-28 21:24:06 -04:00
Alam Ed Arias
9e196613a0 gcc-6: error: this ‘for’ clause does not guard... [-Werror=misleading-indentation] 2016-05-28 21:23:46 -04:00
Alam Ed Arias
4956be2bd4 gcc-6: error: left shift of negative value [-Werror=shift-negative-value] 2016-05-28 21:23:09 -04:00
Alam Ed Arias
35b254feaa D_MD5PasswordPass, fixup 2016-05-28 19:51:10 -04:00
Alam Ed Arias
3aea4a7601 replace strcpy with memmove in D_MD5PasswordPass() 2016-05-28 19:48:52 -04:00
Alam Ed Arias
d9aa430817 use memmove in D_MD5PasswordPass() and drop noreturn 2016-05-28 19:42:38 -04:00
Alam Ed Arias
35f36e1bba travis-ci: set v of nulK to 0 2016-05-28 19:28:37 -04:00
Alam Ed Arias
02e67a4a95 travis: add gcc 4.4, 4.6 and 4.7 2016-05-28 19:15:37 -04:00
Alam Ed Arias
ad6c2e634f travis: disable xcode6.3 2016-05-28 19:08:50 -04:00
Alam Ed Arias
f4a84c916e travis: Fixedup gcc 5 error and allow gcc 6 to fail 2016-05-28 18:41:08 -04:00
Alam Ed Arias
9731a8daa1 Merge branch 'master' into next 2016-05-27 14:39:23 -04:00
Alam Ed Arias
d1aab2e418 gcc: clear uninitialized warnings in am_map.c 2016-05-27 14:22:02 -04:00
Alam Ed Arias
390927cc32 Makefile: compile debug build with -Og on GCC 4.8 and higher 2016-05-27 14:14:04 -04:00
Monster Iestyn
09ac79d75f Merge branch 'master' into damage-control 2016-05-27 16:53:21 +01:00
Monster Iestyn
839db0122c Merge branch 'master' into lua-additions 2016-05-27 16:53:10 +01:00
Alam Ed Arias
e5a14d859e Merge branch 'public_next' into private 2016-05-27 11:37:09 -04:00
Alam Ed Arias
98b1254a65 Merge branch 'master' into next 2016-05-27 11:02:44 -04:00
Monster Iestyn
0081397920 OpenGL: Fix MD2s on player 2's screen breaking when reverse gravity is involved 2016-05-27 14:53:36 +01:00
Monster Iestyn
65d9c9e167 P_NetUnArchivePlayers doesn't like having "inline" either 2016-05-27 14:49:11 +01:00
Alam Ed Arias
869d582cc4 Makefile: ignore suggest=attribute for GCC 4.6 and up 2016-05-27 01:55:52 -04:00
Alam Ed Arias
20dcf138e2 hardware: let not break MSVC support 2016-05-27 01:28:21 -04:00
Alam Ed Arias
008be7c90d hardware: start the surf as clean 2016-05-27 01:19:16 -04:00
Alam Ed Arias
3297fe11ed P_NetArchivePlayers() is too bad for inline 2016-05-26 23:39:08 -04:00
Alam Ed Arias
0079b4df64 Make: compile Release build will all the speed 2016-05-26 20:39:15 -04:00
Monster Iestyn
8ceba95bfa Fix slope collision detection for the camera
See http://mb.srb2.org/showthread.php?t=41494
2016-05-25 21:10:46 +01:00
Monster Iestyn
8211e89aec Add seg_t to Lua, may be of use to Nev3r (and possibly others, I guess)
segs[i] is the segs table, "for seg in segs.iterate" iterates through segs, you know the drill by now I hope
2016-05-25 17:15:44 +01:00
Monster Iestyn
c239a71ffe Add P_PointOnLineSide to Lua 2016-05-25 16:34:09 +01:00
Monster Iestyn
9007904a72 Merge branch 'master' into damage-control
# Conflicts:
#	src/p_inter.c
#	src/p_mobj.c
2016-05-25 15:33:09 +01:00
Alam Ed Arias
b51a1148d1 Merge branch 'public_next' into master 2016-05-25 10:21:55 -04:00
Alam Ed Arias
8e32d978a1 Merge remote-tracking branch 'public/master' 2016-05-25 06:42:01 -04:00
Monster Iestyn
7c78b95a7d This is probably the "correct" way to set maskedtextureheight
Probably doesn't make any difference in-game at all though, lol
2016-05-24 22:11:48 +01:00
Monster Iestyn
ab6d4d7aec Remove unused planefunction_t function typedef
(the number of unused things hiding around in SRB2's source code is silly lol)
2016-05-24 14:41:55 +01:00
Monster Iestyn
17346e29c3 Remove unused drawfunc_t function typedef 2016-05-24 14:38:31 +01:00
Hank Brannock
f94d3a1fb0 The code in i_net.c doesn't actually seem to be used in SRB2. I was able to compile a build without it, and hosting and joining netgames worked just fine (well, as fine as they can with the current state of the netcode...).
Do we really need to keep it around? If not, I say get rid of it. It seems like useless clutter that is just going to confuse people who are trying to understand the source code.
2016-05-22 22:38:16 -04:00
Alam Ed Arias
b96b999c1e MSVC: Move x86/x64 settings into commons props 2016-05-22 21:55:55 -04:00
Alam Ed Arias
79f3d6e072 MSVC: Tidy up project files by hand 2016-05-22 11:54:32 -04:00
Alam Ed Arias
47ae39ea62 netplay: fix off by 1 2016-05-22 11:03:04 -04:00
Alam Ed Arias
f45feb77fc MSVC: kill level 3 warnings 2016-05-22 00:44:12 -04:00
Alam Ed Arias
57091261d9 MSVC: fixed up MSVC project 2016-05-21 23:53:04 -04:00
Alam Ed Arias
032313260a Merge branch 'public_next' into master 2016-05-20 17:58:57 -04:00
Alam Ed Arias
9550f9626b r_opengl.dll: UPX and static link libgcc 2016-05-20 17:36:46 -04:00
Alam Ed Arias
ff5587d1d5 Merge branch 'master' into next 2016-05-19 18:03:56 -04:00
Monster Iestyn
c846b0ab23 Aren't some of these things already added later in sdl/Makefiles.cfg?
* -lSDL2_mixer is already added to SDL_LDFLAGS by default, unless NOMIXER=1 is set
* -DSDLMAIN should also be added to OPTS by default for MINGW=1 builds, unless NOSDLMAIN=1 is set
2016-05-19 16:51:05 +01:00
Alam Ed Arias
e2a5783521 Merge branch 'master' into next 2016-05-19 01:39:45 -04:00
yoshibot
8fbc0d7f69 remove bogus homebrew gzip; objdump allowed to fail in that way 2016-05-18 23:52:06 -05:00
yoshibot
bb90c8366a Fixed bugs in OS X alert code and simplified; added more NULL checks in OS X resource code 2016-05-18 22:13:53 -05:00
Alam Ed Arias
6aa1aeb838 build: include own copy of SDL2main 2016-05-18 22:25:06 -04:00
Alam Ed Arias
ef488d2b03 MSVC: link to SDL2main, then SDL2 2016-05-18 21:41:27 -04:00
Alam Ed Arias
7193df7f75 MSVC: turn off SAFESEH for SDL release builds 2016-05-18 21:28:53 -04:00
Alam Ed Arias
ab9f2ea831 MSVC: fixup Debug build linked 2016-05-18 21:11:30 -04:00
yoshibot
df89563882 Add a way to build OS X binaries (not .app) through Makefiles 2016-05-18 19:14:53 -05:00
Alam Ed Arias
7058baed44 Merge branch 'master' into next 2016-05-18 20:07:27 -04:00
Alam Ed Arias
205d16e3af added unsaved project changed 2016-05-18 20:05:24 -04:00
Alam Ed Arias
a4b0f89caf MSVC: fixedup SDL2 build 2016-05-18 20:01:50 -04:00
Alam Ed Arias
bbf9f5adc8 Makefile: use built-in SDL2 and SDL2_mixer for Mingw32 and Mingw64 2016-05-18 16:54:55 -04:00
Monster Iestyn
b4cf7fbc97 Fix player 1 and player 2 affecting whether the other can see skyboxes or not 2016-05-18 18:20:56 +01:00
Monster Iestyn
1e50691e08 Remove extern for unused "oncontinuescreen" variable 2016-05-18 17:41:11 +01:00
Inuyasha
ab7af594d9 Merge branch 'nights-hotfix' into 'next'
NiGHTS hotfix

Fixes the following issues relating to playing as NiGHTS Super Sonic that apparently popped up between 2.1.14 and next (mostly due to the changes to SRB2's trig stuff it seems):
* Super Sonic drifts to the side at some angles around an axis, and is unable to go directly upwards or downwards as a result
* Drilling to the side when on the ground causes the drill sound to constantly restart
* CEZS's start not actually being lined up properly with the first axis means the player is not able to go backwards along the track (because the player is not actually aligned with the track properly, preventing you from touching the attached line transfer)
* trying to hug some walls such as the tall wall before the library section of CEZS allows Super Sonic to go through them

These fixes needs proper testing before this branch can be merged in, in case they accidentally break other things as a result or something.

See merge request !71
2016-05-18 07:09:05 -04:00
Alam Ed Arias
5aa48cf7ca fixed up old VS 2010 project to work with VS 2015, tested with FMOD/DirectX 2016-05-18 01:35:35 -04:00
yoshibot
928c6acf4b Simplify OS X bundle resource discovery, fix a sigsegv 2016-05-17 22:56:49 -05:00
Inuyasha
f07585191b copyright dates/statements updated and such
(no actual SLOC changes)
2016-05-17 17:42:11 -07:00
Monster Iestyn
e3dac00aa9 If player is at wrong distance from axis, correct x/y position in a similar fashion to how momentum is set for homing attacks. Don't use trig here for most cases since that just re-introduces the side drift issue and friends all over again.
This fixes the CEZS issue where the player start is not actually on the track, preventing the player from going backwards until they hit a wall.
2016-05-16 19:00:34 +01:00
Monster Iestyn
ea1cac8e24 Fix NiGHTS drill constantly starting if you're moving sideways on ground
Also disabled normal mobj friction from NiGHTS and tweaked bouncing code just in case?
2016-05-15 22:09:22 +01:00
Monster Iestyn
89ce257248 Fix all the NiGHTS issues in one fell swoop (assuming they are fixed, that is, lol)
Basically I kind of worked around any potential trig inaccuracies by not using the player position directly for setting momx/momy. This way, if player->angle_pos == player->old_angle_pos, momx/momy are zero
2016-05-14 23:57:56 +01:00
Monster Iestyn
f579a12d2c Fix up more Lua error messages to be more meaningful (and work properly, in some cases) 2016-05-14 23:52:40 +01:00
Monster Iestyn
947e8c56ec Removed redundant momx/momy assignment from NiGHTS movement code.
Specifically, the being-hit code, where P_NightsTransferPoints is called afterwards anyway
2016-05-14 22:52:12 +01:00
Alam Ed Arias
dff64b854a remove blank lines at EOF of new files 2016-05-13 00:12:51 -04:00
Inuyasha
a595f2369c fix infinite bounce rings 2016-05-12 13:52:41 -07:00
Monster Iestyn
00516e5e9f Update comment stating visplane_t size in bytes 2016-05-12 18:02:44 +01:00
Inuyasha
3235351b99 And now Lua yells at you for doing what I just fixed 2016-05-11 14:33:50 -07:00
Inuyasha
fbce35d27e cast P_Random(Key/Range) PRNG calls to INT64 to preserve old behavior
(it's still technically "undefined" behavior anyway)
2016-05-11 13:54:40 -07:00
Alam Ed Arias
a529dca69f SDL: in the SDL 2.0 interface code, we use a fake surface as our vidsurface, so we should be freeing it 2016-05-10 18:20:14 -04:00
Monster Iestyn
70a72baabc Revert texturepresent size increase, check for negative top/mid/bottom texture values so as to not go out of bounds the other way 2016-05-10 20:19:42 +01:00
Alam Ed Arias
d89890ff85 tables: slipts the loops tables into diff files 2016-05-10 10:54:59 -04:00
Alam Ed Arias
be0c062c5b Precache: fix off by one, making the precache code write into memory it should not be touching 2016-05-09 20:10:14 -04:00
Inuyasha
a9be5ba867 fixed memory issues Alam running valgrind found 2016-05-08 20:34:43 -07:00
Alam Ed Arias
398dbed4ed Merge branch 'public_next' into master 2016-05-07 11:35:05 -04:00
Inuyasha
987f65fde8 Merge branch 'demo-replay-fixes' into 'next'
Demo replay fixes

Changes made/bugs fixed in this branch:
* Replay camera is now controllable when climbing (https://mb.srb2.org/showthread.php?t=38668), and in waterslides
* localangle (read: the angle between you and the camera, I think) now doesn't change during demo replays in most situations, unless the player is in analog mode. Exceptions include zoomtubes and NiGHTS super
* Replay camera now doesn't act silly if the player is in analog mode (assuming you also recorded it in that mode to begin with, anyway)

See merge request !66
2016-05-07 06:17:39 -04:00
Nipples the Enchilada
fe20a35aee Disable camera rotate buttons if you aren't viewing yourself
They don't affect what you're viewing anyway and cause cam_rotate to get
messed up.
2016-05-07 04:51:54 -04:00
Inuyasha
1c81f192d8 it isn't settled until you add in the deprecation warning 2016-05-06 21:52:00 -07:00
wolfy852
5e50a51386 [2.1.15] Restore backwards compatibility for tan()
DO NOT MERGE THIS INTO THE INTERNAL REPO. This is a temporary 2.1.15 only fix. This commit allows an optional boolean for tan(), which when true will automatically shift angles by ANGLE_90.
2016-05-06 17:48:28 -05:00
Monster Iestyn
01debc27a2 Merge branch 'public_next' 2016-05-06 18:06:18 +01:00
Inuyasha
604ae7d072 move variable fetching from Lua out of min/max macros 2016-05-05 19:23:46 -07:00
toasterbabe
a0766fa1ec One line through selfish methods. Probably works in both Next and Internal. 2016-05-05 20:11:11 -05: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
be63e6b860 Merge branch 'public_next' into private 2016-04-30 11:51:55 -04: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
Alam Ed Arias
fbd9cb73c3 Merge branch 'public_next' into private 2016-04-27 16:54:37 -04: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
Monster Iestyn
d31fd95d75 Armageddon & Sparkles confusion is no more, DMG_NUKE exists to sort that out now 2016-04-07 22:02:52 +01:00
Alam Ed Arias
b9eed02123 whitespace clean 2016-04-07 16:34:36 -04:00
Monster Iestyn
249d25a316 Merge branch 'master' of git@git.magicalgirl.moe:STJr/SRB2Internal.git into damage-control 2016-04-07 20:47:12 +01: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
Inuyasha
557a237290 disable patch.dta in master 2016-03-31 21:56:49 -07:00
Inuyasha
50d3fe15b8 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
# Conflicts:
#	src/d_main.c
#	src/doomdef.h
2016-03-31 21:17:29 -07: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
a749d79aa5 Fix up S_ChangeMusic usage from merge so things can compile again 2016-03-13 20:53:10 +00:00
Monster Iestyn
f9c4b877ca Merge branch 'master' of git@git.magicalgirl.moe:STJr/SRB2Internal.git into damage-control 2016-03-13 20:37:43 +00: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
1ee01063e3 All SRB1 objects, states, and sprites removed. 2016-03-09 02:54:09 -08:00
Inuyasha
b61959051e Revert "Revert "MF2_PUSHED is now MFE_PUSHED...""
This reverts commit 694220155e.
2016-03-09 01:30:52 -08:00
Inuyasha
62b2e5c17e Revert "Readded EvalMath to Lua."
This partially reverts commit cfcd7ce0d3.
2016-03-09 01:29:58 -08:00
Inuyasha
b229cac57a Revert "Revert "No more stupidity for No More Enemies special plz""
This reverts commit 7ae87cc2c6.
2016-03-09 01:24:13 -08:00
Inuyasha
317161221d Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-03-09 01:23:48 -08: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
Alam Ed Arias
13056fe2a0 Merge branch 'public_next' into private_master 2016-03-04 11:03:38 -05: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
8c23168061 Remove stray comment from merge 2016-03-03 22:12:31 -08:00
Inuyasha
e0f5312d13 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into unslot-music
# Conflicts:
#	src/dehacked.c
#	src/f_finale.c
#	src/lua_baselib.c
#	src/lua_maplib.c
#	src/m_menu.c
#	src/p_enemy.c
#	src/p_inter.c
#	src/p_setup.c
#	src/p_user.c
#	src/s_sound.c
#	src/y_inter.c
2016-03-03 22:09:24 -08:00
Inuyasha
c956b498c8 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
# Conflicts:
#	src/p_user.c
2016-03-03 21:48:32 -08: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
wolfy852
b96de77050 Fix sorting on toaster's name 2016-03-03 20:54:19 -06:00
wolfy852
ad0069676a slope->normal is vector3_t, not vector2_t 2016-03-03 20:47:05 -06:00
Monster Iestyn
560d7d9aae Sideways springs, horizontal hog-launchers, perpendicular plungers...
Call them what you like, they're in the game now
2016-03-03 22:38:06 +00: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
Monster Iestyn
b3d842e859 Fix accidental copy+paste of o to d and normal in slope_get code 2016-03-03 14:43:42 +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
wolfy852
b0cbc8ab2a Lua slope manipulation stuff!
Warning: Incomplete. Very prone to crashing and I might not have handled some things properly. Use with caution.
2016-03-02 23:47:06 -06: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
e7ff405c52 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
# Conflicts:
#	src/hardware/hw_md2.c
#	src/p_mobj.c
#	src/p_mobj.h
2016-02-29 00:14:16 -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
3a045c4cc9 Fix the green text after reduced pal changes 2016-02-28 23:30:52 -08:00
Inuyasha
e2b3adc04f Randy Heit -> Randi Heit 2016-02-28 18:21:37 -08:00
Inuyasha
fdb4ac5c2e Super color code cleaning, speed 50%, nothing special 2016-02-28 18:19:46 -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
wolfy852
753ee4e42a Update names in credits
Add me and toaster's names, change Shane's by request, and fix Randi Heit's name
2016-02-27 14:13:49 -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
Inuyasha
83278c2893 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
# Conflicts:
#	src/p_map.c
2016-02-25 15:46:08 -08:00
Inuyasha
8b7e0347fd Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next
# Conflicts:
#	src/sdl/i_system.c
2016-02-25 15:41:13 -08: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
5108bb97f4 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next 2016-02-25 15:16:15 -08: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
Monster Iestyn
ef6430c23e Fix respawning rings on slopes 2016-02-15 20:34:53 +00:00
wolfy852
000ec9ac67 Call LUAh_PlayerSpawn instead of checking for it 2016-02-14 15:22:13 -06:00
Inuyasha
7c5adacc6f Fixed chain launching
In the process, the stasis flags work like you'd expect them to.
You can now set them in Lua or code and they'll actually do something.
2016-02-14 12:28:03 -08:00
wolfy852
db3797fd35 Add PlayerSpawn hook 2016-02-14 06:10:20 -06:00
wolfy852
e43f21cdda Fix dead MF_PAIN objects hurting the player
Fixes #12
2016-02-13 17:31:38 -06:00
Monster Iestyn
dabc4415af Fix crash caused by drawing scaled, mirrored sprites semi-covered on the left side by portal edge
I suspect this crash was possible even outside the context of portals, but whatever
2016-02-13 18:11:50 +00:00
toasterbabe
f59c8d20e5 fix md2 blendcolors for reduced palette 2016-02-11 18:37:53 -05:00
Alam Ed Arias
9470fc5567 use sizeu#() on size_t printing 2016-02-11 13:20:35 -05:00
Alam Ed Arias
4e37964336 TRUE is not a vaild boolean under non Windows system 2016-02-11 13:20:13 -05:00
Monster Iestyn
62d15e54e8 Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into portal-fix 2016-02-09 20:02:33 +00:00
Monster Iestyn
7278625963 Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into Lua-video-lib-expansion 2016-02-09 20:01:32 +00:00
Monster Iestyn
17d6bafc7e Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into new-SOC-lump-names 2016-02-09 20:00:54 +00:00
Monster Iestyn
e44c96e417 Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2.git into lua-sector-lines 2016-02-09 19:58:51 +00:00
Monster Iestyn
db18ad6b7f Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2.git into monster-misc-2 2016-02-09 19:54:49 +00:00
Alam Ed Arias
e4ad95856f Merge branch 'public_next' into master 2016-02-09 14:49:17 -05:00
Monster Iestyn
5d1c8d2968 My cherry picking somehow lead to these functions being doubled ...whoops 2016-02-09 19:35:04 +00:00
Alam Ed Arias
d09016c808 Merge branch 'public_next' into master 2016-02-09 14:19:50 -05:00
Alam Ed Arias
6000b5c980 Merge branch 'master' into next 2016-02-09 14:13:50 -05:00
Sean Ryder
ddb5652ab6 Tabbing 2016-02-09 18:05:19 +00:00
Sryder13
6b8c438e58 Change a few colours. 2016-02-09 18:05:11 +00:00
Sryder13
31deecc51c Colour Changing MD2s
I don't know how I can move my old branch over so I've just created a new one.
2016-02-09 18:04:59 +00:00
Monster Iestyn
700c9c2e70 Merge branch 'md2_colourchange' into 'master'
Colour Changing MD2s

What it says it is, I haven't touched it in quite a while, but I have checked and it seems to be working.

See merge request !30
2016-02-09 13:03:52 -05:00
Sean Ryder
b7ebb8186d Fix MD2 interpolation for FF_ANIMATE states 2016-02-09 16:20:18 +00:00
Inuyasha
8fc484cea9 Just a few more changes to TUNES, nothing special
(cherry picked from commit 63a9c66317)
2016-02-09 02:48:35 -08:00
Inuyasha
04d112276e Fixed some oddities with TUNES.
(cherry picked from commit a4d05350f7)
2016-02-09 02:48:35 -08:00
Inuyasha
1203b0aa73 Fix crash on game clear
(No, game, you can't allocate a map header for the credits, why were you doing that before and how did it not break anything??)

(cherry picked from commit e1f9a01229)
2016-02-09 02:48:34 -08:00
Inuyasha
caab150c92 Fixed LD413
(cherry picked from commit 1e4c2f8aad)
2016-02-09 02:48:34 -08:00
Inuyasha
8c17dac589 The concept of "music slots" doesn't exist anymore.
Use whatever names you want for your music. So long as you prefix the lumps with O_ or D_, it doesn't matter anymore.
DISCLAIMER: Linedef type 413 (change music) and Lua scripting is not tested.

(cherry picked from commit 025ca413a2)

# Conflicts:
#	src/p_user.c
2016-02-09 02:48:33 -08:00
Inuyasha
58e685353a Attempt 2 at special stage fades.
More basic in execution.
2016-02-09 02:43:24 -08:00
Inuyasha
1bdd4cf641 backport state-animations from internal master to public next
most other code in the branch did not come along for the ride.
2016-02-09 02:39:16 -08:00
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
dff65aa9e0 Merge branch 'public_next' into master 2016-02-07 21:25:42 -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
63a9c66317 Just a few more changes to TUNES, nothing special 2016-02-04 17:27:55 -08:00
Inuyasha
42fb7ed5aa clearly I don't care about Super forms much :v 2016-02-04 02:37:40 -08:00
Inuyasha
577afbc693 All internal music changes use new lump names
... that all start with _ for reasons specified in the music topic
2016-02-04 01:17:27 -08:00
Inuyasha
2b482324b4 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-02-03 18:11:51 -08: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
e87a86dd67 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-02-03 18:03:02 -08: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
RedEnchilada
8505ad4d14 Merge remote-tracking branch 'public/next' 2016-01-31 13:06:55 -06: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
cd4442d971 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-01-29 18:30:58 -08: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
93d1f9920e Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-01-29 16:03:52 -08: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
549d3aeb3f Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-01-28 08:20:50 -08:00
Inuyasha
d76e21b546 fix bind out of bounds / keystring misreading 2016-01-28 08:15:34 -08:00
yellowtd
b3fbc37c94 Midtextures, lights, and culling fixes for ogl slopes
There's a weird issue with lights that's hard to diagnose but otherwise
this is ready to go I think
2016-01-27 20:10:02 -06:00
yellowtd
e6235d4d6b Fix FOF slope rendering in ogl
should work as well as software if not better now
2016-01-27 20:09:52 -06:00
yellowtd
52ae3f2875 GL slope walls and fixed plane culling 2016-01-27 20:09:34 -06:00
yellowtd
24da82f026 Begin work on OGL slope support
unfinished
2016-01-27 20:09:04 -06:00
Alam Ed Arias
d0ce9170da appveyor: build for GCC 5.2 2016-01-27 01:39:12 -05:00
wolfy852
bd1231764e Merge remote-tracking branch 'remotes/origin/master' into dashmode 2016-01-25 21:41:41 -06:00
wolfy852
e314b442b2 Remove dashmode limit since tic_t is UINT32
This might be overpowered as hell. Needs testing for sure.
2016-01-25 20:26:31 -06:00
Monster Iestyn
67b92d7273 Went and fixed the dashmode variable hack nonsense once and for all myself
would have gone for "dashtime", but then I was reminded that was already a name for something to do with spindash. Oh well
2016-01-25 11:47:33 +00:00
wolfy852
95d6cba184 [HACK] Make dashmode work again
Fixed one of Red's mistakes, and used a different struct variable for dashmode. This needs to be changed though, because everything will break if someone loads a circuit map.
2016-01-25 01:49:37 -06:00
Inuyasha
c4b022b202 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-01-24 03:36:05 -08: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
6784419d38 Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal 2016-01-21 14:56:25 -08: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
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
Alam Ed Arias
c33d20acff whitespace cleanup 2016-01-21 13:50:05 -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
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
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
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
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
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
Inuyasha
01dd3e9bd5 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into spr2-freeslots 2016-01-15 02:29:51 -08:00
Inuyasha
9ba43e1d01 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into repeat-monitors 2016-01-15 02:20:34 -08:00
Inuyasha
ed69520004 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into unslot-music 2016-01-15 02:01:32 -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
732003bcb9 Quick fixes for unsigned-signed compiler warnings
probably not the most ideal way of doing this to be fair though
2016-01-14 17:11:16 +00: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
Inuyasha
c2f40b6b00 Attempt to play nice to cmake. 2016-01-14 07:37:58 -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
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
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
c81571f0af Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into repeat-monitors 2016-01-13 19:27:59 -08:00
Inuyasha
cd1bb9b027 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into unslot-music 2016-01-13 19:27:15 -08: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
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
Inuyasha
e18f467885 Further optimization of fading code because I'm crazy
The less branches, the better.

Optimization is a bitch, you know.
2016-01-08 08:16:16 -08:00
Inuyasha
a4d05350f7 Fixed some oddities with TUNES. 2016-01-08 03:23:05 -08:00
Inuyasha
e1f9a01229 Fix crash on game clear
(No, game, you can't allocate a map header for the credits, why were you doing that before and how did it not break anything??)
2016-01-07 23:48:19 -08:00
Inuyasha
1e4c2f8aad Fixed LD413 2016-01-07 20:41:58 -08:00
Inuyasha
025ca413a2 The concept of "music slots" doesn't exist anymore.
Use whatever names you want for your music. So long as you prefix the lumps with O_ or D_, it doesn't matter anymore.
DISCLAIMER: Linedef type 413 (change music) and Lua scripting is not tested.
2016-01-07 19:48:20 -08:00
Inuyasha
505306429e Merge branch 'master' into repeat-monitors 2016-01-06 04:01:50 -08:00
Inuyasha
c1340b6e6c Most minor 1up icon bug fixed.
1up icons were spawning their overlays off sync with each other so the face icon was showing up during static. Now they don't.
(They'd do this in 2.1 too if you have a custom WAD added that doesn't have an overlay sprite, and you use it in multiplayer alongside a character that does.)
2016-01-06 03:07:08 -08:00
Inuyasha
1ba005c511 Fixed crash on Deton explosion.
(Detons need deathstates, otherwise they are removed partway through exploding. Not fun.)
2016-01-04 01:34:56 -08:00
Inuyasha
dcde68912a Merge remote-tracking branch 'remotes/origin/master' into repeat-monitors 2016-01-03 19:30:46 -08:00
Inuyasha
1f7e135ce5 Gold boxes are supposed to be 4 fracunits taller.
To match their taller sprite.
2016-01-03 19:11:27 -08:00
RedEnchilada
3e93ec21a1 Make internal slope functions static and remove from header
I hate merges. Why do things keep getting undone?
2016-01-03 18:25:45 -06:00
Inuyasha
537ab87add Merge branch 'dispoffset-changes' into 'master'
Dispoffset changes

Dispoffset now works in OpenGL, and the feature has been optimized so high dispoffset values don't cause sprites to be distorted anymore.

See merge request !12
2016-01-03 18:31:20 -05:00
Monster Iestyn
27b65e3569 Several changes to split jump anims from spin anims:
* SPR2_JUMP and SPR2_SJMP are now the jump sprite sets for spin chars
* SPR2_SPNG and SPR2_SSPG are the new sprite sets for spring up anims (instead of JUMP/SJMP)
* S_PLAY_JUMP and S_PLAY_SUPER_JUMP are now the states for spin char jumps
* S_PLAY_SPRING and S_PLAY_SUPER_SPRING are the new states for spring up (instead of the "JUMP" states)
* PA_JUMP is now PA_SPRING (jumping anims are lumped with PA_ROLL)
2016-01-03 18:19:11 +00:00
RedEnchilada
0c6aaf87d5 Merge branch 'next' 2016-01-03 10:35:12 -06: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
Inuyasha
1b8a38bd56 Merge branch 'reduced_palette' into 'repeat-monitors'
Reduced palette -> repeat monitors

As the graphics use the new palette anyway.
https://dl.dropboxusercontent.com/u/3518218/22/monitorgfx.wad

See merge request !15
2016-01-03 00:59:40 -05:00
RedEnchilada
c38af2c6a2 Remove unused maxtop variable 2016-01-02 23:26:22 -06:00
Wolfy
82b4320c61 Merge branch 'reduced_palette' into 'dashmode'
Merge reduced palette into dashmode branch

This is necessary for Metal Sonic to work.

See merge request !14
2016-01-03 00:08:29 -05:00
RedEnchilada
ba8c0dfc6e Clean up dash mode and make multiplayer-compatible
Actionspd is now the running speed in dashmode.
2016-01-02 22:58:35 -06:00
RedEnchilada
a15a4ace7e Do dashmode thok speed adjustments at thok instead of modifying actionspd 2016-01-02 22:34:55 -06:00
RedEnchilada
b9b1e2b298 Fix MD2s 2016-01-02 21:53:43 -06:00
wolfy852
ebd2bdd1c8 Add CA_DASHMODE to the game
This works fine in single player on vanilla builds, multiplayer is untested. This might not be the best way to handle the ability, so modifications for efficiency/sanity might be necessary.
2016-01-01 14:53:29 -06:00
Inuyasha
98f652aca6 Big monitors are "Gold Monitors" now.
The useless ones have been removed, too, and they should always spawn as what they should regardless of settings.
By the way, graphics are at https://dl.dropboxusercontent.com/u/3518218/22/monitorgfx.wad
2015-12-31 15:29:08 -08:00
Inuyasha
265a607b58 rewrite of monitors to accomodate repeat use monitors.
It's a lot nicer in general, honestly. I think a couple bugs with custom monitors respawning got fixed in the process.
Note that a monitorgfx.wad is needed if you want to see things besides <!>s for monitors, due to graphic changes.
2015-12-31 08:38:23 -08: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
Monster Iestyn
e0e9c7c172 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
2015-12-01 22:38:57 +00:00
Monster Iestyn
bb9488f2a2 Removed a few old OpenGL-specific hacks that compensated for lack of dispoffset
(I won't touch overlays for now)
2015-11-23 21:04:33 +00:00
Monster Iestyn
30ef257050 dispoffset now works in OpenGL 2015-11-23 17:01:10 +00:00
Monster Iestyn
f6eac1a6ac 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
2015-11-23 16:39:32 +00:00
Yukita Mayako
4e2cc2c200 Fixed more logic bugs.
SPR_FIRSTFREESLOT is not the same as SPR2_FIRSTFREESLOT.
What was I, drunk?
2015-11-10 20:46:10 -05:00
Yukita Mayako
24ab56691e Fixed spr2 freslot logic bug. 2015-11-10 20:33:29 -05:00
Yukita Mayako
2b6e65f122 Added missing comma to COLOR_ENUMS string array after "ROSY".
It's not SKINCOLOR_ROSYSUPER1, after all.
2015-11-09 16:45:35 -05:00
Yukita Mayako
ca7151f1c2 Merge branch 'master' of git@git.magicalgirl.moe:STJr/SRB2Internal.git into reduced_palette
Conflicts:
	src/dehacked.c
2015-11-09 14:34:26 -05:00
Monster Iestyn
fed463f1d2 NextLevel for level headers can now take the special strings "Title" "Evaluation" or "Credits" in place of their usual numbers (optionally, that is) 2015-11-08 17:50:05 +00:00
wolfy852
5409367a5f Define TRANSPARENTPIXEL as 255 in asm files 2015-11-07 15:32:11 -06:00
wolfy852
1ed5407821 update stuff 2015-11-07 13:56:21 -06:00
Monster Iestyn
77f118dd2f Removed dummied-out Pope XVI code 2015-11-06 14:23:06 +00:00
Yukita Mayako
14e8ac702f Added freeslots for SPR2.
Make sure your MAINCFG / LUA lump comes _before_ the S_SKIN section.
2015-10-31 14:45:42 -04:00
Monster Iestyn
b94fc008ab doomtype.h tweaks
some of the mess in here really bothers me
2015-10-21 16:01:16 +01:00
Monster Iestyn
ac24ce234f If this isn't an accidental copy+paste then I'd be very surprised 2015-10-21 15:40:59 +01:00
Monster Iestyn
e0deaaf3ff From what I can tell, correcting this one value in finetangent[] shouldn't cause any harm at all, so... 2015-10-21 15:32:50 +01:00
Monster Iestyn
98ad63eb06 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
2015-10-12 15:10:43 +01:00
Monster Iestyn
165aec3d34 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.
2015-10-11 22:23:40 +01:00
Monster Iestyn
08c0c7676c 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.
2015-10-11 21:01:04 +01:00
Monster Iestyn
a9b96a1668 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)
2015-10-11 14:05:05 +01:00
Monster Iestyn
fdc2c3adcd 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)
2015-10-10 21:21:16 +01:00
Monster Iestyn
d4976d677f Move finecosine[] declaration to where it really belongs in the source code 2015-10-10 20:30:29 +01:00
Monster Iestyn
368b458eee 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!
2015-10-10 17:57:35 +01:00
Monster Iestyn
d7b402e3c4 More cleanup, most notably dumping ring spilling code in P_RingDamage
...one wonders why P_RingDamage didn't already do that in the first place
2015-10-06 22:05:32 +01:00
Monster Iestyn
a84c2c6081 Some cleanup and reordering 2015-10-06 21:14:11 +01:00
Monster Iestyn
31b2919847 Added a "damagetype" argument to P_ShieldDamage. We don't use MT_NULL to hack in damage for sector specials anymore, after all.
Must have forgotten to do this back when I originally implemented damage types, oh well.
2015-10-05 20:18:45 +01:00
Monster Iestyn
175561cc7f Check if God mode is one before even going to NiGHTS or player vs player damaging code or whatever. 2015-10-05 17:13:34 +01:00
Monster Iestyn
210757f27b Removed the removal of SF_SUPER from skins other than Sonic 2015-10-02 13:45:51 +01:00
Monster Iestyn
7dcf0d3d09 Fix an error from match-balancing being merged in. Apparently match-balancing also doesn't have a prototype for P_StealPlayerScore for whatever reason. 2015-10-01 20:02:44 +01:00
Yukita Mayako
ba77b235d1 Merge branch 'match-rebalancing' into damage-control
Conflicts:
	src/p_inter.c
	src/p_user.c
	src/st_stuff.c
2015-09-30 20:40:27 -04:00
Alam Ed Arias
6cde169c58 Merge branch 'public_next' into private 2015-09-26 22:10:59 -04: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
6ad1086128 Merge branch 'public_next' into master 2015-09-03 15:58:16 -04: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
eb4de823e9 Merge branch 'public_next' into master 2015-09-03 13:55:29 -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
7092a24acd Merge branch 'new-animations' into 'master'
Oops. (Minor animation bugfix I forgot.)

Apparently I pushed this one commit to GitHub instead of SRB2Internal before the branch was merged...

Oops.

See merge request !8
2015-08-22 10:05:02 -04: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
Sryder13
5a033181b8 Metal Sonic Flash 2015-08-21 20:17:11 +01:00
Sryder13
d0d19e684c Change Lavender, Azure, Blue 2015-08-21 18:34:21 +01:00
Monster Iestyn
6bc1a5fdef Okay, major overhaul time!
*player->health (formerly the "HUD" health) is now to be known as player->rings, and now acts as the player's actual ring count
*player->mo->health (formerly rings + 1) is now always 1 when alive, regardless of ring count; if player with rings is damaged, this is untouched

Damage in normal SP/Coop gameplay has been tested and still works fine; still a lot of mess to clear up though

Tag damaging probably is broken now, I'll fix this later
2015-08-15 21:07:16 +01:00
Alam Ed Arias
c16d466483 Merge remote-tracking branch 'public_next' into master 2015-08-15 10:16:27 -04: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
fbda813155 whitespace cleanup from merge 2015-08-14 18:32:30 -04:00
Alam Ed Arias
c0ae3fa895 Merge remote-tracking branch 'private/public_next' into private_master 2015-08-14 18:26:33 -04: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
4369ba2a21 Merge branch 'master' into damage-control 2015-08-14 19:01:41 +01:00
Monster Iestyn
ee4a3fffee Merge branch 'polyobj-setup-fixes' into 'master'
Polyobj setup fixes

If you're wondering why ERZ2 crashes lately, yes, it's my fault once again it turns out! Ideally we shouldn't have loose spawn points or anchors without an actual PolyObject to go with them in the first place, but this fix re-adds the safety check that prevented them from crashing the game before.

If it wasn't clear already, this fix is rather important, so please get in asap.

See merge request !7
2015-08-14 13:48:37 -04:00
Monster Iestyn
8cde0121d0 Remove the switch-to-seestate behavior in P_DamageMobj.
In Doom there was a random chance of enemies either being stunned (painstate) or instead just deciding to attack you (seetstate), but in SRB2 painstate is ALWAYS used beforehand.
2015-08-14 15:55:24 +01:00
Monster Iestyn
b449bd826a Rewrote A_SetTargetsTarget to be more sensible and efficient 2015-08-13 19:42:00 +01:00
Monster Iestyn
66b7597e87 Derp, disabling Polyobj_findExplicit apparently blocked off the one thing preventing ERZ2 from crashing before (since it has rogue spawn points without actual First Lines to go with them, for whatever reason) 2015-08-13 16:59:32 +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
RedEnchilada
6d3e318a0c Revert "Guess what major breaking-news bug I just fixed B)"
This reverts commit 9e306394dd.
Sorry MI, but this completely breaks large maps like AGZ.
2015-08-03 13:45:51 -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
Sryder13
079f02ca69 Fix Peridot 2015-07-25 14:10:52 +01:00
Sryder13
5209787ebd Rename Colours 2015-07-25 14:07:05 +01:00
Sryder13
14b157b98d Fix yellow 2015-07-25 13:35:11 +01:00
Sryder13
c6c67d45b0 Fix Purple 2015-07-25 00:14:50 +01:00
Sryder13
9847668863 New Colours 2015-07-24 23:39:53 +01:00
Sryder13
1dd28ef15a Rearange colours to be in more correct order 2015-07-23 22:57:54 +01:00
Sryder13
721a5f9b4b Default Translation color + Neon Green change 2015-07-23 21:43:30 +01:00
Sryder13
e054f4b6c6 Drawfills and Console
All relevant DrawFills had colours changed.
Console background colour changed.
Text colourmapping changed.
2015-07-23 18:56:05 +01:00
Sryder13
70d0595817 Update colour changes
More correct colour ranges.
Added Rosewood.
Added Super Sonic Colours (No Super Tails or Knuckles, at least not yet).
2015-07-23 17:58:52 +01:00
Sryder13
0d357adb52 Base colour changes
Default colours before new colours are potentially added.
Rosewood is the same as orange and will likely be removed.
2015-07-23 00:03:31 +01:00
Alam Ed Arias
22433bcb54 Merge branch 'new-animations' into 'master'
New player animations (Updated player.dta Sonic)

Adds support for several completely new player animations, mostly for Super Sonic.

See merge request !5
2015-06-22 09:59:39 -04: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
Yukita Mayako
96241866bf Fix Super float anim bug.
This commit makes Super floating players break into
a normal walk again when they hit the floor, instead
of keeping their float animation on the ground.
2015-06-19 01:55:13 -04:00
Yukita Mayako
496662bec5 Super float animation.
When Super Sonic is "walking in the air", he has a
unique animation for it now which is similar to how
it looked in previous SRB2 versions.
2015-06-19 01:30:06 -04:00
Yukita Mayako
ffec58c09c Add PA_EDGE to handle Super teeter animation bug.
States were being improperly checked where a panim
would be more appropriate.
2015-06-18 11:36:08 -04:00
Alam Ed Arias
fb5cba78d3 Merge branch 'public_next' into private
Conflicts:
	src/p_mobj.c
2015-06-18 10:54:53 -04: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
b17e39a701 Add missing string constants. 2015-05-29 15:52:38 -04:00
Yukita Mayako
99066429de Add PF_SHIELDABILITY to dehacked. 2015-05-29 15:49:12 -04:00
Yukita Mayako
8a261ea467 Fix sprite2 fallbacks.
It didn't work at all before, oops. :/
2015-05-29 15:40:49 -04:00
Yukita Mayako
d2ef4d3e3c Add S_PLAY_SUPER_STUN and PA_PAIN
For Super Missiles, the Super Sonic player
has a seperate animation from normal pain.
2015-05-29 14:57:53 -04:00
Yukita Mayako
b601dad4cd Hotfix for sprite2 in netgames
It wasn't properly added to $$$.sav because
MD_SPRITE didn't get set. :/
2015-05-29 14:26:39 -04:00
Yukita Mayako
d680cafc6e Add fallbacks for SPR2_ animations.
Every SPR2_ except for SIGN and LIFE now has a proper
fallback leading down to SPR2_STND.
2015-05-29 14:25:10 -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
Yukita Mayako
2d14173968 Allow spin button Jump Shield normally.
If you walk off a cliff with a jump shield, you
can now press EITHER the jump or spin buttons to
activate it and double jump.
2015-05-29 02:35:24 -04:00
Yukita Mayako
e9c1771017 Add new spindash animation.
This adds SPR2_DASH, S_PLAY_DASH, and
related p_user.c changes to give charging
your spindash a unique animation.
2015-05-29 01:52:42 -04:00
Yukita Mayako
b88864c666 Add player JUMP animation
Since PA_JUMP is used to determine when
springing upwards now and the nextstate
isn't used for falling, the jump state
can now be properly animated. :)
2015-05-29 01:51:15 -04:00
Yukita Mayako
98ba9ca140 Updated player->panims.
Added PA_JUMP and PA_RIDE to handle new Super jump
and ride, and added new animations to panim finder.
2015-05-29 01:48:56 -04:00
Yukita Mayako
ff181d099c Add new player animations.
Added drowning to all players, and several new
Super animations for Sonic.

Removed A_Fall from S_PLAY_DEAD and moved its
effect into P_KillMobj for player avatars.
2015-05-29 00:56:02 -04:00
Yukita Mayako
bed8dc4c7c Tails ringslinger buff.
Any character with CA_FLY will now throw rings 1.5x as fast.
2015-05-28 03:24:55 -04:00
Yukita Mayako
406d809bc2 Change attract homing thok to negate Z.
Do not keep Z momentum from homing. It is a bad idea.
2015-05-27 22:57:42 -04:00
Yukita Mayako
8a1411b122 Attraction homing tweaks.
Lower homing speed.
Retain velocity after hitting your target.
2015-05-27 22:06:27 -04:00
Yukita Mayako
ecd867ab35 Change A_BombShield to add P_BlackOw.
Now when you obtain an Armageddon Shield, and
you already HAVE one, the first one explodes
_while_ applying the second.
2015-05-27 21:08:30 -04:00
Yukita Mayako
7118925959 Fix broken P_RingDamage bug from c6c4ab7c
Accidentally snipped too much out of
P_DamageMobj's subfunctions...
2015-05-27 06:43:24 -04:00
Yukita Mayako
18920e486d Add sfx to Attract shield dash.
Because it seemed really weird for a
sudden shift of momentum to be unaccompanied.
2015-05-27 06:07:38 -04:00
Yukita Mayako
65f2d4b80f Add PF_SHIELDABILITY
This flag is used as a distinction between the
character ability CA_HOMINGTHOK and the attract
shield's active ability.
2015-05-27 05:59:42 -04:00
Yukita Mayako
4a1f0ce91c New attract shield active
Homing attack when activating the attract shield while jumping.
2015-05-27 05:24:50 -04:00
Yukita Mayako
1c1acb9f0e Add emeraldspawndelay for Match "super"
Emeralds will not spawn while players are still
enjoying their victory dance now.
2015-05-27 04:02:44 -04:00
Yukita Mayako
c6c4ab7c53 New emerald behavior in Match.
No longer turns you super, instead emeralds steal points
from enemy players and give you (and relevant teammates)
an invincibility + super sneakers monitor.
2015-05-27 02:39:46 -04:00
Yukita Mayako
67fcff7ee7 New Match ammo consumption rules.
Weapon rings can now be fired with no rings at double the ammo cost.
2015-05-27 02:39:42 -04:00
Yukita Mayako
b6a8df557e New Match weapon/ammo dropping method.
P_PlayerWeaponPanelOrAmmoBurst will go through all of the
player's weapon rings and either drop the weapon panel itself
(with no ammo attached, and no ammo taken away!) OR if the
player has ammo but no weapon, it drops the ammo instead
(and you lose it).
2015-05-27 02:39:37 -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
RedEnchilada
109d379980 Fix conveyor slopes eventually turning to static 2015-05-23 15:44:53 -05:00
RedEnchilada
b121bcca68 Remove P_GetZAtf (it didn't seem to work right anyway) 2015-05-23 12:23:24 -05:00
RedEnchilada
485f671f23 Sloped planes now respect flat offsets 2015-05-23 02:18:32 -05:00
RedEnchilada
a5d7356fd2 Sayonara, m_vector.c 2015-05-23 01:32:28 -05:00
RedEnchilada
3629a2141b Slope planes work again. I hacked an alignment fix in too. 2015-05-23 01:19:38 -05:00
RedEnchilada
89319b1c2a Dummy out m_vector and use m_fixed's functions instead
These functions were already here before, and I /swear/ the slope
physics became slightly less glitchy after switching to them...
Only issue is the slope plane mapping code hasn't been properly
converted yet, so they don't render properly for now.
2015-05-22 22:07:07 -05:00
RedEnchilada
3f8e7b1739 Revert/remove unused/broken junk from original slopes port
m_vector removal to come later. The little thing commented out in it
is so I could revert the weird tables.c change.
2015-05-22 20:57:58 -05:00
RedEnchilada
8c54ee44e7 Slopey physics for some things that aren't players
This is incredibly messy and probably needs redone differently at
some point, but... fuck it.
2015-05-22 12:33:12 -05:00
JTE
f783df718c Reset tmthing after P_CheckSector calls from Lua
tmthing must not be set outside of P_MapStart and P_MapEnd
or the game will fail a sanity check which ensures that
mobj references are not persistent across frames and crash.
2015-05-22 01:51:40 -04:00
JTE
c91cd3860b Revert "Wrapped Lua MapLoad hook in P_MapStart / P_MapEnd."
This reverts commit 6ee50e803b.
2015-05-22 01:46:59 -04:00
RedEnchilada
fb9d07b8ba Bugfixes to sloped FOF plane clipping 2015-05-21 22:13:51 -05:00
JTE
6ee50e803b Wrapped Lua MapLoad hook in P_MapStart / P_MapEnd.
This fixes a crash if a script tries to use a MapLoad hook
to immediately edit the map in some way the moment it
finishes loading.
2015-05-21 19:55:22 -04:00
JTE
dfa8ac7ccb Added sidedef texture and offset manipulation to Lua. 2015-05-21 19:05:17 -04:00
RedEnchilada
0d9f8028b7 Players now bounce off of slopes on bouncy FOFs 2015-05-21 15:49:49 -05:00
RedEnchilada
f23f5d4379 Fix flat slopes eating jumps 2015-05-21 15:49:26 -05:00
RedEnchilada
e24595ed52 Make the crumble check account for slopes for... some reason 2015-05-21 10:17:53 -05:00
RedEnchilada
3d2b71b24c Make cameras properly collide with slopes 2015-05-21 09:36:20 -05:00
JTE
ef0e61fc33 Change LUA_NUMBER to fixed_t, change angle_t handling in Lua.
Angles now go from 0 to 0xFFFF (360 degrees == FRACUNIT) instead
of using a full UINT32. Lua only has one number type, so signedness
gets in the way of using angle_t directly. This handling of angles
matches up with how ZDoom ACS scripting and the like does it.

I also changed all the integer casts and pushes of fixed_t to
their own macro in preperation for possible future seperation.
2015-05-20 23:54:04 -04:00
RedEnchilada
7a3c5b3dd9 Scenery objects (notably, bubbles) now use slope when finding water surfaces 2015-05-20 19:21:44 -05:00
RedEnchilada
0e94cc66ff 2-in-1! Fixed slide movement AND climbing when around slopes 2015-05-20 19:08:49 -05:00
JTE
9d36cf37bd Removed EvalMath from base Lua.
EvalMath is for SOC only.
It spawns an entirely seperate instance of Lua and requires
uppercase-only strings, and it's ability to parse strings to
enums is redundant to Lua's _G table (try using
_G["MT_BLUECRAWLA"] for instance)
2015-05-20 18:44:03 -04:00
JTE
1e62be15ce ALL7EMERALDS is a boolean you idiot, not an integer. 2015-05-20 17:29:32 -04:00
RedEnchilada
7b0e98ef35 Change sliding physics and standing/rolling rules on slopes 2015-05-20 13:18:41 -05:00
RedEnchilada
1376f399d3 Sprite lighting obeys the slope overlords now 2015-05-18 00:23:44 -05:00
RedEnchilada
e7bc004bbf Sloped lights n shit 2015-05-17 23:51:38 -05:00
RedEnchilada
e83844796e Proper sorting fix for sloped FOFs and sprites 2015-05-17 21:49:13 -05:00
RedEnchilada
41573b118c I'm a dumbass 2015-05-17 12:36:06 -05:00
RedEnchilada
0af3852273 Add translucent slope renderer 2015-05-17 12:24:20 -05:00
RedEnchilada
780c568aaf Fix sprite-to-plane sorting on sloped FOFs 2015-05-17 12:03:52 -05:00
RedEnchilada
d138f7e14f Collision with FOF slopes (might be unfinished, idk) 2015-05-17 11:53:28 -05:00
RedEnchilada
8ba5b66853 Slight optimization (don't get seg ends for slopes if there are no slopes) 2015-05-16 23:55:49 -05:00
RedEnchilada
c08253d796 FOF sides now render slopified too! 2015-05-16 23:04:54 -05:00
RedEnchilada
4e11d6d615 Make FOF planes render slopedly if set 2015-05-16 22:32:12 -05:00
RedEnchilada
d81cecdac9 Minor cleanup so it stops bugging me 2015-05-16 19:59:52 -05:00
RedEnchilada
09f8dec7d1 Optimization/configuration option: No Tails on a slope line makes a slope non-dynamic 2015-05-16 00:04:19 -05:00
RedEnchilada
6fcdac494f Spawned things spawn relative to slope floor/ceiling heights now
This was a headache. :<
2015-05-16 00:02:01 -05:00
RedEnchilada
36d576adf4 I think those were being cast wrong 2015-05-15 12:36:16 -05:00
RedEnchilada
445e778309 Improvements to slope collision/landing/ejecting/fajitas 2015-05-15 12:35:54 -05:00
RedEnchilada
b69678f1a6 PLACEHOLDER, DO NOT PUSH THIS COMMIT 2015-05-15 10:23:53 -05:00
RedEnchilada
bd0b7829bb Fix rotated flats on slopes 2015-05-14 10:55:43 -05:00
RedEnchilada
e39c8aa62e Fix ceiling slopes lol 2015-05-13 21:57:47 -05:00
RedEnchilada
0cc917a0ff Plane lighting for slopes now actually acts like it should 2015-05-13 21:41:54 -05:00
RedEnchilada
2187dac49b Fix random texture triangles rendering on lines with slopes????? 2015-05-13 16:48:34 -05:00
RedEnchilada
a3358479f0 Improvements related to slope collision, and quantize momentum properly for landing 2015-05-13 16:15:32 -05:00
RedEnchilada
371e23d55d Reduce acceleration pushback to less absurd levels 2015-05-13 16:02:19 -05:00
RedEnchilada
2183912100 Change upper/lower textures to not skew by default, add new linedef flags on normal linedefs:
Effect 1: Restore skewing on upper/lower textures
Effect 2: Disable skewing on midtextures
Effect 3: Flips effect of Lower Unpegged for midtextures only
(Effect 3 w/o LU: midtexture sticks to bottom, bottom texture sticks to
upper edge. Effect 3 w/ LU: midtexture sticks to top, bottom texture
sticks to lower edge.)
2015-05-04 17:45:02 -05:00
RedEnchilada
7e13cb8b47 Fix various issues/crashes with texture alignments 2015-05-04 16:40:02 -05:00
RedEnchilada
1b9180111c Pin midtextures based on slopes, including bending on wall crossing 2015-05-04 15:15:57 -05:00
RedEnchilada
c66bb1c330 Make textures skew according to slope (midtextures not fixed yet) 2015-05-03 15:47:40 -05:00
RedEnchilada
79fedf91a0 Fix occasionally running into an invisible wall around slopes 2015-04-30 18:36:21 -05:00
RedEnchilada
3644d4d883 Minor code cleanup around renderer gunk
(Who let that silhouette == 1/etc thing sit there all those years? :V)
2015-04-30 00:41:29 -05:00
RedEnchilada
234f734fe5 Fix sprite clipping and some blocking walls being rendered around slopes 2015-04-30 00:38:51 -05:00
RedEnchilada
02d63aa011 Tweaks to slope physics + add accel rules for slopes
Your acceleration vector parallel to the slope is reduced based on slope
angle if it's going up the slope. The pull physics' momentum increase was
toned down a bit to go along with this. Also, I removed the ifdefs for
OLD_MOVEMENT_CODE because why should that be kept around?
2015-04-30 00:32:44 -05:00
RedEnchilada
fe8a2ae680 Fix compile error 2015-04-29 01:45:39 -05:00
chi.miru
c4306b624d Optimized R_DrawTiltedSpan_8 2015-04-29 02:36:18 -04:00
RedEnchilada
ae935a0955 Stop rubbing my ass on the code long enough to fix reverse gravity 2015-04-29 00:36:24 -05:00
RedEnchilada
db883f6a23 Add a bunch of slope physics
I know giant commits all at once like this are a bad thing, but
too bad I worked without staging commits and now it's all here
at once :)
2015-04-29 00:35:54 -05:00
RedEnchilada
1f0f6b64c1 Store the slope an object is resting on (if applicable) 2015-04-29 00:33:04 -05:00
RedEnchilada
de81d01fbc Fixes to slope generation (backfloor crash and wrong zdelta/zangle) 2015-04-29 00:30:39 -05:00
RedEnchilada
776b5254e6 Slope collision fixes 2015-04-29 00:29:51 -05:00
RedEnchilada
10ba850871 Fix dynamic slopes not working right in some cases 2015-04-27 14:07:04 -05:00
RedEnchilada
6694480f68 Overhaul slope collision (NOT PHYSICS) to work almost perfectly 2015-04-27 13:20:50 -05:00
RedEnchilada
58dd6d42af Add P_GetFloorZ and P_GetCeilingZ as boilerplate to facilitate better slope collision
I have not used this anywhere in the code yet.
2015-04-27 13:18:12 -05:00
RedEnchilada
0c477c685d Removing unused cruft 2015-04-26 22:20:03 -05:00
RedEnchilada
6fa1448f59 More cleanup, and made dynamic sloping more efficient/fixed memory leak 2015-04-26 21:50:50 -05:00
RedEnchilada
d0a726c00b Teeny optimization in renderer code?? 2015-04-26 13:06:45 -05:00
RedEnchilada
aeef23e816 MakeSlope_Line cleanup/fixed-point conversion 2015-04-26 13:06:23 -05:00
RedEnchilada
5070a964b9 Starting to clean up a bit of Kal's mess
I still don't know why Git reacts so strangely to the new files' line breaks...
2015-04-25 22:22:50 -05:00
RedEnchilada
bac34d783e Fix crash with ceiling slopes and line collisions 2015-04-25 20:39:18 -05:00
RedEnchilada
f130a529b1 make stupid slopes render on stupid unix stupids 2015-04-21 10:01:51 -05:00
RedEnchilada
7703eae0e8 Actually fix slope generation (also whitespace stuff) 2015-04-20 13:25:39 -05:00
RedEnchilada
f4ea285f02 Fix vertical linedefs on slopes rendering improperly 2015-04-20 12:31:30 -05:00
RedEnchilada
12202d94a9 Fix calculation of slope extent, whoops 2015-04-20 12:18:56 -05:00
RedEnchilada
779faaa93f SLOPES IN SOFTWARE MOD EHOLY SHIT 2015-04-20 02:10:14 -05:00
RedEnchilada
65719c5b99 Make wall renderer account for slopes properly (in most cases) 2015-04-19 22:20:54 -05:00
RedEnchilada
8d35c5064a Fix slope generation
Physics seem to work at least partially, but no rendering yet (not even in OGL)
2015-04-19 16:54:20 -05:00
RedEnchilada
6e1f7e5f3a Add slope files to CMakeLists 2015-04-19 16:21:19 -05:00
RedEnchilada
923fae476e Merge branch 'fury-gh/slopes' into angles
Conflicts:
	src/p_maputl.c
2015-04-19 15:56:55 -05:00
RedEnchilada
ddd66b9eff Make A_SetObjectFlags only reset sector/bmap links if needed 2015-04-17 12:10:40 -05:00
Ronald Kinard
91934d5aec Merge branch 'next' into internal-master
Synchronize the following MRs to internal:

 * STJr/SRB2!6
 * STJr/SRB2!8
 * STJr/SRB2!9
 * STJr/SRB2!10

Conflicts:
	src/doomdef.h
	src/p_map.c
2015-04-14 19:33:38 -05:00
Furyhunter
f7c463418e Merge branch 'actual-blockmap-fix' into 'next'
Actual blockmap fix

MI's "fix" was a reversion of something that allowed 2.0 maps to use the entire blockmap. This MR reverts that fix and adds a proper fix to the issue of west/south edges of the blockmap not working as they should. Tested with a thokbarrier-less square map (all sides were solid) and with AGZ (objects are tangible all around the map, like they are in 2.1.14).

See merge request !10
2015-04-14 20:22:25 -04:00
Furyhunter
420c90fb48 Merge branch 'serverfix' into 'next'
Re-fix the server global variable in Lua

I screwed up the conditions on my first attempt to fix this, since I only tested one scenario. Tested this in SP, at the main menu, and both clientside and (dedicated)serverside in MP. Everything works as intended.

See merge request !9
2015-04-14 20:14:17 -04:00
Furyhunter
63089c885e Merge branch 'polyobject-more-fixes' into 'next'
Polyobject more fixes

Extra fixes related to polyobjects; actually properly putting their flats alongside them in the draw list, and making them able to use single-waypoint zoom tube sequences. Also threw in a smoothness fix for swinging chains while I was there.

See merge request !8
2015-04-14 20:13:16 -04:00
Furyhunter
3d59e337ac Merge branch 'polyobject-scroll-hotfix' into 'next'
Polyobject scroll hotfix

Things fixed:

* Polyobjects should now carry the same thing types as conveyors (notable example; they'll now carry Crawlas when they wouldn't before)
* The drifting issue with players on spinning polyobjects should be fixed. (I swapped in the old bad hack for a new hack that should work like it's supposed to)

See merge request !6
2015-04-14 20:10:07 -04:00
RedEnchilada
d2c74e1b13 Fix the west/south blockmap issue without fucking up huge maps 2015-04-08 21:32:07 -05:00
RedEnchilada
09345ce929 Revert "Guess what major breaking-news bug I just fixed B)"
This reverts commit 9e306394dd.
Sorry MI, but this completely breaks large maps like AGZ.
2015-04-08 20:50:49 -05:00
Wolfy
55bfb4ffe8 Re-fix the server global variable in Lua 2015-04-08 13:46:30 -04:00
RedEnchilada
210279625a Extra tiny logic fixes; swinging chains are smoother, and polyobjects can follow single-waypoint sequences 2015-04-06 11:23:08 -05:00
RedEnchilada
1078be3c30 Insert polyobject planes into their proper spot in the draw list; replace related hack with other hacks 2015-04-06 11:22:27 -05:00
JTE
4f06650a1e Removed the small velocity boost you get for surfacing from goo.
This will prevent the goo from maintaining momentum for too long,
and shorten the amount of time before you stabilize on the surface.
2015-04-04 18:39:32 -04:00
JTE
4016d15f7b Adjusted platform-creating velocity of goo water.
Now it will only bounce ONCE when you jump on it, and Knuckles
just barely gets enough velocity out of his jump for even that.
This will leave players vulnerable and annoyed for a lot less
time while they wait to finish bouncing.
2015-04-04 18:38:20 -04:00
RedEnchilada
5a4d9f885b Making RotateThings a bit nicer?? 2015-04-01 20:41:53 -05:00
RedEnchilada
6616b030bb Replace the old spinny polyobject player drifty hack thing with a new one that actually works 2015-04-01 18:15:46 -05:00
RedEnchilada
fb120299bb Make polyobjects carry the same objects as conveyors for consistency 2015-04-01 17:39:20 -05:00
Alam Ed Arias
83461f49c5 Merge branch 'public_todo_next' into next
All commits that was in private that are not SRB2 2.2 had moved to public's next
2015-04-01 12:32:34 -04:00
MonsterIestyn
9e306394dd Guess what major breaking-news bug I just fixed B)
...

(It's that infamous intangible West/South linedefs bug, which was really a blockmap-related bug all along. AND IT WAS SO SIMPLE TO FIX!)

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9048 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:14 -04:00
RedEnchilada
bd5dcb0b0a Make sure lump name is zeroed out before writing so it always ends in a terminating char
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9047 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:14 -04:00
MonsterIestyn
a797e88bb9 Red's last commit should have been using "pgl", not "gl" for function name prefixes, so the compiler would be happy. Also, more simplicity in my camera code please! Simplified some of the checks for whether a camera should chase or not etc
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9046 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:14 -04:00
RedEnchilada
308a958653 yellow wanted me to push this cus it fixed md2 translucency for her test cases
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9045 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:14 -04:00
RedEnchilada
ada9b6a9ea I was helping yellow debug a crash and we found out this thing never actually fixed the crash like it was supposed to so it's fixed now -3-
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9044 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:14 -04:00
MonsterIestyn
076719e6a4 P_CheckSight should ideally be called AFTER most other things in things like P_LookForPlayers at least
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9043 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
d915a8142d Super skin colors are now available for use with mobj.color (but not player.skincolor, for obvious reasons), complete with the names for them (SKINCOLOR_SUPER1-5, TSUPERx, KSUPERx and MAXTRANSLATIONS to boot)
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9042 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
6cff0bba70 Base draw distances on viewx/viewy coordinates, NOT the player object's coordinates (this can cause problems with things like skyboxes for instance). Splitscreen's player 2 should not affect what sprites player 1 can see, and vice versa! Especially not for precipitation, that just looks ridiculous.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9041 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
2d9d028bea Removed Lua's access to subsector/linedef validcounts and camera viewheight/startangle, since they are all useless for Lua purposes
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9040 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
4aa0b7a2a8 Fixed changing of player states with respect to vertical spring direction; only thing that should affect it is the player's own gravity.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9038 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
34c396825f tmsprung is dead, long live MFE_SPRUNG a bunch of other painful tweaks to springs to fix this long-standing "AAA IM STUCK FOREVER UNDER A SPRING" thing when you touch a vertical spring from below (or above for reverse)
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9037 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
2480382b6b remove camera_t's "relativex" option from Lua stuff, it's unused anyway (todo: possibly remove said variable from existence altogether? Some disabled code still uses it though)
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9036 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
69f77a6c2e Not sure how these things work, but presumably this was meant to be here
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9029 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
c8c7878005 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!
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9009 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
474ad01b46 No more stupidity for No More Enemies special plz NME special now acts similarly to Each Time, checking all sectors sharing the same tag as itself for any enemies/bosses hiding within. This also supports cases where the tagged sectors are FOF control sectors. When the situation is asitsaysonthetin, NME acts like a normal trigger linedef should and executes all linedef execs around the sector it's located in.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9005 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:12 -04:00
MonsterIestyn
af4c2fe391 Some minor cleanup for OpenGL sprite/MD2 code 2015-03-31 18:00:04 -04:00
MonsterIestyn
965bd2f694 Crawlas now use only one state for looking each 2015-03-31 17:56:06 -04:00
Ronald Kinard
2b826bd50c Merge branch 'next' into internal-master
Synchronize for STJr/SRB2!5.
2015-03-30 16:25:28 -05:00
RedEnchilada
70732f6475 Make solid midtexture trick work properly(?) for polyobjects 2015-03-30 13:06:04 -05:00
RedEnchilada
808775de02 Effect 4 on a map line now makes the front midtexture solid
(Supports Effect 5 repeating of arbitrary lengths, but not of the automatic "top-to-bottom" type; just use Impassible there!)
2015-03-29 00:49:27 -05:00
Ronald Kinard
a2af7ba305 Merge branch 'master' into next
Synchronize with master for STJr/SRB2!4.
2015-03-24 23:12:01 -05:00
Ronald Kinard
0e3ce03ca9 Merge branch 'master' into master-internal
Synchronize with public master for STJr/SRB2!4.
2015-03-24 23:07:03 -05:00
Ronald Kinard
53680903e5 Fix compilation and debugging on Windows.
Core code has too many #define dependencies on interface-specific
defines. This means that it's currently not possible to safely
separate the core and interface code into different contexts. The
core code should be refactored to accomadate for this because we
should not have any interface-specific code in core in the first
place.

This reverts the static library SRB2Core from a7135094 and instead
adds the core sources to the SRB2SDL2 target directly.

So frustrating...
2015-03-24 19:32:58 -05:00
Ronald Kinard
d407d280ad Merge branch 'next' into internal-master
Synchronize STJr/SRB2!3
2015-03-08 21:54:47 -05:00
Ronald Kinard
ad6535ca51 Merge branch 'master' into next
Synchronizing STJr/SRB2!3
2015-03-08 21:50:21 -05:00
Ronald Kinard
c43b41e183 Fix generation of SRB2DD target.
It still won't compile correctly. But this should avoid the error
messages related to it.
2015-03-08 04:30:07 -05:00
Ronald Kinard
8472075960 Prepend ASM sources with the current source directory in CMake.
This fixes generation with USEASM enabled.
2015-03-08 04:16:16 -05:00
Ronald Kinard
a713509493 Refactor CMake to allow source grouping and separation of interfaces.
Core and SDL2 are two separate targets now. Core is a static library
that is linked into SRB2SDL2. The sources for both are separated.
When using an IDE like Visual Studio or Xcode, the source code
organized into groups that explain what that group of sources does.

In the future, "Main" could be split into a few more groups based on
file prefixes, but I think the way it is set up works for now.

Makefile targets are not affected by source_groups and typing `make`
will automatically compile both the "Core" library and SRB2SDL2
itself.
2015-03-08 03:26:54 -05:00
Ronald Kinard
f28b050c07 Append current branch name to comp version string. 2015-03-04 20:15:57 -06:00
JTE
7964f3b044 Removed the need to add "Status = 1" to all new Character select entries for it to become active.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9002 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 20:44:32 -05:00
JTE
c1bfde0027 Fixed WGL code "device mode" breaking.
The devil is in the details.

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9001 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 20:44:32 -05:00
JTE
8d7b5941a8 Changed super colors to make them pulse instead of flash. Removed alt. supercolors from replay ghost stuff, because that's stupid. :/
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8999 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 20:43:11 -05:00
JTE
092134ad0c Title screen cheat "devmode".
Access the benefits of -debug, console devmode, and a complete gamedata.dat (all secrets unlocked) all in one go.
Moved "#if 0" and "#if 1" to "#ifdef DEVMODE" so the existance of this cheat and MD5 validation and all that can be toggled in one place too.

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8998 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 20:43:09 -05:00
MonsterIestyn
9b0e09877e gametype command now prints gametype NAMES instead of numbers. Even prints "Single player" when appropriate!
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8997 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 20:42:12 -05:00
JTE
0dff0d84de New HD SRB2 icon by VAdaPEga.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8994 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 20:07:56 -05:00
Alam Ed Arias
82fc6fd4c0 whitespace cleanup 2015-03-01 19:38:42 -05:00
Wolfy
19b52d19cb Have super sparks scale with the player
Fixes https://mb.srb2.org/showthread.php?t=40279

Should work fine, but do keep in mind that this fix is untested.
2015-03-01 19:38:42 -05:00
MonsterIestyn
ffc1d3cb64 Correcting a most minor math mistake
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8992 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 19:38:00 -05:00
MonsterIestyn
2d8868feca Made HWR_InitMD2 and HWR_AddSpriteMD2/HWR_AddPlayerMD2 slightly less stupid with MD2-related searches in md2.dat: *Don't go barmy and search for a player skin called "THOK" when you already found the sprite called "THOK" beforehand! (or any other sprite prefix for that matter) *Don't make errors appear only for the last sprite/skin when it doesn't make sense to do so!!
Todo: Stop the redundancy that currently goes on with adding MD2s on game start-up (note that HWR_AddSpriteMD2/HWR_AddPlayerMD2 are run for all sprites/skins BEFORE HWR_InitMD2 is called)

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8988 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 19:38:00 -05:00
Matt Walsh
f3e6770e9a Well that shows you how much we care about the old special stages *or* race!
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8985 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 19:38:00 -05:00
Matt Walsh
0a7f3751f6 Add in missing super check
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8984 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 19:38:00 -05:00
MonsterIestyn
8232dbca10 *Fixed OpenGL's handling of cv_translucency effects (should not remove shadows if off, but perhaps make them use default alpha?), someone was a bit hasty! *De-stupified the MD2 status checks regarding drawing of sprites - if they're already checked before calling HWR_DrawSprite, there's no point doing them WITHIN the function as well *Split off sprite shadow code into HWR_DrawSpriteShadow for convenience
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8983 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 19:38:00 -05:00
Alam Ed Arias
6513954789 whitespace cleanup 2015-03-01 19:30:22 -05:00
Wolfy
627889eec1 Have super sparks scale with the player
Fixes https://mb.srb2.org/showthread.php?t=40279

Should work fine, but do keep in mind that this fix is untested.
2015-03-01 19:28:57 -05:00
Ronald Kinard
967c2a324a Merge branch 'next' into internal-master 2015-03-01 02:21:07 -06:00
Ronald Kinard
15f0670c43 Merge branch 'fix_each_time' into next
Conflicts:
	src/p_floor.c
2015-03-01 02:13:46 -06:00
MonsterIestyn
0ab6710dfa Guess what major breaking-news bug I just fixed B)
...

(It's that infamous intangible West/South linedefs bug, which was really a blockmap-related bug all along. AND IT WAS SO SIMPLE TO FIX!)

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9048 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:24 -06:00
RedEnchilada
8274b529d5 Make sure lump name is zeroed out before writing so it always ends in a terminating char
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9047 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:24 -06:00
MonsterIestyn
d818b7af50 Red's last commit should have been using "pgl", not "gl" for function name prefixes, so the compiler would be happy. Also, more simplicity in my camera code please! Simplified some of the checks for whether a camera should chase or not etc
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9046 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:23 -06:00
RedEnchilada
f6de5cc4d9 yellow wanted me to push this cus it fixed md2 translucency for her test cases
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9045 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:22 -06:00
RedEnchilada
a30222d8e6 I was helping yellow debug a crash and we found out this thing never actually fixed the crash like it was supposed to so it's fixed now -3-
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9044 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:22 -06:00
MonsterIestyn
643dc4cbaa P_CheckSight should ideally be called AFTER most other things in things like P_LookForPlayers at least
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9043 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:21 -06:00
MonsterIestyn
16b2dc3b54 Super skin colors are now available for use with mobj.color (but not player.skincolor, for obvious reasons), complete with the names for them (SKINCOLOR_SUPER1-5, TSUPERx, KSUPERx and MAXTRANSLATIONS to boot)
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9042 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:20 -06:00
MonsterIestyn
fb47b046da Base draw distances on viewx/viewy coordinates, NOT the player object's coordinates (this can cause problems with things like skyboxes for instance). Splitscreen's player 2 should not affect what sprites player 1 can see, and vice versa! Especially not for precipitation, that just looks ridiculous.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9041 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:20 -06:00
MonsterIestyn
32bf550d08 Removed Lua's access to subsector/linedef validcounts and camera viewheight/startangle, since they are all useless for Lua purposes
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9040 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:19 -06:00
MonsterIestyn
e83fa3dc43 Partial damage system overhaul: P_DamageMobj, P_KillMobj, P_HitDeathMessages and P_RingDamage now all take a "damagetype" variable that determines what type of damage was dealt. Does not replace the "damage" variable, we'll have to see if that is worth keeping another time?
Currently the main benefit of these changes is that a number of non-Object-related hazards/deaths no long rely on dummy MT_NULL objects or other hacks to tell the game how you were hurt/killed, yay

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9039 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:18 -06:00
MonsterIestyn
ff8c09922d Fixed changing of player states with respect to vertical spring direction; only thing that should affect it is the player's own gravity.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9038 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:18 -06:00
MonsterIestyn
55c1ad4368 tmsprung is dead, long live MFE_SPRUNG a bunch of other painful tweaks to springs to fix this long-standing "AAA IM STUCK FOREVER UNDER A SPRING" thing when you touch a vertical spring from below (or above for reverse)
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9037 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:17 -06:00
MonsterIestyn
a486b70bed remove camera_t's "relativex" option from Lua stuff, it's unused anyway (todo: possibly remove said variable from existence altogether? Some disabled code still uses it though)
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9036 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:16 -06:00
MonsterIestyn
860a9172e4 Giving S_PLAY_DEAD A_Fall again so player death sequence doesn't break ...for now.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9035 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:15 -06:00
MonsterIestyn
29b422ca10 Not sure how these things work, but presumably this was meant to be here
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9029 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:14 -06:00
Alam Ed Arias
51b783e85a cmake: Fixes to allow MSVC to compile
running is another story

Author:    Ronald Kinard <furyhunter600@gmail.com>
Date:      Wed Jan 28 02:09:03 2015 -0600

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9013 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:07:18 -06:00
MonsterIestyn
234300d4b6 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!
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9009 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:03:03 -06:00
MonsterIestyn
06039bbd9b No more stupidity for No More Enemies special plz NME special now acts similarly to Each Time, checking all sectors sharing the same tag as itself for any enemies/bosses hiding within. This also supports cases where the tagged sectors are FOF control sectors. When the situation is asitsaysonthetin, NME acts like a normal trigger linedef should and executes all linedef execs around the sector it's located in.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9005 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:03:02 -06:00
MonsterIestyn
c93ae69d9d Crawlas now use only one state for looking each SPR2_ constants added to dehacked.c for use in SOC/Lua (both "SPR2_RUN" and "SPR2_RUN_" are in theory the same thing in this implementation, likewise for other 3-char name cases) spr2names array/table also added for use in Lua - it works identically to Lua's sprnames, only with SPR2_ constants/string names instead Some minor cleanup for OpenGL sprite/MD2 code
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9004 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:03:01 -06:00
JTE
1d87f7d193 Removed default character select entries from hardcoding.
Find them in MAINCFG in player.dta instead, where they belong. This means that player.dta finally contains ALL playable character-related data, with none of it in the iwad or exe.

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9003 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:03:00 -06:00
JTE
272d8e3f91 Removed the need to add "Status = 1" to all new Character select entries for it to become active.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9002 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:02:59 -06:00
JTE
301f33f2b7 Fixed WGL code "device mode" breaking.
The devil is in the details.

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9001 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:02:59 -06:00
MonsterIestyn
eef1406bd8 WARNING: I HAVE PROBABLY JUST BROKEN 3/4 OF THE GAME WITH THIS COMMIT PolyObject setup is now much simplified: First line alone spawns a PolyObject, PolyObject Params apply extra settings Disabled Explicitly Include Line for the meantime, since goodness knows how anyone's supposed to use that at all (let alone working properly) Starting translucencies from PO Params is stored for reference in netgames
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9000 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:02:58 -06:00
JTE
3a0f5fd2ae Changed super colors to make them pulse instead of flash. Removed alt. supercolors from replay ghost stuff, because that's stupid. :/
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8999 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:02:57 -06:00
JTE
b29a3958e0 Title screen cheat "devmode".
Access the benefits of -debug, console devmode, and a complete gamedata.dat (all secrets unlocked) all in one go.
Moved "#if 0" and "#if 1" to "#ifdef DEVMODE" so the existance of this cheat and MD5 validation and all that can be toggled in one place too.

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8998 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:02:56 -06:00
MonsterIestyn
ab78b722d5 gametype command now prints gametype NAMES instead of numbers. Even prints "Single player" when appropriate!
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8997 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:02:55 -06:00
JTE
2e8a5a3495 Updated dehacked.c to match info.h new player states.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8996 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:02:54 -06:00
JTE
b7e3dfbd74 Updated version number to 2.2 and enabled active dev mode ("Trunk" versionstring and no MD5 checking on main wads)
We're officially into 2.2 development now, yay! \o/

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8995 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:02:54 -06:00
JTE
bfbd326821 New HD SRB2 icon by VAdaPEga.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8994 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:38 -06:00
JTE
b2681984a6 Merge branch 'player-animations'
SPR_PLAY now calls up a secondary spritedef for all animations for all players. Old character wads (including player.dta) are no longer compatible.

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8993 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:38 -06:00
MonsterIestyn
c15153053c Correcting a most minor math mistake
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8992 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:37 -06:00
MonsterIestyn
93734b6d60 Made HWR_InitMD2 and HWR_AddSpriteMD2/HWR_AddPlayerMD2 slightly less stupid with MD2-related searches in md2.dat: *Don't go barmy and search for a player skin called "THOK" when you already found the sprite called "THOK" beforehand! (or any other sprite prefix for that matter) *Don't make errors appear only for the last sprite/skin when it doesn't make sense to do so!!
Todo: Stop the redundancy that currently goes on with adding MD2s on game start-up (note that HWR_AddSpriteMD2/HWR_AddPlayerMD2 are run for all sprites/skins BEFORE HWR_InitMD2 is called)

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8988 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:36 -06:00
Matt Walsh
58516ebe10 Well that shows you how much we care about the old special stages *or* race!
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8985 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:35 -06:00
Matt Walsh
389299230d Add in missing super check
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8984 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:35 -06:00
MonsterIestyn
5d1ef1ff31 *Fixed OpenGL's handling of cv_translucency effects (should not remove shadows if off, but perhaps make them use default alpha?), someone was a bit hasty! *De-stupified the MD2 status checks regarding drawing of sprites - if they're already checked before calling HWR_DrawSprite, there's no point doing them WITHIN the function as well *Split off sprite shadow code into HWR_DrawSpriteShadow for convenience
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8983 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:34 -06:00
Alam Ed Arias
2609745b51 it was me, Duo! 2015-02-06 10:22:16 -05:00
Alam Ed Arias
ed0d70feca do not typedef off_t when we do not need to 2015-02-05 17:32:27 -05:00
Alam Ed Arias
542295c863 remove comptime.h from cmake file list 2015-02-05 17:32:26 -05:00
Ronald Kinard
062a746fdd Further fix IPv4 when IPv6 is available 2015-02-05 15:36:07 -06:00
Ronald Kinard
ae05613460 Fix IPv4 connectivity when IPv6 is enabled 2015-02-05 00:32:54 -06:00
Alam Ed Arias
3d498fe894 VERSIONSTRINGW is funny 2015-02-02 15:21:58 -05:00
Alam Ed Arias
7cf1a1aab8 fixup cmake merge 2015-02-02 14:58:51 -05:00
Ronald Kinard
e08bd45227 cmake: Separate debug symbols on gcc
Only when actually making the debug target though!
2015-02-01 22:14:52 -06:00
Ronald Kinard
d7015d1492 cmake: Fix nasm/add yasm support
Tested to work on MSVC, mingw-gcc
2015-02-01 21:25:02 -06:00
Ronald Kinard
194ce626e1 cmake: Add nasm support
Enables ASM-NASM and adds tmap*.nas to sdl target.

No idea if this actually works.
2015-02-01 19:18:25 -06:00
Ronald Kinard
8d3b948e1b cmake: Fix compilation for MSVC 2015
snprintf is now available in MSVC 2015!
2015-02-01 19:02:08 -06:00
Ronald Kinard
ec79756c42 cmake: copy DLLs to build directory in MSVC
this is done as a POST_BUILD step
2015-01-31 22:40:36 -06:00
Ronald Kinard
4d3a7dd8fb cmake: fix NDEBUG on Debug
wow i'm stupid
2015-01-29 00:17:47 -06:00
Ronald Kinard
70f046a320 cmake: on mac, check Resources in bundle first.
on non debug, check assets folder in src as well
2015-01-28 23:38:40 -06:00
Ronald Kinard
e54338ef01 cmake: fix Windows linking 2015-01-28 23:20:21 -06:00
Ronald Kinard
57037e4124 cmake: fixes to enable linux compilation
string.c, capitalization, find fixes
2015-01-28 20:15:24 +00:00
Ronald Kinard
68f8a5b0f9 cmake: build bundle and dmg on install/package 2015-01-28 19:29:16 -06:00
Ronald Kinard
0909fce2e3 cmake: Configure source via cmake
silently fixing a bad malloc here too shhhhhhhhh
2015-01-28 18:03:41 -06:00
Ronald Kinard
53799eb390 cmake: Add CPack Package Generation
Generates zips only at the moment
2015-01-28 16:42:05 -06:00
Ronald Kinard
1c9de50ad2 cmake: Search SDL2_main separately for MSVC 2015-01-28 15:33:29 -06:00
Ronald Kinard
20d6a7e675 cmake: exe icon on windows 2015-01-28 02:12:14 -06:00
Ronald Kinard
2f1367aab6 cmake: Fixes to allow MSVC to compile
running is another story
2015-01-28 02:09:03 -06:00
Ronald Kinard
495ea65cc5 Add GME and SDL2_mixer
Also support dynamic/static opengl switching
2015-01-28 01:20:43 -06:00
Ronald Kinard
479ebc3f94 Add Xcode target support
It is really messy at the moment. There is no support for copying the
necessary frameworks and dylibs out to the bundle for distribution, and
it is a frankenstein of manual find_library and find_package which can
sometimes pick up Homebrew dylibs.
2015-01-28 00:58:30 -06:00
Ronald Kinard
05f5ec664a Initial CMake support pass
Compiles the SDL2 target on Windows successfully
2015-01-27 23:46:39 -06:00
Alam Ed Arias
45e8ec34a6 always turn on LFS support when compiling for a Linux/GNU system with libpng support 2015-01-10 17:35:36 -05:00
Alam Ed Arias
e28882a56d oh, nPlaneVerts is a size_t?, well, then we need to use sizeu#() 2015-01-10 17:27:24 -05:00
Alam Ed Arias
f5cd1d5ebc add check on write failed in old TGA screenshot code 2015-01-10 17:26:29 -05:00
Alam Arias
0c106a4ccc I await the rise of AltimitOS because seriously, fuck this nonsense 2015-01-09 23:56:00 -05:00
Alam Arias
8bee6bef59 Make sure clear_conditionsets feeds in 1 to MAXCONDITIONSETS instead of 0 to MAXCONDITIONSETS-1, so that M_ClearConditionSet can use them all properly AND clear all condition sets properly.
Apparently the mistake also caused myargc to be cleared in Linux64 SDL2 (as pointed out by that ilag11111 guy on GitHub), so that should be fixed now too.
2015-01-09 23:55:56 -05:00
Alam Arias
7535bb261f Account for the separation of F11 and F12 in the keycodes list 2015-01-09 23:55:52 -05:00
Alam Ed Arias
73b3287b19 SRB2 2.1.14 release 2015-01-01 14:50:31 -05:00
Alam Ed Arias
d959d0e462 Merge remote-tracking branch 'wolfy852/patch-2' into next 2014-11-29 13:08:32 -05:00
Ronald Kinard
54f0d0c110 IN PROGRESS: porting eternity slopes from srb2cb 2014-11-18 18:45:57 -06:00
Sryder13
3f1bb6359f Merge remote-tracking branch 'upstream/master' 2014-11-14 22:21:07 +00:00
Sryder13
e90286ae52 Fix the polyobject crash 2014-11-14 22:19:44 +00:00
Ronald Kinard
3fd2a705ee Maybe this is the last warning related commit? 2014-11-14 00:04:54 -06:00
Ronald Kinard
98c3c3a3ae More warning squashing 2014-11-13 23:09:57 -06:00
Ronald Kinard
3eafca0dc1 Fix compile errors on win32, warnings elsewhere 2014-11-13 22:58:08 -06:00
Ronald Kinard
2feda0b560 Fix second joystick in sdl 2014-11-13 22:34:47 -06:00
Ronald Kinard
be1565fce3 Add support for new HWR functions in win32 and sdl12 2014-11-13 22:34:09 -06:00
Ronald Kinard
869c4241eb Restrict mouse to window when in focus 2014-11-13 19:18:24 -06:00
Ronald Kinard
d056e82b3b Parse GL version correctly. 2014-11-13 18:20:32 -06:00
Ronald Kinard
d8484a86e0 Virtual resolutions in OpenGL
Also made fades use core functions if they are available.
2014-11-13 18:06:38 -06:00
Ronald Kinard
5d0eafb26a Fix MOUSE4/MOUSE5
MOUSE6-8 will not be supported on SDL2 as there is no interface for them.
2014-11-13 15:31:32 -06:00
Ronald Kinard
80891e916d Use scancodes instead of keycodes for locale independence.
ONLY US KEYBOARDS SUPPORTED! THAT'S HOW WE DO IT IN AMURRICA
2014-11-13 15:19:39 -06:00
Ronald Kinard
0913bd44af Fix mouse warping
In some cases, the warp back to center was being detected as a mouse motion, causing all sorts of silliness with the mouse. The workaround is by only using the first motion event and ignoring every event after that, until the next call to I_GetEvent.
2014-11-13 03:51:33 -06:00
Ronald Kinard
b82f64dea5 Display error window on crash 2014-11-13 01:51:29 -06:00
Ronald Kinard
4c55b5db20 Center only on display 1. No more multimonitor span. 2014-11-13 01:36:06 -06:00
Ronald Kinard
b7e8d7d044 Fix -nomouse 2014-11-13 01:04:17 -06:00
Alam Ed Arias
a721528c50 DunceEnchilada had been glared at 2014-11-12 09:28:14 -05:00
Alam Ed Arias
404b5f666c SRB2 2.1.12 release 2014-11-11 19:55:07 -05:00
Alam Ed Arias
3fe4921a24 Merge remote-tracking branch 'origin/master' into next 2014-11-02 01:12:23 -05:00
Alam Ed Arias
6d773c54a5 Use OpenGL 1.3 in static builds and on SDL interfaces 2014-11-02 01:11:59 -05:00
Alam Ed Arias
be73e84245 Merge remote-tracking branch 'origin/master' into next 2014-11-02 01:32:33 -04:00
JTE
9d1da548aa Fix hardware / r_opengl warnings. 2014-11-02 01:31:38 -04:00
Alam Ed Arias
aa612bcf91 whiteline checkup 2014-11-02 01:31:36 -04:00
Sryder13
0c0ede6f18 OpenGL: Polyobject Planes 2014-10-27 20:57:45 +00:00
ilag11111
97b61eb66d Each Time Fix Fix: Don't infinite loop when each time is set to trigger on exit. 2014-10-02 10:26:12 -07:00
Wolfy
197e5fce55 Change super transformation to freeze momentum instead of bitshifting
Fixes https://mb.srb2.org/showthread.php?t=39921 where the issue before was that when you transformed your momentum would still have you moving slowly, which could cancel out the animation.
2014-10-01 21:19:32 -05:00
ilag11111
2191e5b9de Each Time Fix: Multiple players simultaneously entering a sector, e.g. Tails carries one in. 2014-10-01 13:49:44 -07:00
Sryder13
1ab29ba96a Merge remote-tracking branch 'upstream/master' 2014-09-12 20:53:55 +01:00
Sryder13
781dd16fa6 Fix THOK MD2's not rotating with camera
Will also fix any other case that an mobj has a skin and a single frame.
2014-09-10 00:22:39 +01:00
Sryder13
987f9f5c26 Quick sky fix 2
walls not extending down when a thok barrier has top textures and both
ceilings have sky.
2014-09-09 23:57:12 +01:00
Sryder13
cee8fff7b3 Quick sky fix
Avoid Z-Fighting on the depth wall with the regular walls to stop the
possibility of regular walls being made partially invisible.
2014-09-09 01:59:19 +01:00
Sryder13
b2852ec0f4 OpenGL: Sky culling
Gets rid of stuff being drawn where the sky should be being drawn.
2014-09-08 23:29:05 +01:00
Sryder13
bc0b5505a8 OpenGL: Fix sky drawing
sky positioning and scaling more correct compared to software.
2014-09-08 00:55:32 +01:00
Alam Ed Arias
dc6f798a43 Merge remote-tracking branch 'origin/master' into next 2014-09-05 20:26:07 -04:00
Ronald Kinard
5b07cf8ff0 SDL2: Add 1600x1200 mode 2014-09-05 20:25:06 -04:00
Ronald Kinard
399eddefe6 SDL2: Do not use xinput, force directinput
Fixes axes issue with xinput controllers.
2014-09-05 20:24:57 -04:00
Ronald Kinard
31abd19f75 SDL2: Reimplement some stubbed commands
Also remove some unnecessary functions.
2014-09-05 20:24:39 -04:00
Ronald Kinard
eece38609e SDL2: Fix 320x200 mode 2014-09-05 20:24:25 -04:00
Ronald Kinard
c97eef238e Use gcc_struct on ATTRPACK too 2014-09-05 20:23:38 -04:00
Wolfy
8a4ec56ef5 Merge the dedicatedserver and server global variables
Previously in Lua, dedicatedserver would only return true if the player running the script was the one hosting the dedicated server. In all other cases, it would return nil. This fixes it to point to the server host no matter what.
2014-09-05 20:23:32 -04:00
Sryder13
ca0f0bf2fd OpenGL Fade masks
I think I've done this all right, someone correct me if I haven't.
2014-09-04 01:35:29 +01:00
Sryder13
da2b6f2c01 Fix certain textures with holes in
see: CEZ1 skybox in linear filtermodes.
2014-09-03 02:10:47 +01:00
Sryder13
d96eaa768c else added
less redundancy.
2014-08-30 14:36:18 +01:00
Sryder13
ae27ace7fe Polyobject translucency quick fix.
I realise what I did before may cause FOF's in the same sector to not be
drawn, if they were before.
2014-08-30 14:20:07 +01:00
Sryder13
278f2e9b66 Polyobject top/bottom texture + translucency
polyobjects do have top/bottom textures, silly.
And translucency.
2014-08-30 14:10:55 +01:00
Alam Ed Arias
b1e1163b91 evil changes 2014-08-27 22:43:10 -04:00
Alam Ed Arias
7cb77075d1 SRB2 2.1.11 release 2014-08-26 23:56:30 -04:00
Alam Arias
81cbdcccd5 Merge pull request #28 from wolfy852/master
Remove momentum reduction in CA_JUMPTHOK
2014-08-26 21:29:24 -04:00
Alam Ed Arias
d6c29e19ab SRB2 2.1.10 release 2014-08-05 19:59:40 -04:00
Wolfy
53c791b29c Remove momentum reduction in CA_JUMPTHOK
Also add new multiability handling for it
2014-08-04 13:38:19 -05:00
Alam Ed Arias
d066a7a6d1 Change mixer panning to make sense (for SDL12)
This makes positional audio in sdl work correctly (things to the left
    play sounds in the left speaker)
2014-08-04 11:57:29 -04:00
Ronald Kinard
8eef7239b2 Change mixer panning to make sense
This makes positional audio in sdl work correctly (things to the left
play sounds in the left speaker)
2014-08-04 02:48:18 -05:00
Ronald Kinard
25739b38e3 INTERFACE=sdl 2014-08-04 00:27:12 -05:00
Ronald Kinard
a0f959e597 Fix Makefile to target sdl correctly 2014-08-04 00:04:03 -05:00
Alam Ed Arias
c028c83235 SRB2 2.1.9 release 2014-08-03 23:49:33 -04:00
Alam Ed Arias
ab9934932e Merge branch 'master' into next 2014-08-03 23:41:57 -04:00
Alam Ed Arias
0386516946 Merge remote-tracking branch 'Furyhunter/sdl2' 2014-08-03 21:02:24 -04:00
Alam Ed Arias
e2d3ce1aed keep the old SDL interface 2014-08-03 21:02:04 -04:00
Alam Ed Arias
13f3fbac2e Merge branch 'master' into next 2014-08-02 11:11:09 -04:00
Alam Ed Arias
cd97685e5a fix build for sh sheel 2014-08-02 11:10:00 -04:00
Alam Ed Arias
abce10fd65 Merge branch 'master' into next 2014-07-29 15:53:53 -04:00
Alam Ed Arias
d8eceeb0ac add build is done message into Makefile 2014-07-29 14:14:59 -04:00
Ronald Kinard
03fe3bdad2 Replace sdl with sdl2
SDL1.2 is dead, long live SDL
2014-07-26 02:06:00 -05:00
Ronald Kinard
87df25a58c sdl2: Fallback resolution for gl fullscreen
to avoid a crash
2014-07-26 00:56:30 -05:00
Ronald Kinard
3a1a0c8871 sdl2: fix mouse grabbing in windowed
Should now ignore all motion events and not warp the mouse when the
window is out of focus.
2014-07-25 23:47:14 -05:00
Ronald Kinard
1bfea632c9 sdl2: windows exe rename srb2sdl2.exe 2014-07-25 23:08:37 -05:00
Ronald Kinard
e3c7bc0637 sdl2: Slow the mouse a bit
Fixes Furyhunter/SRB2#1 but probably makes mouse speed too slow on
Linux. Whatever.
2014-07-25 22:55:48 -05:00
Alam Ed Arias
424d6531c9 Merge remote-tracking branch 'Furyhunter/sdl2' into sdl2 2014-07-25 20:00:46 -04:00
Alam Ed Arias
d438a8f8c2 doh, I forget one, and in SDL2's Makefile.cfg 2014-07-25 19:44:43 -04:00
Alam Ed Arias
f03e591f64 change SDL into HAVE_SDL 2014-07-25 19:10:24 -04:00
Ronald Kinard
b429cce3b6 sdl2: add -borderless option for windowed 2014-07-24 22:35:04 -05:00
Ronald Kinard
ce8d82aa52 sdl2: oops it should be 32 bpp in softblit 2014-07-24 21:46:35 -05:00
Ronald Kinard
93e00cc694 sdl2: -softblit, use smaller texture format
-softblit uses SDL2 software renderer backend for blitting
2014-07-24 21:32:47 -05:00
Ronald Kinard
8b0f374bfe sdl2: potential huge perf. boost to software
SDL_UpdateTexture is apparently not good for streaming textures.
So instead, I did SDL_LockTexture/Unlock.
2014-07-24 19:18:48 -05:00
Ronald Kinard
005b502756 sdl2: limit fullscreen resolution in OpenGL 2014-07-24 03:15:35 -05:00
Ronald Kinard
8890722223 sdl2: handle no AF support correctly (1, not 0)
GL_EXT_texture_filter_anisotropic is cool I guess
2014-07-24 03:03:41 -05:00
Ronald Kinard
39603487ec sdl2: restore anisotropic filtering support in gl 2014-07-24 03:01:16 -05:00
Ronald Kinard
716aa1f33a sdl2: fix mouse motion (remove -mousewarp) 2014-07-24 02:51:46 -05:00
Ronald Kinard
0d82e3b54b sdl2: reorder graphics initialization
GL Initialization needs to happen before window creation,
otherwise the GL library will get reloaded while in use and
Windows will have a heart attack. This is bad, obviously.
2014-07-24 00:20:34 -05:00
Ronald Kinard
4433be194f sdl2: software: clear window on mode change 2014-07-23 23:21:19 -05:00
Ronald Kinard
73e99fa96c sdl2: I_Error if we can't create gl context 2014-07-23 23:15:31 -05:00
Ronald Kinard
fc075e4c81 sdl2: use ABGR8888 texture on little endian system
This is a massive performance boost on slow processors, because
before, the intermediary buffer had to be swizzled to ABGR8888
before being uploaded -- for large resolutions this was an
enormous performance penalty.
2014-07-23 23:02:21 -05:00
Ronald Kinard
345b59f6f5 sdl2: code cleanup 2014-07-23 21:45:36 -05:00
Alam Ed Arias
a103697dd0 isFullscreen is unused? 2014-07-23 22:05:03 -04:00
Alam Ed Arias
1a731fb463 there no fade for non mixer builds 2014-07-23 22:04:46 -04:00
Ronald Kinard
9a4b2bd360 sdl2: restore vsync option (use sdl swap interval) 2014-07-23 19:46:12 -05:00
Ronald Kinard
20f871bd84 sdl2: opengl compiles fine, no TESTHW=1 needed 2014-07-23 19:43:15 -05:00
Ronald Kinard
d078e3e17f sdl2: fix opengl (almost) entirely 2014-07-23 19:39:41 -05:00
Ronald Kinard
fea559398a sdl2: we have colored rects in gl now I guess 2014-07-22 02:23:51 -05:00
Ronald Kinard
0a37bdf76d sdl2: start getting opengl working again 2014-07-22 01:23:08 -05:00
Ronald Kinard
145618785c sdl2: reuse window on mode change 2014-07-21 22:41:01 -05:00
Ronald Kinard
2618b1dd0b sdl2: truncate resolution list, add 16:9 hdtv modes 2014-07-21 22:16:34 -05:00
Ronald Kinard
1ac1d04cca sdl2: joystick fixes. don't pause in demo play/rec 2014-07-21 21:32:18 -05:00
wolfy852
9ab60d1295 Add LUA_EvalMath to Lua with function name EvalMath 2014-07-19 17:46:53 -05:00
wolfy852
d6b466b7dd Add skin flag for running on water 2014-07-05 03:23:49 -05:00
wolfy852
39ce16a468 Add the Jump Thok ability for use by custom characters 2014-07-05 02:50:07 -05:00
Alam Ed Arias
c130be77b1 Merge remote-tracking branch 'RedEnchilada/next' into next
Also clean up whitespaces
2014-06-19 13:00:36 -04:00
RedEnchilada
37d3780458 Add hook for chat messages, including csays 2014-06-18 15:28:09 -05:00
Alam Ed Arias
b520d61ba2 Merge branch 'master' into sdl2 2014-05-27 15:19:18 -04:00
Alam Ed Arias
15f976a06c Merge branch 'master' into next 2014-05-27 15:19:08 -04:00
Alam Ed Arias
b511294749 Merge remote-tracking branch 'Sryder13/master' 2014-05-27 15:14:55 -04:00
wolfy852
a8f5406233 Add P_Telekinesis and P_IsFlagAtBase to Lua. 2014-05-25 21:41:05 -05:00
Wolfy
9987d132fb Add P_DoSpring to base library. 2014-05-24 12:51:59 -04:00
Wolfy
f509c56e3c Unstatic P_DoSpring. 2014-05-24 12:49:15 -04:00
Wolfy
5316f8da96 Add P_SpawnSpinMobj to base library. 2014-05-24 12:46:46 -04:00
Wolfy
3f1038dcbe Unstatic P_SpawnSpinMobj. 2014-05-24 12:46:10 -04:00
Wolfy
ec443af3d9 Add P_SpawnThokMobj to Lua base library.
I don't know too much about this but I THINK I did it right.
2014-05-24 12:35:01 -04:00
Wolfy
ed82755b6d Unstatic P_SpawnThokMobj. 2014-05-24 12:30:33 -04:00
ilag
d8234f408b Ensures the force shield's movecount is correctly set before comparing 2014-05-15 11:36:17 -07:00
ilag11111
aafc0bcb0d Ensures that the force shield's sprite returns to the proper state after receiving an invincibility monitor.
Fixes http://mb.srb2.org/showthread.php?p=752815
2014-05-14 16:27:37 -07:00
Alam Ed Arias
d597856c8f Merge branch 'master' into sdl2 2014-05-02 21:32:31 -04:00
ilag
1af18c7013 Redo all changes I ended up losing trying to undo the mess I made.
Also, fix the issue pointed out by Alam.
2014-05-02 14:24:20 -07:00
Alam Ed Arias
0f8269fe6f merge sdl interface changes into SDL2 interface 2014-05-02 09:33:57 -04:00
Alam Ed Arias
f3bd8c6ef4 Merge branch 'master' into sdl2 2014-05-02 09:01:51 -04:00
Alam Ed Arias
ea7abe7c44 Merge branch 'master' of https://github.com/ilag11111/SRB2 2014-05-02 08:49:30 -04:00
ilag11111
b21d5c55c9 Uses fixed-point math to properly calculate the exact amount of space needed. 2014-04-25 13:17:05 -07:00
ilag11111
f7bbf8c6d0 Improved fix by changing the formula for how memory is allocated to arbitrary sample rate conversion. 2014-04-25 12:42:43 -07:00
ilag11111
60a115b0a7 Fix (Linux) 64-bit crash in CEZ3 (playback of sfx_litng3). 2014-04-25 00:37:13 -07:00
Dmitry Marakasov
7d52913add Make endianess detection more flexible
And fix it on FreeBSD, where _BIG_ENDIAN is not a flag indicating
big endian machine, but a constant to compare _BYTE_ORDER to.
2014-04-25 02:40:19 +04:00
Sryder13
c5aa433167 Merge remote-tracking branch 'upstream/master' 2014-04-24 15:37:07 +01:00
Alam Ed Arias
5b5fbe9aad fix suport for libpng 1.6 2014-04-21 23:07:02 -04:00
Sryder13
46e84465e8 OpenGL: FOF Cutting Fix 2
Fixes Translucent FOF's cutting Solid FOF's.
2014-04-20 10:35:50 +01:00
Sryder13
a230368c3d Merge remote-tracking branch 'upstream/master' 2014-04-20 10:33:47 +01:00
Alam Ed Arias
26d2d37d31 Merge branch 'master' into sdl2 2014-04-19 13:42:23 -04:00
Alam Ed Arias
8a9759a3e4 SRB2 2.1.8 release 2014-04-19 13:41:29 -04:00
Sryder13
bae7b5b2ac OpenGL: FOF cutting fix
Fixes any FOF's with FF_SOLID not cutting each other.
2014-04-19 17:21:30 +01:00
Alam Ed Arias
f3e8c01565 Update interfaces I_UpdateMumble function 2014-04-18 11:16:18 -04:00
Alam Ed Arias
a4919454e8 Merge branch 'master' into sdl2 2014-04-17 20:46:35 -04:00
Alam Arias
7fb530fd18 grr, shadows 2014-04-17 17:52:33 -04:00
Alam Ed Arias
d6e48e2168 whitespace cleanup 2014-04-17 17:47:51 -04:00
RedEnchilada
fa79c1856c Make player seethru code account for cut-away view 2014-04-17 13:46:40 -05:00
Alam Ed Arias
cb9f07fae8 Merge branch 'master' into sdl2 2014-04-17 14:04:02 -04:00
Alam Ed Arias
65c75f413c SDL2: disable hardware support by default for now 2014-04-17 14:02:51 -04:00
Sryder13
098eb28036 OpenGL Multi-Property FOF's
Multi-Property FOF's have their multiple side properties display in
OpenGL.
2014-04-17 13:02:34 +01:00
Sryder13
5b324924ff Undo MD2 Spin Frame Interpolation
Because apparently people don't like them like that.
2014-04-17 11:57:10 +01:00
Alam Ed Arias
537ad47d00 Will the real 2.1.7 release please stand up? 2014-04-15 22:20:13 -04:00
Alam Ed Arias
6b3a982434 Merge branch 'master' into sdl2 2014-04-15 13:57:39 -04:00
RedEnchilada
766f4c4acb Render skybox from proper place for cutaway view
(Disclaimer: I don't know C at all)
2014-04-15 12:39:23 -05:00
Alam Ed Arias
8b90b0c39e Merge branch 'master' into sdl2 2014-04-14 01:16:06 -04:00
Alam Ed Arias
02a3b0776c SRB2 2.1.7 release 2014-04-14 01:14:58 -04:00
Alam Ed Arias
8fea599bf8 disable x11 check 2014-04-09 19:55:05 -04:00
Alam Ed Arias
2005421a7e Merge remote-tracking branch 'ilag11111/sdl2' into sdl2
Conflicts:
	src/sdl2/i_video.c
2014-04-09 19:47:11 -04:00
ilag11111
c206d55568 Adds command line parameter -mousewarp to control the use of warping in place of grabbing. Works around bugs in certain versions of X. 2014-04-09 14:40:54 -07:00
Alam Ed Arias
a3f387200e XINPUT2 support check
reable check for x11 and check if XINPUT2 support before enable mouse grab mode
TODO: need to restore non-mousegrab code?
2014-04-09 14:57:47 -04:00
Alam Ed Arias
57c1fd602c clean up SDL2 video interface code 2014-04-09 14:54:15 -04:00
Alam Ed Arias
0aaaf067e3 update SDL2 interface to use SDL_JoystickNameForIndex 2014-04-09 14:54:15 -04:00
Alam Ed Arias
c59df51d19 Merge branch 'master' into sdl2
Conflicts:
	comptime.sh
2014-04-09 14:54:06 -04:00
Alam Ed Arias
2bd6573f5f grsoftwarefog is still hardware only 2014-04-09 14:52:38 -04:00
ilag11111
025523f3e3 Fix the previous commit to work on Linux32. Add more comments. 2014-04-08 19:19:23 -07:00
ilag11111
0306c1834a Disables input grabbing in Linux; allows alt-tabbing and other actions. 2014-04-08 19:02:45 -07:00
Alam Ed Arias
cec63aa4c0 restore ISO C90 support in r_opengl 2014-04-08 12:01:26 -04:00
Sryder13
b63e99efd8 OpenGL Screen Flip
Screen flipping in OpenGL is no longer done by inverting the screen
polygons.
2014-04-07 17:08:04 +01:00
Sryder13
81627a847f Merge https://github.com/STJr/SRB2 2014-04-07 17:01:56 +01:00
Alam Ed Arias
25448dec36 Compile Win32 EXE with -gdwarf-2 2014-04-07 10:03:14 -04:00
Sryder13
7e04e679a9 Player Spin Frame MD2 Interpolation
Player spin frames on MD2's interpolate correctly when moving slowly.
2014-04-07 12:37:15 +01:00
Ronald Kinard
ec559c84c1 sdl2: Fix mouse motion in fullscreen 2014-04-06 22:36:47 -05:00
Ronald Kinard
1882cf9233 sdl2: fix tabbing on last few commits 2014-04-06 21:50:56 -05:00
Ronald Kinard
080f8e4008 sdl2: restore joystick code
remarkably it still works even though the API has changed.
2014-04-06 21:43:40 -05:00
Ronald Kinard
6ea03a23b4 sdl2: Revert -win flag behavior, was glitchy 2014-04-06 21:23:59 -05:00
Alam Ed Arias
0ae6d5ae29 merge sdl interface changes into SDL2 interface 2014-04-06 19:01:04 -04:00
Alam Ed Arias
ea2e1a1144 Merge branch 'master' into sdl2 2014-04-06 18:38:04 -04:00
Sryder13
56fbdfdad3 OpenGL Translucent Midtexture Fix
Translucent Midtextures using holes with textures in them now work when
there is no FOF's above their sector.
2014-04-05 22:13:09 +01:00
Sryder13
fc12fc7cd4 OpenGL Screen Fading Fix
Screen Wipes now work as they did in 2.0.x.
2014-03-31 23:47:12 +01:00
Sryder13
d75d7cd09a OpenGL Splitscreen Fix
First screen in split-screen is now not completely black.
2014-03-31 00:07:55 +01:00
Sryder13
9f0aacb059 MD2 Texture load fix
Fixes MD2's using sprites on the first frame when they're loaded.
2014-03-30 17:45:58 +01:00
Sryder13
652f3395a9 Merge https://github.com/STJr/SRB2 2014-03-28 23:29:20 +00:00
Sryder13
fc978c79bb OpenGL wall Y offset
Fixed wall textures breaking when Y offset of the wall was too high.
2014-03-28 23:28:00 +00:00
Alam Ed Arias
a80d925daf Merge branch 'master' of github.com:STJr/SRB2 into sdl2 2014-03-28 11:59:57 -04:00
Alam Ed Arias
1b0b9fa537 Merge branch 'master' of https://github.com/ilag11111/SRB2
With whitespace fixup
2014-03-28 11:58:35 -04:00
ilag11111
544682f140 Proof of concept fix for Sonic not being MD2-able 2014-03-27 18:04:03 -07:00
Alam Ed Arias
bf51c09ea3 2.1.6 release
Merge branch 'master' of github.com:STJr/SRB2 into sdl2
2014-03-24 22:28:59 -04:00
Alam Ed Arias
32de698f5e SRB2 2.1.6 release 2014-03-24 22:17:59 -04:00
Alam Ed Arias
d040190a66 Merge branch 'master' of github.com:STJr/SRB2 into sdl2 2014-03-24 19:47:14 -04:00
Alam Ed Arias
a9c2395e8d SDL interface no longer use FMOD.dll 2014-03-24 19:40:54 -04:00
Alam Ed Arias
69d3f325f5 off_t for linux onl;y 2014-03-24 19:40:04 -04:00
Alam Ed Arias
f5b4187af6 disabled DEBUG section because of use of SDL_VideoDriverName() 2014-03-24 19:39:42 -04:00
Alam Ed Arias
21fc19f9d0 Win32 CPU cpuinfo was also using SDL_MMXExt() and SDL_Had3DNewExt() 2014-03-24 19:39:05 -04:00
Sryder13
3fbe3d38d3 OpenGL Patch Fill Fix
Patch Fill Drawing for intermission has been fixed to loop properly in
non aspect correct resolutions.
2014-03-24 20:06:13 +00:00
Sryder13
b075d1e3fa Redwall sky gone
More redwall sky shenanigans gone.
2014-03-24 17:29:14 +00:00
Sryder13
9e10e3278b Negative Light
Light no longer goes wrong when lightlevel of a sector is negative.
2014-03-24 17:11:45 +00:00
Sryder13
770c7eeade LightLevelToLum gone
LightLevelToLum unused by everything now, it seemed to be giving wrong
values for lightlevels.
2014-03-24 16:11:25 +00:00
Sryder13
103258e364 OpenGL Flipped Patch Drawing
V_FLIP in OpenGL.
2014-03-23 23:37:44 +00:00
Alam Ed Arias
bb6688107b bump Srb2mac project 2014-03-23 12:06:07 -04:00
Alam Ed Arias
15bd266cac SRB2 2.1.5 release 2014-03-23 12:00:29 -04:00
Alam Ed Arias
3a5fcc58da Let steal some OpenGL fixes
Merge branch 'master' of https://github.com/Sryder13/SRB2
2014-03-23 10:31:31 -04:00
Sryder13
734d6b56f0 OpenGL Flashpal Flashes
Fixed flashes for OpenGL Nukes/Teleports etc.
2014-03-23 00:04:35 +00:00
Alam Arias
5e24fe8937 Fixup Srb2Mac to exclude srb2.srb from Lite pack 2014-03-22 16:09:41 -04:00
Alam Ed Arias
2b781d82d5 Quartz is evil, we need to ask for a new modeList 2014-03-22 15:54:46 -04:00
Sryder13
9386b3900b OpenGL remove HOMs
Removes HOMs from OpenGL.
This also seems to have made skyboxes not draw ontop of everything else
on Intel GPU's.
2014-03-22 17:17:40 +00:00
Sryder13
1f452953b6 Post processor skybox
Post processing no longer done in the skybox.
2014-03-22 14:52:32 +00:00
Sryder13
7b6aeefea0 Hopefully correct
Pulled
2014-03-21 21:40:37 +00:00
Sryder13
ec902fed52 OpenGL Intermission picture fix
Fixes intermission pictures being taken in OpenGL.
2014-03-21 20:28:41 +00:00
Alam Arias
dcaac56f9a bump SRB2Mac version 2014-03-21 16:05:12 -04:00
Alam Ed Arias
ed72bd8fa1 SRB2 2.1.4 release 2014-03-21 19:21:06 +00:00
Alam Ed Arias
505ea76834 SRB2 2.1.4 release 2014-03-21 14:42:55 -04:00
Sryder13
c72fc0f10d Warning gone.
Hopefully.
2014-03-21 18:03:40 +00:00
Ronald Kinard
be96974742 sdl2: Fix mouse button input 2014-03-20 23:37:57 -05:00
Ronald Kinard
d298aa8e0d sdl2: Restore mouse motion support 2014-03-20 22:37:26 -05:00
Ronald Kinard
4c636123a4 sdl2: Bump up mixer support to SDL2_mixxer 2014-03-20 21:54:02 -05:00
Ronald Kinard
3839c2fd58 sdl2: Zero out buffer on sound callback 2014-03-20 20:07:50 -05:00
Ronald Kinard
40de8ea630 sdl2: Make -win toggle cvar instead of disabling fullscreen 2014-03-20 17:48:10 -05:00
Ronald Kinard
ad1b9f93c8 sdl2: Fix changing between fullscreen/windowed 2014-03-20 17:26:07 -05:00
Sryder13
24681013d1 Opaque translucent midtextures
Fixed translucent midtextures being opaque when there were multiple
lights in a sector.
2014-03-20 20:34:56 +00:00
Sryder13
dd16f58e38 OpenGL Skybox
OpenGL skyboxes.
Slight change to sky vertical offsetting.
2014-03-20 20:13:15 +00:00
Sryder13
7aa960d6d5 Software Cropped Patches
Fixed the stupid error I made that was causing software to not draw
cropped patches.
2014-03-20 10:29:53 +00:00
Ronald Kinard
beb2672f40 sdl2: fix mode changing 2014-03-20 02:26:02 -05:00
Ronald Kinard
559c7ceb4d sdl2: aspect correction in fullscreen, clear on blit 2014-03-20 02:14:03 -05:00
Ronald Kinard
3b137d094a sdl2: support windowed fullscreen as default 2014-03-20 02:08:45 -05:00
Ronald Kinard
715a12ff08 sdl2: support all windowed mode resolutions 2014-03-20 01:09:52 -05:00
Ronald Kinard
5273989dcd sdl2: restore keyboard input 2014-03-19 20:19:31 -05:00
Ronald Kinard
63e47c1f0e sdl2: it works 2014-03-19 19:55:07 -05:00
Ronald Kinard
cb55317533 sdl2: fix memory detection on 64-bit linux 2014-03-19 19:54:47 -05:00
Sryder13
2b80874646 MD2's replacing skinned mobj fix
MD2's that replace mobjs that have a skin, but the skin doesn't have an
MD2 now display.
2014-03-19 23:40:02 +00:00
Ronald Kinard
0fb3e3e568 sdl2: remove unsupported platform-specific folders 2014-03-19 18:24:23 -05:00
Ronald Kinard
648a91adec remove hi-res filters 2014-03-19 18:21:53 -05:00
Ronald Kinard
c282fe9dec i_video.c: remove old cruft and dead code 2014-03-19 18:15:58 -05:00
Sryder13
ba0c93d814 MD2 & Patch drawing fixes
MD2's can be translucent again.
MD2's can use sprites instead of another random texture if they have no
texture.
Patches are drawn in the correct place on non aspect correct
resolutions.
Cropped Patches are drawn.
2014-03-19 23:10:37 +00:00
Ronald Kinard
89cfb674d9 Stub out unfinished implementations 2014-03-19 17:52:18 -05:00
Ronald Kinard
2a827a98bb Initial SDL2 renderer impmlementation work. 2014-03-19 02:31:50 -05:00
Alam Ed Arias
2fed5d1270 SRB2 2.1.3 release 2014-03-18 13:56:54 -04:00
Ronald Kinard
eb70242fd0 Fix -dedicated under sdl 2014-03-17 22:37:56 -05:00
Ronald Kinard
15b177ebbb Fix state compression for 64-bit hosts 2014-03-17 13:23:16 -05:00
Alam Ed Arias
a03da73115 SRB2 2.1.2 release 2014-03-17 08:13:16 -04:00
Alam Ed Arias
3e0b5ef1cd SRB2 2.1.1 release 2014-03-15 18:55:07 -04:00
Alam Ed Arias
b93cb1b65a SRB2 2.1 release 2014-03-15 13:11:35 -04:00