Commit graph

5648 commits

Author SHA1 Message Date
Christoph Oelckers
0db679c90d - fixed clang compile error. 2016-02-02 10:53:56 +01:00
alexey.lysiuk
90dd6b61b4 Fixed build with Creative Labs OpenAL SDK
Tested with
* Creative OpenAL from https://www.openal.org/downloads/OpenAL11CoreSDK.zip
* OpenAL Soft from http://kcat.strangesoft.net/openal-binaries/openal-soft-1.17.1-bin.zip
2016-02-02 10:29:23 +02:00
Randy Heit
c9d81dff53 Use absolute value of Y scale for 3D midtex
- Somebody might want to set a midtexture's Y scale negative to flip it
  vertically. I'm pretty sure this would mess up 3D mid textures if we
  don't make it positive again for those.
2016-02-01 21:07:09 -06:00
Randy Heit
6b6c1af0dc Add support for Y flipped non-vertically tiling masked midtextures 2016-02-01 21:07:09 -06:00
Randy Heit
03f0e1dc5c Remove something that looks like 3D floor development garbage 2016-02-01 21:07:08 -06:00
Christoph Oelckers
6b75f14c0f - fixed some Linux/GCC warnings. 2016-02-02 01:04:59 +01:00
Christoph Oelckers
fe3e56c6bc - fixed: oalload.h should only do stuff is NO_OPENAL is not defined. 2016-02-01 18:49:12 +01:00
Christoph Oelckers
ee045371a3 - On Windows, use LoadLibrary/GetProcAddress to load OpenAL function addresses.
The reason for this is that on my system, the static or delay loaded method always picks the (obsolete) system-installed OpenAL version (needed for some old games) which is not wanted here if there's another one in the local ZDoom directory.
This also removes the dependency on the broken import library that comes with OpenAL Soft which causes compile errors with more modern MSVC compilers on default settings.
2016-02-01 14:02:25 +01:00
Christoph Oelckers
e0608f50d1 - create a separate translation table for Heretic's rain pillar.
These objects are supposed to be bright, but the standard translations for player do not take this into account, creating dark and/or invisible projectiles depending on the color being used.
The new translation uses hue and saturation from the player color, but combines brightness from the original color with the one for the player in an 8:2 ratio, so that no matter for the player color, these always remain bright and visible.
2016-02-01 10:45:33 +01:00
Christoph Oelckers
58196f77ff Merge branch 'master' of https://github.com/rheit/zdoom 2016-02-01 10:00:39 +01:00
Christoph Oelckers
fd2828b1fe - fixed typo in monster movement code. 2016-02-01 10:00:19 +01:00
Randy Heit
2f4dc17954 Add support for face sprite Y flipping 2016-01-31 22:05:32 -06:00
Randy Heit
809a9d801c Got a flag backwards 2016-01-31 21:23:45 -06:00
Randy Heit
0b9aeb33e1 Fixed potential divide by 0 when drawing voxels
- Since voxels can have their origin behind the viewer and still have a
  portion visible in front of the viewer, they aren't clipped to MINZ like
  face sprites are. The 3D floor handling in R_DrawSprite() neglected to
  clamp it when recalculating the diminished light colormap.
  - Aside, but R_DrawSprite() probably shouldn't be messing with these
    properties at all. Why isn't this done in R_ProjectSprite() before it
    ever gets to the drawing part?
