Commit graph

4767 commits

Author SHA1 Message Date
Edoardo Prezioso
d61c48db25 - Fixed imprecise bound checking in ACS code.
It was possible to access 'playeringame[8]', outside the [0:7] buffer range. Discovered with GCC 4.9 + Address Sanitizer.
2015-03-04 20:37:49 +01:00
Randy Heit
156d1e61fd Use sub-tic accuracy for smooth sine quakes
- Converting the wave speed back to floats, since I'm using sin() instead
  of the finesine table now.
- Pre-shift the quake intensities to avoid extra shifting in GetModIntensity.
- Loading old saves will shift the intensities to fixed point but will not
  convert the fixed wave speeds to floats. The chances of this
  being in a savegame where the speeds are non-zero is pretty much nil,
  and int and floating point 0 are bitwise identical (not counting -0.0).
2015-03-02 19:23:24 -06:00
Braden Obrzut
f941fa9e40 - Fixed: SwapActorTeleFog didn't work with tid 0 (activator). 2015-03-02 17:25:35 -05:00
Braden Obrzut
7a543a71e1 - Fixed: Buddha mode zombie bug returned. (Also fixes compiler warning.)
- Fixed: Missing include for FreeBSD compile.
2015-03-02 16:43:25 -05:00
Christoph Oelckers
123da68735 - took out the part of PIT_CheckThing that determines whether a missile should hurt its target and moved it to a separate function.
- fixed: MF7_HARMFRIENDS was checked on the victim of an attack, but needs to be checked on the shooter.
2015-03-02 10:02:49 +01:00
MajorCooke
6b83dcab89 - Fixed broken regular quakes. 2015-03-01 21:40:03 -06:00
Randy Heit
dca5f0e908 Added QF_SINE
- Squashed commit of the following:

commit bc45fe3263d34ef5f746f524687999c19bf7b779
Author: Randy Heit <rheit@users.noreply.github.com>
Date:   Sun Mar 1 18:51:05 2015 -0600

    wave scale -> wave speed

commit ff96388b128c724c1198757bfa52f1935a263356
Author: Randy Heit <rheit@users.noreply.github.com>
Date:   Sun Mar 1 18:45:32 2015 -0600

    More sine quake fixes

commit 2a89749a6fe6d271b9fbdc218779f680afcf4cb6
Merge: 719dfbe 5456074
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Sat Feb 28 20:37:22 2015 -0600

    Added QF_WAVE to A_QuakeEx.
    - Changes the random quakes into a sine wave (see Shadow Warrior/Rise of the Triad reboots, Hard Reset, etc.)
    - Added 3 properties to control waves per second along each individual axis. Only works with QF_WAVE.
    - Intensity X/Y/Z property becomes the amplitude of the wave.
    - Stacks with regular quakes, allowing shaking along the camera which must be called using A_QuakeEx WITHOUT the flag, or the other quaking functions.
    - Uses the youngest quake's time for positioning.

commit 54560741581e8d15cc7060e8e068cf85e9a4b432
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Sat Feb 28 20:21:19 2015 -0600

    Recommitted recommended changes by Randi, with some modifications. Now, we should be finished!

commit 6f4473013411686d88fc185bdc1cc58b1035b0f1
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Sat Feb 28 12:52:57 2015 -0600

    Finish this revert.

commit 467e53f9400f588a2ada9b32e7634cb1f4ad5066
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Sat Feb 28 12:46:02 2015 -0600

    Reverted back to what was working.

commit da9de56a67efda08036e481fd5fccd5392ce6810
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Thu Feb 26 18:53:20 2015 -0600

    Forgot this bit, for testing.

commit c5093d9bb97caf8478cefc32abc56a036feeea58
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Thu Feb 26 18:52:46 2015 -0600

    Some more progress, but...
    - This did not solve anything. In fact, it did the opposite -- completely broke wave quakes. Now they only happen whenever a random quake is in progress.
    - Left in the commented code on purpose so Randi can test it.

commit 7e526405d2127cbb279f66008c8f8e55a5d497f3
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Wed Feb 25 17:50:42 2015 -0600

    - Use newest waveform timer, not oldest.

commit 1356443609dbc6c7f46e081d0846816dc0836124
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Wed Feb 25 17:32:09 2015 -0600

    - Got regular quakes to multiply onto sine quakes, but the vice versa needs fixing too.

commit d95796c94c70cd0229d4a6d30f69e3a7568b9588
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Wed Feb 25 16:46:21 2015 -0600

    - Last hurdle. Now just need to figure out how to properly scale up and down.

