Commit graph

4907 commits

Author SHA1 Message Date
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
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
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
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
nashmuhandes
2b12db153b New functions to manipulate an actor's roll.
- DECORATE functions: A_SetRoll code pointer.
- DECORATE expressions: "roll" variable.
- ACS functions: SetActorRoll, GetActorRoll.
2015-01-05 17:51:32 +08:00
unknown
f03e05d69f Merge branch 'joystick_pure_iokit' of https://github.com/alexey-lysiuk/gzdoom 2015-01-04 18:09:42 +01:00
unknown
d0ec3180c8 Merge branch 'master' of https://github.com/Blue-Shadow/zdoom 2015-01-04 18:07:49 +01:00
alexey.lysiuk
aa1f51d3d2 Reimplemented gaming controllers support in native OS X backend using pure IOKit 2015-01-04 14:08:53 +02:00
Randy Heit
8c105ff3a0 Use FxVMFunctionCall in FStateTempCall
- Leveraging FxVMFunctionCall simplifies FinishThingdef() slightly.
2015-01-03 22:45:11 -06:00
Randy Heit
86986446a5 Fixed: TicSpecial could run out of space when writing data
- Fixed: TicSpecial::CheckSpace() never thought it ran out of space due to
  unsigned math.
- Fixed: TicSpecial::GetMoreSpace() assumed only relatively small amounts
  of data would be written at a time so made no effort to ensure it
  actually got enough space. This assumption could be violated by writing
  a very long string, which can happen when replicating a string cvar.
2015-01-01 17:57:09 -06:00
Blue-Shadow
ba3988290c Added an option to A_Check[SightOr]Range to be able to perform a 2D-based distance check. 2015-01-01 22:16:51 +03:00
alexey.lysiuk
26cf383ead Fixed incorrect volume levels of Timidity instruments
With Emulate TiMidity option on (midi_timiditylike CVAR set to true) GUS emulation tried to output tones with infinite volumes
2014-12-31 12:48:18 +02:00
alexey.lysiuk
2900f03fa1 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_refactor 2014-12-31 11:17:45 +02:00
Christoph Oelckers
c57cc91d7c - cleaned up the RipLevel logic a bit to be less confusing. 2014-12-31 10:13:15 +01:00
Randy Heit
85a2042394 Reimplement CheckClass and IsPointerEqual functions
- The definition of FxGlobalFunctionCall_CheckClass was big and scary. I
  would say this is a big improvement, since now it gets to leverage the
  same framework that action functions use.
