Commit graph

7240 commits

Author SHA1 Message Date
Christoph Oelckers
7157db89b7 - fixed: A_VileAttack didn't check for MF7_DONTTHRUST.
This is a fixed version of Major Cookes pull request.
2015-01-22 14:13:25 +01:00
Christoph Oelckers
73bdd06ceb - removed bogus angle modification from reflection code. 2015-01-22 14:10:55 +01:00
Christoph Oelckers
667c4ba5fc Merge branch 'reflectfixsolo' of https://github.com/MajorCooke/zdoom 2015-01-22 14:01:27 +01:00
Christoph Oelckers
ae282eea53 Merge branch 'sethealthredux' of https://github.com/MajorCooke/zdoom 2015-01-22 13:59:59 +01:00
Christoph Oelckers
afb90040c2 Merge branch 'changevelptr' of https://github.com/MajorCooke/zdoom 2015-01-22 13:58:20 +01:00
MajorCooke
4fd87a1ce9 - Redid A_SetHealth.
- This function will not take the actor's health below 1, and any attempts to do so will simply set it to 1 in its place.
2015-01-20 22:54:30 -06:00
MajorCooke
fa411af1da - Fixed: Reflected projectiles were always changing their angles to 0. 2015-01-20 09:10:58 -06:00
Christoph Oelckers
2a0fc16ce3 Merge branch 'master' of https://github.com/rheit/zdoom 2015-01-20 10:26:30 +01:00
Christoph Oelckers
67312b907b - fixed: AInventory::AbsorbDamage may only be called for positive damage values, otherwise it ends up adding armor points. 2015-01-20 10:25:58 +01:00
Benjamin Moir
6dff8da503 Added +NODECAL and +FORCEDECAL actor flags
Added FHF_NOIMPACTDECAL for LineAttack
2015-01-20 12:05:00 +10:30
MajorCooke
105a62cc20 - Added pointer field to A_ChangeVelocity.
- Defaults to AAPTR_DEFAULT, otherwise known as the calling actor.
2015-01-19 14:54:20 -06:00
Edward Richardson
455e6cd214 Improved NewChaseDir performance by cutting repeats 2015-01-19 23:57:15 +13:00
Braden Obrzut
845bcdf14c - Attempt to disable all comparison operators on FString since unless we decide otherwise, it's a programming error to use them (caused implicit conversion to const char* and then the built in comparision was called). 2015-01-16 19:13:51 -05:00
Braden Obrzut
4bae3f9976 - Fixed: SDLVideo::CreateFrameBuffer cleared "retry" too soon resulting in infinite recursion if the code was used. 2015-01-16 18:58:23 -05:00
Braden Obrzut
1c2a6e8457 - Fixed: fullscreenoffset coordinates were determined by translated (offsets) coordinates instead of input coordinates. 2015-01-16 13:12:18 -05:00
Chris Robinson
1d20152aee Fix an errant use of FMODMIDIDevice 2015-01-15 13:25:02 -08:00
Chris Robinson
a8348b13de Merge remote-tracking branch 'zdoom/master' into openal
Conflicts:
	output_sdl/CMakeLists.txt
	src/namedef.h
2015-01-15 13:08:05 -08:00
Edward Richardson
db25322b4c P_SpawnPuff MF4_RANDOMIZE behaviour
- Doom's BulletPuff random spawn tics behaviour was lost at some point.
2015-01-13 21:01:00 +13:00
alexey.lysiuk
9df56216b3 Reworked check for embedded WADs put inside directory within archive
Any WAD from directory named the same as archive are treated as embedded
Fixed the issue with archive filename that wasn't taken into account
2015-01-12 11:28:40 +02:00
alexey.lysiuk
7ae3678abc Extended check for embedded WADs with one special case
Added loading of embedded WAD file if `myfile.wad` is placed in `myfile` directory inside `myfile.zip`
This helps with an unpleasant and very annoying fashion to zip a folder instead of just .wad and .txt files.
Recent examples include
Monster Hunter Ltd.: http://www.doomworld.com/idgames/?id=17601 and http://www.doomworld.com/idgames/?id=17625
Hell Awakened 2 Episode 1: http://www.doomworld.com/idgames/?id=17795
Bauhaus: http://www.doomworld.com/idgames/?id=17954
2015-01-11 11:43:43 +02:00
alexey.lysiuk
5336f1085c Fixed incorrect value that I_FPSTime() may return when OS X thread-based timer implementation is used 2015-01-11 10:30:30 +02:00
Randy Heit
bd3e49c0e8 Make actor damages readable from DECORATE (again) 2015-01-10 23:02:00 -06:00
Randy Heit
9b81e0e597 16-byte align frames on the VMFrameStack
- Fixed: Don't assume operator new will return a pointer with 16-byte
  alignment when allocating a block for the VMFrameStack. Because it seems
  it's actually guaranteed to be 8-byte aligned. Don't know where I got
  the idea it would always be 16-byte aligned.
2015-01-10 23:00:45 -06:00
Randy Heit
649875b17e Add if/else blocks for action sequences
- So now you can do something like this for an action:
    {
      if (health > 1000)
      {
        A_Scream;
      }
      else
      {
        A_XScream;
      }
    }
  Yes, the braces are required. Because I see too many instances where
  somebody writes an if statement in ACS and doesn't understand why it
  doesn't work right because they forgot braces.
