Ricardo Luís Vaz Silva
d36fa3c36b
add helper methods to Sound/SpriteID/TranslationID
2024-12-21 04:33:25 -05:00
Christoph Oelckers
d1abc3eb8c
renamed things in file system to reduce Doom specific terminology.
2024-11-24 18:05:11 +01:00
Christoph Oelckers
a3475d3973
FileSystem cleanup.
...
* split off the Doom specific lookup with short 8 character names into its own class and cleaned up the interface a bit.
* get rid of all short name aliasing 'optimization' - modern compilers are capable of optimizing memcmp and memcpy to use equally efficient code so none of these hacks are needed anymore.
* added reader for Descent 3's HOG2 format - yet another of these endless uncompressed formats with just a different directory structure...
2024-11-24 17:59:16 +01:00
Christoph Oelckers
634a646c2d
take namespace enum out of namespace and added CheckNumForAnyName and CheckNumForFullNameInFile to clarify the meaning of CheckNumForFullName.
...
This is to take some renaming noise out of the upcoming refactoring.
2024-11-24 17:59:16 +01:00
Christoph Oelckers
ba2800d698
renamed GetFileFullName to GetFileName
2024-11-24 17:59:15 +01:00
Christoph Oelckers
2dcd0fcda4
moved another declaration out of a global header.
2024-11-23 20:39:23 +01:00
Boondorl
3ea5be1ea7
Reworked FRandom constructors
...
Removes ambiguity while keeping old constructor syntax in check for better overall portability.
2024-11-15 23:56:23 -03:00
Boondorl
a1a4a97dcd
Added RNG snapshotting for predicting
...
Allows RNG seeds to be played back in a predictive way paving the road for predictive behaviors that rely on RNG.
2024-11-15 23:56:23 -03:00
Boondorl
597b06ae52
Added CRandom functions
...
Unique RNG namespace for client-side effects and HUDs. Identifiers for these cannot clash with identifiers that affect the playsim making them completely safe to use in HUD elements. They also won't be saved.
2024-11-15 23:56:23 -03:00
Boondorl
4c140224a2
Removed network message entirely
...
Header needs to include more data to properly filter someone trying to connect
2024-11-15 23:54:04 -03:00
Boondorl
8a14497d8c
Port NCMD_EXIT to i_net file
2024-11-15 23:54:04 -03:00
Boondorl
e898139690
Fixed static error for SendConAck
2024-11-15 23:54:04 -03:00
Boondorl
3f4513c571
Updated packet handling
...
Added "game in progress" message for players trying to join late. Improved "unknown host" packet logging to only log when truly unknown. Correctly abort network window so game can process fatal errors instead of hanging on waiting to connect. Unexpected disconnects in lobby now correctly update the state of the game.
2024-11-15 23:54:04 -03:00
Ricardo Luís Vaz Silva
925b62b8c5
serialize animData, update subsector on deserialize
2024-11-13 15:47:22 -03:00
Christoph Oelckers
3798fd815f
the MISSILE(EVEN)MORE flags still need to be accessible by ZScript for backwards compatibility.
...
Since these do not exist anymore an internal interface to Handle/CheckDeprecatedFlags was added.
2024-10-03 12:32:09 +02:00
Cacodemon345
e88d912892
ID24 interlevel lumps implementation
2024-10-01 16:48:07 +02:00
Ricardo Luís Vaz Silva
1429e22441
rework interpolation to allow for precalculated frames
2024-09-13 17:05:22 -03:00
Ricardo Luís Vaz Silva
1655f7e3b7
Allow XInput joysticks to work while the game is unfocused
2024-08-09 18:04:51 -03:00
Jan Engelhardt
1dedcee739
Provide a diagnostic message for the two 32-bit related static_asserts
2024-05-18 07:48:20 -04:00
Rachael Alexanderson
bcad040fd3
- always show iwad picker, offer option for forks to hide picker by default. this commit was intentionally done in a way to cause merge conflicts so as to force fork maintainers to pay attention to the new option in version.h
2024-05-03 10:14:29 -04:00
Christoph Oelckers
6f2bc8379a
strip spaces from language labels.
2024-05-01 11:58:30 +02:00
DyNaM1Kk
620d689038
Fixed "PrivateNetOf" function not checking for the entire B class private network range
2024-04-27 11:02:34 -03:00
Christoph Oelckers
f2d7bbea99
Instead of going through a global callback function set the string table's default gender at the start of each frame
...
This will perform the CVAR lookup only once per frame, not once per string.
2024-04-21 10:35:56 +02:00
Christoph Oelckers
ebd4ebf298
StringTable cleanup and improvements
...
cleaned up function interface to avoid referencing the file system in the worker functions.
replaced StringTable's operators with functions.. The main reason is that these are far easier to look up when browsing the source.
This also fixes a premature translation in SBARINFO that was done in the parsing stage, not the printing stage.
2024-04-21 10:34:44 +02:00
Ricardo Luís Vaz Silva
ce479e09ff
Fix A_ChangeModel serialization
...
I overlooked this part on my first A_ChangeModel fix
2024-03-17 18:07:50 -03:00
Ștefan Talpalaru
b5eb8f47db
GCC-13 support, when precompiled headers are off
2024-02-05 17:40:37 +01:00
Christoph Oelckers
f1db369883
moved a few things out of the common code that should be defined privately.
2024-02-04 13:54:25 +01:00
inkoalawetrust
56803317f5
Added new AutomapOffsets property.
...
This Vector2 property allows you visually offset the XY position of an actors' sprites on the automap.
2024-01-28 09:48:41 -05:00
Christoph Oelckers
f7a4f00177
adapted string table so that it can be initialized without full game data being available.
...
This is for the IWAD picker which runs before many things are known.
2024-01-09 17:22:59 +01:00
Ricardo Luís Vaz Silva
35e56d3f42
Minor optimizations to VisualThinker
...
* remove duplicated fields
* make native functions use direct calls
* remove unnecessary pointer from particle_t
* create HWSprite directly in Construct
2024-01-06 20:06:57 -05:00
Christoph Oelckers
83aa9388ca
backend update from Raze
...
* moving large allocations off the stack
* use proper printf formatters for size_t and ptrdiff_t.
* adding some missing 'noexcept'.
2024-01-06 15:24:10 +01:00
Magnus Norddahl
3f50136c8d
Create initial error and netstart windows
2024-01-02 16:55:17 +01:00
Cacodemon345
a368588db6
Export FScanner parser to ZScript as ScriptScanner
2023-12-25 10:52:56 +01:00
Christoph Oelckers
df3e82d94c
cleaned up some redundant file reads and fixed file opening in the movie player.
...
As a streaming action this cannot borrow the one from the archive.
2023-12-14 17:22:31 +01:00
Christoph Oelckers
f5f9d5b5d8
got rid of FDirectoryLump.
2023-12-14 17:22:30 +01:00
Christoph Oelckers
fe106d9bfe
merge FileData and ResourceData.
2023-12-14 17:22:29 +01:00
Christoph Oelckers
aaea3d52aa
fixed more warnings.
2023-12-14 17:22:29 +01:00
Christoph Oelckers
02a6e0422d
Clang did not like this...
2023-12-10 11:00:44 +01:00
Christoph Oelckers
41573df58f
added STL compatible access functions to TArray.
...
This allows using them in templates made for STL containers.
2023-12-10 09:07:48 +01:00
Ricardo Luís Vaz Silva
aed85a25a2
serialize cvars
2023-11-25 21:06:39 -05:00
Rachael Alexanderson
4b54aac288
- rename ZSprites to VisualThinkers
2023-11-22 12:11:57 -05:00
Ricardo Luís Vaz Silva
71999e7cf6
add foreach(a/type a : thinkeriterator/actoriterator)
2023-11-20 22:11:05 -05:00
Ricardo Luís Vaz Silva
f5507a7373
add foreach(a/l/a,p/l,p/a,p,f/l,p,f : blocklinesiterator/blockthingsiterator)
2023-11-20 22:11:05 -05:00
Ricardo Luís Vaz Silva
5d5e7ca042
Decoupled IQM Model Animations
2023-11-20 22:08:33 -05:00
Christoph Oelckers
0b36beb10d
serialize the remap data of custom translations defined at run time.
2023-11-19 12:44:22 +01:00
Major Cooke
b6b1b25035
Added ZSprites.
...
- Effectively similar to Actors, but without the excess.
- Can be created with either the `level` function or the static `Spawn` function in ZSprite.
- STAT_SPRITE belongs to ZSprites only; ZSprites cannot be moved out of, nor can anything else be moved in to, this statnum.
Misc:
- Fixed (Sprite)Offset taking roll into account.
Crediting phantombeta, RicardoLuis0 and RaveYard for assistance.
2023-11-17 08:06:11 -05:00
Christoph Oelckers
578a398981
use FTranslationID in the 2D code.
2023-11-09 23:04:11 +01:00
Christoph Oelckers
9f90c64727
use FTranslationID in the high level parts of the hardware renderer.
2023-11-09 23:04:11 +01:00
Christoph Oelckers
8c5eb2c807
use FTranslationID in all places where strict type checking is needed.
...
This means all properties in serializable classes now use this wrapper type. The backend hasn't been changed yet
2023-11-09 23:04:10 +01:00
Christoph Oelckers
f0c9b1765e
gave translations a dedicated scripted type.
...
This is needed for implementing reliable serialization of custom translations. As long as they are merely ints they cannot be restored on loading a savegame because the serialization code does not know that these variables are special.
2023-11-09 23:04:10 +01:00