Commit graph

710 commits

Author SHA1 Message Date
Christoph Oelckers
d94ed87e43 - WeaponAutoAim 2021-11-29 00:55:59 +01:00
Christoph Oelckers
ee8eb238d2 - TestMissileSetPos 2021-11-29 00:55:59 +01:00
Christoph Oelckers
7f031f06ef - HelpMissileLateral.
# Conflicts:
#	source/games/sw/src/weapon.cpp
2021-11-29 00:55:59 +01:00
Christoph Oelckers
514baa9a8f - InitHeartAttack plus some cleanup. 2021-11-29 00:55:59 +01:00
Christoph Oelckers
aec3b40e7b - ContinueHitscan 2021-11-29 00:55:59 +01:00
Christoph Oelckers
105ef08384 - Init(Bunny)Rocket 2021-11-29 00:55:58 +01:00
Christoph Oelckers
0690a5c035 - InitShotgun + InitLaser
InitLaser is unused but fully functional, so let's keep it for modding.
2021-11-29 00:55:58 +01:00
Christoph Oelckers
3b49b053d7 - Init(Zilla)Rail 2021-11-29 00:55:58 +01:00
Christoph Oelckers
35d6f7efd5 - Init(Enemy)Nuke 2021-11-29 00:55:58 +01:00
Christoph Oelckers
7436c17469 - InitMicro 2021-11-29 00:55:58 +01:00
Christoph Oelckers
ecc2da58d5 - 4 more damage functions. 2021-11-29 00:55:57 +01:00
Christoph Oelckers
290482ffb1 - several damage functions. 2021-11-29 00:55:57 +01:00
Christoph Oelckers
a662f8b076 - InitSerpSpell + SpawnDemonFist 2021-11-29 00:55:57 +01:00
Christoph Oelckers
3cd05147e5 - InitEnemyRocket + InitSerpMonstSpell 2021-11-29 00:55:57 +01:00
Christoph Oelckers
63870b6077 - InitEnemyRail, InitZillaRocket, InitEnemyStar 2021-11-29 00:55:57 +01:00
Christoph Oelckers
289856a1fc - InitEnemyCrossbow, InitSkelSpell, InitCoolgFire 2021-11-29 00:55:56 +01:00
Christoph Oelckers
f66dcd8d53 - fixed deletion of FAF_COPY actors.
This called the wrong function.
2021-11-29 00:55:56 +01:00
Christoph Oelckers
845cf124e1 - drips and eels. 2021-11-29 00:55:56 +01:00
Christoph Oelckers
84e99a377d - Init*Trap. 2021-11-29 00:55:56 +01:00
Christoph Oelckers
6e922b2851 - InitTracerUzi 2021-11-29 00:55:56 +01:00
Christoph Oelckers
e8791001e4 - InitTracerTurret + InitTracerAutoTurret 2021-11-29 00:55:55 +01:00
Christoph Oelckers
70adfe43bf - BulletHitSprite 2021-11-29 00:55:55 +01:00
Christoph Oelckers
ff60bf0430 - MissileWaterAdjust
# Conflicts:
#	source/games/sw/src/weapon.cpp
2021-11-29 00:55:55 +01:00
Christoph Oelckers
81131f7a71 - HitscanSpriteAdjust 2021-11-29 00:55:55 +01:00
Christoph Oelckers
9c0a5312eb - InitUzi 2021-11-29 00:55:55 +01:00
Christoph Oelckers
c053b46a6d - removed the disabled and mostly non-functional code for the EMP gun (secondary fire of railgun) 2021-11-29 00:55:54 +01:00
Christoph Oelckers
5900ac7db4 - InitTankShell + InitEMP. 2021-11-29 00:55:54 +01:00
Christoph Oelckers
a25bdf2354 - InitTurretMicro 2021-11-29 00:55:54 +01:00
Christoph Oelckers
4141b5d609 - InitTurretRocket + InitTurretFireball 2021-11-29 00:55:54 +01:00
Christoph Oelckers
6e7892c326 - InitTurretRail + InitTurretLaser 2021-11-29 00:55:54 +01:00
Christoph Oelckers
9eb1f9963a - InitSobjMachineGun 2021-11-29 00:55:53 +01:00
Christoph Oelckers
60d5490654 - Init SobjGun 2021-11-29 00:55:53 +01:00
Christoph Oelckers
2c0a597f06 - WeaponAutoAimHitscan
# Conflicts:
#	source/games/sw/src/weapon.cpp
2021-11-29 00:55:53 +01:00
Christoph Oelckers
9d0056f8c7 - Spawn*Sparks functions. 2021-11-29 00:55:53 +01:00
Christoph Oelckers
ddd682aee6 - InitTurretMgun 2021-11-29 00:55:53 +01:00
Christoph Oelckers
da1e97469e - FAFhitscan migration to HITINFO. 2021-11-29 00:55:52 +01:00
Christoph Oelckers
63f9330f53 - InitEnemyUzi 2021-11-29 00:55:52 +01:00
Christoph Oelckers
614757cda4 - InitGrenade 2021-11-29 00:55:52 +01:00
Christoph Oelckers
2515a663cd - InitSpriteGrenade 2021-11-29 00:55:52 +01:00
Christoph Oelckers
7d352d2387 - InitMine 2021-11-29 00:55:52 +01:00
Christoph Oelckers
1491b9ef95 - InitEnemyMine 2021-11-29 00:55:51 +01:00
Christoph Oelckers
f9ea4874ed - InitFireball 2021-11-29 00:55:51 +01:00
Christoph Oelckers
a42e44d662 - InitEnemyFireball 2021-11-29 00:55:51 +01:00
Christoph Oelckers
1b02c9e533 - WarpToUnderwater + WarpToSurface 2021-11-29 00:55:51 +01:00
Christoph Oelckers
5264c6540c - SpriteWarpToUnderwater + SpriteWarpToSurface 2021-11-29 00:55:51 +01:00
Christoph Oelckers
130028fa82 - SpawnSplash(XY)
# Conflicts:
#	source/games/sw/src/weapon.cpp
2021-11-29 00:55:50 +01:00
Christoph Oelckers
7411e7e9ba - MissileHitDiveArea 2021-11-29 00:55:50 +01:00
Christoph Oelckers
f438773af9 - internal cleanup of some spawn functions. 2021-11-29 00:55:50 +01:00
Christoph Oelckers
96ebfe808c - turned some macros into functions. 2021-11-29 00:55:50 +01:00
Christoph Oelckers
64e812bd33 - TestDontStick. 2021-11-29 00:55:50 +01:00
Christoph Oelckers
dfb5d07459 - QueueHole 2021-11-29 00:55:49 +01:00
Christoph Oelckers
83d0930a2e - QueueFootPrint + QueuefloorBlood. 2021-11-29 00:55:49 +01:00
Christoph Oelckers
01d2967378 - QueueWallBlood. 2021-11-29 00:55:49 +01:00
Christoph Oelckers
deddd7d514 - it is not necessary to clear the owner of a freshly spawned actor.
They are always spawned owner-less.
2021-11-29 00:55:49 +01:00
Christoph Oelckers
9cefc351a1 - bloody stuff. 2021-11-29 00:55:49 +01:00
Christoph Oelckers
2455c197bf - DoShrapVelocity + SlopeBounce. 2021-11-29 00:55:48 +01:00
Christoph Oelckers
0d45e50ea6 - QueueGeneric + ShrapKillSprite. 2021-11-29 00:55:48 +01:00
Christoph Oelckers
95d3095f8d - DoItemFly 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
a85a1e497f - ActorCoughItem. 2021-11-29 00:55:47 +01:00
Christoph Oelckers
cd8e8e4f67 - removed index based version of SpawnUser. 2021-11-29 00:55:47 +01:00
Christoph Oelckers
3a3c6a4395 - IconDefault 2021-11-29 00:55:47 +01:00
Christoph Oelckers
947f5f1d78 - ItemSpotClear. 2021-11-29 00:55:47 +01:00
Christoph Oelckers
374d0524d2 - first pass over SpawnItemsMatch.
This was purely search & replace.
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
e41f49d46d KillSprite internals. 2021-11-29 00:55:46 +01:00
Christoph Oelckers
b705ff3b97 - WallBounce 2021-11-29 00:55:46 +01:00
Christoph Oelckers
300e6df6c3 - MissileHitDiveArea calls. 2021-11-29 00:55:46 +01:00
Christoph Oelckers
0b3b30170c - DoActorZRange parameters. 2021-11-29 00:55:45 +01:00
Christoph Oelckers
7111b2470c - SW: use BFSSearch in TraverseBreakableWalls 2021-11-29 00:55:45 +01:00
Christoph Oelckers
3e558c2295 - use BFSSearch for PreMapCombineFloors. 2021-11-29 00:55:44 +01:00
Christoph Oelckers
1b3b8ab7cc - use wallsofsector in PreMapCombineFloors 2021-11-29 00:55:44 +01:00
Christoph Oelckers
269f2580b9 - obsolete prototypes in Exhumed 2021-11-29 00:55:43 +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
aadbca8e5d - zombie.cpp. 2021-11-29 00:55:38 +01:00
Christoph Oelckers
95c92153ad - zilla.cpp 2021-11-29 00:55:38 +01:00
Christoph Oelckers
e98e1a6fea - warp.cpp 2021-11-29 00:55:38 +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
36067baedd - owner cleanup. 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
e2e697e9bb - do better owner checks in weapon code.
Due to poor data clearing logic there is a chance that the owner of a sprite is 0 if invalid, but this code never properly checked all conditions before accessing the owner's user's ID.
2021-11-29 00:55:37 +01:00
Christoph Oelckers
cb31127df5 - removed Set3DSoundOwner entirely. 2021-11-29 00:55:36 +01:00
Christoph Oelckers
0df721f331 - sumo.cpp + associated code elsewhere. 2021-11-29 00:55:36 +01:00
Christoph Oelckers
e32a1af7b2 - lots of PlaySound calls migrated to actors. 2021-11-29 00:55:36 +01:00
Christoph Oelckers
e6c625f6e8 - second part of slidor.cpp. 2021-11-29 00:55:36 +01:00
Christoph Oelckers
2397e4c2a5 - one third of slidor.cpp 2021-11-29 00:55:35 +01:00
Christoph Oelckers
dfc557e0ec - StarQueue 2021-11-29 00:55:35 +01:00
Christoph Oelckers
bd161f155c - skull.cpp 2021-11-29 00:55:35 +01:00
Christoph Oelckers
a728555ec7 - skel.cpp 2021-11-29 00:55:35 +01:00
Christoph Oelckers
07f61e061e - serp.cpp 2021-11-29 00:55:35 +01:00
Christoph Oelckers
7704042df4 - the rest of sector.cpp. 2021-11-29 00:55:35 +01:00
Christoph Oelckers
98c1684c13 - OperateSprite 2021-11-29 00:55:34 +01:00
Christoph Oelckers
1e00a4ff18 - second batch of sector.cpp 2021-11-29 00:55:34 +01:00
Christoph Oelckers
2b8ea7ae1b - first half of sector.cpp.
Mostly iterators replaced.
2021-11-29 00:55:34 +01:00
Christoph Oelckers
edf8ba0aa1 - cleanup pass on sector.cpp.
No functional changes here.
2021-11-29 00:55:34 +01:00
Christoph Oelckers
cfebfbca8a - rest of rotator.cpp. 2021-11-29 00:55:34 +01:00
Christoph Oelckers
1388794032 - first half of rotator.cpp. 2021-11-29 00:55:34 +01:00
Christoph Oelckers
0a18edfdad - iterators in rooms.cpp. 2021-11-29 00:55:33 +01:00
Christoph Oelckers
6b92ee1ee6 - InitPlayerSprite 2021-11-29 00:55:33 +01:00
Christoph Oelckers
eb3131df97 - cleanup
mostly redundant comments.
2021-11-29 00:55:33 +01:00
Christoph Oelckers
da683ddf7a - ripper2.cpp 2021-11-29 00:55:33 +01:00
Christoph Oelckers
3ed3029345 -some overlooked User’s. 2021-11-29 00:55:32 +01:00
Christoph Oelckers
82b4385ede - ripper.cpp 2021-11-29 00:55:32 +01:00
Christoph Oelckers
4661f6d7c5 - iterators in quake.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
04657ab559 - QueueWallBlood callers. 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
78e0719eca - SW: removed unused SpawnUnderSplash function. 2021-11-29 00:55:30 +01:00
Christoph Oelckers
01abe7b2ac - addressed most unused/uninitialized variable warnings from MSVC. 2021-11-29 00:55:30 +01:00
Christoph Oelckers
c6bd5c04c7 - fixed most warnings GCC pointed out in game code. 2021-11-29 00:55:29 +01:00
Christoph Oelckers
910a51b290 - proper actor handling in all of SOP interpolation 2021-11-29 00:55:28 +01:00
Christoph Oelckers
e4e164a07f - use a dedicated type for SOP angle interpolation
This allows reusing the already existing pointer.
2021-11-29 00:55:28 +01:00
Christoph Oelckers
e75258f57b - SOP spriteofang
Still needs work
2021-11-29 00:55:28 +01:00
Christoph Oelckers
5078750569 - sprite indices in mirrors converted to actor pointers 2021-11-29 00:55:28 +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
1011f10c0b - SpriteP fully replaced in player.cpp 2021-11-29 00:55:27 +01:00
Christoph Oelckers
a583a9cb14 - some smaller changes in various places. 2021-11-29 00:55:27 +01:00
Christoph Oelckers
bc584f6ff6 - the rest pf player.cpp 2021-11-29 00:55:27 +01:00
Christoph Oelckers
ba4b5bbbcb - PLAYER::Killer 2021-11-29 00:55:27 +01:00
Christoph Oelckers
f2058933ed - DoPlayerBeginDie 2021-11-29 00:55:26 +01:00
Christoph Oelckers
c40fc488e5 - SpawnBubble. 2021-11-29 00:55:26 +01:00
Christoph Oelckers
d3302d6cf9 - minor changes in multiple functions in player.cpp 2021-11-29 00:55:26 +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
b6c741892e - player movement functions. 2021-11-29 00:55:25 +01:00
Christoph Oelckers
89ef1c0961 - DoPlayerZRange + DoPlayerSlide. 2021-11-29 00:55:25 +01:00
Christoph Oelckers
48b1ce0c62 - savegame compatibility. 2021-11-29 00:55:25 +01:00
Christoph Oelckers
02671dbe2f - PlayerUnderSprite. 2021-11-29 00:55:25 +01:00
Christoph Oelckers
dd684f36a4 - a few player functions. 2021-11-29 00:55:25 +01:00
Christoph Oelckers
448e57c86c - PickEnemyTarget
prioritized to get rid of some recent mess.
2021-11-29 00:55:24 +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
f4d813b0c7 - reformatting function headers + deletion of unused code in player.cpp. 2021-11-29 00:55:24 +01:00
Christoph Oelckers
4ab13dcbea - player.cpp global search & replace. 2021-11-29 00:55:24 +01:00
Christoph Oelckers
8ac0eed08a - panel.cpp 2021-11-29 00:55:23 +01:00
Christoph Oelckers
b4d298874a - most of ninja.cpp, except the player stuff. 2021-11-29 00:55:23 +01:00
Christoph Oelckers
5eca574bba - got rid of some rarely used macros. 2021-11-29 00:55:23 +01:00
Christoph Oelckers
d10919704a - miscactr.cpp
Mostly done with search & replace.
2021-11-29 00:55:23 +01:00
Christoph Oelckers
ac8df2f9f6 - light.cpp 2021-11-29 00:55:23 +01:00
Christoph Oelckers
65da74538c - ActorFollowTrack. 2021-11-29 00:55:23 +01:00
Christoph Oelckers
69c97a88d3 - lava.cpp 2021-11-29 00:55:22 +01:00
Christoph Oelckers
e7dcd279af - PickJumpMaxSpeed. 2021-11-29 00:55:22 +01:00
Christoph Oelckers
f09cf97822 - ScaleSpriteVector 2021-11-29 00:55:22 +01:00
Christoph Oelckers
e94785e571 - cleanup. 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
e9fc342c93 - flag stuff. 2021-11-29 00:55:21 +01:00
Christoph Oelckers
3e91ac6417 - InitBloodSpray 2021-11-29 00:55:21 +01:00
Christoph Oelckers
5efb63b780 - InitCaltrops + InitPhosphorus 2021-11-29 00:55:21 +01:00
Christoph Oelckers
0b77a73976 - InitFlashBomb + PlayerInitCaltrops 2021-11-29 00:55:20 +01:00
Christoph Oelckers
3d04e332fc - InitChemBomb + PlayerInitFlashBomb 2021-11-29 00:55:20 +01:00
Christoph Oelckers
0e1e29d768 - ChemBomb stuff. 2021-11-29 00:55:20 +01:00
Christoph Oelckers
93fde48abb - SpawnRadiationCloud 2021-11-29 00:55:20 +01:00
Christoph Oelckers
5aaa0ce971 - collision stuff in jweapon.cpp migrated to Collision struct. 2021-11-29 00:55:20 +01:00
Christoph Oelckers
9872f7e5d1 - DoCaltrops 2021-11-29 00:55:20 +01:00
Christoph Oelckers
3e45549fe7 - DoChemBomb 2021-11-29 00:55:19 +01:00
Christoph Oelckers
f21cb1f3f6 - DoPhosphorus 2021-11-29 00:55:19 +01:00
Christoph Oelckers
3717a38779 - DoBloodSpray 2021-11-29 00:55:19 +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
f401d4bb44 - SW: don't spawn sprites to play wall sounds.
This function isn't really necessary because we got a sound playing variant that takes a world coordinate, which is far more practical here. Worse, this was leaking sprites.
2021-11-29 00:55:19 +01:00
Christoph Oelckers
a7cde2fd96 - SpriteP in inv.cpp. 2021-11-29 00:55:18 +01:00
Christoph Oelckers
babdae682f - input.cpp cleanup. 2021-11-29 00:55:18 +01:00
Christoph Oelckers
928b5d2ee8 - SW: un-flag mirrors that got smashed.
The new renderer cannot check tilenums.
2021-11-29 00:55:18 +01:00
Christoph Oelckers
141428f583 - goro.cpp + hornet.cpp. 2021-11-29 00:55:18 +01:00
Christoph Oelckers
0437d92f3e - girlninj.cpp 2021-11-29 00:55:18 +01:00
Christoph Oelckers
711f8123a1 - game.cpp. 2021-11-29 00:55:18 +01:00
Christoph Oelckers
0f60e3b4ec - eel.cpp. 2021-11-29 00:55:17 +01:00
Christoph Oelckers
e192f4d40f - rest of draw.cpp.
This file is very messy...
2021-11-29 00:55:17 +01:00
Christoph Oelckers
919a08448e - first half pf draw.cpp 2021-11-29 00:55:17 +01:00
Christoph Oelckers
32fa3c52ea - copysect.cpp iterators. 2021-11-29 00:55:17 +01:00
Christoph Oelckers
f41d68b376 - coolie.cpp 2021-11-29 00:55:17 +01:00
Christoph Oelckers
ef23f69072 - EnemyDefaults. 2021-11-29 00:55:16 +01:00
Christoph Oelckers
7b778f692b - leftover SpriteNum's in coolg.cpp. 2021-11-29 00:55:16 +01:00
Christoph Oelckers
cde4b1f19e - cache, cheats, colormap and enums. 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
a69a45523f - HitBreakSprite 2021-11-29 00:55:15 +01:00
Christoph Oelckers
aa13619087 - SpawnBreakFlames 2021-11-29 00:55:15 +01:00
Christoph Oelckers
8daa825aa1 - SpriteQueueDelete + DeleteNoSoundOwner. 2021-11-29 00:55:15 +01:00
Christoph Oelckers
6628ec9459 - DriveCrush 2021-11-29 00:55:14 +01:00
Christoph Oelckers
68e95eb292 - most of break.cpp. 2021-11-29 00:55:14 +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
5bf77ddb2b - make breakflags an enum. 2021-11-29 00:55:13 +01:00
Christoph Oelckers
de12433809 - USER::Attach and SetAttach. 2021-11-29 00:55:13 +01:00
Christoph Oelckers
bd47d61615 - replaced some changespritesect with ChangeActorSect. 2021-11-29 00:55:13 +01:00
Christoph Oelckers
a48b45143e - ActorFindTrack 2021-11-29 00:55:13 +01:00
Christoph Oelckers
b3558d8925 - eliminated SetEnemy(In)active.
Both were only used once, so they are now inlined.
2021-11-29 00:55:13 +01:00
Christoph Oelckers
6c867e23ee - PlayerTakeDamage 2021-11-29 00:55:12 +01:00
Christoph Oelckers
98fe147d7a - PlaySpriteSound. 2021-11-29 00:55:12 +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
af81a9e175 - DropAhead, DoActorActionDecide and ai.cpp cleanup. 2021-11-29 00:55:11 +01:00
Christoph Oelckers
c88524884c - made USER::flame an actor pointer. 2021-11-29 00:55:11 +01:00
Christoph Oelckers
6db11ff2d5 - removed DebugMoveHit. 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
64d77945f9 - DoFindGroundPoint
This removes the last SpriteNum occurence in actpr.cpp
2021-11-29 00:55:10 +01:00
Christoph Oelckers
06b4e8cf08 - cleanup. 2021-11-29 00:55:10 +01:00
Christoph Oelckers
d60d3cd307 - second large batch of NewStateGroup calls. 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
fdcff8002d - move_actor 2021-11-29 00:55:09 +01:00
Christoph Oelckers
5062dc6aa8 - a second large batch of KillSprite calls. 2021-11-29 00:55:09 +01:00
Christoph Oelckers
3e1e5fb343 - a large batch of KillSprite calls. 2021-11-29 00:55:08 +01:00
Christoph Oelckers
740c5e1e56 - DoSuicide 2021-11-29 00:55:08 +01:00
Christoph Oelckers
400f822df3 - SpawnShrap callers
Function itself still needs work.
2021-11-29 00:55:08 +01:00
Christoph Oelckers
1db4be60f0 - UpdateSinglePlayKills 2021-11-29 00:55:08 +01:00
Christoph Oelckers
49d43727ba - SpawnBlood. 2021-11-29 00:55:07 +01:00
Christoph Oelckers
8d5243bd64 - most calls of SetState 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
ae874275ec - iterator in DoActorPickClosePlayer 2021-11-29 00:55:06 +01:00
Christoph Oelckers
c0a72c7243 - FindNewAngle and move_scan 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
b8b90d2825 - track functions in ai.cpp plus some cleanup. 2021-11-29 00:55:06 +01:00
Christoph Oelckers
b0a59bf665 - CloseRangeDist + DoSectorOperate 2021-11-29 00:55:05 +01:00
Christoph Oelckers
4d12bbbb56 - GetPlayerSpriteNum 2021-11-29 00:55:05 +01:00
Christoph Oelckers
602048b41d - more simple tgt_sp replacements. 2021-11-29 00:55:05 +01:00
Christoph Oelckers
76f0724d24 - global search & replace for all occurences of tgt_sp where it is only used to access a field in the sprite. 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
d819d5c862 - DoActorPickClosePlayer 2021-11-29 00:55:04 +01:00
Christoph Oelckers
125159772d - CanHitPlayer 2021-11-29 00:55:04 +01:00
Christoph Oelckers
ceb3ac2e5b - CanSeePlayer 2021-11-29 00:55:04 +01:00
Christoph Oelckers
a2dee7681a - DoActorNoise 2021-11-29 00:55:04 +01:00
Christoph Oelckers
3dbd002319 - DoActorSetSpeed + ActorFlaming. 2021-11-29 00:55:03 +01:00
Christoph Oelckers
ec9ab56ece - use collision struct in ActorMoveHitReact 2021-11-29 00:55:03 +01:00
Christoph Oelckers
2a897c0582 - SW hit code abstraction. 2021-11-29 00:55:03 +01:00
Christoph Oelckers
077c4f19a7 - ActorMoveHitReact + DebugMoveHit 2021-11-29 00:55:03 +01:00
Christoph Oelckers
c7f6b7a8c2 - DoFall + DoBeginFall. 2021-11-29 00:55:03 +01:00
Christoph Oelckers
dc6ea40911 - DoFall 2021-11-29 00:55:02 +01:00
Christoph Oelckers
2a56479e3e - DoBeginJump 2021-11-29 00:55:02 +01:00
Christoph Oelckers
9375a64ccc - cleanup only. 2021-11-29 00:55:02 +01:00
Christoph Oelckers
9e438b4042 - DoActorBeginSlide 2021-11-29 00:55:02 +01:00
Christoph Oelckers
ad0ed0c377 - KeepActorOnFloor 2021-11-29 00:55:02 +01:00
Christoph Oelckers
2ba98dc03c - minor cleanup, DoDebrisCurrent, move_debris, DoGenerateSewerDebris 2021-11-29 00:55:01 +01:00
Christoph Oelckers
ee8f6460c1 - DoActorDie 2021-11-29 00:55:01 +01:00
Mitch Richters
5d07c768b2 - SW: Tidy up use of cl_nomeleeblur use within panel code. 2021-11-29 00:55:01 +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
dc1d97b6bd - SW: fix bad return value in QueueWallBlood.
Had been known for some time, it just wasn't unclear if this is bad.
Now I was able to confirm that this is indeed bad and can cause crashes.
2021-11-13 19:30:16 +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
8f19dc12d8 - SW: code/data pointer saving cleanup.
* a large number of code pointer records were removed because none of these functions ever gets assigned to a pointer
* instead of looking up entries by index, do it by name. This is far less fragile and will survive deeper refactoring. The old storage by table index will break as soon as a single entry gets removed.

