Commit graph

3142 commits

Author SHA1 Message Date
Christoph Oelckers
192104aea2 - scriptified P_MorphPlayer and dependencies.
It still needs its counterpart scriptified as well before it can work.
2018-11-24 07:45:49 +01:00
Christoph Oelckers
ce46f5165a Merge branch 'master' into asmjit 2018-11-23 11:12:52 +01:00
Magnus Norddahl
96df21e3dc - fix typo 2018-11-20 13:54:18 +01:00
Magnus Norddahl
216191c86d - interpolate the normal for models 2018-11-20 13:41:27 +01:00
Christoph Oelckers
a5ee673c91 - exported ADecal to ZScript as a non-native class.
Its one function is still native but this was by far the easiest of the remaining actor classes to export.
2018-11-19 17:54:38 +01:00
Christoph Oelckers
a981737855 - generate register type info for the parameter lists of all functions.
Currently used for loading parameters into registers.
For checking parameters of native functions some more work is needed to get the info to the function. Currently it doesn't receive the function descriptor.
2018-11-18 17:10:55 +01:00
Christoph Oelckers
16c85b532b - restored the old A_Jump prototype because DECORATE needs this to parse the arguments. 2018-11-17 21:22:18 +01:00
Christoph Oelckers
533f66396d Merge branch 'master' into asmjit 2018-11-17 20:16:03 +01:00
Christoph Oelckers
adde0510fe - deconstruct A_Jump with multiple labels into A_Jump(chance, RandomPick(label1, label2, label3,...)) to remove this ugly special case from the VM calling convention.
This also adds the number of available choices to OP_IJMP.
2018-11-17 12:35:03 +01:00
Christoph Oelckers
cfa11046ab - changed PhosphorousFire.DoSpecialDamage to match SVE's handling:
* Everything with a damage factor for fire only uses that.
* Everything that bleeds takes half damage
* Robots take quarter damage.
2018-11-16 21:36:57 +01:00
Christoph Oelckers
33fb76698b Avoid using argument count for any kind of decision making in native VM functions.
This allows retaining the functionality, even if for the JIT compiler's benefit all default arguments are pushed onto the stack instead of reading them from the defaults array.
2018-11-16 15:25:37 +01:00
Christoph Oelckers
feef0d4b62 - corrected A_DropFire for real, using the SVE source as reference. 2018-11-15 19:35:07 +01:00
Christoph Oelckers
99f1d6b82e - fixed: A_DropFire accidentally cleared the XF_HURTSOURCE flag by setting only XF_NOSPLASH. 2018-11-15 18:49:37 +01:00
Major Cooke
55f17fa90c Changed A_RaiseActor to just RaiseActor. 2018-11-13 19:01:56 +01:00
Major Cooke
71d2b39d92 Added A_RaiseActor(Actor other, int flags = 0) 2018-11-13 19:01:56 +01:00
Major Cooke
b553be153d Added CanResurrect(Actor other, bool passive)
- Works similarly to CanCollideWith.
- Passive means the caller is trying to be resurrected by 'other'.
- Non-passive means the caller is trying to resurrect 'other'.
2018-11-13 19:01:56 +01:00
Christoph Oelckers
ca2defa6a2 - added ZScript export for side_t::SetSpecialColor. 2018-11-12 00:13:14 +01:00
Christoph Oelckers
f2dcff4386 - more options for Doom 64 style gradients on walls:
* Colors can npw be defined per sidedef, not only per sector.
* Gradients can be selectively disabled or vertically flipped per wall tier.
* Gradients can be clamped to their respective tier, i.e top and bottom of the tier, not the front sector defines where it starts.

The per-wall colors are implemented for hardware and softpoly renderer only, but not for the classic software renderer, because its code is far too scattered to do this efficiently.
2018-11-11 16:04:36 +01:00
Major Cooke
9a7f570b19 Added DMG_NO_ENHANCE for DamageMobj.
- Disables PowerDamage's effect, similar to DMG_NO_PROTECT disabling PowerProtect.
2018-11-10 16:18:33 +01:00
Major Cooke
9ff7f338fd Added IsPointInMap(Vector3 p).
- Checks if a point is inside the map geometry or not.
2018-11-07 15:16:45 -05:00
Christoph Oelckers
bfffe6df3e - fixed typo with RNG name. 2018-11-07 19:20:42 +01:00
ZZYZX
a276ebfb08 Exported destructible geometry to ZScript 2018-11-07 00:12:37 +01:00
ZZYZX
d85e5afdfb Destructible geometry - minor fixes and 3D floor support 2018-11-07 00:12:37 +01:00
Player701
56f76a141e - Added a function to get the actor's age in ticks. 2018-11-04 19:58:57 +01:00
Player701
a6dbfcf9c2 - Added a new field to the Actor class which stores the amount of ticks passed since the game started on the moment the actor was spawned.
- Added a function to the Actor class to get its spawn time relative to the current level.
- Added spawn time information to the output of the "info" console command.
2018-11-04 19:58:57 +01:00
Cacodemon345
b1d35eb0b3 Extend SKYEXPLODE flag for LineAttack 2018-11-03 15:24:30 +01:00
Christoph Oelckers
b9f2cce8de - versioned the return mismatch check to demote it to a warning for older versions than 3.7. 2018-11-01 11:30:53 +01:00
ZippeyKeys12
77c5c1eb19 Export AllClasses 2018-11-01 00:20:46 +01:00
Jonathan Russell
f39a389e99 - changed the way alpha works on DrawLine and DrawThickLine so they're consistent 2018-11-01 00:10:47 +01:00
Major Cooke
6a8b0df4ba Added VelIntercept.
- Uses the same code as Thing_ProjectileIntercept to aim and move the projectile.
  - targ: The actor the caller will aim at.
  - speed: Used for calculating the new angle/pitch and adjusts the speed accordingly. Default is -1 (current speed).
  - aimpitch: If true, aims the pitch in the travelling direction. Default is true.
  - oldvel: If true, does not replace the velocity with the specified speed. Default is false.