2016-01-31 20:52:56 -06:00
Randy Heit
1d0a3d19c8 Fix a part in maskwallscan that was missed for right-edge exclusivity 2016-01-31 20:45:37 -06:00
Edoardo Prezioso
4cbf752b4d - Fixed uninitialized variable in level info code.
Found with Valgrind.
2016-01-31 23:19:34 +01:00
Christoph Oelckers
a1cd0401e4 - fixed: noclip2 should only set some minimal velocity if the player has none. 2016-01-31 22:38:08 +01:00
Christoph Oelckers
8068fca601 - fixed: player_t::Uncrouch should only reset the view height if the player is actually crouched. 2016-01-31 22:36:37 +01:00
coelckers
c3cc98b5f3 Merge pull request #523 from alexey-lysiuk/osx_fullscreen
Final touches to fullscreen mode on OS X
2016-01-31 16:56:35 +01:00
coelckers
09e2f212a0 Merge pull request #524 from alexey-lysiuk/hexen_mac_beta
Added support for Hexen Mac beta
2016-01-31 16:55:23 +01:00
MajorCooke
eb2829ad5e - Added CBF_DROPOFF to A_CheckBlock. Checks for actors stuck in tall ledges or dropoffs. 2016-01-31 09:45:41 -06:00
Randy Heit
219b6f7c5d Fix R_DrawFogBoundary for right-edge exclusivity 2016-01-31 06:51:11 -06:00
alexey.lysiuk
1798fab973 Added support for Hexen Mac beta
It's very similar to Mac demo but also contains MAP41: Maze like DOS full version 1.0
2016-01-31 12:53:22 +02:00
alexey.lysiuk
7b0f557514 Enabled zoom window button on OS X
Independently from OS version the game will enter fullscreen mode when zoom button is clicked
Window zooming behavior introduced in Yosemite is available on all supported versions of OS X
2016-01-31 10:42:16 +02:00
Randy Heit
240ca2af4c Use consistant right-edge rules in the renderer.
- The original Doom renderer was inclusive for all right edges. This was
  fine for the wonky projection it did. This was not fine for a standard
  perspective divide, so I had to change walls to be right-edge exclusive
  when I changed the projection. I only touched what was needed. Until
  now. The right edge is always exclusive now, which should prevent any
  more bugs related to mixing the two clusivities incorrectly.
2016-01-30 21:27:35 -06:00
Randy Heit
c1b2861362 Merge the boolean args to EV/P_Teleport into a single flags arg
- The flags use TELF_ since DECORATE has an A_Teleport with its
  own set of TF_ flags.
- TELF_KEEPVELOCITY is used instead of TELF_HALTVELOCITY, because
  there was only one call that ever set bHaltVelocity to false.
2016-01-30 21:27:34 -06:00
Christoph Oelckers
939989dc8c - fixed crash when trying to cache nodes for a map that has no two-sided walls and no minisegs.
Under these conditions there are no partner segs and the glsegextras array is NULL.
2016-01-31 01:05:31 +01:00
Christoph Oelckers
46024398fe - fixed: Change FCheckPosition::LastRipped to a TMap so that it can track multiple overlapping actors being ripped during the same tic. 2016-01-30 22:06:04 +01:00
Christoph Oelckers
06fdb6ca45 - fixed: The reverb editor failed to open in fullscreen mode at desktop resolution.
According to Blzut3:

