Christoph Oelckers
5b38343407
- fixed sprite exclusion logic in getzrange.
...
This was using the wrong flag.
2021-06-09 00:31:54 +02:00
Christoph Oelckers
dc846dcd49
- Duke: avoid clipping against self when executing script logic for floor sprites.
...
A good place to see the result is a kitchen knife in E4L2 that went missing due to the faulty check.
2021-06-01 21:21:39 +02:00
Christoph Oelckers
454816299e
- reorganized loading of textures.
...
Due to dependencies on initializing some data in app_init it was not possible to cleanly set up the fonts.
This adds a game-side function for loading the entire palettes before starting with the texture data and another one for loading game-side texture data.
This now allows fully setting up the palettes before starting with the textures and to fully set up the textures before reading the .def files.
All this is needed because to properly initialize, the fonts need to be able to access the fully initialized texture state, including replacements and hires substitutions from the .def files.
2021-06-01 11:05:26 +02:00
Christoph Oelckers
9c60ab791b
- implemented all needed font overrides for localization.
2021-05-31 21:20:31 +02:00
Christoph Oelckers
af781e0422
- moved all font setup out of the C++ code.
...
All internal fonts now get defined through FONTDEFS.
Also fixing a few offsets.
2021-05-31 21:20:31 +02:00
Christoph Oelckers
42b70a7d93
- added internationalized fonts.
...
This still needs a bit of fixing and tweaking but most is working.
2021-05-31 21:20:30 +02:00
Christoph Oelckers
db21313c96
- add some hackery to deal with WT's bosses.
...
This was the result of some gross change to the spawning code which suddenly changed the rules about minibosses.
To reduce the impact, it is only enabled for the "Alien World Order" maps.
2021-05-29 13:12:50 +02:00
Christoph Oelckers
e10bcf6294
- split the screen job code into a generic and a Raze specific part.
...
Preparations for porting this to GZDoom.
2021-05-22 01:35:50 +02:00
Christoph Oelckers
d572e56839
- removed the indirection for the global arrays.
...
No idea what part of EDuke32 needed this, but it is not necessary.
2021-05-21 14:32:01 +02:00
Christoph Oelckers
ec976d9db7
- RR: fixed double negation in pitch math when throwing dynamite.
2021-05-20 19:06:11 +02:00
Christoph Oelckers
f136330628
- removed the native versions of Duke's and RR's status bar.
2021-05-15 17:15:29 +02:00
Christoph Oelckers
781cb32dcf
- fixed all issues with Duke's/RR's status bar.
2021-05-15 16:46:08 +02:00
Christoph Oelckers
f84f58e714
- ported Duke and RR status bars.
...
Compiles but not tested yet.
2021-05-15 14:27:32 +02:00
Christoph Oelckers
d311792e06
- engine side preparations for Duke Statusbar scriptification.
...
Mainly, gotweapon had to be reverted to a flat bool array to avoid implementing FixedBitArray for the VM.
Also adding a few new tile names and PushV for string arrays.
2021-05-15 10:44:35 +02:00
Christoph Oelckers
5a6121d424
- status bar interface work.
2021-05-15 10:25:38 +02:00
Christoph Oelckers
5ae1c334fa
- Duke: fixed bad check in 'ifnotmoving' CON command.
2021-05-14 10:03:07 +02:00
Christoph Oelckers
cb2bc7967a
- fixed the remaining warnings.
2021-05-12 21:50:01 +02:00
Christoph Oelckers
cf22a70d82
- fixed all warnings in Duke.
2021-05-12 21:50:01 +02:00
Christoph Oelckers
d097c8e635
- removed the non-functional and long abandoned level music alias feature.
...
With RMAPINFO such a hack is no longer needed for anything.
2021-05-12 21:48:40 +02:00
Christoph Oelckers
03289f5097
- silenced some warnings.
2021-05-12 21:47:32 +02:00
Christoph Oelckers
e40ed2262e
- cleanup of 'gotpic' handling.
2021-05-10 20:13:28 +02:00
Christoph Oelckers
e74aca291c
- position tweaking for Nam's skies.
...
Why is this such an utter mess to get skies placed correctly? :(
2021-05-10 20:13:28 +02:00
Cacodemon345
ce4b748ff0
Fix compilation with Clang on FreeBSD
2021-05-09 19:52:52 +02:00
Christoph Oelckers
43981bff85
- Duke: fixed mirror setup for new renderer.
...
A wall must be marked one-way to be used as a mirror.
2021-05-08 16:27:01 +02:00
Christoph Oelckers
de904d3052
. Duke: made the 'lonely effector' error non fatal.
...
Instead just move the bogus effector sprite out of the way.
2021-05-08 15:41:49 +02:00
Christoph Oelckers
c679f83f75
- make all games return to the main menu when the game is ended with F10.
...
Duke still went to the intro movies which was a bit problematic.
2021-05-04 11:32:09 +02:00
Christoph Oelckers
a303da37a9
- added a mapinfo dumper and used it to verify correctness of the data generated from game-native definitions.
...
Also simplified the levelnumber setup a bit.
2021-05-03 23:00:24 +02:00
Christoph Oelckers
7d77b2315f
- merged the few remaining contents of mmulti.h into d_net.h
2021-05-03 19:01:00 +02:00
Christoph Oelckers
56fcf904b5
- Backend update from GZDoom.
2021-05-03 14:48:55 +02:00
Christoph Oelckers
8003ab6fa3
Merge branch 'scriptable_cutscenes' into newrenderer
2021-05-02 22:37:46 +02:00
Christoph Oelckers
c9791bc148
- renamed PlayerHorizon function to deconflict with the same-named struct
2021-05-02 21:56:45 +02:00
Christoph Oelckers
698d62bbc6
- merged FixMapInfo into loadcons.
...
No need to delay the remaining content. The reasons for the separate function no longer exist.
2021-05-02 19:41:24 +02:00
Christoph Oelckers
60d007fa93
- Duke: fixed non-scrolling SE24.
2021-05-02 19:32:20 +02:00
Christoph Oelckers
bb9d492db6
- migrated RRRA as well.
2021-05-02 14:01:10 +02:00
Christoph Oelckers
6f4e380728
- migrated RR's cutscene definitions.
...
Also turned several level-specific init options into map flags or map parameters.
2021-05-02 13:12:24 +02:00
Christoph Oelckers
dbd179be5c
- RR progression fixes.
...
* E1L7 abuses an 'end the game' command to progress to E2L1, this needs special treatment.
* handle ENDGAME.MAP more cleanly by injecting an 'engine.con' into the compilation chain to define its map record. The main issue with this is that it needs to be defined before the regular CONs run.
* check the already defined 'clearinventory' and 'clearweapons' flags that are exposed through RMAPINFO (Duke/RR only so far.)
2021-05-02 10:55:22 +02:00
Christoph Oelckers
9bc210fe35
- fixed RR weapon clearing in E2L2 and RRRA E1L3.
2021-05-02 10:37:20 +02:00
Christoph Oelckers
1798380f23
- adapted map transition in Duke/RR.
...
There's still some issues which will be taken care of by adding map flags.
2021-05-02 10:35:43 +02:00
Christoph Oelckers
e9385ed4e8
- adapted Blood to the new level progression features and simplified several parts, particularly the clumsy retrieval of the next level.
...
Some cheats in Duke will not work correctly with this commit!
2021-05-02 09:08:57 +02:00
Christoph Oelckers
93bfc35ad6
- use the volumes to find the starting maps for the menu and the clusters for the cutscenes.
2021-05-02 01:01:30 +02:00
Christoph Oelckers
825963661b
- migrated volumes to the new storage.
2021-05-02 00:35:56 +02:00
Christoph Oelckers
f3eb476fbf
- minor cleanup.
2021-05-01 23:09:24 +02:00
Christoph Oelckers
13b21d3ed9
- removed script access to variables that no longer contain what they once did.
2021-05-01 23:08:51 +02:00
Christoph Oelckers
f732d4ec64
- added MAPINFO parser, based on GZDoom's.
...
This isn't hooked up yet, but all necessary structures and fields have been added so that selected pieces can be tested.
2021-05-01 22:52:28 +02:00
Christoph Oelckers
5b54e9c1ad
- removed the 26 factor from Duke's par times.
...
What were they thinking?
2021-04-30 20:08:36 +02:00
Christoph Oelckers
5959543380
- hooked up SW's intermission handling.
2021-04-30 20:08:36 +02:00
Christoph Oelckers
aa148d602c
- scriptified SW's 2D screens.
...
Compiles but not tested yet.
2021-04-30 20:08:35 +02:00
Christoph Oelckers
d5db898236
- fixed bad level number for weapon removal in RRRA.
2021-04-30 20:08:35 +02:00
Christoph Oelckers
fa2bcf563a
- forgot to save these.
2021-04-30 20:08:35 +02:00
Christoph Oelckers
b65dfb6145
- check r_precache in all games.
2021-04-30 20:08:35 +02:00