Christoph Oelckers
30786360bb
- derive spritetype and tspritetype from a common base class to consolidate their common content.
2021-12-26 23:09:57 +01:00
Christoph Oelckers
d3b1e34d78
- moved sprite[], spriteext[] and spritesmooth[] into DCoreActor.
...
Also removed the last remaining sprite pointer in saveable data.
2021-12-26 23:09:55 +01:00
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
0a9792ac28
- adapted SW's sound system to actors.
2021-12-26 23:09:46 +01:00
Christoph Oelckers
02ef323086
- SW: handle getzrangepoint
2021-12-26 23:09:43 +01:00
Christoph Oelckers
53be5d1622
- use a sector pointer in FAFgetzrange.
2021-12-26 23:09:43 +01:00
Christoph Oelckers
321608e5ac
- made cursectnum et. al. real pointers.
2021-12-26 23:09:41 +01:00
Christoph Oelckers
10d0ea29ce
- renamed some sectnum variables.
2021-12-26 23:09:41 +01:00
Christoph Oelckers
afd05add96
- adapted several clipmove calls in SW.
2021-12-26 23:09:40 +01:00
Christoph Oelckers
30f36e4871
- use backend's collision struct in SW.
2021-12-26 23:08:58 +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
a5ccd2ccd2
- adapted FAFhitscan to the new backend API.
...
Lots of search & replace to change the names of the HitInfo struct, no manual edits outside of FAFhitscan.
2021-12-26 23:08:57 +01:00
Christoph Oelckers
52c80f187a
- added coreactor.h
2021-12-26 23:08:55 +01:00
Christoph Oelckers
33d2d80c42
- sector references in remote, some cursectnum replacements.
2021-12-26 23:08:55 +01:00
Christoph Oelckers
104e80e34a
- NEAR_TAG_LIST, also deleted useless OperateWall code.
2021-12-26 23:08:55 +01:00
Christoph Oelckers
19f8458f01
- FindCeilingView, FindFloorView and related things.
2021-12-26 23:08:54 +01:00
Christoph Oelckers
db95dc95d1
- FAF_Sector + SpawnQuake
2021-12-26 23:08:54 +01:00
Christoph Oelckers
1457cf2c0d
- track stuff
2021-12-26 23:08:53 +01:00
Christoph Oelckers
1a7cc6d782
- FAFgetzrangepoint + ActorDrop
2021-12-26 23:08:53 +01:00
Christoph Oelckers
959c3bc18b
- springboard
2021-12-26 23:08:53 +01:00
Christoph Oelckers
0c9d465e4c
- FAF_Connect* functions and related code.
2021-12-26 23:08:52 +01:00
Christoph Oelckers
96915a646b
- SectorZadjust
2021-12-26 23:08:52 +01:00
Christoph Oelckers
b076edcc6f
- PlayerRemoteReset
2021-12-26 23:08:51 +01:00
Christoph Oelckers
75af6966c9
- FAFHitscan cleanup.
2021-12-26 23:08:51 +01:00
Christoph Oelckers
1a7c70cbbd
- use pointers in FAFHitscan
2021-12-26 23:08:51 +01:00
Christoph Oelckers
bcc61470a2
- mostly deal with hitinfo.hitsect.
2021-12-26 23:08:50 +01:00
Christoph Oelckers
d447e3e86f
- make the sector reference in SINE_WAVE_FLOOR a pointer.
2021-12-26 23:08:49 +01:00
Christoph Oelckers
16480ccfcc
- use sector wrappers where applicable.
2021-12-26 23:08:49 +01:00
Christoph Oelckers
52d9451cbc
- SOP::op_main_sector
2021-12-26 23:08:49 +01:00
Christoph Oelckers
f388efc5ef
- eliminated the redundant SOP::sector array.
2021-12-26 23:08:49 +01:00
Christoph Oelckers
c43d594f34
- SectorIsUnderwaterArea
2021-12-26 23:08:49 +01:00
Christoph Oelckers
4149a335a3
- SOP::mid_sector
2021-12-26 23:08:48 +01:00
Christoph Oelckers
b936345e11
- sectnum() cleanup and AnimSet return type.
2021-12-26 23:08:48 +01:00
Christoph Oelckers
3b16db7a0f
- SectorMidPoint
2021-12-26 23:08:48 +01:00
Christoph Oelckers
d6cd291030
- use a wall pointer in SINE_WAVE
2021-12-26 23:08:47 +01:00
Christoph Oelckers
e3ad05d4d7
- quick cursectnum replacements.
2021-12-26 23:08:46 +01:00
Christoph Oelckers
c0496420ec
- LadderSector
2021-12-26 23:08:46 +01:00
Christoph Oelckers
d1f156dec3
- most InsertActor calls.
2021-12-26 23:08:43 +01:00
Christoph Oelckers
eb82f60981
- FAFcansee.
2021-12-26 23:08:42 +01:00
Christoph Oelckers
a93dbaf5fe
- SW: simplified rotation interpolation functions.
2021-12-26 23:08:40 +01:00
Christoph Oelckers
16bdea1b2e
More SW shorts
2021-12-25 21:28:54 +01:00
Christoph Oelckers
6a9b377724
SW de-shortification
2021-12-25 21:28:53 +01:00
Christoph Oelckers
4d7b45b68e
- SW: first batch of short handling.
2021-12-25 21:28:53 +01:00
Christoph Oelckers
fded90c491
- SW: deleted SECT_USER.
2021-12-25 21:28:49 +01:00
Christoph Oelckers
7d2404ce76
- made sector a TArray.
2021-12-25 21:28:49 +01:00
Christoph Oelckers
14907a9a97
- sector extension basics.
2021-12-25 21:28:48 +01:00
Christoph Oelckers
56a1836e68
- all SectUsers replaced, except for the maintenance code of the array.
2021-12-25 21:28:47 +01:00
Christoph Oelckers
bd43f49c29
- replaced half of the remaining SectUser accesses.
2021-12-25 21:28:46 +01:00
Christoph Oelckers
5cda292d98
- lots of search& replace actions.
...
This takes care of roughly 2/3 of the SectUser accesses.
2021-12-25 21:28:46 +01:00
Christoph Oelckers
4266edfa04
- SW: automatic ->sector() replacements (lots of them)
2021-12-25 21:28:46 +01:00
Christoph Oelckers
a5fac26a90
- DIVx macro removal.
...
Only DIV2 left because there are too many calls to quickly remove them.
2021-12-25 21:28:45 +01:00
Christoph Oelckers
f6db4a8e51
- SW: move User into DSWActor.
2021-12-25 21:28:39 +01:00
Christoph Oelckers
4daad25e5c
- use WORDS_BIGENDIAN directly in place of B_BIG_ENDIAN
2021-12-14 12:27:41 +01:00
Christoph Oelckers
7daa501a4d
- removed all #include "compat.h" except the one in build.h
...
Still all compiles fine.
2021-12-14 12:24:10 +01:00
Christoph Oelckers
b73ea76c18
- cleaned out Bunny_Count declarations.
...
One is enough.
2021-11-29 00:57:09 +01:00
Christoph Oelckers
cd3288860a
- fixed automap player drawing for follpw mode off in all games.
2021-11-29 00:56:32 +01:00
Christoph Oelckers
ed2d8373fc
- final cleanup.
2021-11-29 00:56:17 +01:00
Christoph Oelckers
e12ae040de
- collision code cleanup.
...
# Conflicts:
# source/games/sw/src/game.h
# source/games/sw/src/sprite.cpp
# Conflicts:
# source/games/sw/src/game.h
2021-11-29 00:56:17 +01:00
Christoph Oelckers
2f1e23a654
- replaced PLAYER::PlayerSprite with PLAYER::actor
...
# Conflicts:
# source/games/sw/src/save.cpp
2021-11-29 00:56:15 +01:00
Christoph Oelckers
5b10e9f2d5
- got rid of SpriteP pointers in PLAYER and USER.
2021-11-29 00:56:15 +01:00
Christoph Oelckers
8d95b9cb98
- got rid of the PlaySound variant taking a sprite pointer.
2021-11-29 00:56:15 +01:00
Christoph Oelckers
69223af7b0
- SpriteControl and subfunctions.
2021-11-29 00:56:13 +01:00
Christoph Oelckers
41f8c6f4af
- owner fixes in weapons.cpp.
...
# Conflicts:
# source/games/sw/src/game.h
# Conflicts:
# source/games/sw/src/game.h
# source/games/sw/src/weapon.cpp
2021-11-29 00:56:12 +01:00
Christoph Oelckers
2b4ed0eaf3
- PlayerCheckDeath
2021-11-29 00:56:10 +01:00
Christoph Oelckers
a073ef65e7
- low level move functions now return a Collision struct.
...
# Conflicts:
# source/games/sw/src/sprite.cpp
2021-11-29 00:56:09 +01:00
Christoph Oelckers
606ce997ac
- cleanup of collision maintenance.
...
u->ret is gone, and for clearing the collision info the proper utilities are being called now.
2021-11-29 00:56:09 +01:00
Christoph Oelckers
8af0455f92
- VehicleMoveHit
2021-11-29 00:56:05 +01:00
Christoph Oelckers
6a25b4a560
- getzrange wrappers.
...
# Conflicts:
# source/games/sw/src/game.h
2021-11-29 00:56:02 +01:00
Christoph Oelckers
6f0c477e85
- getting rid of COVERinsertsprite, plus cleanup.
2021-11-29 00:56:01 +01:00
Christoph Oelckers
da1e97469e
- FAFhitscan migration to HITINFO.
2021-11-29 00:55:52 +01:00
Christoph Oelckers
96ebfe808c
- turned some macros into functions.
2021-11-29 00:55:50 +01:00
Christoph Oelckers
83d0930a2e
- QueueFootPrint + QueuefloorBlood.
2021-11-29 00:55:49 +01:00
Christoph Oelckers
0d45e50ea6
- QueueGeneric + ShrapKillSprite.
2021-11-29 00:55:48 +01:00
Christoph Oelckers
c14fb9e93f
- QueueLoWangs
2021-11-29 00:55:48 +01:00
Christoph Oelckers
58749b2770
- NewStateGroup wrappers replaced.
2021-11-29 00:55:48 +01:00
Christoph Oelckers
cd8e8e4f67
- removed index based version of SpawnUser.
2021-11-29 00:55:47 +01:00
Christoph Oelckers
6489c60905
- lots of search & replace, plus a few fixes on ActorSpawn.
2021-11-29 00:55:46 +01:00
Christoph Oelckers
d49ae699f8
- ChangeSpriteState + change_sprite_stat.
2021-11-29 00:55:46 +01:00
Christoph Oelckers
1d9d70613f
- char review in SW
2021-11-29 00:55:43 +01:00
Christoph Oelckers
b878bf8aac
- SW: renamed all unsigned chars to uint8_t
...
Also deletes some unused declarations
2021-11-29 00:55:43 +01:00
Christoph Oelckers
21af63dfcc
- wallmove.cpp
2021-11-29 00:55:38 +01:00
Christoph Oelckers
10ea8b0fb5
- vator.cpp
2021-11-29 00:55:38 +01:00
Christoph Oelckers
2c94259603
- BossSpriteNum
2021-11-29 00:55:37 +01:00
Christoph Oelckers
411c814dc3
- vis.cpp
2021-11-29 00:55:37 +01:00
Christoph Oelckers
02bdba71fc
- spike.cpp.
2021-11-29 00:55:37 +01:00
Christoph Oelckers
e32a1af7b2
- lots of PlaySound calls migrated to actors.
2021-11-29 00:55:36 +01:00
Christoph Oelckers
1388794032
- first half of rotator.cpp.
2021-11-29 00:55:34 +01:00
Christoph Oelckers
da683ddf7a
- ripper2.cpp
2021-11-29 00:55:33 +01:00
Christoph Oelckers
82b4385ede
- ripper.cpp
2021-11-29 00:55:32 +01:00
Christoph Oelckers
0e629eb322
- sop.match_event_sprite
2021-11-29 00:55:32 +01:00
Christoph Oelckers
74fce3bf58
- sector object sprite list
2021-11-29 00:55:31 +01:00
Christoph Oelckers
c6bd5c04c7
- fixed most warnings GCC pointed out in game code.
2021-11-29 00:55:29 +01:00
Christoph Oelckers
1152ec0b54
- use actor pointers in animation system.
2021-11-29 00:55:28 +01:00
Christoph Oelckers
826b514571
- removed a few pointless or unused macros.
2021-11-29 00:55:27 +01:00
Christoph Oelckers
ba4b5bbbcb
- PLAYER::Killer
2021-11-29 00:55:27 +01:00
Christoph Oelckers
7d7000f6ab
- FindNearSprite + PLAYER::remote_sprite.
2021-11-29 00:55:26 +01:00
Christoph Oelckers
0e37e0904e
- sop::sp_child.
2021-11-29 00:55:26 +01:00
Christoph Oelckers
02671dbe2f
- PlayerUnderSprite.
2021-11-29 00:55:25 +01:00
Christoph Oelckers
8780be4ee4
- WpnGoal + sprite_num.
2021-11-29 00:55:24 +01:00
Christoph Oelckers
8336f689dd
- DoPickTarget.
2021-11-29 00:55:24 +01:00
Christoph Oelckers
e7dcd279af
- PickJumpMaxSpeed.
2021-11-29 00:55:22 +01:00
Christoph Oelckers
7012a77685
- InitShell / SpawnShell
2021-11-29 00:55:21 +01:00
Christoph Oelckers
aef68363b4
- FlagOwner refactoring.
...
Only those parts which use it as a sprite index, seveal actors recycle it as a general purpose variable.
2021-11-29 00:55:21 +01:00
Christoph Oelckers
5efb63b780
- InitCaltrops + InitPhosphorus
2021-11-29 00:55:21 +01:00
Christoph Oelckers
e3e9e4030e
- splash functions.
2021-11-29 00:55:19 +01:00
Christoph Oelckers
cf8aaf7ff2
- JS_ProcessEchoSpot + UnlockKeyLock
2021-11-29 00:55:19 +01:00
Christoph Oelckers
ef23f69072
- EnemyDefaults.
2021-11-29 00:55:16 +01:00
Christoph Oelckers
f5c7ccd6af
- bunny.cpp
2021-11-29 00:55:16 +01:00
Christoph Oelckers
4231119717
- owner stuff
2021-11-29 00:55:15 +01:00
Christoph Oelckers
13f0b08aeb
- AutoBreakWall and SpawnShrap cleanup.
2021-11-29 00:55:14 +01:00
Christoph Oelckers
d63ac59fa0
- FindBreakSpriteMatch
2021-11-29 00:55:14 +01:00
Christoph Oelckers
6a4049e33c
- SetupSpriteForBreak, extra sprite flags as enum
2021-11-29 00:55:14 +01:00
Christoph Oelckers
de12433809
- USER::Attach and SetAttach.
2021-11-29 00:55:13 +01:00
Christoph Oelckers
a48b45143e
- ActorFindTrack
2021-11-29 00:55:13 +01:00
Christoph Oelckers
c15da92544
- add a Collision member to USER.
2021-11-29 00:55:12 +01:00
Christoph Oelckers
d5f1ec9ad7
- wrapped all assignments to USER::ret.
...
To allow more complex operations like filling a Collision struct and changing the calling code piece by piece.
2021-11-29 00:55:12 +01:00
Christoph Oelckers
c88524884c
- made USER::flame an actor pointer.
2021-11-29 00:55:11 +01:00
Christoph Oelckers
0de816d308
- replaced tgt_sp wrapper.
2021-11-29 00:55:11 +01:00
Christoph Oelckers
84b83ad9b8
- replaced hi_sp with an actor pointer.
2021-11-29 00:55:10 +01:00
Christoph Oelckers
c0c27dfd1a
- replaced lo_sp with an actor pointer, both in USER and PLAYER.
2021-11-29 00:55:10 +01:00
Christoph Oelckers
06b4e8cf08
- cleanup.
2021-11-29 00:55:10 +01:00
Christoph Oelckers
02031c77d0
- first large batch of NewStateGroup calls.
2021-11-29 00:55:09 +01:00
Christoph Oelckers
d98fe4af73
- renamed NewStateGroup.
...
As refactoring aid.
2021-11-29 00:55:09 +01:00
Christoph Oelckers
400f822df3
- SpawnShrap callers
...
Function itself still needs work.
2021-11-29 00:55:08 +01:00
Christoph Oelckers
49d43727ba
- SpawnBlood.
2021-11-29 00:55:07 +01:00
Christoph Oelckers
771b4bcf43
- renamed ChangeState to ChangeSpriteState.
2021-11-29 00:55:07 +01:00
Christoph Oelckers
9602ee6c39
- most of change_sprite_stat.
2021-11-29 00:55:07 +01:00
Christoph Oelckers
7fc9ad1edb
- Coolie ghost function interface.
2021-11-29 00:55:06 +01:00
Christoph Oelckers
119d4393db
- Initial SetOwner WIP.
2021-11-29 00:55:06 +01:00
Christoph Oelckers
34d0c12b60
- removed all references to tgt_sp from ai.cpp, plus a few others found with search&replace.
2021-11-29 00:55:06 +01:00
Christoph Oelckers
602048b41d
- more simple tgt_sp replacements.
2021-11-29 00:55:05 +01:00
Christoph Oelckers
697d4f2253
- replaced USER::tgt_sp with an actor pointer.
...
Most access is still through a wrapper.
2021-11-29 00:55:04 +01:00
Christoph Oelckers
2a897c0582
- SW hit code abstraction.
2021-11-29 00:55:03 +01:00
Christoph Oelckers
2a56479e3e
- DoBeginJump
2021-11-29 00:55:02 +01:00
Mitch Richters
e491d15ff9
- Move InputScale()
out of inputstate.cpp and into i_time.cpp
as I_GetInputFrac()
to make it available to GZDoom for potential future requirements.
...
* As part of this, feed the output of `I_GetInputFrac()` to `gi->GetInput()` instead of having each game's virtual override calling it locally.
2021-11-29 00:55:01 +01:00
Christoph Oelckers
01deb13694
- SW: fixed NORM_xxx macros
...
kHitIndexMask already has the -1 considered, it is 0x3fff.
2021-11-12 11:09:24 +01:00
Christoph Oelckers
25a6774540
- SW: got rid of MAXWALLS.
...
Only places left are declarations of global arrays.
2021-11-11 21:58:14 +01:00
Christoph Oelckers
a35900362e
- only use un-deprecated variants of updatesector(z) in SW.
2021-11-09 00:09:48 +01:00
Christoph Oelckers
a5f51cfd88
- SW: migrate everything to the main clipmove function
2021-11-08 23:11:30 +01:00
Christoph Oelckers
16f9d4ec36
- got rid of COVERupdatesector
...
Not needed as it just forwards to the engine’s updatesector - and it gets in the way of other changes
2021-11-08 23:11:30 +01:00
Mitch Richters
9495b9e6d0
- SW: Interpolate the player's weapon recoil.
...
* Reported as missing by @nashmuhandes.
2021-10-31 08:53:26 +11:00
Mitch Richters
f0a347263a
- SW: Replace use of getzrange_old()
inline wrapper with getzrange()
and remove inline wrappers.
2021-10-30 17:30:02 +02:00
Christoph Oelckers
509124c1dd
- redid SW action interface to use a separate wrapper class from USER.
...
Turned out that not all sprites in the world have a USER, so we need something different to wrap the game's sprite data.
2021-10-29 20:55:31 +02:00
Christoph Oelckers
e241e7dc52
- SW: changed Animator interface to use USERp parameters.
2021-10-28 23:37:07 +02:00
Christoph Oelckers
a358cf8516
- SW: eliminated all SPRITE_TAG# macros.
2021-10-12 22:21:08 +02:00
Christoph Oelckers
afce1aba88
- SW: eliminated the only use of the SPRITE_TAG1 macro.
2021-10-11 23:02:54 +02:00
Christoph Oelckers
7eac8b71d5
- removed unused constants
2021-10-10 11:47:19 +02:00
Christoph Oelckers
2af688dd62
- replaced RANDOM_RANGE macro with direct calls to RandomRange
2021-10-10 11:47:19 +02:00
Mitchell Richters
d9a7465c08
- SW: Remove gi->FreeGameData()
from game as its inside code wasn't freeing game data but level data already freed in gi->FreeLevelData()
.
...
* This was causing `GameMain()` to try to call `TerminateLevel()` after tile data had been freed, causing a hard stop.
* Fixes #464 .
2021-07-20 20:11:29 +10:00