- Split the code from Thing_ProjectileIntercept and have that function call VelIntercept.
2018-11-01 00:10:08 +01:00
ZZYZX
849d110f10 Fixed sector floor/ceiling actions not triggering in P_XYMovement 2018-11-01 00:05:43 +01:00
ZZYZX
a6cdcab128 Implemented loading/saving of line/sector health and health groups in savegames 2018-10-31 22:14:40 +01:00
ZZYZX
b911bbc424 Single commit - destructible geometry feature 2018-10-31 17:22:09 +01:00
Christoph Oelckers
40da1dbfbc - removed bad 'return' in C_MidPrint definition. 2018-10-31 13:13:32 +01:00
Marrub
0b460ccb03 Squashed commit of the following:
commit 767e3a64f0d5fd27ef56de6e93221e9b2016a0c7
Author: Marrub <marrub.xz@gmail.com>
Date:   Tue Oct 30 04:01:09 2018 -0400

    ProMessage -> PronounMessage

commit 305477f63fb669f8cf2d9f6d609ed3988f437664
Author: Marrub <marrub.xz@gmail.com>
Date:   Mon Oct 29 23:56:58 2018 -0400

    improve variable naming

commit f3f0245d0cdcc1b0a8a9b74806bc8954be747f40
Author: Marrub <marrub.xz@gmail.com>
Date:   Mon Oct 29 19:52:32 2018 -0400

    add "neutral" gender option and better obit formatting
2018-10-30 21:42:09 +01:00
Christoph Oelckers
0200ee7c13 Merge branch 'master' of https://github.com/coelckers/gzdoom 2018-10-29 18:42:12 +01:00
Rachael Alexanderson
c808af94ca - change 'other' gender to 'robotic' for English 2018-10-29 09:54:11 -04:00
Christoph Oelckers
21b658d34f Merge branch 'master' into renderstate_abstraction 2018-10-25 22:30:26 +02:00
Christoph Oelckers
89059a2acc - added a compatibility fix for Hacx's MAP05.
This is by no means perfect and looks different than what was originally intended, but at least this doesn't totally fail to render properly with the OpenGL renderer.
2018-10-21 20:27:33 +02:00
Christoph Oelckers
1768508c80 - first adjustments to decal code.
- moved texture mode constants to a global header and consolidated with the variants of the 2D drawer.
2018-10-21 08:14:48 +02:00
Rachael Alexanderson
e2f6fa95d4 - fixed: attaching a new status bar to a player now calls 'setsizeneeded' - fixes an issue where the screen geometry is out of sync with the characteristics of the new status bar. 2018-10-20 13:22:11 -04:00
Christoph Oelckers
9253118bdc - removed the quad drawer class
This isn't needed anymore.
2018-10-20 11:59:12 +02:00
Magnus Norddahl
4ac43dac36 - fix distance attenuation for PBR materials 2018-10-17 09:03:18 +02:00
Erick Tenorio
c0cf19e9b5 - Visually align Doom 2 MAP04 crusher floors
Use Transfer_Heights to fake floors on the crusher sectors
2018-10-16 17:38:15 +02:00
Erick Tenorio
cc8112f88d -Fixed many IWAD mapping errors 2018-10-14 11:44:54 +02:00
player701
eee0946bc5 - Fixed indentation 2018-10-14 00:52:00 +02:00
player701
6dc026895c - Exported PickNewWeapon function from PlayerPawn to ZScript. 2018-10-14 00:52:00 +02:00
Erick Tenorio
22f8c26917 Fix missing enemies in HTP-RAW.WAD MAP22
Make 100% kills possible on MAP22 of Hell to Pay
2018-10-09 07:44:30 -04:00
Rachael Alexanderson
3d81be1517 - always enforce a minimum distance for fog when fogmode is set to standard. without this, it was possible for the GPU to error out and stop rendering pixels for certain screen blocks 2018-10-09 04:45:23 -04:00
Erick Tenorio
643e3a78d8 Fixes for Wraith Corporation WADs 2018-10-08 18:40:25 +02:00