The issue happens when the fullscreen resolution is the same as the desktop resolution. In this case WM_DISPLAYCHANGE doesn't occur so the editor never appears. This appears to be fixable by also catching WM_STYLECHANGED since at the very least the window caption will appear/disappear.
2016-01-30 21:49:03 +01:00
alexey.lysiuk
6bce5ddc4b Scale of player's skin is now preserved on corpses after reborn 2016-01-30 18:30:20 +02:00
coelckers
ccce6f44a2 Merge pull request #518 from Edward850/Particle-clamp
Clamped r_maxparticles to the internal limit
2016-01-30 15:21:55 +01:00
Christoph Oelckers
36911bac4b - fixed memory allocation type mismatch in demo code. 2016-01-30 15:17:46 +01:00
Christoph Oelckers
afcd755c7a - changed autoaim menu option to a slider which allows a more precise control of the property.
- having a value of 5000 as the default for autoaim makes no sense, since this is an angle value that will always be clamped to [0..35]. So now 35 is both the default and the maximum.
2016-01-30 13:43:39 +01:00
Christoph Oelckers
3b5af8484c Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-30 12:59:37 +01:00
Christoph Oelckers
0a0a2c4a41 - removed a warning. 2016-01-30 12:59:15 +01:00
Christoph Oelckers
fab186786e Merge branch 'PlayerTransition' of https://github.com/Edward850/zdoom 2016-01-30 12:52:50 +01:00
Christoph Oelckers
0ddf9db8dd - fixed: Uncrouching a player also needs to reset the viewheight to its default. 2016-01-30 12:51:15 +01:00
alexey.lysiuk
6166520b33 Do not respawn on damaging floors when sv_samespawnspot is enabled
See http://forum.zdoom.org/viewtopic.php?t=47191
2016-01-30 12:50:19 +02:00
Christoph Oelckers
1285dde615 Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-30 11:34:13 +01:00
Christoph Oelckers
b84207a089 - use scaling, render style and alpha when drawing the cast call. 2016-01-30 11:33:55 +01:00
Edward Richardson
40d90ba325 Game still needs to abort if no starts exist at all 2016-01-30 22:26:47 +13:00
Edward Richardson
fe52f98459 Clamped r_maxparticles to the internal limit 2016-01-30 22:04:09 +13:00
Edward Richardson
c1e362ee83 Added level transition spawning for missing starts
- Additional player bodies are spawned for any absent starts in co-op.
- Removed now-redundant bot start limitation
2016-01-30 22:02:27 +13:00
Braden Obrzut
5317a92d11 Merge branch 'RadiusGiveExp2' 2016-01-30 00:27:44 -05:00
Braden Obrzut
5d6e8a7338 - Fixed: Possible timer overflow in PowerTimeFreezer. 2016-01-30 00:18:38 -05:00
Braden Obrzut
a34a7ace18 - Some resolutions between 320x200 and 640x400 had non-square clean scaling factors. Maybe there was a reason for this in the past, but I can't think of a case where it'd actually look better to have 1:2 scaling in the menus and someone reported it. 2016-01-29 23:37:38 -05:00
Braden Obrzut
1fcb9fcf06 - Fixed: Crash when automatically switching sound backends due to failure. 2016-01-29 23:10:10 -05:00
MajorCooke
eeca536d9a Clean up a few things. 2016-01-29 10:41:05 -06:00
Christoph Oelckers
a41dc24086 - fixed: 3D lights should override the sidedef's regular light completely, that includes relative light added by UDMF's 'light' property.
- Renamed the 'noabsolute' parameter in side_t::GetLightLevel to 'is3dlight', what it actually is, to avoid the confusion that caused the abovementioned error.
- fixed: The Down2Up render path for sides of 3D floors had the 'is3dlight' check inverted.
2016-01-29 14:55:31 +01:00
Christoph Oelckers
c6c15fe83c - fixed: AActor::SpawnPoint[2] must store the actor's height above the sector's floor, not above floorz. floorz will represent the current floor the actor is standing on, which may be a 3D floor or a 3D midtexture, but both respawn functions which use this value work from the actual sector floor. 2016-01-29 13:40:37 +01:00
Christoph Oelckers
08e5e1c145 - restored the velocity threshold checks in A_MaceBallImpact2 and A_DeathBallImpact to their original Heretic form, minus the check for floorz, to account for potential positioning issues with slopes.
These checks had some major issues:

 * they calculated incorrect positive values for hitting a ceiling
 * the way they used the plane equations made some incorrect assumptions.
 * velz has the velocity reduction from bouncing already factored in from the calling code so doing it here again is not necessary.