Since the old savegames got broken due to this problem recently it was a good time to change the setup.
2021-11-11 23:28:28 +01:00
Christoph Oelckers
2164d244d2 - SW: removed 3 unused global arrays. 2021-11-11 21:58:14 +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
b6579809ad - SW: eliminated all remaining MAXSECTORS references, except static array declarations. 2021-11-11 21:58:14 +01:00
Christoph Oelckers
75e2d801a7 - SW: only check valid sectors for SecUser entries. 2021-11-11 21:58:14 +01:00
Christoph Oelckers
6bd239c5b7 - SW: use the global sector list in PreMapCombineFloors 2021-11-11 21:58:14 +01:00
Christoph Oelckers
a79f7a3784 - SW: use a dynamic array to track already visited sectors in TraverseBreakableWalls. 2021-11-11 21:57:55 +01:00
Christoph Oelckers
f2e344a235 - removed magic flags added to sector indices in Polymost.
These are better done as separate function arguments.
2021-11-11 21:28:53 +01:00
Mitch Richters
3c4afaa6ee - InputScale(): Add enabled-by-default scaler to returned value from function to correct drift that occurs as the frame-rate increases, taking into account different scaling ratios needed for differing ticrates. 2021-11-10 20:27:19 +11:00
Christoph Oelckers
a35900362e - only use un-deprecated variants of updatesector(z) in SW. 2021-11-09 00:09:48 +01:00
Christoph Oelckers
94b2b0af31 - widen sector index in engineLoadBoard to 32 bit 2021-11-09 00:07:00 +01:00
Christoph Oelckers
762ebafc2a - made clipmoveboxtracenum a function argument of clipmove
There’e zero need for hackery here.
2021-11-08 23:22:48 +01:00
Christoph Oelckers
2d91786516 - changed all sector variables being passed to pushmove to full ints 2021-11-08 23:18:40 +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
Christoph Oelckers
d20aa47adf - made sector parameter of updatesectorz an int and deprecated the short version. 2021-11-06 19:27:51 +01:00
Christoph Oelckers
83fe41e71e - made updatesector receive a 32 bit int pointer and deprecated the 16 bit variant. 2021-11-06 15:53:16 +01:00
Christoph Oelckers
389f760d45 - address C++20 deprecation warnings with enums in floating point arithmetic. 2021-11-02 23:32:31 +01:00
Mitch Richters
59850fa768 - SW: When adjusting horizon in DoPlayerDeathHoriz(), just use integer horizon values and not Q16.16. 2021-11-02 10:29:31 +11:00
Christoph Oelckers
86166f5e67 Revert "- xs_Float.h: Make all inlines return an unsigned value, and change previous unsigned inlines to signed."
Revert "- `xs_Float.h`: Add `getint()` getter to `_xs_doubleints` struct."
Revert "- SW: When adjusting horizon in `DoPlayerDeathHoriz()`, just use integer horizon values and not Q16.16."
Revert "- Duke (RR): Clean up some unnecessary `FixedToFloat()` usage with the `fixedhoriz` `asbuildf()` method."
Revert "- `binaryangle.h`: Use `constexpr` on inline functions where it was previously not possible to do so."
Revert "- `m_fixed.h`: Use `constexpr` on inline functions where it was previously not possible to do so."
Revert "- `xs_Float.h`: Convert header to `constexpr`."