- The definition of FxGlobalFunctionCall_IsPointerEqual was not so big and
  scary, so this can't be called so much of an improvement as
  CheckClass was. (Which is not to say that it isn't better anyway.)
2014-12-30 23:36:56 -06:00
Randy Heit
c6c2b21901 Add FxVMFunctionCall class
- This replaces the general extensibility that had existed formerly
  in thingdef_function.cpp. Parameter parsing for function calls is
  shared with state parameter parsing. Functions are defined exactly in
  the same way as action functions, but without the 'action' keyword.
2014-12-30 23:31:07 -06:00
Randy Heit
9e3ed70021 Add non-action function parsing to the DECORATE parser 2014-12-30 21:15:48 -06:00
MajorCooke
4ddfd0f46a - Added 3 new properties and 3 functions to control them.
- Rippers will rip through anything with an equivalent ripper level, or if their level is between or on the min and max ranges.
- If no min or max is defined, it simply checks if the monster's ripper level is lower than the missiles.
- Functions: A_SetRipperLevel(int level), A_SetRipMin(int min), A_SetRipMax(int max)
- Properties: RipperLevel, RipLevelMin, and RipLevelMax.
- RipperLevel: Applicable to monsters and projectiles.
- RipLevelMin and RipLevelMax are only useful on monsters.
- By default, all are 0.
2014-12-30 19:59:31 -06:00
alexey.lysiuk
68dbd56eab Small cleanup in i_video.mm 2014-12-29 18:03:36 +02:00
alexey.lysiuk
5c88364300 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_refactor 2014-12-29 12:17:14 +02:00
alexey.lysiuk
1c102ef9c9 Internals of native OS X backend event processing are no longer exposed 2014-12-29 12:16:17 +02:00
alexey.lysiuk
21d557ee11 Further cleanup of i_main.mm 2014-12-29 12:10:18 +02:00
alexey.lysiuk
e3f92db395 Custom cursor in OS native backend without global variable 2014-12-29 11:34:57 +02:00
alexey.lysiuk
51afe8a541 Removed explicit release of window in Cocoa IVideo implementation
It caused a crash on older OS X like 10.5 and it absence doesn't lead to a memory leak
2014-12-29 10:29:16 +02:00
Christoph Oelckers
b5d0c5c357 - fixed: When a player drops his inventory, the dropped weapons must be checked for their class to ensure that they are not DehackedPickups which cannot be modified as intended. 2014-12-28 22:15:12 +01:00
alexey.lysiuk
4662069b94 Fixed compilation issues with GCC 4.2 2014-12-28 17:11:30 +02:00
alexey.lysiuk
a67dc4148b Split implementation of native OS X backend into several files 2014-12-28 16:35:00 +02:00
alexey.lysiuk
40d4dc502e Added comprehensive video modes iteration
Added letterboxing status for fullscreen modes
Brought back vid_listmodes console command
2014-12-28 12:48:08 +02:00
alexey.lysiuk
b66c712446 Moved out video handling from application controller 2014-12-28 11:58:21 +02:00
MajorCooke
519ff8b7d1 - HITTARGET/MASTER/TRACER now set the puff's pointer(s) within P_SpawnPuff.
- PUFFGETSOWNER, for the sake of compatibility, maintains override for target.
2014-12-27 14:15:54 -06:00
Christoph Oelckers
6f994cb3e7 Merge branch 'reflectfix' of https://github.com/MajorCooke/zdoom 2014-12-27 20:07:03 +01:00
MajorCooke
fdf2d6c493 - Cleaned up some of the reflective code.
- Added null checks to AIMREFLECT.
- The missile being reflected now corrects the z velocity to perfectly reflect towards the actor's middle.
2014-12-27 12:47:48 -06:00
Christoph Oelckers
5c658e98ec Merge branch 'master' of https://github.com/rheit/zdoom 2014-12-27 19:20:12 +01:00
Christoph Oelckers
cef8ae5632 - fixed: The A_BossDeath code in P_MorphedDeath was missing a NULL pointer check. 2014-12-27 19:19:15 +01:00
alexey.lysiuk
d43b201de9 Yet another code beautification 2014-12-27 18:13:47 +02:00
alexey.lysiuk
613c3293ce Further cleanup of native OS X backend video part 2014-12-27 17:47:21 +02:00
alexey.lysiuk
16965eb78a Removed vid_listmodes console command from native OS X backend
There is a hard-coded set of resolutions independent from the hardware
2014-12-27 17:47:12 +02:00
alexey.lysiuk
8b6966dd36 Got rid of SDL emulation's last remnants in native OS X backend 2014-12-27 15:56:46 +02:00
Randy Heit
1aa00f1b0e Draw player setup cursor equivalently to options menu cursors
- Explicitly size and position the text cursor in
  FListMenuItem::DrawSelector() the same way that the options menu does it
  using M_DrawConText(): By sizing it to a scaled 8x8 cell.
2014-12-26 19:22:09 -06:00
Braden Obrzut
84afd2252f - Fixed missing right paren on the first _Pragma from last commit. 2014-12-26 20:10:41 -05:00
Randy Heit
f76d137d33 Be less ugly when hiding warnings for using the %B formatter
- Take advantage of the new _Pragma operator to hide the printf warning
  suppression inside of macros instead of needing to litter the code
  around Printfs with a bunch of junk.
2014-12-26 18:58:59 -06:00
Randy Heit
bce7d12379 Change clipping in DSBarInfo::DrawGraphic()
- Fixed: When DSBarInfo::DrawGraphic() is used scaled, without fullscreen
  offset, if one of the top and left clip locations was 0 and the other
  was non-0, the 0 one would be clipped to the edge of a 4:3 box centered
  on the screen instead of the edge of the screen.
2014-12-26 18:40:15 -06:00
Randy Heit
798267d223 Remove memcpy from "Unknown command" error printing 2014-12-26 17:29:13 -06:00
Randy Heit
4017a6d864 Retry setting unknown cvars after CVARINFOs are processed.
- Fixed: Using +set cvarname and +cvarname on the command line would not
  work if cvarname was defined in CVARINFO. This should be the proper way to fix
  it. Rather than move all command line execution after loading CVARINFO,
  keep command line execution before wads are loaded. If an attempt is
  made to set an unknown cvar or to run an unknown command (which could
  potentially be shorthand for setting an unknown cvar), save it and try
  running it again after all CVARINFOs have been handled.
2014-12-26 17:21:57 -06:00
Randy Heit
f00c8e1943 Revert "Move C_ExecCmdLineParams() call slightly later in the startup process."
This reverts commit 3c376aa342.

- I was wrong. It breaks pullin and complete logging (at the very least).
2014-12-26 16:34:38 -06:00
Randy Heit
b30571b18e Merge branch 'master' of github.com:rheit/zdoom 2014-12-26 15:17:20 -06:00
Randy Heit
e0667544d2 Clamp chase_dist and chase_height because integer overflow is a thing. 2014-12-26 15:15:42 -06:00
Christoph Oelckers
f054f626d2 Merge branch 'master' of https://github.com/rheit/zdoom 2014-12-26 21:55:47 +01:00
Randy Heit
ec98937c88 Read script number as signed when parsing SARY chunks
- Fixed: Script arrays didn't work in named scripts because the loader
  read the script number as an unsigned word, hence it would never find
  named scripts, since they are stored with negative numbers.
2014-12-26 14:41:01 -06:00
alexey.lysiuk
0d1c954bc0 Fixed crash in game controller support code
Joystick's startup and shutdown (of Native OS X backend) can be called more than once
2014-12-26 22:11:03 +02:00
Christoph Oelckers
4f383e5aa7 - Nash's force fake contrast submission. 2014-12-26 13:43:49 +01:00
Christoph Oelckers
14d7b8b777 - fixed: Since no DrawText calls actually use the non-functional DTA_DestWidth, DTA_DestHeight or DTA_Translation and GCC cannot handle the fudging of the varargs, these will now trigger an assertion. No need to try to make something work that's always a programming error. 2014-12-25 21:08:31 +01:00
Christoph Oelckers
a5a17e45cf - fixed: Checking the terrain for any texture that was created after initializing the terrain data either returned random garbage or could even create an access violation. Added a range check to the array access function to prevent this. 2014-12-25 20:43:40 +01:00
Christoph Oelckers
1a39ac9243 - forgot to save this before committing... 2014-12-25 19:56:38 +01:00
Christoph Oelckers
6fd70ff320 - fixed: Trying to rotate a polyobject into its actual position during loading of a savegame still inflicted damage on all touching actors - including incomplete player pawns - and also got blocked by them.
Similar code already existed for the MovePolyobj function but apparently was overlooked here.
2014-12-25 18:46:50 +01:00
MajorCooke
f2551dceda - Corrected the species checking. 2014-12-24 17:49:58 -06:00
ChillyDoom
7d628a8c03 - Fixed: FCajunMaster::End() was missing a bot check. 2014-12-24 19:41:49 +00:00
Christoph Oelckers
23009bddb5 Merge branch 'hotfix2' of https://github.com/MajorCooke/zdoom 2014-12-24 10:46:52 +01:00
Christoph Oelckers
4384811745 Merge branch 'NetFix' of https://github.com/ChillyDoom/zdoom 2014-12-24 10:45:38 +01:00
MajorCooke
62a4945ca4 - Fixed: CAUSEPAIN didn't work with A_Explode calls featuring no damage. 2014-12-23 23:30:00 -06:00
Randy Heit
3fb9e754f1 Rename 'Pick' to 'RandomPick'
... because 'pick' is way too generic a name to spend a keyword on.
2014-12-23 21:46:27 -06:00
rheit
bfb94f13d2 Merge pull request #198 from MajorCooke/filters
- Added name filtering to all A_Damage/Kill/Remove functions.
2014-12-23 21:42:31 -06:00
rheit
39adff5e9e Merge pull request #200 from ChillyDoom/BotFixes
Bot fixes
2014-12-23 21:34:57 -06:00
Randy Heit
5caadeba4c Use a null check instead of strlen in ShoveChatStr 2014-12-23 21:33:47 -06:00
Randy Heit
d3272f75e7 Merge branch 'chat-len-fix' of git://github.com/Edward850/zdoom into Edward850-chat-len-fix 2014-12-23 21:31:53 -06:00
Randy Heit
d7d022144e Call A_Face() directly from A_CustomBullletAttack 2014-12-23 21:30:24 -06:00
Randy Heit
c13f1551e6 Merge branch 'custommissileptr' of git://github.com/MajorCooke/zdoom into MajorCooke-custommissileptr 2014-12-23 21:27:05 -06:00
rheit
0bd331b34b Merge pull request #203 from Edward850/ps-disconnect
Allow players to be popped in packet-server
2014-12-23 21:19:17 -06:00
Edward Richardson
dfa6a44402 Ignore 0 length chat messages
- There is no reason to send empty messages, and they just produced
strange output anyway
2014-12-23 22:38:12 +13:00
Edward Richardson
b24f173d03 Allow players to be popped in packet-server 2014-12-23 22:20:39 +13:00
alexey.lysiuk
bf2a6dbc05 Merge branch 'z_osx_pure' into cocoa_no_sdl 2014-12-23 07:15:12 +02:00
ChillyDoom
f7405a1d24 - Changed two loops from using doomcom.numnodes back to MAXPLAYERS as nodeingame[i] is not necessarily the same as playeringame[playerfornode[i]]. 2014-12-22 20:48:27 +00:00
Braden Obrzut
d4bac5776a Merge branch 'SDL2' 2014-12-22 15:25:22 -05:00
Randy Heit
10a2c0f58a Fixed: FxIntCast::Emit() should free the source register 2014-12-21 22:03:16 -06:00
Randy Heit
b14f768b68 Fix FxPick code emission
- Fixed: Integer constants passed to pick() need to manually generate load
  instructions, since FxConstant::Emit() will just return a constant
  register with its value.
- Fixed: VMFunctionBuilder::RegAvailability::Reuse() didn't actually
  calculate a proper mask. Also added another assert to this function.
2014-12-21 21:57:30 -06:00
Randy Heit
1ea03ffbec Merge branch 'master' into scripting 2014-12-21 21:24:05 -06:00
Randy Heit
2b323d01ed Reorder pick parsing to require one parameter.
- This function is pointless without any parameters, so don't allow that.
2014-12-21 21:22:14 -06:00
Randy Heit
b5e4153c78 Merge branch 'master' into gonesolong
Conflicts:
	src/CMakeLists.txt
	src/b_think.cpp
	src/g_doom/a_doomweaps.cpp
	src/g_hexen/a_clericstaff.cpp
	src/g_hexen/a_fighterplayer.cpp
	src/namedef.h
	src/p_enemy.cpp
	src/p_local.h
	src/p_mobj.cpp
	src/p_teleport.cpp
	src/sc_man_tokens.h
	src/thingdef/thingdef_codeptr.cpp
	src/thingdef/thingdef_function.cpp
	src/thingdef/thingdef_parse.cpp
	wadsrc/static/actors/actor.txt
	wadsrc/static/actors/constants.txt
	wadsrc/static/actors/shared/inventory.txt

- Added register reuse to VMFunctionBuilder for FxPick's code emitter.
- Note to self: Need to reimplement IsPointerEqual and CheckClass, which
  were added to thingdef_function.cpp over the past year, as this file no
  longer exists in this branch.
2014-12-21 21:15:11 -06:00
ChillyDoom
aebf0e7526 - Fixed: Adding multiple bots at the same time could cause the game to crash if there were too few bots defined.
- The 'loaded_bots' variable no longer needs to be stored.
2014-12-21 19:21:51 +00:00
MajorCooke
91bfe4cceb - Added pointers for A_CustomMissile and A_CustomBulletAttack. 2014-12-21 12:29:19 -06:00
MajorCooke
2c7a3f2eba - Optimized DoDamage and DoKill.
- Do a filter and species check first to save time.
- Added DMSS/KILS/RMVF_EITHER, which means if the actor is of type or species, it counts.
- A_DamageTarget(20,"Normal",DMSS_EITHER,"DoomImp","CyberdemonSpecies")
- This affects actor DoomImp, and anything that's of species CyberdemonSpecies.
- Added a little more documentation via comments.
2014-12-21 10:38:51 -06:00
MajorCooke
5a472e815b - Added species checking.
- Added two more flags for each of the functions, EXFILTER and EXSPECIES.
- Stands for "exclude filter/species" and makes the function not take them into account.
- Cleaned up the code and placed all the checking in their own subfunctions.
2014-12-21 09:31:24 -06:00
alexey.lysiuk
18c7709007 Cleanup video part of native OS X backend, phase 4 2014-12-21 12:35:43 +02:00
MajorCooke
c168761eda - Couple additional fixes:
- The wiki said the minimum distance to teleport defaults to 0, actor.txt on the other hand said otherwise. I was wondering why it was still broken somewhat...
- Prevent stickiness from happening, a.k.a. getting stuck in ceiling or floor and letting the engine unstick the actor. This caused velocity loss.
2014-12-20 22:51:43 -06:00
Randy Heit
549ba3d817 Merge branch 'master' of github.com:rheit/zdoom 2014-12-20 19:20:19 -06:00
Randy Heit
2d87eb0ba2 Merge branch 'master' into gonesolong
Conflicts:
	src/CMakeLists.txt
	src/actor.h
	src/g_heretic/a_hereticmisc.cpp
	src/g_heretic/a_hereticweaps.cpp
	src/g_heretic/a_ironlich.cpp
	src/info.h
	src/namedef.h
	src/p_buildmap.cpp
	src/p_enemy.cpp
	src/p_map.cpp
	src/p_mobj.cpp
	src/thingdef/thingdef_codeptr.cpp
	zdoom.vcproj
2014-12-20 19:13:14 -06:00
MajorCooke
e5a41a1358 - Added name filtering to all A_Damage/Kill/Remove functions.
- A_DamageChildren(20,"Normal",0,"DoomImp") for example will only target actors of DoomImp specifically.
2014-12-20 16:57:00 -06:00
Blue-Shadow
9446edc068 Fixed a case of an undeclared variable with A_Saw. 2014-12-21 01:10:54 +03:00
alexey.lysiuk
ebc0916bc6 Cleanup video part of native OS X backend, phase 3 2014-12-20 17:20:45 +02:00
Christoph Oelckers
2a53ebb6b9 - fixed state checking in A_Teleport. 2014-12-20 14:48:22 +01:00
alexey.lysiuk
797cf624df Cleanup video part of native OS X backend, phase 2 2014-12-20 15:03:36 +02:00
alexey.lysiuk
41c949f8ac Cleanup video part of native OS X backend, phase 1 2014-12-20 13:18:47 +02:00
Christoph Oelckers
48b65f3c76 Merge branch 'osx_x360_gamepad' of https://github.com/alexey-lysiuk/gzdoom 2014-12-20 11:43:36 +01:00
Christoph Oelckers
3ecc5d494f Merge branch 'hitbounce' of https://github.com/MajorCooke/zdoom 2014-12-20 11:38:47 +01:00
Christoph Oelckers
a19f0219c5 Merge branch 'master' of https://github.com/Blue-Shadow/zdoom 2014-12-20 11:36:10 +01:00
alexey.lysiuk
08cd03dbb7 Fixed hanging on startup in native OS X backend when Xbox 360 gamepad is connected
Apple's HID Utilities has a issue with device elements enumeration while using unofficial drivers from here:
http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/OsxDriver
2014-12-20 11:49:19 +02:00
MajorCooke
31ad642843 - HITTARGET, HITMASTER and HITTRACER now apply to actors that bounce off of other actors. 2014-12-19 13:43:24 -06:00
MajorCooke
86b0065c0b - Added a multitude of flags for A_Teleport.
- TF_KEEPVELOCITY: Keep the velocity after teleporting.
- TF_KEEPANGLE: Don't use the special spot's angle.
- TF_USESPOTZ: Normally, this function
- TF_NOSRCFOG: Don't leave fog at the previous location.
- TF_NODESTFOG: Don't leave fog at the arriving location.
- TF_USEACTORFOG: Use the actor's TeleFogSourceType and TeleFogDestType properties.
- TF_NOJUMP: Don't require or cause a jump. In this case, put 0 (or "") in for the jump destination when using CustomInventory items to teleport actors around.
2014-12-19 12:37:02 -06:00
MajorCooke
7bc2e5c67e - Tiny fix to ACS. 2014-12-19 06:21:37 -06:00
Blue-Shadow
a150e0686c Added 'lifestealmax' parameter and STEALARMOR flag to A_Saw and A_CustomPunch. 2014-12-18 23:05:59 +03:00
MajorCooke
2747f9a9f3 - Make ACS SetTeleFog follow the same format as the DECORATE version too. 2014-12-18 09:29:23 -06:00
MajorCooke
ba346616e5 - Fixed: ACS version of SetTeleFog and SwapTeleFog targeted the caller despite TID. 2014-12-18 09:24:35 -06:00
MajorCooke
dcab57b236 - Allow NULL.
- Instead of reverting the teleport fog back to defaults, if there wasn't a class or if the class failed to be found, set it to NULL.
- P_SpawnTeleportFog will not spawn anything if it's NULL.
- Added "" so it can be used to mean 'don't change anything' for A_SetTeleFog.
2014-12-18 09:19:39 -06:00
alexey.lysiuk
1433bf3f78 Put all non-Windows source code into posix directory and its subdirectories 2014-12-18 11:52:29 +02:00
MajorCooke
753eae4b68 - Went one up too high on the save count. 2014-12-17 21:51:47 -06:00
MajorCooke
93ca8502dd - Rewrote a bunch of things for stability. 2014-12-17 21:47:00 -06:00
MajorCooke
160ded99a9 - A few more checks to be safe. 2014-12-17 17:42:16 -06:00
MajorCooke
6f7c9f1f34 - Small adjustment for parameters here too. 2014-12-17 17:22:47 -06:00
MajorCooke
dd3d7789d5 - Always allow replacement. 2014-12-17 17:16:56 -06:00
MajorCooke
b255e5d67d - Thought I was forgetting something. 2014-12-17 17:12:33 -06:00
MajorCooke
30acb72006 - Added per-actor teleport fog modifications.
- New properties include TeleFogSourceType and TeleFogDestType.
- TeleFogSourceType is the fog left behind where the actor teleported away from.
- TeleFogDestType is the fog the actor sees when it arrives at its destination.
- Added A_SetTeleFog(<oldpos>,<newpos>) -- oldpos sets TeleFogSourceType, newpos sets TeleFogDestType.
2014-12-17 16:11:07 -06:00
alexey.lysiuk
84b12d23b5 Native OS X backend no longer requires SDL 2014-12-16 23:20:54 +02:00
alexey.lysiuk
3c76e5689a Fixed path to SDL specific Obj-C++ file 2014-12-16 23:20:14 +02:00
alexey.lysiuk
9f01384bc5 No more SDL dependency in native OS X backend 2014-12-16 22:58:39 +02:00
alexey.lysiuk
7d231c3008 Removed unnecessary SDL #include's 2014-12-16 22:56:09 +02:00
alexey.lysiuk
b9d83e88c9 Added missing #include 2014-12-16 22:46:24 +02:00
MajorCooke
24f1bfae99 - Need to set it on the puff itself, not the defaults. 2014-12-16 12:48:52 -06:00
MajorCooke
fc05a3bb2f - Added HIT* flag detection for bullet and rail attacks. 2014-12-16 12:37:31 -06:00
alexey.lysiuk
83c8f44cc4 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_pure 2014-12-16 10:25:34 +02:00
MajorCooke
465d9ab89a - Added flags for A_CheckLOF:
- CLOFF_SETTARGET | CLOFF_SETMASTER | CLOFF_SETTRACER
- An actor that causes A_CheckLOF (and only an actor) to succeed will set the intercepting actor as its target, master, and/or tracer, respectively.
2014-12-15 14:50:35 -06:00
MajorCooke
b6c5cfb9ef - Fixed: The new HIT* flags were checking the wrong actor. 2014-12-15 10:26:22 -06:00
alexey.lysiuk
8bc890c995 Rearranged files to avoid usage of symbolic links 2014-12-15 17:40:30 +02:00
alexey.lysiuk
ce70a7c66e Video part of native OS X backend as a copy-paste of SDL one
Dependency from SDL still exists, pending major refactoring
2014-12-14 17:08:47 +02:00
alexey.lysiuk
9d135a0586 Get rid of SDL in more parts of native OS X backend 2014-12-14 16:28:31 +02:00
Christoph Oelckers
6410428715 - fixed: FxPick leaked the array's content. Also did some cleanup on FxPick code. 2014-12-14 12:03:55 +01:00
MajorCooke
3f3aab42f1 - Pick can now hold unlimited numbers to choose from.
- I.e. pick(1,4,12,16)
2014-12-14 04:45:39 -06:00
alexey.lysiuk
8d16c2e3c0 OS X native backend no longer use files from src/sdl directly
Cocoa backend is compiling but failed to link
Some files are referenced using symbolic links
Apple's HID Utilities were moved to own directory
2014-12-14 11:57:08 +02:00
MajorCooke
785f72d6eb - Renamed RClamp to Pick. 2014-12-13 15:59:27 -06:00
MajorCooke
8c5a8c54f0 - Added rclamp(<int>,<int>).
- Usable for DECORATE expressions. Chooses one of the two numbers placed in the field.
2014-12-13 15:08:18 -06:00
alexey.lysiuk
9837721d7f Added several missing video resolutions
All feasible display dimensions are in the list except with 21:9 aspect ratio
2014-12-13 12:32:29 +02:00
alexey.lysiuk
6241f047a8 Removed no longer used SDL wrapper functions from OS X native backend 2014-12-13 12:32:20 +02:00
Braden Obrzut
b14eded8d8 - Accidentally committed debuging code. 2014-12-12 17:06:01 -05:00
Braden Obrzut
8ee0554d56 - Fixed: Extra Steam paths still need steamapps/common appended to them. 2014-12-12 16:33:49 -05:00
Braden Obrzut
86372fce34 - Added Steam detection for Stife: Veteran Edition.
- Added Steam install scanning for Linux and OS X. (OS X and Win32 not yet tested.)
2014-12-12 16:23:46 -05:00
Braden Obrzut
da8f2185d8 - Adapt SDL2 changes for the Mac (both using SDL2 backend and Cocoa). 2014-12-11 16:54:38 -05:00
Braden Obrzut
965d602d26 - Improve letterboxing in fullscreen by taking into account animorphic ratio settings.
- Added more resolutions to the hard coded table (up to 5K).
- Since we're using scaling for fullscreen, we should probably just use the hard coded table for fullscreen resolutions as well.
- Fixed: Resolution menu used fake aspect ratio to determine which aspect to file a resolution under.
- Added a way to use SDL surface blitting instead of accelerated textures.
2014-12-11 01:35:27 -05:00
Edoardo Prezioso
372f7e7002 - Various CMake fixes for two problems.
1) Don't show OSX_COCOA_BACKEND option if the host is not OSX;
2) Don't use the '-msse' compiler flag in dumb/ if the architecture does not support it.
2014-12-10 21:11:26 +01:00
Christoph Oelckers
b2a06f6ccd Merge branch 'waitforsave' of https://github.com/Edward850/zdoom 2014-12-10 11:49:40 +01:00
Christoph Oelckers
6afe9cc048 Merge branch 'hitpointer2' of https://github.com/MajorCooke/zdoom
Conflicts:
	src/actor.h
	src/thingdef/thingdef_data.cpp
