Christoph Oelckers
2b0731a5a7
implemented DSDA's sector scrolling properties.
...
The major new additions are flags to specify which kind of actor is supposed to be scrolled and carrying ceiling scrollers.
2023-10-29 13:51:44 +01:00
inkoalawetrust
f3d44f8131
Exposed P_GetMidTexturePosition() to ZScript.
2023-10-25 16:23:29 +02:00
Christoph Oelckers
06466b9017
add missing include to a_quake.cpp.
...
The GCC AppImage build reported
/usr/bin/ld: CMakeFiles/zdoom.dir/playsim/mapthinkers/a_quake.cpp.o: in function `AActor::Distance2D(AActor*, bool) const':
a_quake.cpp:(.text._ZNK6AActor10Distance2DEPS_b[_ZNK6AActor10Distance2DEPS_b]+0x2c): undefined reference to `AActor::PosRelative(AActor const*) const'
2023-10-08 12:14:50 +02:00
Ricardo Luís Vaz Silva
bfe589fecd
try to fix gcc thinking the vectors are uninitialized
2023-10-08 07:31:59 +02:00
Christoph Oelckers
6055ff029d
the remaining GetChars additions.
...
The offending operator const char * no longer exists.
2023-10-07 23:44:01 +02:00
Christoph Oelckers
7a5a2858a2
yet even more GetChars calls added.
2023-10-07 23:29:24 +02:00
Christoph Oelckers
89535b803a
Backend update from Raze.
2023-10-07 18:42:24 +02:00
Professor Hastig
ab8711b57a
removed several bad casts to 'long'.
...
The 'long' type should generally be avoided because its size differs on Windows and Linux/Mac so it is almost guaranteed to cause undefined behavior
2023-10-04 16:47:43 +02:00
Christoph Oelckers
48ba63c022
added even more explicit GetChars() calls.
2023-10-03 15:55:08 +02:00
Christoph Oelckers
1717ff47b2
add GetChars() accessors to many FString uses where const char* is wanted.
...
By no means complete, it's just a start to get rid of that automatic type conversion operator.
2023-10-03 14:27:39 +02:00
Christoph Oelckers
d596e5a8fa
- fixed: EV_DoDonut checked the wrong compatibility variable.
...
This missed all map specified flags.
2023-09-16 21:35:01 +02:00
Christoph Oelckers
e86de4463f
fixed CheckswitchRange logic for multiple switches on a line.
2023-09-16 21:06:10 +02:00
Christoph Oelckers
ef79ec193f
- let P_CheckSwitchRange always check all 3 tiers.
...
To account for cases that a switch is unreachable but another tier got a reachable one.
2023-09-15 22:33:03 +02:00
Christoph Oelckers
096b9cdc4f
- fixed. Boom's generalized crushers must stop 8 units above the floor
...
This required changing the special, so a new one was added to avoid altering Generic_Crusher.
2023-09-15 00:35:20 +02:00
Nikolay Ambartsumov
4ad76f549e
When compat_floormove is enabled prevent sector floor from lowering if a thing is stuck in the ceiling (vanilla behavior)
2023-09-14 20:06:51 +02:00
Ricardo Luís Vaz Silva
0e70e95fa4
Add Inventory::ModifyBob and Inventory::ModifyBob3D
2023-09-14 16:28:38 +02:00
Christoph Oelckers
b44741b8aa
- dsdehacked: allow dynamic creation of new states.
2023-09-11 23:22:23 +02:00
Christoph Oelckers
f6c3ce6b15
- fixed several line ID functions accessing the sector tag array.
2023-09-10 11:45:23 +02:00
inkoalawetrust
520b6af947
Added some null pointer checks to prevent crashes.
2023-08-31 19:51:06 +02:00
Christoph Oelckers
ebb71cebf1
- put the entire filesystem code into a namespace and created some subdirectories.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
25b7b18c3d
- got rid of the two copying variants of fileSystem.GetFileShortName.
2023-08-22 22:18:53 +02:00
Christoph Oelckers
5398045f7d
- got rid of FileSystem::GetFileData.
...
Using FMemFile is better in all these places.
2023-08-22 22:18:53 +02:00
Rachael Alexanderson
d99ed7628c
- fix: always update psprite scaling
2023-08-10 02:07:31 -04:00
Christoph Oelckers
fdad3186a6
- replaced zstrformat with stb_sprintf.
...
The main advantage here is that this allows to get rid of the gdtoa dependency, it is also preferable to have some code here that's being maintained.
Feature-wise both are mostly identical, stb also support MSFT integer size modifiers and hexadecimal floats.
2023-08-09 11:51:46 +02:00
Christoph Oelckers
479795abe2
- fix duplicated variable resulting in an assert on startup.
...
static definitions in headers are evil! Don't do that!
2023-08-09 10:12:16 +02:00
RaveYard
ea4ffa10e5
A_Chase CHF_DONTLOOKALLAROUND
2023-08-07 11:31:08 -04:00
Rachael Alexanderson
5e5315a9b3
- silence warnings in shadowinlines.h line 88
2023-08-03 13:13:40 -04:00
Ricardo Luís Vaz Silva
9d0beeaafe
Fix formatting for P_BobWeapon3D
2023-08-02 01:05:24 -04:00
Boondorl
5a74e79b92
Added bounce virtual
2023-08-02 00:42:06 -04:00
Boondorl
fe1acc7f40
Localized fix to its own field
2023-08-02 00:41:39 -04:00
Boondorl
0cbbaece3b
Fixed BlockingLine giving erroneous results
...
Fixed BlockingLine not clearing properly when xy velocity is 0
2023-08-02 00:41:39 -04:00
Ricardo Luís Vaz Silva
0149940a2a
Add missing returns for untagged lines/sectors
2023-08-02 00:41:10 -04:00
Ricardo Luís Vaz Silva
793d6af5d1
add CountSectorTags/CountSectorTags/CountLineIDs/GetLineID
2023-08-02 00:41:10 -04:00
Boondorl
239a288a9a
Exported reflection functionality
...
Localized reflection code to a single function. Fixed an error where NOSHIELDREFLECT was being checked on the wrong Actor. Fixed an oversight where MIRRORREFLECT was checking for valid target despite not needing one.
2023-08-02 00:40:01 -04:00
inkoalawetrust
150e893c67
Added ShadowAimFactor and ShadowPenaltyFactor.
...
These properties allow to specify how much an actors' aim is degraded when shooting at a shadow actor. And how much the shadow actor itself affects the shooters' aim, respectively.
2023-08-02 00:39:35 -04:00
inkoalawetrust
814c6f2188
Added MF9_SHADOWAIMVERT.
...
This flag causes the vertical aiming of monsters to also be affected when they aim at shadow actors.
2023-08-02 00:39:35 -04:00
inkoalawetrust
c729b831af
Added MF9_SHADOWBLOCK.
...
Actors in the line of fire with this flag trigger the MF_SHADOW aiming penalty. The shooter needs to have MF9_DOSHADOWBLOCK to check for actors with this flag.
2023-08-02 00:39:35 -04:00
inkoalawetrust
162dbf0554
Added MF9_SHADOWAIM.
...
This flag allows actors with MF6_SEEINVISIBLE to still get an aim penalty by trying to shoot at a shadow actor.
2023-08-02 00:39:35 -04:00
inkoalawetrust
d882a41824
Added a ninth actor flag field.
2023-08-02 00:39:35 -04:00
inkoalawetrust
5b98eade91
Moved all the handling of MF_SHADOW for attacks into its' own file.
...
Also changed all the individual flag checks into one generic inline function.
2023-08-02 00:39:35 -04:00
inkoalawetrust
a7f76fe8b9
Added damage property to earthquakes.
...
When this property is set to any value above 0. The earthquake does the exact amount of damage specified, instead of a random amount.
2023-08-02 00:38:24 -04:00
inkoalawetrust
a38b151940
Added damage and thrust multipliers to quakes.
...
These properties allow for scaling the amount of damage an earthquake does and how much it pushes actors around.
2023-08-02 00:38:24 -04:00
inkoalawetrust
8d95138735
Added QF_DAMAGEFALLOFF.
...
This flag makes it so that the damage and actor thrusting of earthquakes fades with distance like the screen shake effect does.
2023-08-02 00:38:24 -04:00
inkoalawetrust
194f73a94b
Added (XF/RADF)_CIRCULAR.
...
This flag makes explosions use a spherical radius, instead of a cubic one. Only took almost 30 years.
2023-08-02 00:37:58 -04:00
inkoalawetrust
ca1f3ac580
Added (XF/RADF)_NOALLIES.
...
This flag allows explosions to not harm any actors that are friendly to its' source.
2023-08-02 00:37:58 -04:00
inkoalawetrust
6489b05db9
Added (XF/RADF)_THRUSTLESS.
...
This flag allows for explosions that do not thrust any of the actors caught in the blast.
2023-08-02 00:37:58 -04:00
Christoph Oelckers
81fb9a26b2
- backend update from Raze.
...
* add QualifiedName to VMFunction and allocate these static names from the class data memory arena instead of using FStrings.
* null pointer type checks in the VM added to avoid crash on bad codegen.
2023-07-22 09:55:49 +02:00
Ricardo Luís Vaz Silva
a8b8de94d6
misc cleanup/fixes
2023-06-26 23:28:26 +02:00
Ricardo Luís Vaz Silva
abcc0421e4
Fix size miscalculation for surfaceSkinIDs
2023-06-26 23:28:26 +02:00
Ricardo Luís Vaz Silva
c6978c23ab
Disable FName as a native parameter
2023-06-26 00:36:36 -04:00