2016-01-29 12:44:38 +01:00
Christoph Oelckers
fe271b4e78 - fixed: A_MaceBallImpact2 was missing a check for hitting some liquid terrain. 2016-01-29 12:21:35 +01:00
Christoph Oelckers
7b1fbe0a02 - fixed: P_TeleportMove was missing checks for THRUACTORS and THRUSPECIES flags. 2016-01-29 11:29:47 +01:00
Christoph Oelckers
f8d5430c06 - fixed: When changing 'noclip2' some minor lateral velocity should be set to ensure that all internal variables contain proper values. 2016-01-29 11:11:10 +01:00
Christoph Oelckers
94611588d5 Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-29 10:55:04 +01:00
Christoph Oelckers
674b81a6b1 - fixed: The 3D floor light list should use the last light starting above the ceiling, not the first one.
- fixed: ExtraFloor_LightOnly type 2 was behaving like type 0. Instead anything interrupting it should reset to the sector's own light level.
2016-01-29 10:54:44 +01:00
Randy Heit
87dee5c611 Fixed: Co-op players could spawn at (0,0) if no start spots for them
- Check if a co-op start exists. If not, pick one at random.
- Don't telefrag other players when spawning in co-op games, since
  you're allowed to move out of other players now.
2016-01-28 20:08:09 -06:00
Christoph Oelckers
c5161ee748 - fixed: A_Face* mixed angle and distance values in the same parameter. Fixed by separating these into two.
- removed the intermediate A_Face* functions, except a bare-bones A_FaceTarget as needed by the monster AI code.
2016-01-28 20:44:10 +01:00
MajorCooke
772f086a5e Fixed broken aiming with A_CheckLOF. 2016-01-28 12:24:40 -06:00
Christoph Oelckers
6715a97d6e - removed debug output from previous commit. 2016-01-28 12:04:47 +01:00
Christoph Oelckers
dfcee625db - fixed: The ACS String garbage collector only looked at the active script's stack but never considered a recursive call from another script.
Fixing this required adding an external list of active stack objects that the garbage collector can access.
A nice side effect: It's no longer necessary to pass around the stack info to various functions that might end up triggering a garbage collection.
2016-01-28 11:56:47 +01:00
Christoph Oelckers
1a4b3bbe11 Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-28 09:20:55 +01:00
Christoph Oelckers
724e625f16 - fixed: Loading an old savegame from before the sector damage refactoring cleared the extended Boom sector flags before processing them. 2016-01-28 09:20:27 +01:00
MajorCooke
2da868656e Finalize loop and prioritize missile searching. 2016-01-27 15:22:05 -06:00
MajorCooke
846f14c03d Remove the loop. 2016-01-27 14:56:06 -06:00
MajorCooke
79177cf98e Set up the subfunction. 2016-01-27 14:54:46 -06:00
rheit
f36bdc474d Merge pull request #421 from alexey-lysiuk/video_mode_menu
Fixed selection of empty items in Video Mode menu
2016-01-27 13:30:05 -06:00
Randy Heit
2d40874cfa Make finishgame CCMD net-aware 2016-01-27 13:19:15 -06:00
Randy Heit
b22a909829 Add nodelay handling to FastProjectile 2016-01-27 13:08:23 -06:00
MajorCooke
275cdcd958 Renamed A_FaceVelocity to A_FaceMovementDirection. 2016-01-27 10:12:13 -06:00
coelckers
c5379c749e Merge pull request #428 from MajorCooke/A_CheckSPecies
Added A_CheckSpecies(state jump, name species, ptr = AAPTR_DEFAULT)
2016-01-27 16:45:16 +01:00
Christoph Oelckers
7c6e070244 - fixed: line spacing was taken from a different variable in conversation display and mouse coordinate code. 2016-01-27 11:19:30 +01:00
Christoph Oelckers
4eb38f0381 - fixed: plane heighr calculations for Floor_Lower/RaiseByValue should be done at a point that's actually near the affected sector, not at (0,0), otherwise there's a risk of fixed point overflow. 2016-01-27 11:01:38 +01:00
Christoph Oelckers
c3047f448e - fixed: When MIDI->Open returns failure, the MIDI device needs to be deleted. Otherwise the dead device object can trigger an assert later. 2016-01-27 10:39:21 +01:00
Christoph Oelckers
f2666f70dd - removed unneeded check for 'listenactor' in S_UpdateSounds. 2016-01-27 09:56:40 +01:00
Christoph Oelckers
d2beec4585 - ensure that AInventory::Touch attributes everything to the correct player, even if the touching action results in a morph. 2016-01-27 00:56:40 +01:00
Christoph Oelckers
8993f84087 Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-26 22:27:42 +01:00
Christoph Oelckers
2a1fa60aa6 Merge branch 'CheckProxExpPruned' of https://github.com/MajorCooke/zdoom 2016-01-26 18:49:03 +01:00
MajorCooke
1c0ef1d367 Removed CPXF_NODISTANCE. 2016-01-26 10:00:20 -06:00
coelckers
e397b5a475 Merge pull request #511 from MajorCooke/CheckLOFpitch
A_CheckLOF Pitch FIx
2016-01-26 14:44:05 +01:00
MajorCooke
cb43ce9cfc - Fixed: A_CheckLOF was doubling up on its pitch and reversing it when without a target. 2016-01-26 07:20:55 -06:00
Christoph Oelckers
4f0cfa29b4 - missed a '!'. 2016-01-26 10:50:31 +01:00
Christoph Oelckers
623276f5a6 - fixed: All access to weapon info in DECORATE functions should be restricted to when they get called from an actual weapon, not from a CustomInventory item.
Issues this fixes:

 * all original Doom attack functions unconditionally altered the flash state.
 * A_FireOldBFG, A_RailAttack and A_Blast never checked for a valid ReadyWeapon.
 * CustomInventory items could deplete an unrelated weapon's ammo.