2014-12-10 11:48:32 +01:00
Edward Richardson
c339bb33cf Added cl_waitforsave
- cl_waitforsave (default true) pauses the game timer when a save
starts, preventing the network buffer from trying to compensate for slow
saves.
2014-12-10 20:55:00 +13:00
Braden Obrzut
a7b33a8ce3 - Removed XCursor code since SDL2 has proper color cursor support.
- Improved international keyboard support by falling back to scan codes if we don't recognize a keycode.
- Clear out any residual mouse movement when entering relative mouse mode.
2014-12-10 01:53:22 -05:00
MajorCooke
533ae95933 - Added three missile impact pointer changing flags.
- HITTARGET, HITMASTER, and HITTRACER.
- A missile that dies hitting an actor will set this impacted actor as the new target/master/tracer, depending on specifications.
2014-12-09 12:30:14 -06:00
MajorCooke
e5340ad637 - Splitting the pull request in half.
- Added THRUREFLECT, MIRRORREFLECT, and AIMREFLECT. All require REFLECTIVE to work.
- THRUREFLECT prevents missiles from changing course if reflected, and takes precedence over all reflective flags.
- MIRRORREFLECT causes missiles to perform a direct 180 turn-around.
- AIMREFLECT turns the missile back to the original shooter, and does not slow the missile down.
2014-12-09 12:09:36 -06:00
Braden Obrzut
4aef696007 - Enabled vid_vsync for SDL2 although just turning it on doesn't perform right.
- Improved fullscreen a bit.
2014-12-08 22:47:40 -05:00
Braden Obrzut
d625caf03c - Ported SDL backend to SDL 2.0. Still needs a little bit of polish, but it works. 2014-12-08 18:46:10 -05:00
Christoph Oelckers
b2452b806e - missed a return. 2014-12-08 12:01:20 +01:00
Christoph Oelckers
95bed868d3 - gcc warnings suck... 2014-12-07 14:46:53 +01:00
Christoph Oelckers
8a98be00dc - fixed: ZDoom did not understand Boom's name for the Red Skull Key pickup message due to a typo.
Of course, just changing the name would break many old ZDoom mods so now Boom's name is explicitly being translated into ZDoom's before setting the string.
2014-12-07 09:30:16 +01:00
Christoph Oelckers
e6de24a7de - turned out that the recent change to allow cancelling a powerup blend through a powerup giver did not work well so now there's an explicit 'Powerup.Color none' to do it that works a bit differently. 2014-12-06 22:08:39 +01:00
Christoph Oelckers
eaa82492e6 Merge branch 'bug-46152' of https://github.com/kevans91/zdoom 2014-12-04 09:37:47 +01:00
Kyle Evans
fcc491f735 Make the respawn invulnerability APowerInvulnerable persist through a ClearInventory by making it undroppable 2014-12-03 17:04:47 -05:00
Christoph Oelckers
fbe14d59bb - fixed: All powerup blend colors with an alpha of 0 were treated as 'has no color' for PowerupGivers. 2014-12-03 13:05:50 +01:00
Kyle Evans
c631ffc5fd Fixed SV_SAMESPAWNSPOT behavior -- When enabled, use the p->mo->z. Otherwise, rely on ONCEILINGZ/FLOATRANDZ/ONFLOORZ w/ or w/o UsePlayerStartZ as previously done 2014-12-03 00:50:05 -06:00
Christoph Oelckers
689b39ed30 Merge branch 'bug-47011' of https://github.com/kevans91/zdoom 2014-12-02 09:06:20 +01:00
Kyle Evans
3af08f1983 Fixed weapon drawing rules to account for the death camera [backported from gzdoom], also fixed drawing rules for crosshair 2014-12-01 22:03:22 -06:00
Kyle Evans
8b88f14c96 Destroy mod-created CVars when 'restart' is invoked 2014-12-01 21:04:50 -06:00
Christoph Oelckers
ed5b0d902a Merge branch 'BotFunctions' of https://github.com/ChillyDoom/zdoom 2014-11-29 20:22:21 +01:00
ChillyDoom
e7da849f77 - Moved bot specific functions into DBot. 2014-11-29 17:03:58 +00:00
Edward Richardson
a418f564e9 Fixed message duplication in logs
- Any printed hud messages would have duplicate entries in logs.
2014-11-28 16:34:42 +13:00
Christoph Oelckers
3e2b0e4c71 Merge branch 'raise' of https://github.com/MajorCooke/zdoom 2014-11-27 22:37:36 +01:00
MajorCooke
94f08aa593 - Added: Boolean to specify if A_Raise functions should perform CopyFriendliness based upon who raised it. By default, this is false. 2014-11-27 15:12:33 -06:00
khokh2001
e1fdcdfb93 opl3 emulator update 2014-11-28 04:07:33 +09:00
Christoph Oelckers
b2fdd32b0a Merge branch 'fade' of https://github.com/MajorCooke/zdoom 2014-11-25 20:56:54 +01:00
MajorCooke
08570ec48e - Added flags for A_Fade functions:
- FTF_REMOVE: Removes the actor when the alpha hits a certain level.
- - A_FadeIn - 1.0
- - A_FadeOut - 0.0
- - A_FadeTo - Alpha target level reached
- FTF_CLAMP: Automatically fixes the alpha so it won't leave the range [0.0, 1.0].
2014-11-25 13:24:35 -06:00
Edoardo Prezioso
629f3c1a8a - Oops comment typo. 2014-11-25 19:23:49 +01:00
Edoardo Prezioso
8fbed78c21 - Add new function for the new slope calculations.
Fixed also two MSVC warnings.
2014-11-25 19:15:25 +01:00
Christoph Oelckers
a67ac5d940 Merge branch 'slope64_comment' of https://github.com/edward-san/zdoom 2014-11-25 17:39:08 +01:00
Edoardo Prezioso
cc4e66f976 - Fix the division by 0, improve comments.
- Avoid doing the division if the result would be outside the ]0,1<<24[ range:
-- if the numerator is nonpositive, ie <=0, truncate the result to 0,
-- if the numerator is greater or equal than the denominator, the result will be outside the allowed range, hence truncate the result to 1<<24.
-- otherwise, the result will be inside the range. Knowing that the denominator is greater than the numerator, if the numerator has the last 24 bits non zero, the denominator can't be less than 1<<24, hence the denominator won't be truncated to 0.
- Add comment details to help who doesn't know math. Big deal!
2014-11-25 17:02:22 +01:00
Christoph Oelckers
29ecbac963 - fixed: The demo buffer was allocated with conflicting methods, because M_ReadFile used new whereas the rest of the demo code assumed malloc. Added a new M_ReadFileMalloc function to handle this case without rewriting other things. 2014-11-25 17:00:17 +01:00
Christoph Oelckers
4a3427fe50 Merge branch 'opl3emu' of https://github.com/khokh2001/zdoom 2014-11-25 16:32:52 +01:00
Christoph Oelckers
b6ccc79ca3 Merge branch 'fixes' of https://github.com/MajorCooke/zdoom
Conflicts:
	src/p_interaction.cpp
2014-11-25 16:32:42 +01:00
Christoph Oelckers
7f8c0b4f64 Merge branch 'ACS_check' of https://github.com/Edward850/zdoom 2014-11-25 16:29:02 +01:00
Christoph Oelckers
64d88166cc Merge branch 'APROP_DamageMultiply' of https://github.com/Edward850/zdoom 2014-11-25 16:28:36 +01:00
Christoph Oelckers
5ae5d2e7eb Merge branch 'master' of https://github.com/rheit/zdoom 2014-11-25 16:14:49 +01:00
Christoph Oelckers
ad5c5af6f2 Merge branch 'BotThinker' of https://github.com/ChillyDoom/zdoom 2014-11-25 16:13:10 +01:00
Braden Obrzut
46eb5ce265 - Move cursor variables again due to shared code with Cocoa and SDL backends. 2014-11-24 23:26:38 -05:00
Braden Obrzut
0123279a1f - Work around an i386 specific optimizer bug in Apple's GCC 4.2 (GCC 4.0 has worse bugs).
- Fixed: zdoom-info.plist used some non-existant/wrong variables.
2014-11-24 22:22:29 -05:00
MajorCooke
7e579a0a2a - Fixed: Godmode didn't stop ALLOW/CAUSE/FORCEPAIN because the code execution always ended prematurely.
- Optimized checks for fake pain and forced pain. Fake pain now calls a subfunction so the code is cleaner.
2014-11-24 18:30:17 -06:00
Braden Obrzut
eacb9aa105 - Fixed more non-OSX issues. 2014-11-24 19:18:07 -05:00
alexey.lysiuk
877bfcd328 Cleaned up support for older OS X SDKs 2014-11-23 22:18:41 +02:00
alexey.lysiuk
b4ff34dae5 Use recently added OS version detection to check for HID Manager API availability 2014-11-23 12:48:05 +02:00
alexey.lysiuk
e9b24a10a1 OS version detection without deprecated API 2014-11-23 12:47:04 +02:00
khokh2001
5ed70d97a6 New OPL3 emulator. 2014-11-23 02:18:40 +09:00
khokh2001
88f4305e7e new opl3 emulator 2014-11-23 00:39:26 +09:00
khokh2001
e9075334a3 new opl3 emulator 2014-11-23 00:36:22 +09:00
alexey.lysiuk
3e1bb9017b Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-22 12:09:50 +02:00
Edward Richardson
c494063eb9 Forgot version bump 2014-11-21 17:53:33 +13:00
Edward Richardson
3437f4fcab Check ACS module size in saved games 2014-11-21 17:49:57 +13:00
Edward Richardson
e303833e5f Inventory damage needs multiplying first 2014-11-20 22:12:16 +13:00
Edward Richardson
99b2cfa147 Added APROP_DamageMultiply
- Used with Set/GetActorProperty, adds a generic multiplier for damage a
source deals.
2014-11-20 18:57:40 +13:00
Christoph Oelckers
52acaa07a2 Merge branch 'master' of https://github.com/rheit/zdoom 2014-11-19 00:40:54 +01:00
Braden Obrzut
601852d224 - Fixed: fixrtext isn't needed with Win64 builds. 2014-11-17 21:56:16 -05:00
alexey.lysiuk
64e34d883b Fixed build on UNIX systems other than OS X 2014-11-17 14:54:46 +02:00
alexey.lysiuk
1bda54f3cd Fixed a few endian issues in ACS system
KDiZD Intro, a.k.a. Title Map, is now played correctly; camera on Z1M1 is functional
2014-11-16 13:15:56 +02:00
Edoardo Prezioso
4b2af7074e - Improve the 64 bit incompatibility patch.
- Reorder the operands. First the numerator, then the denominator :) .
- Add a comment regarding the motivations for this change.
2014-11-16 11:29:16 +01:00
alexey.lysiuk
fd85e116e5 Fixed another potential crash in word expansion API
Calling wordfree() may lead to a crash when wordexp_t instance is not zero-initialized
This happened usually on older OS X like 10.5 or 10.6
2014-11-16 10:29:03 +02:00
alexey.lysiuk
93a732f0ca Fixed empty application menu on 10.5 and earlier 2014-11-16 10:25:25 +02:00
alexey.lysiuk
bcdf22b910 Fixed potential crash in word expansion API
10.5.8 PPC crashed 100%, some versions of 10.6 i386 were affected too
2014-11-16 09:30:57 +02:00
Edward Richardson
9ccb839ae2 Fix slope inconsistency for 64bit
- Fixed: Slope logic would change between 32bit and 64bit due to float
math.
2014-11-16 16:23:15 +13:00
alexey.lysiuk
bccfdaacf7 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-15 22:17:41 +02:00
alexey.lysiuk
65ce06f274 Added ability to run without application bundle
You just need executable, zdoom.pk3 and IWAD
2014-11-15 19:11:01 +02:00
alexey.lysiuk
398b36064b Added usage of OpenGL client storage extension
This improves performance significantly of 10.4
2014-11-15 17:27:23 +02:00
alexey.lysiuk
cc8d8928ae Removed explicit set of activation policy for application
Bundle is used anyway but this method requires 10.6 or higher
2014-11-15 17:07:27 +02:00
Edward Richardson
92143f90fa Yet another pointer 2014-11-16 02:59:37 +13:00
Edward Richardson
2d5cbe1d8b Missed a save 2014-11-16 02:44:17 +13:00
Edward Richardson
21e7beb21b Fixed missing NULL pointer checks 2014-11-16 02:39:16 +13:00
alexey.lysiuk
06764c6aae Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-15 13:35:29 +02:00
alexey.lysiuk
b63bd56da8 Removed .xib file and, therefore, dependency from ibtool
Menu is now created in code
2014-11-15 13:32:37 +02:00
alexey.lysiuk
4b5d7361cd Fixed exiting when window is closed by clicking close button
This happened on 10.6 and later when fullscreen mode was used before windowed
2014-11-15 11:47:05 +02:00
ChillyDoom
e38aee070c - Changed TThinkerIterator loops back to MAXPLAYERS loops.
- Added STAT_BOT.
2014-11-15 08:58:29 +00:00
Christoph Oelckers
23bb12b0b8 Merge branch 'cpf_noturn' of https://github.com/edward-san/zdoom 2014-11-15 08:58:36 +01:00
ChillyDoom
ee977f94d7 - Moved bot thinking logic into DBot. 2014-11-14 16:54:56 +00:00
Edoardo Prezioso
fd354dbe9a - Added CPF_NOTURN flag for A_CustomPunch. 2014-11-14 12:18:46 +01:00
alexey.lysiuk
9e4a262c87 Enabled building with SDK 10.4
Game controllers support will disabled in this case
2014-11-12 23:03:59 +02:00
MajorCooke
b54b18c8c5 -Added: CAUSEPAIN. Actors which deal damage (even if 0) while having this flag can cause other actors to trigger pain chances.
-Fixed: ALLOWPAIN should not trigger pain states if the damage is 0, but still allow for infighting to occur.
-Fixed: an unneeded logic call was processing damage modification when it was 0 to begin with.
2014-11-12 14:08:26 -06:00
alexey.lysiuk
d53e860d28 Moved supported by OS features checks to runtime
No more compile time checks via preprocessor macro definitions
This introduces dependency from Carbon framework, see SetSystemUIMode() function. It's available in 64-bit, and so, it's not deprecated
2014-11-10 22:59:40 +02:00
alexey.lysiuk
936ee41e41 Removed executable permission from HID Utilities source files 2014-11-10 22:37:53 +02:00
Edward Richardson
ad33afb8c1 Added text showing who paused a game in multiplayer 2014-11-11 02:19:24 +13:00
Edward Richardson
16e0f79fd7 Fix alt-tabbed desync with demos
- Fixed: Stop the game timer if the window looses focus
2014-11-11 02:18:52 +13:00
Edward Richardson
b08fcbf6b3 Added compat profile for TNT MAP31 2014-11-10 18:37:14 +13:00
alexey.lysiuk
a37459af2c Removed all code to support compilation using 10.4 SDK
10.5 is minimum version of OS X SDK to build. Deployment target can be 10.4 though
This reverts significant part of d061adf
2014-11-09 18:00:36 +02:00
alexey.lysiuk
c024b30e9d Availability of game controller API is now determined on runtime 2014-11-09 17:13:03 +02:00
alexey.lysiuk
660ebf2c6c Added auto-release pools to decrease memory fragmentation on older OS X like 10.5 or 10.6 2014-11-09 16:53:25 +02:00
alexey.lysiuk
70bb80e2bf Removed OS X version check
It didn't work correctly and .plist should set minimum OS version to run on
2014-11-09 16:49:26 +02:00
alexey.lysiuk
a40eb3443b Fixed infinite recursion when setting window style on OS X 10.6 or newer 2014-11-09 15:34:04 +02:00
alexey.lysiuk
fa1d62ffbf Fixed random junk that may appear in transparency (alpha) channel of mouse cursor image 2014-11-09 15:23:34 +02:00
alexey.lysiuk
fc8f260375 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-09 15:22:11 +02:00
Christoph Oelckers
5e6c375974 Merge branch 'DLevelScript-stack-fix' of https://github.com/Edward850/zdoom 2014-11-09 12:20:54 +01:00
Christoph Oelckers
22b5d0af8a Merge branch 'hotfix' of https://github.com/MajorCooke/zdoom 2014-11-09 12:13:13 +01:00
Christoph Oelckers
d273cb414f Merge branch 'BotNet' of https://github.com/ChillyDoom/zdoom 2014-11-09 12:12:51 +01:00
Christoph Oelckers
2ffff5763b Merge branch 'empty_st_funcs' of https://github.com/edward-san/zdoom 2014-11-09 12:12:35 +01:00
Christoph Oelckers
d64a4a17ff - fixed: PRINT_LOG no longer worked since replacing the console buffer. 2014-11-09 12:11:58 +01:00
alexey.lysiuk
a5993c4e2d Disabled usage of IOKit's HID Manager API on OS X prior to 10.5
Source code only, CMake needs to be updated too
2014-11-09 11:59:29 +02:00
Edward Richardson
5170abfeed DACSThinker can exist with no scripts 2014-11-09 22:57:14 +13:00
alexey.lysiuk
d061adfbd6 Fixed all compilation issues with 10.4 SDK except for HID Utilities 2014-11-09 11:18:20 +02:00
Edward Richardson
e3640b5bf5 Stop DLevelScript from recursively Serializing 2014-11-09 21:06:50 +13:00
MajorCooke
87207bdb6d - Fixed: The mask didn't incorporate RGF_MISSILES, causing it to fail. 2014-11-09 00:16:10 -06:00
Edoardo Prezioso
8b85e6d00b - Port an empty version of 'A_FaceConsolePlayer'.
Hissies will be happy now.
2014-11-08 18:49:16 +01:00
ChillyDoom
8532b52ffb - Bots are no longer removed when the net arbitrator disconnects. 2014-11-08 17:38:56 +00:00
ChillyDoom
a613da43dd - Bot movement is now calculated locally. 2014-11-08 17:38:09 +00:00
alexey.lysiuk
d2d6d2a7f8 Lowered minimum OS requirement to 10.5 Leopard 2014-11-08 13:30:41 +02:00
alexey.lysiuk
f0f0f2a24d Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-08 10:42:44 +02:00
Christoph Oelckers
c28c0b8f0b Revert "Backport 'A_FaceConsolePlayer' from zandronum."
This reverts commit eab971500b.