commit 4bc3458e689155ce72c09776604d9eb4fa73d8be
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Tue Feb 24 23:18:03 2015 -0600

    - Fixed the quakes being unstackable.

commit b51012d6d4ea065bf7f6fc9c1a0472966491f7af
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Mon Feb 23 23:48:34 2015 -0600

    QF_WAVE renamed from SINE.
    - Lots of ground covered, but still more to go.
    - Still need to figure out how to make the camera properly shudder.

commit 427e4893193470bbf45415ffec70a0b69b8cccfd
Author: MajorCooke <paul.growney22@gmail.com>
Date:   Sun Feb 22 16:52:30 2015 -0600

    - Begin the groundworks for QF_SINE.
    - Need to figure out how to rework and manipulate the sine wave to move faster, and to allow going below 0 without breaking it too much.
2015-03-01 18:53:34 -06:00
Randy Heit
719dfbe5a9 Don't die on configuration if xinput.h is not found 2015-02-27 21:51:04 -06:00
Edoardo Prezioso
d880b84ea0 - Fixed build with FMOD 4.40.x-4.42.x.
The 'Prologic' speakermode enumeration is removed since 4.40, not 4.44.
This makes possible to build it on linux x64, as the latest version of FMOD which has the dedicated linux64 download link is 4.42.
2015-02-27 15:24:22 +01:00
Randy Heit
a69a06c249 Enable underwater effect for FMOD 4.36+
- The FMOD_DSP_TYPE_REVERB unit was removed in FMOD 4.36. It has been
  replaced by a FMOD_DSP_TYPE_SFXREVERB unit, which is what should have
  been used in the first place.
2015-02-26 21:52:03 -06:00
Randy Heit
410d3007d3 Allow building with FMOD 4.34 2015-02-26 18:49:10 -06:00
Christoph Oelckers
8fd08c2acc - removed debug code 2015-02-26 15:46:01 +01:00
Christoph Oelckers
13e98c301a - added NULL pointer checks to AActor::RemoveInventory to prevent items that destroy their owner in their use state from crashing the engine. 2015-02-26 12:13:17 +01:00
Christoph Oelckers
84f8c299ce - fixed: cached GL nodes should use ZGL3 format for maximum precision. 2015-02-26 12:08:52 +01:00
Edward Richardson
db36cf7d05 Fix string literals that lacked spaces for C++14 2015-02-26 15:24:09 +13:00
Randy Heit
5aba252b87 Simplify NoDelay implementation
- All NoDelay needs to do is call the current state's function. Calling
  SetState() is excessive.
2015-02-24 20:37:58 -06:00
Randy Heit
5d65b10aec Better bad save checking
- Move invalid save condition checks from save CCMD into G_SaveGame().
- Add a gamestate != GS_LEVEL check to G_DoSaveGame().
2015-02-24 20:18:41 -06:00
Randy Heit
c7842a8de8 Fix not-Windows 2015-02-24 20:13:03 -06:00
Randy Heit
e4a041cb4c When changing maps, print map name in console in lower case 2015-02-24 20:12:08 -06:00
Randy Heit
a41af2de73 Make SBARINFO's HasWeaponPiece recognize removed pieces
- Fixed: HasWeaponPiece assumed that once a piece was given, it would not
  be removed. The easiest way to break this assumption is by loading an
  earlier save where you had fewer pieces. (The catch being that if you
  removed all pieces, it would notice that.)
2015-02-24 20:01:39 -06:00
Randy Heit
5f43e5b4ea Don't use finesine table when offseting for plane rotation
- This table isn't precise enough, so the result is noticeably off if
  you're far enough from the origin.
2015-02-20 22:52:30 -06:00
Randy Heit
a5f8c4ead2 Fixed: UDMF loader did not set the index for sides 2015-02-20 21:51:14 -06:00
Randy Heit
9721c025c1 Remove unneeded index restriction from GetUDMFInt/Fixed 2015-02-20 20:42:30 -06:00
Randy Heit
a64ebc720b Fix assert 2015-02-20 20:35:32 -06:00
Randy Heit
19ab774dc8 Fixed: A_CStaffCheck needed more NULL pointer checks 2015-02-20 20:17:15 -06:00
Randy Heit
2827c13d0c Rewrite new quake stuff for correctness
- Quake scaling should be handled for each quake. The former
  implementation was potentially taking flags from one quake and applying
  them to another, which is broken.