2016-01-26 09:43:47 +01:00
Randy Heit
9f8dee45c4 Fixed: 0 was accidentally not allowed as transparent for grayscale
- I don't know what I was thinking when I wrote that.
2016-01-25 21:44:08 -06:00
Randy Heit
450b6de384 cRGBT::A should return 255, not 1. Whoops. 2016-01-25 21:31:21 -06:00
Randy Heit
0fc40cff0a Fix some rare PNG tRNS chunk cases
- For grayscale images drawn with the paletted renderer, the value here
  was treated as always full range [0,65535]. The max value is actually
  determined by the bit depth.
- For RGB images drawn with the paletted renderer, the tRNS chunk was
  ignored.
- For grayscale images drawn with the RGB renderer, having a tRNS chunk
  present resulted in undefined behavior.
- For RGB images drawn with the RGB renderer, the tRNS chunk was ignored.
2016-01-25 21:23:53 -06:00
Randy Heit
61d033328b Don't show "exited the level" messages after the level has exited 2016-01-25 20:18:33 -06:00
Randy Heit
774c136532 Fixed: Player.FallingScreamSpeed used minz as the maxz as well 2016-01-25 18:55:05 -06:00
Christoph Oelckers
29c38b23f3 - last commit was missing actionspecials.h. 2016-01-26 00:39:25 +01:00
MajorCooke
0be09f54bd Particles can now scale up to 65535. 2016-01-25 15:44:11 -06:00
Christoph Oelckers
316389c7f9 - fixed: Ceiling_LowerByValue(Times8) were missing the 'crush' parameter.
- fixed typo in 5 minute door sector type (it used FRACUNIT instead of TICRATE.)
2016-01-25 21:27:19 +01:00
Christoph Oelckers
cf43eb6c6d - limit particle size to 127 2016-01-25 21:08:09 +01:00
Christoph Oelckers
73ee500bea Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-25 18:58:42 +01:00
Christoph Oelckers
cef2cf4e6d fixed parameter count for Sector_SetDamage. 2016-01-25 18:58:23 +01:00
Christoph Oelckers
7b5a77a8d8 - added various action specials and parameter extensions defined by Eternity Engine.
The reason for defining them is to be able to fill out the Eternity translation table for GZDoom's Extradata parser.
Most of the new specials are mere specializations of ZDoom's Generic_* functions and occupy positions above 255 to avoid filling up the last remaining free slots available for Hexen format maps.
Allowing action specials greater than 255 required a few changes:
 * all access to action specials is now through a small set of access functions.
 * Two new PCodes were added to ACC to handle these new specials from scripts.
 * a minor change to the network protocol, so netgame  and demo version numbers were bumped.
 * FS_Execute is now properly defined in p_lnspec.cpp.