As Edward850 pointed out, this feature is broken by design and therefore completely useless.
2014-11-08 08:53:32 +01:00
Edoardo Prezioso
eab971500b Backport 'A_FaceConsolePlayer' from zandronum.
By Dusk, who authorized me to do this.
2014-11-08 00:31:16 +01:00
MajorCooke
71ce4bcf06 - Fixed: Rail attacks didn't properly respect FOILINVUL.
- Added: FOILBUDDHA support for rail attacks.
2014-11-05 23:16:01 -06:00
MajorCooke
95bd6bde9a - Added FOILBUDDHA check for A_BFGSpray. 2014-11-05 23:06:28 -06:00
MajorCooke
c63adf920a - Fixed: BUDDHA flag on a player wasn't considered. 2014-11-05 22:05:21 -06:00
Christoph Oelckers
88ff33c26e Merge branch 'fix_acs_big_endian' of https://github.com/alexey-lysiuk/gzdoom 2014-11-02 17:30:48 +01:00
Christoph Oelckers
32cd4eb7c6 Merge branch 'LerpAdjustments' of https://github.com/Edward850/zdoom 2014-11-02 17:30:41 +01:00
alexey.lysiuk
eb98a999b2 Fixed color channels displacement on Big Endian targets, take two :( 2014-11-02 16:18:28 +02:00
alexey.lysiuk
63eedf9e26 Merge branch 'fix_acs_big_endian' into z_osx_clean 2014-11-02 16:01:18 +02:00
alexey.lysiuk
1074a031a2 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-02 16:00:53 +02:00
alexey.lysiuk
8f915c9dcc Fixed broken ACS on Big Endian platforms
This fixes maps transition in Strife
http://forum.zdoom.org/viewtopic.php?f=2&t=36754
2014-11-02 15:58:47 +02:00
alexey.lysiuk
c0ec1d5114 Fixed color channels displacement on Big Endian targets 2014-11-02 15:56:22 +02:00
alexey.lysiuk
2f59a8792a Use rectangle texture for render buffer
Game is rendered correctly even if hardware doesn't support non-power of two textures
The ARB_texture_rectangle extension is supported on almost all Macs running 10.4 Tiger
2014-11-02 15:50:43 +02:00
alexey.lysiuk
d8be168474 Set opaque clear color 2014-11-02 11:32:09 +02:00
alexey.lysiuk
0569acd5d6 Fixed compilation issues with GCC 4.0.1 PowerPC 2014-11-02 11:29:02 +02:00
Edward Richardson
043b28f4ba Make Prediction lerping less pick + debug
- Lerping uses int rather than fixed/float comparisons
- Added debug information
2014-11-02 17:58:59 +13:00
Christoph Oelckers
147e05673d Merge branch 'recordmap' of https://github.com/Edward850/zdoom 2014-11-01 17:43:59 +01:00
Christoph Oelckers
4c470ba5c1 Merge branch 'allowpain' of https://github.com/MajorCooke/zdoom 2014-11-01 17:43:39 +01:00
MajorCooke
2e085b2318 - Added ALLOWPAIN flag.
Monsters with this flag can enter pain states, regardless of
invulnerability or damage absorption.
- Fixed: god2 cheat wasn't being considered for drowning and thrusting.
2014-11-01 00:00:29 -05:00
Edward Richardson
eceb37aa64 Added recordmap for recording demos from console
recordmap <filename> <map name>
Starts a new game from the specified map recording to the specified
filename
2014-11-01 17:47:29 +13:00
MajorCooke
938b54ccb5 - Added TF_FORCED for A_Teleport. Forces the actor to move to the spot. 2014-10-31 15:51:15 -05:00
Christoph Oelckers
0ff65bb430 - fixed: AActor::Massacre must return true only when it actually kills a monster. 2014-10-31 21:08:13 +01:00
Christoph Oelckers
388454255d Merge branch 'Secret-notify' of https://github.com/Edward850/zdoom 2014-10-31 11:29:25 +01:00
Edward Richardson
c85105f552 Added cl_showsecretmessage
Controls if secret notifications are displayed (def. true)
2014-10-31 22:50:23 +13:00
Christoph Oelckers
2f11a59be0 - fixed: UDMF ceiling plane properties set the map's floor plane values. 2014-10-31 08:57:43 +01:00
Christoph Oelckers
31611c17d5 - fixed RGF_NOSIGHT checking for A_RadiusGive. 2014-10-29 22:00:15 +01:00
Christoph Oelckers
301092217f Merge branch 'experimental' of https://github.com/MajorCooke/zdoom 2014-10-29 20:12:01 +01:00
MajorCooke
165d2887fd - Added: A_GiveToChildren
- Added: A_TakeFromChildren
- Added: A_GiveToSiblings
- Added: A_TakeFromSiblings
- Added the following flags for A_RadiusGive:
- RGF_NOSIGHT: Exclude sight check from distance.
- RGF_MISSILES: Missiles can take inventory items.
2014-10-29 14:01:31 -05:00
MajorCooke
5977cb04d9 - Fixed: A_Die didn't consider missiles for the function. 2014-10-29 12:33:25 -05:00
Christoph Oelckers
c1a0ee9623 - fixed last commit. 2014-10-29 10:40:08 +01:00
Christoph Oelckers
978667143c - fixed: P_RemoveThing must not remove owned inventory items. 2014-10-29 08:54:14 +01:00
Christoph Oelckers
3fe8dbf660 Merge branch 'master' of https://github.com/Gaerzi/zdoom 2014-10-28 22:10:28 +01:00
Gaerzi
65cb662678 Missing break in case NAME_FillColor
This caused weirdness with invulnerable monsters when their fillcolor was changed.
2014-10-28 21:19:01 +01:00
Christoph Oelckers
6073adbeef - renamed FULLMASS to DONTTHRUST. 2014-10-28 08:40:34 +01:00
MajorCooke
774db445ec -Fixed: WhirlWind was still able to affect actors with the FULLMASS flag. 2014-10-27 22:40:25 -05:00
MajorCooke
c01d1a8003 - Added DMSS_NOPROTECT.
Bypasses PowerProtection inventory items.
2014-10-27 22:29:10 -05:00
MajorCooke
f802d7a44c - Added +FULLMASS.
Actors will be excluded from damage/radius thrusting of all sorts by
explosions or damage of any kind. They will also never deal impact
damage to other enemies, nor will they damage themselves from being too
close to a wall.
2014-10-27 21:35:55 -05:00
Christoph Oelckers
be4b253215 - use a separate sound for the net notches on the startup screen. 2014-10-25 18:18:35 +02:00
Christoph Oelckers
ebbaf2f1b7 Merge branch 'OldPlayer-Fix' of https://github.com/Edward850/zdoom 2014-10-25 17:38:48 +02:00
Christoph Oelckers
b58595734d - removed accidental line duplication. 2014-10-25 17:37:45 +02:00
Edward Richardson
82ac6c999e Destroy old player mobjs when starting new games 2014-10-26 04:14:52 +13:00
Christoph Oelckers
85fae623c8 Merge branch 'BotSpawnFix' of https://github.com/ChillyDoom/zdoom 2014-10-25 16:50:17 +02:00
ChillyDoom
1b7c07df65 - Fixed: Bots added by different setting controllers could be assigned the same player number. 2014-10-25 14:58:10 +01:00
alexey.lysiuk
d1c4215fb5 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-10-25 16:57:58 +03:00
Christoph Oelckers
0124d41931 Merge branch 'Bloodtype' of https://github.com/Edward850/zdoom 2014-10-25 15:07:06 +02:00
Christoph Oelckers
d4c50b1662 - fixed: AActor::IsTeammate must consider monsters friendly to a specific player as members of the same team as the owning player. Such monsters cannot be made members of a designated team, though, because their association needs to change if the player changes teams. 2014-10-25 14:59:30 +02:00
Edward Richardson
9435cdc5c9 Fixed NULL refrence in P_SpawnBlood 2014-10-26 01:09:19 +13:00
Christoph Oelckers
2e1fa70cbf - some parentheses to silence GCC. 2014-10-25 13:12:57 +02:00
Christoph Oelckers
ad2e16576c - fixed_ P_ExplodeMissile skipped most of its logic when the missile got destroyed by having no death state.
Apparently a band-aid fix was applied to this function because AActor::Destroy could not be called on an already destroyed actor again which could happen here due to incorrect ordering of actions.
Moving the state change to a later point in this function - after hitting a sky has been checked and decals have been spawned - returns everything to a safe state and ensures that nothing gets skipped.
2014-10-25 13:10:38 +02:00
Christoph Oelckers
edd53f22a1 - fixed: The buddha powerup set the wrong flag. 2014-10-25 12:34:46 +02:00
Christoph Oelckers
dcc318fdee - print a warning when a state label can't be found. Preferably this would be an error but the oversight had been in the engine for too long so nobody knows 2014-10-25 12:33:08 +02:00
Christoph Oelckers
ef5707d73b - added a compatibility option for stopping sounds when the owning actor is destroyed. 2014-10-25 12:12:06 +02:00
Christoph Oelckers
fc40e9723a - fixed: CHANGELEVEL_RESETINVENTORY may not change the player's health.
APlayerPawn::GiveDefaultInventory altered the player_t's health value which was ok as long as this function was only called from G_PlayerReborn. For all other cases this initialization was wrong and G_PlayerReborn should do this itself.
2014-10-25 11:51:29 +02:00
Christoph Oelckers
cfe97b0f0f - Fixed: Killing a morphed monster must trigger A_BossDeath on its unmorphed self. 2014-10-25 11:33:28 +02:00
Christoph Oelckers
0d3908a4f3 - fixed: Hitscan traces crossing a two sided line right at the height of the back sector's floor or ceiling must not be considered a hit. 2014-10-25 10:44:00 +02:00
Christoph Oelckers
8edace83c5 - made CheatKey and EasyKey vector graphics configurable through MAPINFO. 2014-10-25 10:19:14 +02:00
Christoph Oelckers
313245dd77 - added a Buddha powerup 2014-10-25 09:53:23 +02:00
MajorCooke
a19620968d - Follow-up of the previous commit.
- Cleaned up the DoDamage and DoKill functionality.
- Added DMSS_FOILBUDDHA and KILS_FOILBUDDHA.
2014-10-25 09:39:10 +02:00
MajorCooke
d1dc6fd59a - Added: BUDDHA and FOILBUDDHA.
- Fixed: mugshot didn't take the god2 cheat into account.
2014-10-25 09:39:00 +02:00
MajorCooke
b980069367 - Added GOD2 and BUDDHA2 cheats.
- Ensures that not even telefrag damage can kill the player.
- Fixed: Players with NODAMAGE could still hurt and kill themselves via
voodoo dolls.
2014-10-25 09:38:40 +02:00
Christoph Oelckers
1c500cead6 - fixed: A_Respawn did not restore the flags6 and flags7 fields. 2014-10-25 01:27:34 +02:00
Christoph Oelckers
aa338a4dc6 - fixed: G_FinishTravel must synchronize the CF_FLY flag with MF2_FLY. 2014-10-25 01:00:40 +02:00
Christoph Oelckers
83be901ad6 - fixed: damage of amount TELEFRAG_DAMAGE should not be reduced by armors absorbing some damage, it'd lose its magic-ness, that is needed to ensure a guaranteed kill. The same applies to autousing health items. 2014-10-25 00:52:27 +02:00
Christoph Oelckers
5ac7e4fc38 - added HARMFRIENDS flag. 2014-10-25 00:30:36 +02:00
Christoph Oelckers
b6f4862024 - fixed: A_Warp didn't initialize oldx/y/z in all situations. 2014-10-25 00:05:52 +02:00
Christoph Oelckers
e81c404b04 - fixed some bad logic operations. 2014-10-25 00:01:04 +02:00
Christoph Oelckers
6f7b83faa1 - fixed: EV_DoFloor was a bit too selective about which movement types were allowed to crush. Changed so that the crush parameter is always used. Also changed all non-crushing calls to explicitly pass -1 as crush damage instead of relying on EV_DoFloor to ignore the passed value. 2014-10-24 23:12:38 +02:00
Christoph Oelckers
15b1c71257 - use proper CheckCheatMode semantics for throwing players out of chasecam mode if DF2_CHASECAM gets unset. 2014-10-24 23:02:02 +02:00
Christoph Oelckers
e662e4321a - fixed: Creating an OPL MIDI device can fail if no GENMIDI lump is found, and an exception is thrown. We need to handle this exception to prevent an abort. 2014-10-24 22:56:10 +02:00
Christoph Oelckers
9402bcf6cd - fixed: The targeter must reset its HUD sprites when being reactivated during the blinking phase. 2014-10-24 22:47:40 +02:00
John Palomo Jr
4496885366 Added Inventory.AlwaysRespawn flag. 2014-10-24 04:46:43 -04:00
Christoph Oelckers
d6a33a601d - fixed: The sorting of 3D floors was incomplete and missed cases where translucent volumes overlapped non-translucent ones only at their top. It also didn't account for one translucent volume being intersected by more than solid one. 2014-10-23 17:33:42 +02:00
ChillyDoom
acd4a71de2 - Fixed: New DBot instances were missing write barriers. 2014-10-21 19:33:48 +01:00
ChillyDoom
6166e83d28 - Fixed: Only setting controllers should be able to remove bots. 2014-10-21 19:32:15 +01:00
ChillyDoom
c9bc9b427c - Removed p_leader. 2014-10-21 19:31:11 +01:00
Christoph Oelckers
fafb0a672c Merge branch 'handshake-hotpatch' of https://github.com/Edward850/zdoom 2014-10-21 14:28:50 +02:00
Christoph Oelckers
ccbdcfea81 Merge branch 'master' of https://github.com/j-palomo/zdoom 2014-10-21 14:28:31 +02:00
Christoph Oelckers
09e0758507 Merge branch 'fix_cmake_unix' of https://github.com/alexey-lysiuk/gzdoom 2014-10-21 14:27:37 +02:00
Christoph Oelckers
20b740d5fc Merge branch 'DBot' of https://github.com/ChillyDoom/zdoom 2014-10-21 14:20:01 +02:00
Edward Richardson
ed51083572 Change u_short as well. 2014-10-21 23:44:14 +13:00
Edward Richardson
759f1bb81b Fix handshakes between GCC and MSVC
u_long has two different sizes between Linux GCC and MSVC
Stopped netgames from starting up if player count wont fit
2014-10-21 23:38:45 +13:00
John Palomo Jr
82255c4dfd Using PickActor will only set the TID if the picked actor doesn't have a TID already. An optional 8th parameter (bool forceTID) was added to revert to the old behavior. 2014-10-19 20:52:48 -04:00
alexey.lysiuk
b2110db1f5 Extended list of display resolutions 2014-10-18 14:55:27 +03:00
alexey.lysiuk
949325df68 Merge branch 'fix_cmake_unix' into z_osx_clean 2014-10-18 12:36:09 +03:00
alexey.lysiuk
1715b25a3e Fixed Unknown CMake command "CHECK_LIBRARY_EXISTS" error on Unix targets
Previously it worked somehow but not with CMake 3.0.2
2014-10-18 12:33:39 +03:00
alexey.lysiuk
c29772de25 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-10-18 12:22:10 +03:00
ChillyDoom
c400dcf736 - Made DBot inherit from DObject. 2014-10-15 17:54:12 +01:00
ChillyDoom
db323643f8 - Renamed FBot to DBot and made it inherit from DThinker.
- Fixed: Bots added by players other than the net arbitrator did not have their skill set.
2014-10-14 19:57:11 +01:00
Christoph Oelckers
c9252d1919 Merge branch 'multi' of https://github.com/Edward850/zdoom 2014-10-14 11:54:40 +02:00
Edward Richardson
29cf6b0daa Fixed PredictionActor size and typo 2014-10-14 12:54:03 +13:00
ChillyDoom
83d84eaae9 - Moved bot related variables from player_t into a new FBot class. 2014-10-13 18:40:25 +01:00
Christoph Oelckers
952d03da7c Merge branch 'multi' of https://github.com/Edward850/zdoom 2014-10-13 10:37:51 +02:00
ChillyDoom
5de6b535ae - Removed unnecessary 'id' variable from AActor.
- Removed unused 'backpack' variable from player_t.
- Removed duplicate code from b_move.cpp.
- General cleanup.
2014-10-13 08:45:36 +01:00
Edward Richardson
0cd736b487 Prevent lerping when tic duplication not 1
Network dup makes player prediction inaccurate
2014-10-13 17:09:29 +13:00
Edward Richardson
3e4446e46b Moved prediction lerp reset to cover all cases. 2014-10-13 16:49:53 +13:00
Edward Richardson
98904039b7 Final work on prediction lerping
Added cl_predict_lerpscale and cl_predict_lerpthreshold
Added options in menudef
Made sure that lerping cannot extrapolate or run on small scales
Lerping gets reset when rendering interpolation does or respawn
2014-10-13 16:32:49 +13:00
alexey.lysiuk
25b808cd82 Merge https://github.com/rheit/zdoom into z_osx_clean 2014-10-12 15:19:11 +03:00
Edward Richardson
3e6ad8c1a8 Further work on prediction lerping 2014-10-13 00:29:15 +13:00
Christoph Oelckers
0f19356e24 Merge branch 'master' of https://github.com/MajorCooke/zdoom
Conflicts:
	wadsrc/static/actors/constants.txt
2014-10-12 08:43:46 +02:00
Christoph Oelckers
2228dcb32f Merge branch 'experimental' of https://github.com/MajorCooke/zdoom 2014-10-12 08:30:13 +02:00
Christoph Oelckers
e6f3007bef Merge branch 'scoreboardtoggle' of https://github.com/ChillyDoom/zdoom 2014-10-12 08:27:35 +02:00
MajorCooke
f766a1ab38 - Added SXF_ORIGINATOR.
- Only useful for missiles.

By default, missiles cannot set themselves as the master when spawning
actors.
2014-10-11 16:15:42 -05:00
MajorCooke
47029a3efc DoKill bug
-Fixed: DoKill did not target 'killtarget' for missiles, causing crashes and making the function not work properly.
2014-10-07 11:33:08 -05:00
Christoph Oelckers
3eaebabdf1 - fixed: EV_Teleport must not access the thing's player pointer before ensuring that 'thing' is a valid pointer. 2014-10-06 17:40:02 +02:00
Edward Richardson
e1b8b4a871 Started work on prediction lerping 2014-10-06 15:27:13 +13:00
Edward Richardson
7175374350 Keep gateway sockets open during handshake 2014-10-05 19:46:34 +13:00
Edward Richardson
c9d603d1c3 Unreliable isn't exactly the problem 2014-10-05 18:52:56 +13:00
Edward Richardson
0c1fde81ad Remove PacketServer auto select
PacketServer has the tendency to amplify netgame latency times, so it
really shouldn't be auto selected.
Added a notice in case it's used.
2014-10-05 18:32:32 +13:00
Edward Richardson
ae71f94ed2 Remove disconnecting players safely
Players who were disconnecting would be removed outside of the playsims
control, causing problems with sector lists.
2014-10-05 18:04:11 +13:00
Edward Richardson
0f9a8176f5 Unprediction needs to restore selected inventory 2014-10-05 16:57:31 +13:00
MajorCooke
f54a59fdf8 - Added JLOSF_CHECKTRACER for A_JumpIfTargetInLOS.
- CHECKTRACER doesn't need to be a missile or have the SEEKERMISSILE
flag.
2014-10-02 17:00:17 -05:00
ChillyDoom
20dea78ce9 Merge branch 'master' of https://github.com/ChillyDoom/zdoom into scoreboardtoggle 2014-10-02 21:13:54 +01:00
ChillyDoom
c6e1ea864f - Added scoreboard toggling. 2014-10-02 21:03:15 +01:00
MajorCooke
5030832df0 - Added DMSS_NOFACTOR for all A_Damage functions. 2014-10-02 11:48:07 -05:00
Christoph Oelckers
c66c497811 Merge branch 'master' of https://github.com/crimsondusk/zdoom 2014-09-29 00:43:19 +02:00
Christoph Oelckers
cfb623d517 Merge branch 'master' of https://github.com/MajorCooke/zdoom 2014-09-29 00:42:59 +02:00
Christoph Oelckers
82656df8c8 Merge branch 'Get-linetarget-from-any-actor' of https://github.com/fdari/zdoom 2014-09-29 00:42:35 +02:00
Christoph Oelckers
81076abba2 Merge branch 'canraise' of https://github.com/GitExl/zdoom
Conflicts:
	src/p_acs.cpp
2014-09-29 00:42:09 +02:00
Teemu Piippo
770547e661 - added udmf key midtex3dimpassible which causes the midtex to behave like a finite-height impassible line; practically this means the mid texture lets projectiles pass through it. 2014-09-28 17:17:19 +03:00
MajorCooke
96c6e7d9bf Minor fix; didn't mean to include that flag check. 2014-09-28 08:20:27 -05:00
MajorCooke
43b86288c7 - Added A_Remove(int pointer, int flags).
- RMVF_MISSILES removes missiles.
- RMVF_NOMONSTERS ignores monsters.
- RMVF_MISC includes non-monsters and missiles.
- RMVF_EVERYTHING disregards all checks and remove it.

These flags now apply to the following in addition to the new function:

-A_RemoveTarget
-A_RemoveMaster
-A_RemoveTracer
-A_RemoveChildren
-A_RemoveSiblings
2014-09-28 08:15:00 -05:00
fdari
c4f0f95ec8 Get linetarget (aim target) from any actor (not just player): AAPTR_LINETARGET 2014-09-28 15:06:52 +02:00
fdari
a2f7b86a0f IsPointerEqual (ACS and Decorate)
Decorate: IsPointerEqual(int aaptr_selector1, int aaptr_selector2)
ACS: IsPointerEqual(int aaptr_selector1, int aaptr_selector2, int tid1 = 0, int tid2 = 0)

Compare the pointers values returned by two pointer select operations. Returns true if they both resolve to the same value. Null values can be explicitly tested using IsPointerEqual(AAPTR_NULL, ...)

ACS: IsPointerEqual(int aaptr1, int aaptr2, int tid1 = 0, int tid2 = 0)

This function lets you compare pointers from other actors than the activator, using tids. Tid1 determines the actor used to resolve aaptr1, Tid2 does the same for aaptr2. If tid1 and tid2 are equal, the same actor will be used for resolving both pointers (that could always happen randomly; this way you know it will happen).
2014-09-28 11:52:37 +02:00
MajorCooke
97d5d614c4 - Fixed: SXF_NOPOINTERS didn't clear LastHeard, causing monsters to spawn with targets. 2014-09-27 16:50:24 -05:00
MajorCooke
68a5db3c8c - Added SXF_NOPOINTERS for A_SpawnItemEx.
- Added WARPF_ABSOLUTEPOSITION for A_Warp.
2014-09-27 13:22:14 -05:00
Christoph Oelckers
68c481945a - extended parameter list of A_BFGSpray. 2014-09-27 09:36:38 +02:00
Christoph Oelckers
e025f40902 - more redundancy removal: Consolidated the common part of the A_Kill* functions into a subfunction. 2014-09-27 08:54:18 +02:00
Christoph Oelckers
afaa88a460 - consolidated the common portion of the 6 different A_Damage* functions into a subfunction. 2014-09-27 08:48:36 +02:00
MajorCooke
0735cb9550 - Updated many functions.
- Added A_KillTarget(damagetype, int flags).
- Added A_KillTracer(damagetype, int flags).
- Added A_RemoveTarget.
- Added A_RemoveTracer.

A_Kill (Master/Target/Tracer/Children/Siblings):
- KILS_FOILINVUL: foils invulnerability.
- KILS_KILLMISSILES: destroys projectiles. Does not work on invulnerable
projectiles without KILS_FOILINVUL, and doesn't work at all on missiles
with NODAMAGE flag.
- KILS_NOMONSTERS: actors that are monsters will not be killed.

A_Damage (Self/Target/Master/Tracer/Children/Siblings):
- DMSS_FOILINVUL: foils invulnerability.
- DMSS_AFFECTARMOR: damages the actor's armor instead of bypassing it
entirely.
- DMSS_KILL: damages the actor by its remaining health (useful for
modular DECORATE programming).

- Added A_SpawnItemEx flags:
- SXF_SETTARGET: sets the calling actor as the target.
- SXF_SETTRACER: sets the calling actor as the tracer.
Both of these functions take priority similar to SXF_SETMASTER over
SXF_TRANSFERPOINTERS.
2014-09-27 00:10:31 -05:00
MajorCooke
5b71ce6dcb - Added FDARI's A_JumpIfHealthLower patch.
Now with pointer accessibility.
2014-09-26 11:48:20 -05:00
Edoardo Prezioso
54ccf5d44d - Fixed a possible uninitialized condition.
In the function R_RebuildViewInterpolation, the pointer 'iview' was not initialized when the player or its camera were NULL, hence 'iview == NULL' was garbage. Also, the function FindPastViewer does not return NULL, hence the mentioned check is not needed at all. Just return early if the player camera does not exist.
2014-09-26 11:11:35 +02:00
Christoph Oelckers
0f62983aee Merge branch 'master' of https://github.com/Edward850/zdoom 2014-09-26 08:31:20 +02:00
Christoph Oelckers
80060cf1ac Merge branch 'checkclass' of https://github.com/MajorCooke/zdoom 2014-09-26 08:30:33 +02:00
MajorCooke
6586fa29fd - Added FDARI's A_JumpIf CheckClass submission.
- bool CheckClass(string classname, int ptr_select = aaptr_default, bool
match_superclass = false)
2014-09-25 23:56:10 -05:00
MajorCooke
422e83a1b9 - Added more A_Damage functions:
- A_DamageTarget
- A_DamageTracer
-Both take a number for how much damage to deal and the damagetype to
inflict. Negative numbers means healing.
2014-09-25 23:12:25 -05:00
Edward Richardson
e25b91d5a1 Cleanup 2014-09-26 16:11:52 +12:00