- Fixed: Not actually putting an action between { and } would crash.
2015-01-08 21:36:42 -06:00
Christoph Oelckers
67b68e6b48 Merge branch 'pillar_tag0' of https://github.com/edward-san/zdoom 2015-01-08 20:00:43 +01:00
Edoardo Prezioso
c3c22315d9 - Added zero tag handling for Pillar actions.
Pillar actions will refer to the back sector if the tag is set to 0.
2015-01-08 19:52:23 +01:00
alexey.lysiuk
f3cc872677 Added Retina/HiDPI option to video mode menu (OS X only) 2015-01-08 12:50:23 +02:00
Randy Heit
7d0faa5bd5 Allow multiple actions per frame
- You can now call several actions from one frame by grouping them between
  curly braces. i.e. :
   POSS G 3 { A_Pain; A_Log("Ow! That hurt!"); }
  I will probably add an `if (something) { blah; blah; } else { wah; wah; }`
  construct later, but that's the extent of the munging I plan for DECORATE. The
  real work goes to the scripting language, not here. But if this branch is
  getting merged to master sooner than later, here's an immediate benefit
  from it right now.
2015-01-07 22:42:03 -06:00
Randy Heit
9044ac9503 Don't free non-registers.
- Fixed: ExpEmit::Free() would try to free REGT_NIL registers, which
  don't really exist
2015-01-07 22:31:48 -06:00
alexey.lysiuk
83c6798651 Fixed a very slim chance that window will be white and empty after startup
There are a few quite specific steps to reproduce this issue:
* 640x480 video resolution
* -iwad ... -warp ... command line parameters
* OS X 10.4 or 10.5 PowerPC, maybe performance related
When all these requirements are met, content view doesn't show up sometimes
The simplest solution for this issue is to set initial window size to non-existent video resolution
2015-01-07 14:50:55 +02:00
Randy Heit
00274c5e4c Split action parsing out of ParseStates() and into ParseAction() 2015-01-06 20:02:22 -06:00
Randy Heit
910451a351 Return a FxVMFunctionCall from DoActionSpecials()
- DoActionSpecials no longer sets the function call in FStateTempCall.
  Instead, it returns the function so the caller can do it.
2015-01-06 19:50:01 -06:00
Randy Heit
320fb9aec5 Allow empty parameter lists for action functions without parameters
- Using A_Scream() in a state instead of A_Scream is now valid.
2015-01-06 19:44:20 -06:00
Randy Heit
f71b1a8983 Whoops. 2015-01-06 19:34:11 -06:00
Randy Heit
b2abf224b5 Save function name for error message in ParseStates()
- The error "You cannot pass parameters to..." used the most recent token,
  which was always ( and not the function name. (Note that this was
  already fixed in the scripting branch, so this is probably going to be a
  conflict. Meh.)
2015-01-06 19:31:00 -06:00
Edoardo Prezioso
4ea918ab3b - Fixed bad characters in the info command string. 2015-01-06 23:16:25 +01:00
Christoph Oelckers
95496cdb4d Merge branch 'additions' of https://github.com/MajorCooke/zdoom 2015-01-06 19:05:56 +01:00
MajorCooke
643d37ab7c - Added A_SetFloatBobPhase(int). Takes a number between 0 and 63. If it's outside that range, it does nothing.
- Added A_Warp flags:
- WARPF_BOB: Gets the bob offset of actor pointer with the FLOATBOB flag.
- WARPF_MOVEPTR: The function is inversed to move the pointed actor with applied flags, but only the original caller will make the success/jump.
2015-01-06 11:55:41 -06:00
alexey.lysiuk
86b2a8530b Fixed launching with additional arguments from IWAD picker on OS X 10.4 2015-01-06 17:08:09 +02:00
alexey.lysiuk
1a69221f80 Removed trailing tab characters in Cocoa IWAD picker 2015-01-06 17:08:01 +02:00
Christoph Oelckers
dac2ae6411 Merge branch 'lorefix' of https://github.com/MajorCooke/zdoom 2015-01-06 15:55:22 +01:00
MajorCooke
f374cf514d - Fixed: Lore Shot didn't take DONTTHRUST into account. 2015-01-06 08:20:13 -06:00
Christoph Oelckers
2095f5ddf4 Merge branch 'osx_improvements' of https://github.com/alexey-lysiuk/gzdoom 2015-01-06 15:04:28 +01:00
alexey.lysiuk
324a1a7b77 Added support for dynamic device attachment and removal to IOKit gaming controllers handling 2015-01-06 13:40:39 +02:00
Edoardo Prezioso
4aac586dd8 - Fixed another erroneous FString comparison.
A comparison between an FString object and 'NULL' doesn't check for the emptiness of the examined string.
2015-01-05 23:37:40 +01:00
alexey.lysiuk
04d3802960 Fixed build issue with OS X SDK 10.4 2015-01-05 18:12:07 +02:00
alexey.lysiuk
b59fc59539 Added missing header comment 2015-01-05 17:26:06 +02:00
alexey.lysiuk
cb681aad2d Rearranged header files and #include's
Removed unused OS version check
Reduced number of headers
Fixed build with SDK 10.4
2015-01-05 17:24:54 +02:00
alexey.lysiuk
d418648e59 Fixed compiler warning with format string parameter 2015-01-05 15:46:57 +02:00
alexey.lysiuk
31d232e886 Added polling of analog axes to IOKit gaming controllers handling
This feature helps a lot with buggy gamepads that constantly generate events from "sticky" hats/sticks
Polling is enabled by default, use joy_axespolling CVAR to turn it on/off
2015-01-05 13:22:53 +02:00