- Remove all the int<->float conversions.
2015-02-20 19:36:13 -06:00
Randy Heit
8e0151b4c1 Add FRandomPick
- This is RandomPick but for floats. Considering what RandomPick
  translates into in the scripting branch, I hope I don't regret not using
  type inference on RandomPick instead of creating a new keyword.
2015-02-20 17:52:52 -06:00
Randy Heit
173dbd6bce Add FxFloatCast
- The master branch really didn't have this already?
2015-02-20 17:48:48 -06:00
MajorCooke
fb9231a38d - Added QF_FULLINTENSITY.
- When using both scaling flags, by default, the effect only reaches half peak going either way. This forces it to go all the way to the top (or bottom if using QF_MAX) before scaling back to its original height..
2015-02-20 11:06:41 -06:00
MajorCooke
aa3c3d6546 - Fixed: Smoothing in to out reached only half strength. 2015-02-20 10:55:06 -06:00
MajorCooke
140a650442 - Added QF_SCALEUP and QF_MAX.
- QF_SCALEUP behaves like QF_SCALEDOWN: it gradually scales the tremors, only going upwards.
- QF_SCALEUP and QF_SCALEDOWN can be combined to make an earthquake that gradually smoothes in and out.
- QF_MAX can be used to invert this behavior, where it starts at the peak of the amplitude, fades out half way, and then grows back to maximum.
2015-02-20 10:46:37 -06:00
Christoph Oelckers
3019f2cc23 - fixed savegame code for quakes. 2015-02-20 16:50:03 +01:00
MajorCooke
475bc65eba - Better safe than sorry, even if it apparently had no effect. 2015-02-20 08:35:42 -06:00
MajorCooke
49d9482363 - Cleaned out of the code and converted it to taking a struct instead.
- This will make it much easier on me to add future changes. Big thanks to Graf for the idea.
2015-02-20 08:26:45 -06:00
MajorCooke
d6e4a7a081 - Changed QuakePower back to fixed_t and just had it return FLOAT2FIXED instead. 2015-02-20 07:36:37 -06:00
MajorCooke
3bf24204d8 - Ensure save games don't break. 2015-02-20 01:41:59 -06:00
MajorCooke
2939194ae3 - Forgot this tiny little one. 2015-02-20 01:36:53 -06:00
MajorCooke
9c5d90e4cb - Removed QF_SCALEUP until I can figure out a proper way to implement it. 2015-02-20 01:33:30 -06:00
MajorCooke
0948b95e08 - Changed QuakePower to take doubles on everything but intensity. This lets the camera shake until it truly reaches 0 as the limitations of integers were actually cutting it short. 2015-02-19 23:19:24 -06:00
MajorCooke
045ab9fd5b Initial groundwork for QF_SCALEDOWN. 2015-02-19 21:42:32 -06:00
MajorCooke
284fd3e20f - Fixed: relz was never initialized.
- This could cause problems in places like the GZDoom renderer in the odd circumstance, causing the camera to become stuck in the floor or ceiling until the quake expires.
2015-02-19 16:30:00 -06:00
Randy Heit
2d4f02c560 Merge branch 'MajorCooke-quakeex' 2015-02-18 15:01:45 -06:00
Randy Heit
e377c2c4f8 Change XYZ Quaking from Major Cooke
- Relative quakes are different from other quakes; all quakes affecting
  the camera do not become relative if one of them is relative.
- Use a single function call to get quake visual parameters instead of four.
- Thrust things in a psuedo-ellipse if they're inside a damaging quake whose
  IntensityX != IntensityY.
- Don't break old savegames.
2015-02-18 14:48:52 -06:00
rheit
c23b7cd378 Merge pull request #273 from MajorCooke/transferroll
- Added SXF_TRANSFERROLL.
2015-02-18 11:28:13 -06:00
MajorCooke
0f4bca8607 - Added SXF_TRANSFERROLL. 2015-02-14 16:51:05 -06:00
MajorCooke
7050d03222 Added A_QuakeEx(intensity x, y, z, duration, damrad, tremrad, sound, flags)
- Unlocks the full potential of using quakes, including the Z axis. Each intensity applies to X/Y/Z planes whenever a player is experiencing it.
- Flags:
- QF_RELATIVE - Adjusts the quaking of the camera to go in the direction its aiming (X: forward/backward. Y: Left/right.)
- Plans for including pitch will be implemented in the future for the Z axis with relativity.
2015-02-14 15:58:39 -06:00
Alexey Khokholov
fa2e2a8528 Update nukedopl3.cpp 2015-02-14 00:01:54 +09:00
Christoph Oelckers
d8d2058ec6 Merge branch 'NetBug' of https://github.com/ChillyDoom/zdoom 2015-02-12 19:12:13 +01:00
Christoph Oelckers
93c12cf259 - addressed the problem that prompted setting NOGRAVITY for all floatbobbing items for real:
Hexen uses the spawn height value from the mapthing_t structure to offset the item when floatbobbing. With proper gravity handling enabled this method doesn't really work so as a workaround ZDoom will now enable a hidden compatibility option when playing any map with a Hexen format MAPINFO so that any positive value in this field will make P_ZMovement revert to the original method of setting the items height (excluding the floatbob offset, of course.)