Two of the newly added specials - generalizations of the special 'close Door in 30 seconds' and 'raise door in 5 minutes' sector types, will also be available to Hexen format maps. The rest are limited to use in ACS, UDMF and DECORATE.
This also adds 'change' and 'crush' parameters to most Floor_* and Ceiling_* specials, again to match Eternity's feature set.
2016-01-25 18:49:56 +01:00
MajorCooke
ced35e98fb Remove needless check. 2016-01-25 10:07:00 -06:00
Braden Obrzut
4d225e7a00 - Fixed: Mac GCC errors due to not recognizing the newly disabled warnings. 2016-01-24 23:03:59 -05:00
coelckers
3c790a80eb Merge pull request #508 from ChillyDoom/wi_stuff-common-code
- Removed duplicate autoskip code.
2016-01-24 16:54:51 +01:00
Chris
1721d70212 - Removed duplicate autoskip code. 2016-01-24 14:44:47 +00:00
alexey.lysiuk
4b210a839a Fixed uninitialized variable in IOKit controller handler 2016-01-24 14:43:55 +02:00
Christoph Oelckers
be3b84e751 Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-24 11:50:54 +01:00
Christoph Oelckers
67f644c898 - fixed inverted NULL pointer check in A_SetAngle.
- let COPY_AAPTR check the most common case AAPTR_DEFAULT first instead of running through all the other cases for it.
2016-01-24 11:50:21 +01:00
Braden Obrzut
fd4440cfe4 - Fixed: Intermissions with no screens (such as EndTitle) would result in a double wipe. 2016-01-23 23:34:07 -05:00
Braden Obrzut
fc15be8689 - Improved DrawSwitchableImage keyslot condition to include key species.
- Fixed: currentpos command would crash if not in game.
2016-01-23 22:24:12 -05:00
Braden Obrzut
5abacf0b2f - Fixed: Uninitialized variable on DrawSelectedInventory. 2016-01-23 21:40:19 -05:00
Braden Obrzut
20f7f524ca - Don't link against sndfile and mpg123 if not compiling with OpenAL support. 2016-01-23 20:09:39 -05:00
Braden Obrzut
88a616da75 - Removed what appears to be a debug breakpoint.
- Cleared some GCC and Clang warnings. Mostly static analysis false positives, but one of them generated a pretty massive warning in a release build.
- Use -Wno-unused-result since I doubt we're going to address those unless they actually prove to be a problem (and they only appear in release builds).
2016-01-23 19:36:13 -05:00
Christoph Oelckers
0dabaca7df - added some range checks to PgUp(PgDown code for option menus. 2016-01-23 21:23:02 +01:00
Christoph Oelckers
c4377b7039 - removed the implicit fixedvec -> TVector conversions because they caused too many problems. Also reviewed all uses of these and made the necessary adjustments. Problems were present in P_SpawnMissileXYZ and P_Thing_Projectile.
- replaced some single precision float math with doubles.
2016-01-23 20:44:33 +01:00
Christoph Oelckers
f860a344cc Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-23 17:50:01 +01:00
Christoph Oelckers
5c8fd4750f - fixed: FInterpolator::DoInterpolations did not handle terminated interpolations properly. 2016-01-23 17:00:24 +01:00
Randy Heit
c63f65d441 Merge remote-tracking branch 'origin/master' into scripting
Conflicts:
	src/thingdef/thingdef_codeptr.cpp
	wadsrc/static/actors/constants.txt
2016-01-22 20:53:27 -06:00
MajorCooke
88f96950b5 Projectiles should set their z to floor, not add it. 2016-01-22 11:47:41 -06:00
Christoph Oelckers
da6fe6cad6 Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-22 18:24:36 +01:00
Christoph Oelckers
f4f7bd5d34 - fixed a double/fixed_t mixup in P_SeekerMissile 2016-01-22 18:24:15 +01:00
coelckers
8a9df31db9 Merge pull request #501 from Edward850/MF5_NOINTERACTION-velz-fix
Fixed cmf_aimdirection doubling up the spawn Z
2016-01-22 12:32:08 +01:00
Christoph Oelckers
01aaef1528 - fixed: The P_DamageMobj call for damaging sectors should be skipped completely if godmode is on, so that instant damage sectors don't kill an invulnerable player. 2016-01-22 12:16:17 +01:00
Edward Richardson
2034f4e49f Fixed cmf_aimdirection doubling up the spawn Z 2016-01-22 23:06:09 +13:00
Edward Richardson
2dff9a743c Fixed Z-Velocity movement for MF5_NOINTERACTION 2016-01-22 22:26:21 +13:00
MajorCooke
823edc4a69 - Cleaned up leftovers. 2016-01-21 21:23:43 -06:00
MajorCooke
b51bbf66b0 - Fixed pointer setting not working due to requiring more than the SET* flags.
- Changed search algorithm to be square and utilize fixed_t instead.
2016-01-21 21:15:50 -06:00
MajorCooke
793fc90716 Once more homogenized!
- DECORATE: color, flags, lifetime, size, angle, xyz offset/vel/accel, startalpha, fadestep.
- ACS: Similar, minus the angle parameter.
2016-01-21 19:59:33 -06:00
MajorCooke
28502b9a80 - Reorganized A_SpawnParticle parameters.
- Decorate order is now color, x/y/zoff, velx/y/z, lifetime, angle, flags, size, startalphaf, fadestepf, accelx/y/z.
- ACS order is now color, xyz offset, xyz velocity, lifetime, fullbright, size, startalpha, fadestep, xyz accel
2016-01-21 18:34:39 -06:00
Christoph Oelckers
841c7b275e Merge branch 'ParticleFlags' of https://github.com/MajorCooke/zdoom
Conflicts:
	wadsrc/static/actors/actor.txt
2016-01-22 00:58:42 +01:00
Christoph Oelckers
3b4ed8d7cd - made A_SpawnParticle's fadestep parameter a fixed point value as well. 2016-01-22 00:54:09 +01:00
MajorCooke
13dc6be5a1 - Added flags for A_SpawnParticle and angle parameter.
- SPF_FULLBRIGHT makes the particle full bright.
- SPF_RELATIVE encapsulates the following flags:
- SPF_RELPOS: Position is relative to angle.
- SPF_RELVEL: Velocity is relative to angle.
- SPF_RELACCEL: Acceleration is relative to angle.
- SPF_RELANG: Add caller's angle to angle parameter for relativity.
2016-01-21 16:36:58 -06:00
Christoph Oelckers
39014b1732 - make the startalpha parameter of A_SpawnParticle a float to be consistent with other functions that want an alpha value. 2016-01-21 20:13:55 +01:00
Randy Heit
9744b9e0d9 Merge branch 'master' into scripting
Conflicts:
	src/actor.h
	src/dobject.h
	src/dobjgc.cpp
	src/p_local.h
	src/thingdef/thingdef_codeptr.cpp
2016-01-21 12:45:06 -06:00
MajorCooke
9638cbb844 Updated A_CheckProximity Expansion Pruned Edition. 2016-01-21 11:39:13 -06:00
Christoph Oelckers
995721836b Merge branch 'SpawnParticle' of https://github.com/Edward850/zdoom
Conflicts:
	src/actor.h
2016-01-21 17:04:52 +01:00
alexey.lysiuk
f10dd68ca6 Fixed actors intersection check 2016-01-21 16:21:09 +02:00
coelckers
65662a9cfa Merge pull request #493 from alexey-lysiuk/dialog_fixes
Fixes for Strife dialog
2016-01-21 14:57:21 +01:00
Christoph Oelckers
68fcbc0c92 - fixed: loading sector damage information from an old savegame could retrieve invalid data due to an uninitialized variable. 2016-01-21 14:54:14 +01:00
alexey.lysiuk
598bccbe93 Added warning when next dialog page is incorrect 2016-01-21 15:53:58 +02:00
alexey.lysiuk
673ac1295c Fixed broken 'closedialog' property in Strife dialogs
See http://forum.zdoom.org/viewtopic.php?t=50524
2016-01-21 15:53:35 +02:00
Christoph Oelckers
5421213711 - typo in interpolation stuff. 2016-01-21 12:37:26 +01:00
Christoph Oelckers
cf2ee1eb3f - fixed: Interpolations were deleted too early.
They were immediately deleted when the associated thinker was destroyed. But this was too early because it missed the final tic of movement, resulting in a visible jump when a moving platform with a player on it came to a halt.
Changed it so that DelRef no longer destroys the interpolation itself. Instead the ::Interpolate method will check if the reference count is 0, and if so and there was no more movement, will then destroy the interpolation.
This ensures that it keeps running until it has interpolated all remaining bits of movement induced by the thinker.

Now moving up a lift is 100% smooth, even with movement interpolation on.
2016-01-21 11:58:44 +01:00
Christoph Oelckers
d347415aee - fixed some garbage collection issues with interpolations:
* FInterpolator depended on external references to prevent its content from getting GC'd.
* none of the pointers in the interpolation objects were declared to the GC.

The result of these issues was that changing anything about the life cycle of interpolation objects caused corrupted memory crashes when a level was changed.
2016-01-21 11:36:37 +01:00
Christoph Oelckers
e4982b1ced Merge branch 'master' of https://github.com/rheit/zdoom 2016-01-21 10:24:03 +01:00
Christoph Oelckers
03d7418f51 - fixed: Since sector movement is done after P_PlayerThink is called, any player position change induced by this is not factored into player_t::viewz and needs to be added explicitly.
This fixes the infamous 'view squats down a bit when riding up an elevator' effect. It is also there in the other cases but far less pronounced.
2016-01-21 10:23:20 +01:00
coelckers
8b4194a3e0 Merge pull request #491 from MajorCooke/TF_SensitiveZ2
A_Teleport TF_SensitiveZ
2016-01-21 09:10:33 +01:00
MajorCooke
09733d8083 - Don't set both self and pointer's z to spotz when teleporting. 2016-01-20 18:50:30 -06:00
Randy Heit
710fa55288 Port recent SMF changes to XMI and HMI:
- Handle SysEx messages instead of ignoring them.
- Don't lose time for unhandled events with delays.
2016-01-20 18:37:05 -06:00
Randy Heit
7f6b421e87 Make sure all unhandled delayed MIDI events generate NOPs
- Looking over the code again, I see that discarded SysEx messages can
  cause the same issue as unhandled meta events, so generalize the
  returning of a NOP for everything.
2016-01-20 18:27:04 -06:00
MajorCooke
93aff2413f Fixed an issue which caused A_Teleport to set the caller and itself to SpotZ's z position. 2016-01-20 18:18:00 -06:00
MajorCooke
116e157447 Nevermind this. 2016-01-20 15:52:56 -06:00
MajorCooke
d20a7516c9 Updated A_FaceVelocity to remove conflicts. 2016-01-20 15:51:11 -06:00
Edward Richardson
e5c67cee83 Merge branch conflicts fix
- CONFLICT (content): Merge conflict in src/p_acs.cpp
- Updated position variables
2016-01-21 10:49:57 +13:00
Randy Heit
1a356dfa51 Fixed: MIDI meta events were completely discarded, including their delays
(unless the event was for setting the tempo) This left the following
events in the track to happen at the wrong time.
2016-01-20 14:53:56 -06:00
Christoph Oelckers
98a9d7210a - fixed the definitions for script access to AActor::x, y, z.
(Note: These should be made read only when real scripting becomes available!)
2016-01-20 15:19:35 +01:00