This does nor work as it violates the constexpr rules for unions. The code will error out on compilation for accessing an inactive member of a union.
2021-11-01 20:25:38 +01:00
Mitch Richters
3e25637385 - SW: When adjusting horizon in DoPlayerDeathHoriz(), just use integer horizon values and not Q16.16. 2021-11-01 23:37:32 +11:00
Mitch Richters
eb8b075727 - binaryangle.h: Change binangle bitshift operators to operate on signed value to properly handle angles > 1024. 2021-11-01 22:13:39 +11:00
Mitch Richters
6ca6d5639b - SW: Fix horizon of camera screens originating from changes in 09a05f354c. 2021-10-31 11:06:13 +11:00
Mitch Richters
9495b9e6d0 - SW: Interpolate the player's weapon recoil.
* Reported as missing by @nashmuhandes.
2021-10-31 08:53:26 +11:00
Christoph Oelckers
e8f9afb174 - DoScaleSprite. 2021-10-30 17:30:03 +02:00
Christoph Oelckers
e84d61e80a - redid the iterators in _polymost.cpp. 2021-10-30 17:30:03 +02: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
Mitch Richters
add3481e40 - SW: Replace use of pushmove_old() inline wrapper with pushmove() and remove inline wrappers. 2021-10-30 17:30:02 +02:00
Mitch Richters
adcdbdc931 - SW: Replace use of clipmove_old() inline wrapper with clipmove() and remove inline wrappers. 2021-10-30 17:30:02 +02:00
Christoph Oelckers
57b638f26f - use std::clamp instead of our homegrown version. 2021-10-30 10:35:00 +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
8bad95c7c6 - reinstated deleted saveable_code entries with dummy pointers.
This is to preserve savegame compatibility for now.
Later the code pointer saving needs a thorough cleanup.
2021-10-29 09:16:07 +02:00
Christoph Oelckers
e241e7dc52 - SW: changed Animator interface to use USERp parameters. 2021-10-28 23:37:07 +02:00
Christoph Oelckers
62d0d3712e - use a sprite flag to mark mapped sprites.
This avoids another global array which needs to be addressed by sprite index.
2021-10-14 15:09:43 +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
Christoph Oelckers
cc912fbf93 - removed pointless BOUND_4PIX macro 2021-10-10 11:47:19 +02:00
Christoph Oelckers
3220a6d786 - some SW cleanup 2021-10-10 11:47:19 +02:00
Christoph Oelckers
6f8a5ee2d2 - Exhumed: replaced a large amount of sprite array accesses with pointers.
No logic changes, this is mainly search & replace.
2021-10-10 11:47:18 +02:00
Christoph Oelckers
948f194064 - fixed warnings in Duke. 2021-10-08 19:21:29 +02:00
Christoph Oelckers
0e82d75325 - SW: fixed recursive saving of panel sprites 2021-09-12 18:17:50 +02:00
Christoph Oelckers
bad57f6a5f - clear pspAsArray at the beginning of a save/load operation, not at the end.
If done at the end it may leave behind some stale data if saving or loading fails for some reason.
2021-09-12 18:17:50 +02:00
Christoph Oelckers
e13426ec6e - SW: avoid crashing when unwinding from a savegame loading error.
The linked list may be incomplete in this case.
Also kept the macro unmangling done to debug this code.
2021-09-12 18:17:50 +02:00
Christoph Oelckers
90b7524706 - SW: fixed episode indexing resulting in bad display on the automap. 2021-08-24 09:57:36 +02:00
Christoph Oelckers
5aa27bad3b - flag SW's cutscenes as 'boss death only'. 2021-08-13 22:25:13 +02:00