This also removes some code from P_NightmareRespawn that originate from the original Hexen method for floatbobbing which aren't needed anymore
2015-02-12 18:57:06 +01:00
Christoph Oelckers
337682934c - fixed: CF_FLY cannot be part of the player_t structure and be tracked properly. It needs to be part of the actor itself that has MF2_FLY set so it got moved to flags7.
- removed some fudging code that tried to work around the shortcomings of CF_FLY but was ultimately causing more problems than it solved.
2015-02-10 23:40:53 +01:00
Christoph Oelckers
c0eb39ec72 - fixed: The exploding ArtiTimeBomb must disable movement interpolation for its position change needed to display the explosion frames correctly. 2015-02-10 23:09:57 +01:00
Christoph Oelckers
5fc6ff1303 - fixed: invisible 3D floors were treated as solid, not translucent when building the sorted lists, resulting in the top plane not being rendered in case of an overlap. 2015-02-10 23:01:58 +01:00
Christoph Oelckers
a3bdbff052 - fixed: 3Dmidtex opening checks didn't take per-sidedef scaling into account. 2015-02-10 21:30:52 +01:00
ChillyDoom
3d7934f1a1 - Fixed: Part of Net_CheckLastReceived treated Net_Arbitrator as a node number rather than a player number. 2015-02-09 20:16:57 +00:00
Christoph Oelckers
6423b2fece - fixed: Dehacked text patching needs to alter all occurences of the source string. 2015-02-09 10:15:11 +01:00
Randy Heit
867bfd2751 Typo fix: concidered -> considered 2015-02-08 21:07:28 -06:00
Randy Heit
79791629ec Add missing break to FxGlobalVariable::Resolve()
- Not like it matters much when there are no global variables of types
  float, fixed, or angle.
2015-02-08 21:01:49 -06:00
Randy Heit
a063b48d7a Add a needed break in FxAbs::Resolve()
- Fixed: FxAbs could not resolve floating point constants because it fell
  through to the error case.
2015-02-08 20:56:30 -06:00
Randy Heit
c3227729e7 Remove superfluous if in DoGiveInv()
- I'm assuming this check was here for a reason, but when both branches of
  the if do the same thing and it's been this way since before recorded
  history, it's not obvious what was intended here.
2015-02-08 20:54:13 -06:00
Randy Heit
711ac77915 defitem != NULL -> defitem == NULL 2015-02-08 20:51:14 -06:00
Randy Heit
fd7ed2bc25 Undo most of ZzZombo's changes
- "If it ain't broke, don't fix it."
- Some of the changes were downright wrong and some were pointless, so undo
  everything that doesn't look like an actual improvement.
2015-02-08 20:44:18 -06:00
Randy Heit
2d7592c2c3 Restore nodebuilder files to their previous versions
- For easy comparison, changes between the built-in nodebuilder and ZDBSP
  must be kept to a minimum.
2015-02-08 19:49:08 -06:00
Christoph Oelckers
e047902d56 - resanitation of FDynamicBuffer::SetData. 2015-02-08 17:58:24 +01:00
Christoph Oelckers
57ae77412d Merge branch 'althud_ammo' of https://github.com/alexey-lysiuk/gzdoom 2015-02-08 11:52:08 +01:00
Christoph Oelckers
ae78aeaacb - if this buffer is freed, the pointer referring to it must also be deleted. 2015-02-08 11:48:41 +01:00
Christoph Oelckers
45117b2603 Merge branch 'codesanity' of https://github.com/ZzZombo/zdoom
Conflicts:
	src/info.h
