Cleanup code, speed up radar sweeps

This commit is contained in:
2024-12-18 15:57:37 +00:00
parent 86d884ba01
commit 9bc9dd2a08
5 changed files with 10 additions and 21 deletions
+5 -2
View File
@@ -7,6 +7,7 @@ module Dodge.HeldUse (
mcUseHeld,
) where
import Dodge.RadarSweep
import Color
import Control.Monad
import Data.Maybe
@@ -19,7 +20,6 @@ import Dodge.Data.World
import Dodge.Gas
import Dodge.Inventory.Lock
import Dodge.Item.HeldOffset
import Dodge.Item.Weapon.Radar
import Dodge.Item.Weapon.Shatter
import Dodge.Item.Weapon.TriggerType
import Dodge.Projectile.Create
@@ -251,7 +251,10 @@ useLoadedAmmo itmtree cr (cme, w) (mzid, Just (mz, x, magtree)) = (,) (cme & cme
itemDetectorEffect :: Item -> Creature -> World -> World
itemDetectorEffect itm cr w = fromMaybe w $ do
DETECTOR dt <- itm ^? itType . ibtHeld
return $ detectorEffect dt itm cr w
return $ case dt of
ITEMDETECTOR -> aRadarPulse ObItem cr w
CREATUREDETECTOR -> aRadarPulse ObCreature cr w
WALLDETECTOR -> aRadarPulse ObWall cr w
walkNozzle :: Int -> Muzzle -> Item -> Creature -> World -> World
walkNozzle mzid mz itm cr w = fromMaybe w $ do