Christoph Oelckers
f855b1020f
- actor lists refactored.
...
No more shorts, no more static arrays.
This was one of the biggest blockers for unlimiting the engine.
2021-12-26 23:09:54 +01:00
Christoph Oelckers
eaff9e359f
- refactored the owner index in tspritetype.
...
This is now a separate type from spritetype which contains an actor pointer instead so that sprite display can be handled without requiring a static sprite array.
2021-12-26 23:09:53 +01:00
Christoph Oelckers
183f554733
- hitscan cleanup.
...
Also removed a bit of leftover TROR code.
2021-12-26 23:09:52 +01:00
Christoph Oelckers
6600f55543
- separate map loading from actor spawning for the other games, too.
...
It still uses the horribly messed up original spawn logic, though.
2021-12-26 23:09:51 +01:00
Christoph Oelckers
a3493048e7
- refactoring of spawn code to prepare for the other games.
...
Map hacks do not work in this commit!
2021-12-26 23:09:51 +01:00
Christoph Oelckers
ec888c097c
- Blood: separated actor spawning from map loading.
2021-12-26 23:09:51 +01:00
Christoph Oelckers
e543c70439
- replacement of BloodLinearSpriteIterator
...
Preparation for eliminating sprite[]. This array can later be created by the actual spawn function.
2021-12-26 23:09:51 +01:00
Christoph Oelckers
6773fa2189
- removed unused InitLists function.
...
# Conflicts:
# source/build/src/engine.cpp
2021-12-26 23:09:49 +01:00
Christoph Oelckers
58cd933d74
- pass sprite array to map hack parser as parameter.
...
This will later allow it to work on temporaries.
2021-12-26 23:09:49 +01:00
Christoph Oelckers
b663b8ea26
- wallptr reduction.
2021-12-26 23:09:48 +01:00
Christoph Oelckers
a22634f228
- sectnum reduction.
2021-12-26 23:09:47 +01:00
Christoph Oelckers
73243f95bb
- make Blood's burn source a pointer.
2021-12-26 23:09:46 +01:00
Christoph Oelckers
3a44f168e0
- Blood: Fix DeleteSprite
2021-12-26 23:09:46 +01:00
Christoph Oelckers
97b19a5cb1
- adapted Blood's sound engine to using actors.
...
Note: Savegames won't work on this commit for the other games!
2021-12-26 23:09:45 +01:00
Christoph Oelckers
befc4572e9
- minimal backend array removal.
2021-12-26 23:09:45 +01:00
Christoph Oelckers
b7a5ea8ef6
- moved some common utilities into the backend.
2021-12-26 23:09:44 +01:00
Christoph Oelckers
bbb860ccf3
- consolidate the iterators in the backend.
...
Using a template class that can adapt to the game specific types.
2021-12-26 23:09:44 +01:00
Christoph Oelckers
6748a39c8f
- deprecate the sector index variant of pushmove
2021-12-26 23:09:43 +01:00
Christoph Oelckers
70d7e81f4f
- adapted getzrange to the new interface.
...
This was mainly removing game side solutions in favor of a common one in the backend.
2021-12-26 23:09:42 +01:00
Christoph Oelckers
8ce34c7772
- use refactored Collision struct and clipmove in Blood, too.
2021-12-26 23:08:57 +01:00
Christoph Oelckers
96b9572905
- moved parts of the HitInfo subclasses into the backend.
...
All the game code now needs to do is a single 'using' statement.
2021-12-26 23:08:57 +01:00
Christoph Oelckers
10dce7dd2d
- adapted all hitscan calls in Duke/RR.
2021-12-26 23:08:56 +01:00
Christoph Oelckers
129ce0aea8
- migrated Blood's hitscan calls and its global gHitInfo struct.
2021-12-26 23:08:56 +01:00
Christoph Oelckers
9380819e4e
- initialize actorArray for all games.
...
- the foundation for an actor aware backend.
2021-12-26 23:08:56 +01:00
Christoph Oelckers
52c80f187a
- added coreactor.h
2021-12-26 23:08:55 +01:00
Christoph Oelckers
5d78b228b7
- the final bits and pieces in Blood
2021-12-26 23:08:40 +01:00
Christoph Oelckers
41506f35db
- calcviewpitch
2021-12-26 23:08:40 +01:00
Christoph Oelckers
879407538e
- several 'sectnum's.
2021-12-26 23:08:40 +01:00
Christoph Oelckers
9388f839b6
- main view render function and dependencies.
2021-12-26 23:08:40 +01:00
Christoph Oelckers
0797e7ac90
- trInit
2021-12-26 23:08:39 +01:00
Christoph Oelckers
7442edc59f
- more trigger stuff
2021-12-26 23:08:39 +01:00
Christoph Oelckers
2967edf827
- triggers.cpp subfunctions.
2021-12-26 23:08:39 +01:00
Christoph Oelckers
8f3c97dde4
- SetSectorState
2021-12-26 23:08:39 +01:00
Christoph Oelckers
7f94eee9bb
- busy interface + unlimiting.
2021-12-26 23:08:00 +01:00
Christoph Oelckers
28840b3afa
- pass sectors to AddBusy and ReverseBusy.
2021-12-26 22:35:08 +01:00
Christoph Oelckers
9d423d19cd
- partial transition of busy interface to sector pointers.
2021-12-26 22:25:59 +01:00
Christoph Oelckers
9017fee74f
- FindSector.
2021-12-25 21:29:17 +01:00
Christoph Oelckers
b8953849ee
- secnum in fx.cpp
2021-12-25 21:29:17 +01:00
Christoph Oelckers
765ff7609d
- all remaining ->sectnum in nnexts.cpp.
2021-12-25 21:29:16 +01:00
Christoph Oelckers
d0376e5485
- nnext sound functions.
2021-12-25 21:29:16 +01:00
Christoph Oelckers
b7c4e4b9fa
- useSlopeChanger
2021-12-25 21:29:16 +01:00
Christoph Oelckers
36d66f14b5
- smaller stuff
2021-12-25 21:29:16 +01:00
Christoph Oelckers
4438c20cb4
- fxProcess
2021-12-25 21:29:16 +01:00
Christoph Oelckers
f52a542fad
- callback interface.
2021-12-25 21:29:15 +01:00
Christoph Oelckers
e4e5bd0966
- CFX::fxSpawnActor
2021-12-25 21:29:15 +01:00
Christoph Oelckers
331a7654bf
- actSpawnThing
2021-12-25 21:29:15 +01:00
Christoph Oelckers
443cfc991c
- actSpawnSprite, ZONE, startsectnum and dbLoadMap
2021-12-25 21:29:15 +01:00
Christoph Oelckers
b187f3c028
- CheckProximity
2021-12-25 21:29:15 +01:00
Christoph Oelckers
e172d0c138
- actRadiusDamage
2021-12-25 21:29:14 +01:00
Christoph Oelckers
3d336c13ac
- GetClosestSpriteSectors
2021-12-25 21:29:14 +01:00