2015-02-08 11:47:49 +01:00
ZzZombo
0be3341031 - Missed some unused variables. 2015-02-08 18:04:11 +08:00
alexey.lysiuk
003817f415 Added customization of ammo display in alternative HUD
Added hud_showammo CVAR with three states:
* If value is 0, show ammo for current weapon only
* If value is 1, show ammo for available weapons
* If value is greater than 1, show ammo for all weapons
Default value is 2, so initial ammo display behavior isn't changed
2015-02-08 11:08:02 +02:00
ZzZombo
c4b742ebf0 - Part 2 of the sanity crusade. 2015-02-08 17:03:49 +08:00
Christoph Oelckers
4959932df7 Merge branch 'changemap2-fix' of https://github.com/Edward850/zdoom 2015-02-08 09:07:12 +01:00
Christoph Oelckers
0688247ee1 Merge branch 'NewChaseDir-opt' of https://github.com/Edward850/zdoom 2015-02-08 09:06:53 +01:00
ZzZombo
2c06987f67 - Fixed the sanity commit. 2015-02-08 14:35:45 +08:00
Christoph Oelckers
3a504da675 - forgot to save this before committing. 2015-02-07 19:04:43 +01:00
Christoph Oelckers
7c567979d9 Merge branch 'transferspriteframe' of https://github.com/MajorCooke/zdoom 2015-02-07 17:13:21 +01:00
MajorCooke
b37a98689a - Added SXF_TRANSFERSPRITEFRAME. Now it's possible to make starting frames that start with "####" "#" 0 in Spawn.
- Fixed a compile warning with FAF_NODISTFACTOR.
2015-02-07 10:04:33 -06:00
Christoph Oelckers
7789975b6c - reverted a few of Zzombo's changes. 2015-02-07 17:02:46 +01:00
Christoph Oelckers
4e2763e5fa Merge branch 'master' of https://github.com/ZzZombo/zdoom-modified 2015-02-07 16:45:44 +01:00
Christoph Oelckers
5d75df4869 Merge branch 'polydoor_swing_overshoot_fix' of https://github.com/edward-san/zdoom 2015-02-07 16:44:38 +01:00
Christoph Oelckers
c4f932022c - added 'listsoundchannels' CCMD for debugging. 2015-02-07 16:44:24 +01:00
ZzZombo
322742d4b1 - Fixed various instances of unused variables, accessing arrays out of bounds, initialization of non-primitive members in constructor's body, dead code, passing parameters by value instead of reference, usage of uninitialized variables, as reported by cppcheck. 2015-02-07 23:35:23 +08:00
Christoph Oelckers
ec58178695 - replace all \0 characters in Dehacked patches with spaces.
This is needed to make some old and broken patches in some WolfenDoom mods load.
2015-02-07 15:27:31 +01:00
Edoardo Prezioso
60b735dc60 Remove redundant code in polydoor swing code.
'Perpetual' check does not make sense for poly doors.
2015-02-07 15:03:16 +01:00
Christoph Oelckers
2d4299608c Merge branch 'Inventory.Transfer-flag' of https://github.com/Edward850/zdoom 2015-02-07 13:12:15 +01:00
Christoph Oelckers
6801d0faec Merge branch 'pause' of https://github.com/Edward850/zdoom 2015-02-07 13:03:33 +01:00
Christoph Oelckers
c54a4fe06b Merge branch 'ext_skin_check' of https://github.com/alexey-lysiuk/gzdoom 2015-02-07 13:02:19 +01:00
Christoph Oelckers
5a52c4007d Merge branch 'faceaddons' of https://github.com/MajorCooke/zdoom 2015-02-07 13:01:31 +01:00
Christoph Oelckers
cb4ef09b69 Merge branch 'mirrorfix' of https://github.com/MajorCooke/zdoom 2015-02-07 12:59:53 +01:00
Edward Richardson
291861bf52 Removed debug output 2015-02-05 23:53:34 +13:00
Edward Richardson
5164b78c31 Camera paths would hold indeterminate of the level 2015-02-05 22:44:51 +13:00
Edward Richardson
cbb066f1fb Keep gameticker running to let the thread sleep 2015-02-05 22:43:42 +13:00
Edward Richardson
1e0a1466a3 Moved and rearranged transfer task
- Some inventory pickup conditions weren't properly covered
2015-02-05 20:13:54 +13:00
Edward Richardson
de4097cc7b Added INVENTORY.TRANSFER
- INVENTORY.TRANSFER allows transferring all owned inventory to a new
owner on pickup.
2015-02-05 14:52:52 +13:00
Braden Obrzut
8e1b1aa201 - Defer SDL subsystem initialization since it seems to cause conflicts with GUI toolkits on some systems. 2015-02-02 19:36:08 -05:00
Chris Robinson
90ed80abe5 Merge remote-tracking branch 'zdoom/master' into openal 2015-02-01 22:48:40 -08:00
Randy Heit
dc6b45804d Don't lose the cursor when scrolling up in option menus
- Fixed: If the menu cursor was on the topmost-displayed item, pressing up
  would not scroll the view up. The check for scrolling only tested if the
  newly selected item was the topmost one, since the menu code had
  assumed the only time the cursor would be on the topmost visible line
  was when it was the very first line of the menu. Using PgDn breaks this
  assumption.
