Commit graph

362 commits

Author SHA1 Message Date
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
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
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 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 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
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 15f0670c43 Merge branch 'fix_each_time' into next
Conflicts:
	src/p_floor.c
2015-03-01 02:13:46 -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