Continue reload removal
This commit is contained in:
@@ -17,7 +17,6 @@ import Dodge.Hotkey
|
||||
import Dodge.Inventory
|
||||
import Dodge.Item.Location
|
||||
import Dodge.Luse
|
||||
import Dodge.Reloading
|
||||
import qualified IntMapHelp as IM
|
||||
|
||||
useItemRightClick :: Creature -> World -> World
|
||||
@@ -115,10 +114,10 @@ useItemLeftClick cr w = fromMaybe w $ do
|
||||
--AmmoMagUse{} -> return $ hammerTest (cWorld . lWorld . creatures . ix (_crID cr) %~ crReloadToggle)
|
||||
_ -> Nothing
|
||||
where
|
||||
hammerTest f = case _crHammerPosition cr of
|
||||
HammerUp -> f w & setuhamdown
|
||||
_ -> w & setuhamdown
|
||||
setuhamdown = cWorld . lWorld . creatures . ix (_crID cr) . crHammerPosition .~ HammerDown
|
||||
--hammerTest f = case _crHammerPosition cr of
|
||||
-- HammerUp -> f w & setuhamdown
|
||||
-- _ -> w & setuhamdown
|
||||
--setuhamdown = cWorld . lWorld . creatures . ix (_crID cr) . crHammerPosition .~ HammerDown
|
||||
|
||||
useItemHotkey :: Int -> Int -> World -> World
|
||||
useItemHotkey crid invid w = fromMaybe w $ do
|
||||
|
||||
@@ -4,7 +4,6 @@ module Dodge.Creature.ReaderUpdate (
|
||||
targetYouWhenCognizant,
|
||||
overrideMeleeCloseTarget,
|
||||
watchUpdateStrat,
|
||||
reloadOverride,
|
||||
overrideInternal,
|
||||
searchIfDamaged,
|
||||
goToTarget,
|
||||
@@ -24,7 +23,7 @@ import LensHelp
|
||||
import Data.Bifunctor
|
||||
import Data.Maybe
|
||||
import Dodge.Base
|
||||
import Dodge.Creature.Volition
|
||||
--import Dodge.Creature.Volition
|
||||
import Dodge.Data.CreatureEffect
|
||||
import Dodge.Data.World
|
||||
import Dodge.Zoning.Creature
|
||||
@@ -170,22 +169,6 @@ doStrategyActions cr = case cr ^? crActionPlan . apStrategy of
|
||||
& crActionPlan . apStrategy .~ strat
|
||||
_ -> cr
|
||||
|
||||
reloadOverride :: Creature -> Creature
|
||||
reloadOverride cr = fromMaybe cr $ do
|
||||
guard $ cr ^. crStance . posture == Aiming
|
||||
itRef <- cr ^? crManipulation . manObject . inInventory . ispItem
|
||||
guard $ cr ^? crInv . ix (itRef + 1) . itUse . amagLoadStatus . iaLoaded == Just 0
|
||||
return $ cr & crActionPlan . apStrategy .~ StrategyActions Reload reloadActions
|
||||
where
|
||||
reloadActions =
|
||||
[ holsterWeapon
|
||||
, 1
|
||||
`WaitThen` DoActionWhileInterrupt
|
||||
NoAction
|
||||
(WdCrBlfromCrBl CrIsReloading)
|
||||
(DoImpulses [ChangeStrategy WatchAndWait])
|
||||
]
|
||||
|
||||
overrideInternal :: (Creature -> Bool) -> (Creature -> Creature) -> Creature -> Creature
|
||||
overrideInternal test update cr
|
||||
| test cr = update cr
|
||||
|
||||
@@ -19,8 +19,7 @@ import Geometry.Data
|
||||
|
||||
sentinelAI :: World -> Creature -> Creature
|
||||
sentinelAI w =
|
||||
reloadOverride
|
||||
. sentinelExtraWatchUpdate
|
||||
sentinelExtraWatchUpdate
|
||||
[
|
||||
( crHasTargetLOS
|
||||
, \_ cr ->
|
||||
@@ -66,7 +65,6 @@ sentinelFireType f =
|
||||
, perceptionUpdate [0]
|
||||
, -- , Left $ perceptionUp 0
|
||||
const doStrategyActions
|
||||
, const reloadOverride
|
||||
, targetYouWhenCognizant
|
||||
, const $
|
||||
overrideInternal
|
||||
|
||||
@@ -23,7 +23,6 @@ import Dodge.Hammer
|
||||
import Dodge.ItEffect
|
||||
import Dodge.LightSource.Torch
|
||||
import Dodge.Prop.Gib
|
||||
import Dodge.Reloading
|
||||
import Dodge.SoundLogic
|
||||
import Dodge.Targeting
|
||||
import Geometry
|
||||
|
||||
@@ -5,7 +5,7 @@ module Dodge.Creature.Statistics (
|
||||
|
||||
import Data.IntMap.Merge.Strict
|
||||
import Data.Maybe
|
||||
import Dodge.Creature.Test
|
||||
--import Dodge.Creature.Test
|
||||
import Dodge.Data.Creature
|
||||
import qualified IntMapHelp as IM
|
||||
import LensHelp
|
||||
|
||||
Reference in New Issue
Block a user