2015-01-31 20:10:18 -06:00
alexey.lysiuk
cce5066bea Improved check for skins and maps in the same WAD
The corresponding warning is shown for Doom I mods too. Good example of it is Hyena TC: http://www.doomworld.com/idgames/index.php?file=levels/doom/Ports/megawads/hyena.zip
Reduced chance of false positive for the mentioned warning
2015-01-31 13:14:30 +02:00
MajorCooke
53fd57d6b7 - Added ang_offset and pitch_offset to A_Face, along with 4 new flags:
- ang_offset: the extra angle to apply to the actor after calculating the maximum turn.
- pitch_offset: Just like ang_offset, with pitch instead.
- FAF_BOTTOM: Aim straight for the actor's z coordinate, not with +32 units.
- FAF_MIDDLE: Aims for the direct middle of the actor.
- FAF_TOP: Aims for the very top of the actor.
- FAF_NODISTFACTOR: Use the raw pitch offset without calculating it into the distance of the aimed actor.
2015-01-30 16:48:24 -06:00
MajorCooke
6bb0849984 - Fixed: MIRRORREFLECT was broken after my last patch to fix the always 0 angle issue. Also simplified the speed change -- it's the same thing without having to recalculate the angle into it.
- Also ensure that the check for AIMREFLECT happens no matter what.
2015-01-30 16:34:24 -06:00
Randy Heit
b69edbbec1 Redo commit a4c07a9
- Line endings are inconsistant in this file, but at least the commit
  doesn't touch the whole file.
2015-01-29 19:50:52 -06:00
Randy Heit
d828173ce3 Revert "- fixed: Since A_Give/TaketoChildren/siblings use the same code as A_Give/TakeInventory but do not use the third parameter this must be ignored by the code. This is merely a band-aid fix, because this problem doesn't exist in the same form in the scripting branch."
This reverts commit a4c07a9ee3.

- This commit touched every line of thingdef_codeptr.cpp, which would make
  merging it into the scripting branch a pain in the ass.
2015-01-29 19:30:26 -06:00
Braden Obrzut
72506fa6e9 - Fixed: Regression with centered coordinates. 2015-01-26 15:00:36 -05:00
Edoardo Prezioso
78b4cbdf6c - Fixed a very old issue with rotating polydoors.
This happened when the polydoor was open. If a mobj blocked the poly door, such that the door could not move from its open position, the poly door could rotate a little bit more than needed, making the door partially closing when the door managed to close later.
2015-01-26 02:20:54 +01:00
Christoph Oelckers
a4c07a9ee3 - fixed: Since A_Give/TaketoChildren/siblings use the same code as A_Give/TakeInventory but do not use the third parameter this must be ignored by the code. This is merely a band-aid fix, because this problem doesn't exist in the same form in the scripting branch. 2015-01-25 20:15:58 +01:00
Edoardo Prezioso
04c6c5ca55 Fix missing 'victim' replace in ALoreShot code. 2015-01-24 14:17:47 +01:00
Christoph Oelckers
92fbe47ade - fixed and cleaned up ALoreShot::DoSpecialDamage. 2015-01-24 14:04:06 +01:00
Edward Richardson
b2fbeb24c4 DEM_CHANGEMAP2 wasn't properly skipped 2015-01-24 16:09:15 +13:00
Christoph Oelckers
d1cca79c31 - Use SpawnHealth() when calling A_ResetHealth. 2015-01-23 20:29:38 +01:00
MajorCooke
301c061ec3 - Added pointer for A_SetRoll. 2015-01-23 10:24:23 -06:00
MajorCooke
19b43d4752 - Added A_ResetHealth(ptr). Defaults to AAPTR_DEFAULT (the action caller).
- Added pointers to the following functions, all of them set to AAPTR_DEFAULT:
- A_SetAngle
- A_SetPitch
- A_SetScale
- A_SetSpeed
- A_ScaleVelocity
2015-01-23 09:26:34 -06:00
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
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
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
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
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
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
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
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
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