Refactor shells

This commit is contained in:
2024-12-27 23:04:59 +00:00
parent 9168acf12e
commit 233fe5995c
8 changed files with 44 additions and 55 deletions
+11 -1
View File
@@ -299,7 +299,7 @@ useLoadedAmmo itmtree cr (cme, w) (mzid, Just (mz, x, magtree)) = (,) (cme & cme
MuzzleLaser -> shootLaser itmtree cr mz w
MuzzleTesla -> shootTeslaArc itm cr mz w
MuzzleTractor -> shootTractorBeam cr w
MuzzleRLauncher -> createProjectile Rocket magtree mz itmtree cr w
MuzzleRLauncher -> createProjectileR magtree mz itmtree cr w
MuzzleGLauncher -> createProjectile Grenade magtree mz itmtree cr w
MuzzleNozzle{} -> useGasParams mid mz itm cr $ walkNozzle mzid mz itm cr w
MuzzleShatter -> shootShatter itm cr w
@@ -606,6 +606,16 @@ determineProjectileTracking magtree itmtree = fromMaybe NoHoming $
targetingtree <- lookup WeaponTargetingLink (itmtree ^. ldtRight)
return $ HomeUsingTargeting (targetingtree ^. ldtValue . itID)
createProjectileR ::
LabelDoubleTree ComposeLinkType Item ->
Muzzle ->
LabelDoubleTree ComposeLinkType Item ->
Creature ->
World ->
World
createProjectileR magtree muz itmtree cr =
createProjectile (Rocket $ determineProjectileTracking magtree itmtree) magtree muz itmtree cr
createProjectile ::
ProjectileType ->
LabelDoubleTree ComposeLinkType Item ->