Christoph Oelckers
7fe33d336c
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.
# Conflicts:
# src/r_data/r_sections.h
2019-04-15 14:37:28 +02:00
Player701
d72d820bba
- Exported AActor::Grind to ZScript.
2018-11-30 10:18:43 +01:00
Player701
bc280f67ac
- Fixed textures on the two switches that rise from the floor in the eastern area of TNT MAP31
2018-11-28 15:37:46 +01:00
Alexander
aa6820737a
fixed spelling (mostly comments)
2018-11-28 15:37:45 +01:00
Alexander
c223a671a6
add monster tags (Friendly Names) for Hexen
2018-11-25 12:25:46 +01:00
alexey.lysiuk
4020159f91
- made ZRock4 solid like in vanilla Hexen
...
9164cc6e0f/INFO.C (L5731)
c0c1771e37/src/hexen/info.c (L5748)
https://forum.zdoom.org/viewtopic.php?t=62660
2018-11-24 12:47:18 +01:00
Marisa Kirisame
9022c98732
expose defaultbloodcolor to ZScript.
2018-11-24 00:18:24 +01:00
Christoph Oelckers
a9cc7e6fb9
- 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:47:21 +01:00
Christoph Oelckers
af3635dfd9
- corrected A_DropFire for real, using the SVE source as reference.
2018-11-16 21:33:16 +01:00
Christoph Oelckers
91b4024bf2
- fixed: A_DropFire accidentally cleared the XF_HURTSOURCE flag by setting only XF_NOSPLASH.
2018-11-16 21:33:14 +01:00
Major Cooke
57efd617fa
Changed A_RaiseActor to just RaiseActor.
2018-11-16 21:17:53 +01:00
Major Cooke
a083eb6421
Added A_RaiseActor(Actor other, int flags = 0)
2018-11-16 21:17:51 +01:00
Major Cooke
24fdaf751c
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-16 21:17:49 +01:00
Christoph Oelckers
4183615495
- added ZScript export for side_t::SetSpecialColor.
2018-11-16 21:17:45 +01:00
Major Cooke
be2d5ba9ec
Added DMG_NO_ENHANCE for DamageMobj.
...
- Disables PowerDamage's effect, similar to DMG_NO_PROTECT disabling PowerProtect.
2018-11-12 22:04:17 +01:00
Major Cooke
b34bc0947e
Added IsPointInMap(Vector3 p).
...
- Checks if a point is inside the map geometry or not.
2018-11-08 16:18:29 +01:00
Christoph Oelckers
eb47c8d4c2
- fixed typo with RNG name.
2018-11-08 00:18:08 +01:00
ZZYZX
7905a0e041
Exported destructible geometry to ZScript
2018-11-07 11:00:08 +01:00
ZZYZX
b581648d6f
Destructible geometry - minor fixes and 3D floor support
2018-11-07 11:00:05 +01:00
Player701
4751181eb6
- Added a function to get the actor's age in ticks.
2018-11-05 01:38:37 +01:00
Player701
905146d87c
- 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-05 01:38:35 +01:00
Cacodemon345
57e51debec
Extend SKYEXPLODE flag for LineAttack
2018-11-03 21:52:25 +01:00
ZippeyKeys12
96fafa9c59
Export AllClasses
2018-11-02 13:07:12 +01:00
drfrag666
557380a769
- Added alpha parameter to DrawLine for the GL renderer, it's a fake parameter for the software renderer so mods don't crash.
2018-11-02 13:04:37 +01:00
Major Cooke
7eef13c859
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 21:25:56 +01:00
ZZYZX
a40d717006
Fixed sector floor/ceiling actions not triggering in P_XYMovement
2018-11-01 21:08:53 +01:00
ZZYZX
d2f6834da6
Implemented loading/saving of line/sector health and health groups in savegames
2018-11-01 21:08:51 +01:00
ZZYZX
82a2bf3ac5
Single commit - destructible geometry feature
...
# Conflicts:
# src/p_setup.cpp
2018-11-01 21:02:25 +01:00
Christoph Oelckers
7d53d0d8ed
- removed bad 'return' in C_MidPrint definition.
2018-11-01 20:03:26 +01:00
Marrub
0f6f23350d
Add "neutral" gender option and better obit formatting
2018-10-31 11:24:01 +01:00
Christoph Oelckers
eca23badb8
- 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.
# Conflicts:
# wadsrc/static/zscript/level_compatibility.txt
2018-10-21 20:57:40 +02:00
Rachael Alexanderson
35bf70456a
- 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 21:22:24 +02:00
Erick Tenorio
c2784e4b6b
- Visually align Doom 2 MAP04 crusher floors
...
Use Transfer_Heights to fake floors on the crusher sectors
2018-10-16 20:50:53 +02:00
Erick Tenorio
3b432a99e8
-Fixed many IWAD mapping errors
...
# Conflicts:
# wadsrc/static/zscript/level_compatibility.txt
2018-10-14 12:10:56 +02:00
player701
3e0ed1c907
- Fixed indentation
2018-10-14 10:31:47 +02:00
player701
dcc2006c76
- Exported PickNewWeapon function from PlayerPawn to ZScript.
2018-10-14 10:31:46 +02:00
Erick Tenorio
3bb5608435
Fix missing enemies in HTP-RAW.WAD MAP22
...
Make 100% kills possible on MAP22 of Hell to Pay
2018-10-09 22:00:02 +02:00
Erick Tenorio
1b97ba198b
Fixes for Wraith Corporation WADs
2018-10-09 11:53:59 +02:00
Christoph Oelckers
1e48f240e0
- fixed potential null pointer access in Hexen's spike code.
2018-10-07 21:21:07 +02:00
Marisa Kirisame
5877c0248d
Exports various resurrection-related functions to ZScript.
2018-10-04 19:30:39 +02:00
Marisa Kirisame
9028bbd473
Adds OnDrop virtual to inventory items. Called on the dropped item at the end of AActor::DropInventory.
2018-09-17 01:18:51 +02:00
Major Cooke
78d4a87cd1
Added DMG_EXPLOSION flag.
...
- This allows modders to determine if damage is caused by an actual explosion, assigned by P_RadiusAttack and BlastActor for +TOUCHY actors.
2018-09-15 20:41:17 +02:00
ZippeyKeys12
c0cb8659b7
Make StatusScreen::End virtual
...
https://forum.zdoom.org/viewtopic.php?t=59419
2018-09-15 20:33:14 +02:00
ZippeyKeys12
b26aad2741
Add NewGame to EventHandler
...
https://forum.zdoom.org/viewtopic.php?t=61908
2018-09-15 20:33:13 +02:00
Christoph Oelckers
f557fa4296
- fixed incorrect trigger types in compatibility setter.
...
These were caused by some bogus comment in the original compatibility.txt which erroneously added a "SPAC_PCross" remark to a line which actually set "SPAC_Cross".
2018-09-04 01:30:14 +02:00
drfrag666
a2674eb4cf
- Added fake DrawThickLine action function so mods using it don't crash. DrawLine will be called instead.
2018-09-02 00:29:11 +02:00
Christoph Oelckers
80da2e74c5
- removed most of the old LastIndexOf methods in FString, only leaving one for ZScript and clearly giving it a name that says it all. RIndexOf has been made the proper version of LastIndexOf internally now.
2018-08-26 13:51:30 +02:00
Christoph Oelckers
23f2d9aaa0
- renamed RIndexOf to RightIndexOf
2018-08-26 13:51:28 +02:00
Kevin Caccamo
b57d2f11f3
Add the "RIndexOf" method to FString, which works like String.lastIndexOf from JavaScript
...
RIndexOf returns the index where the substring starts, instead of the index where the substring ends - 1.
Deprecate the LastIndexOf method of StringStruct
2018-08-26 13:51:27 +02:00
argv-minus-one
66933d6b91
Add ZScript method LevelLocals.SphericalCoords
.
...
It computes spherical coordinates from one point in the world to another. Useful for checking whether one actor is inside another actor's view cone.
2018-08-22 12:14:19 +02:00
Marisa Kirisame
ab56666219
Add "IsFinal" parameter for CheckReplacement.
...
If set to true it guarantees that the replacement is final and will not go through the rest of the replacement chain.
2018-08-18 00:52:34 +02:00
Marisa Kirisame
5095ee28f1
Added CheckReplacement to event handlers, a function inspired by its namesake in Unreal's Mutator class.
...
Performs runtime replacement of actor classes.
Takes priority over the "replaces" keyword in both DECORATE and ZScript.
2018-08-18 00:52:32 +02:00
argv-minus-one
98db61dc74
Make various getter and pure-math Actor methods clearscope.
...
These methods do not examine or change playsim state. They only perform math or look at class metadata.
Methods changed are:
• deltaangle
• absangle
• AngleToVector
• RotateVector
• Normalize180
• BobSin
• GetDefaultSpeed
• FindState
• GetDropItems (which changes the scope of the returned struct, but the returned struct is all-readonly anyway)
2018-08-14 23:48:42 +02:00
drfrag666
285791622d
Revert "- update xBRZ upscaler to version 1.6"
...
This reverts commit 6dd17b4ef0
.
This broke compilation with TDM-GCC 5.1. While it has problems i still use it for convenience, also no more win98.
2018-08-12 11:36:58 +02:00
alexey.lysiuk
16126a569b
- added a warning for texture upscaling modes
2018-08-10 21:16:10 +02:00
Christoph Oelckers
403a99915f
Revert "Add RenderStyle API"
...
This reverts commit 8c7d3b6ab8
.
With DTA_LegacyRenderStyle being added there is no pressing need for this. Aside from that there's an utterly unhealthy amount of information duplication here and it is missing some more recent additions.
2018-08-05 20:46:33 +02:00
Marisa Kirisame
1689203e35
Additional blocking-related flags for Actor.LineTrace()
2018-08-05 19:48:58 +02:00
Zombie
de0a4f8664
Add RenderStyle API
2018-08-05 19:41:55 +02:00
Christoph Oelckers
f48b2d8b71
- fixed: A global variable was used to pass MeansOfDeath to ClientObituary.
...
The problem here is that this affects the public scripting interface so it cannot be committed to master without further adjustments.
# Conflicts:
# src/p_interaction.cpp
2018-07-29 19:30:28 +02:00
Christoph Oelckers
e09ed1026c
- fixed: The BossCube must account for its target being gone.
2018-07-27 10:03:13 +02:00
Christoph Oelckers
8420459aa0
- added DTA_LegacyRenderStyle so that STYLE_* constants can be passed directly to the Draw functions.
...
- fixed the optional parameter in Shape2D.Clear.
(cherry picked from commit 7a692b1557
)
# Conflicts:
# src/v_2ddrawer.cpp
# src/v_video.h
# wadsrc/static/zscript/base.txt
2018-07-16 01:44:04 +02:00
drfrag666
1f5da940ca
- Added dummy 2D shape drawer so scripts using it won't make the engine crash.
2018-07-15 11:22:26 +02:00
Erick Tenorio
0b4d8d7a8e
TNT.WAD fixes
...
MAP07 - Dropping onto the outdoor lava will now raise triangle sectors.
Should be impossible to get stuck in them now.
MAP08 - Fix (what I presume to be an unintentional) missing texture.
(cherry picked from commit dfe635dd4a
)
2018-07-13 01:12:24 +02:00
argv-minus-one
0d9685f25c
Move RandomSpawner's random selection logic into a virtual method.
...
With this, one can use its self-replacement code (which copies a bunch of its state into the replacement actor, and monitors for boss death if appropriate), but select the replacement class based on some other criteria (map number, the player's RPG stats, the player's class, etc).
(cherry picked from commit ce1aa7e962
)
2018-07-09 20:51:06 +02:00
argv-minus-one
ab64eb0473
Move RandomSpawner's recursion check into PostBeginPlay.
...
Previously, a RandomSpawner with infinite recursion would hang the game, because the recursion check was happening before the recursion counter (bouncecount) was set.
(cherry picked from commit 6239796b92
)
2018-07-09 20:51:04 +02:00
drfrag666
5a5d2593a5
- Replaced medikit with mugshot in HUD.
2018-07-08 00:51:59 +02:00
Erick Tenorio
9c062d7f0f
Removed useless SetLineActivation
...
SPAC_Use removed as the line in fth666.wad MAP12 is not facing front.
(cherry picked from commit 245801ca17
)
2018-06-28 10:45:11 +02:00
Erick Tenorio
49c2b0810f
Various map fixes
...
Map fixes for the following maps:
MAP33: Betray (Doom II: BFG Edition)
Icarus: https://www.doomworld.com/idgames/themes/TeamTNT/icarus/icarus
Flashback to Hell: https://www.doomworld.com/idgames/levels/doom2/Ports/d-f/fth666
Hell to Pay (HTP-RAW.WAD)
(cherry picked from commit 43919ead40
)
2018-06-28 10:45:10 +02:00
Alexander
b64057b738
add tags for Doom and Heretic monsters
...
Why? So mods that reveal enemy names don't show internal monster class names.
Tags are based on language.enu lump:
- Tags for Doom/Doom 2 monsters are referring directly to CC_* strings.
- Tags for Heretic monsters are based on obituaries.
- All tags match corresponding obituaries.
(cherry picked from commit 97aba0c416
)
2018-06-28 10:45:09 +02:00
Rachael Alexanderson
196748236a
- fixed: 'empty function OnGiveSecret' - this was my fault, giving bad advice to Marisa in her PR. I fixed it.
...
(cherry picked from commit 512082b222
)
2018-06-05 20:10:13 +02:00
Marisa Kirisame
70c5886987
Adds "OnGiveSecret" virtual function on Actor for customizing behavior of secret finding.
...
(cherry picked from commit 477cf23fd2
)
2018-06-05 20:10:12 +02:00
Christoph Oelckers
f6f25354d7
- fixed: For melee attacks with a short attack range P_AimLineAttack must check for hits from above and below.
...
This is necessary to be in line with P_LineAttack which does check for those.
(cherry picked from commit a851a5d151
)
2018-06-03 20:00:20 +02:00
Christoph Oelckers
3703132794
- fixed shader compilation.
...
(cherry picked from commit 1266339c0f
)
2018-05-23 10:22:12 +02:00
Jonathan Russell
c8a47653bf
- added LevelLocals vec2/3Offset(Z) functions for portal-aware offsetting without needing actors
...
(cherry picked from commit e9050a38b3
)
2018-05-17 11:57:03 +02:00
Christoph Oelckers
9c349da532
- added compatibility fix for bad sector reference in Plutonia MAP11.
...
(cherry picked from commit 72c7a05ba8
)
2018-05-10 21:18:22 +02:00
alexey.lysiuk
56b0e9627c
Fixed walkthrough blocker in Sin City 2 via compatibility entry
...
It was impossible to complete Sin City 2 The Satan Complex without cheating since ZDoom 2.6.0
Change in applying of DeHackEd patches from 77a4b9a29b
broke triggering of important linedef that pushes friendly marine to exit switch
https://www.doomworld.com/idgames/levels/doom2/Ports/s-u/satanx
(cherry picked from commit 6d308ca67e
)
2018-05-10 13:56:45 +02:00
alexey.lysiuk
c9e9504394
Enabled playing of *gasp sound by default
...
https://forum.zdoom.org/viewtopic.php?t=60361
(cherry picked from commit c8eefd84fa
)
2018-05-10 13:52:52 +02:00
ZZYZX
2c9193453a
Added missing commented enum entry for ETraceFlags on ZScript side
...
(cherry picked from commit da089b09b1
)
2018-05-10 13:47:29 +02:00
alexey.lysiuk
6ac1619f57
Made 100% kills possible on Altar of Evil, easy skill
...
https://www.doomworld.com/idgames/levels/doom2/Ports/a-c/altar666
(cherry picked from commit ee9fa7c33e
)
2018-05-10 11:07:12 +02:00
drfrag666
912376f81f
- Fixed stuck shotgun guy in Doom2's MAP02 and Quartz Flask outside of map in Heretic's E3M6.
...
- Changed missing textures for Doom2's MAP18 lines 451 and 459 to DOORSTOP.
2018-05-09 13:00:54 +02:00
alexey.lysiuk
dac92c11cd
Made 100% kills possible and unstuck imp on Valhalla map
...
https://www.doomworld.com/idgames/levels/doom2/Ports/m-o/ma_val
(cherry picked from commit df634539a0
)
2018-05-09 12:31:38 +02:00
alexey.lysiuk
63514823e1
Added ability to set thing position in compatibility layer
...
(cherry picked from commit 87d164ee59
)
2018-05-09 12:31:37 +02:00
alexey.lysiuk
f250bffbb4
Fixed missing textures on Valhalla with hardware renderer
...
It works fine with software renderer regardless of this compatibility entry because of texture bleeding
https://www.doomworld.com/idgames/levels/doom2/Ports/m-o/ma_val
-iwad doom2 -file ma_val.pk3 -nomonsters +map map01 "+warp -450 -2300"
(cherry picked from commit bb037635a8
)
2018-05-09 12:00:44 +02:00
Christoph Oelckers
bfe87b75ad
- the global portal data table also needs to be protected.
...
(cherry picked from commit 8b4c74fad8
)
2018-05-09 11:45:21 +02:00
Christoph Oelckers
148353ab25
-protected critical portal data from getting written to by user code.
...
This data is game critical and may only be altered by code that knows what is allowed and what not. It must never be altered by any user code ever.
However, since the SkyViewpoint actors need to set up some relations between themselves and the default sky portals the previously purely internal 'internal' flag has been exported as a new keyword.
(cherry picked from commit cf8447d19c
)
2018-05-09 11:45:20 +02:00
alexey.lysiuk
047ec41df9
Added activation type to WorldLine(Pre)Activated events
...
https://forum.zdoom.org/viewtopic.php?t=60232
(cherry picked from commit ba4cc1a6ca
)
2018-05-09 10:34:12 +02:00
Christoph Oelckers
0b6140b45c
- added a compatibility handler for Kama Sutra MAP01's ending area.
...
(cherry picked from commit 13567f2505
)
2018-05-09 10:24:26 +02:00
Christoph Oelckers
6c67470e4e
- fixed last change of compatibility branch.
...
(cherry picked from commit ac98e5a4f8
)
2018-05-09 10:24:25 +02:00
Christoph Oelckers
387827555f
- added compatibility handler for Alien Vendetta MAP01 to properly display the deep water hack and avoid problems with a node rebuild.
2018-04-11 23:08:59 +02:00
Christoph Oelckers
3988e27059
- scriptified the last remaining definition (BTSX MAP12 beta)
...
- Changes to map geometry must force a node rebuild (SetVertex, SetLineSectorRef.)
- fixed incorrect use of scaling constant in SetWallYScale.
2018-04-11 19:10:15 +02:00
alexey.lysiuk
6631f208b1
Scriptified remaining compatibility entries
2018-04-11 17:01:57 +03:00
alexey.lysiuk
6480946d40
Scriptified more compatibility entries
2018-04-11 15:57:27 +03:00
alexey.lysiuk
5f5adbe161
Scriptified compatibility of Strife level along with needed functions
2018-04-11 13:02:26 +03:00
alexey.lysiuk
950443683b
Scriptified compatibility of more Heretic levels
2018-04-11 12:35:45 +03:00
alexey.lysiuk
69222c3c36
Fixed missing texture with hardware renderer on Jenesis MAP16
...
https://forum.drdteam.org/viewtopic.php?t=7337
2018-04-11 11:54:27 +03:00
alexey.lysiuk
05dcd30838
Made 100% secrets possible on The Realm of Parthoris E1M5
...
https://forum.zdoom.org/viewtopic.php?t=60181#p1049393
2018-04-11 11:52:07 +03:00
Christoph Oelckers
0ecbf07769
-ported a large part of compatibility.txt
2018-04-10 23:19:22 +02:00
Christoph Oelckers
65a219eecc
- sorted compatibility.txt so that levels which only have flags set are at the top of the file.
2018-04-10 20:02:41 +02:00
Christoph Oelckers
9daad477c3
- some improvements to compatibility scripts:
...
* use names, not strings, to allow use of switch/case.
* avoid creating the checksum a second time per level.
* do an early-out check for maps that do not have scripted compatibility.
2018-04-09 22:09:28 +02:00
alexey.lysiuk
640948703f
Level compatibility via ZScript -- PoC
2018-04-09 17:54:12 +03:00