Cleanup
This commit is contained in:
@@ -130,7 +130,6 @@ performAction cr w ac = case ac of
|
||||
tcr <- w ^? cWorld . lWorld . creatures . ix i
|
||||
return $ ([TurnTo (tcr ^. crPos . _xy +.+ rotateV (_crDir tcr) p)], Nothing)
|
||||
UseSelf f -> performAction cr w $ doCrAc f cr
|
||||
UseMvTargetPos f -> performAction cr w $ doMP2Ac f $ _mvToPoint $ _crIntention cr
|
||||
ArbitraryAction f -> performAction cr w (doCrWdAc f cr w)
|
||||
DoImpulsesAlongside sideImp mainAc -> case performAction cr w mainAc of
|
||||
(imp, Just nxtac) -> (sideImp ++ imp, Just $ DoImpulsesAlongside sideImp nxtac)
|
||||
|
||||
@@ -62,7 +62,6 @@ followImpulse cr w imp = case imp of
|
||||
DropItem -> undefined
|
||||
ChangeStrategy strat -> crup $ cr & crActionPlan . apStrategy .~ strat
|
||||
AddGoal gl -> crup $ cr & crActionPlan . apGoal .:~ gl
|
||||
ArbitraryImpulseEffect f -> (doCrWdWd f cr, cr)
|
||||
ImpulseUseTarget f -> fromMaybe (crup cr) $ do
|
||||
i <- cr ^? crIntention . targetCr . _Just
|
||||
tcr <- w ^? cWorld . lWorld . creatures . ix i
|
||||
|
||||
@@ -10,14 +10,6 @@ import Dodge.Path
|
||||
import Geometry
|
||||
import Control.Lens
|
||||
|
||||
doCrWdWd :: CrWdWd -> Creature -> World -> World
|
||||
doCrWdWd cww = case cww of
|
||||
CrWdWdId -> const id
|
||||
|
||||
--doIntImp :: IntImp -> Int -> Impulse
|
||||
--doIntImp ii = case ii of
|
||||
-- NoIntImp -> const ImpulseNothing
|
||||
|
||||
doCrImp :: CrImp -> Creature -> Impulse
|
||||
doCrImp ci = case ci of
|
||||
NoCrImp -> const ImpulseNothing
|
||||
@@ -52,10 +44,6 @@ doCrAc ca = case ca of
|
||||
--fleeFromTarget :: Creature -> Action
|
||||
--fleeFromTarget cr = fleeFrom cr (_targetCr (_crIntention cr))
|
||||
|
||||
doMP2Ac :: MP2Ac -> Maybe Point2 -> Action
|
||||
doMP2Ac mp2a = case mp2a of
|
||||
MP2NoAction -> const ActionNothing
|
||||
|
||||
doCrWdAc :: CrWdAc -> Creature -> World -> Action
|
||||
doCrWdAc cw = case cw of
|
||||
CrWdBFSThenReturn t -> \cr w -> fromMaybe NoAction $ do
|
||||
|
||||
@@ -43,7 +43,6 @@ data Impulse
|
||||
| MakeSound SoundID
|
||||
| ChangeStrategy Strategy
|
||||
| AddGoal Goal
|
||||
| ArbitraryImpulseEffect CrWdWd
|
||||
| ImpulseUseTarget { _impulseUseTarget :: CrImp }
|
||||
| ImpulseNothing
|
||||
deriving (Eq, Ord, Show) --Generic, Flat)
|
||||
@@ -141,9 +140,6 @@ data Action
|
||||
| UseSelf
|
||||
{ _useSelf :: CrAc
|
||||
}
|
||||
| UseMvTargetPos
|
||||
{ _useMvTargetPos :: MP2Ac
|
||||
}
|
||||
| ArbitraryAction
|
||||
{_arbitraryAction :: CrWdAc}
|
||||
| -- | Repeatedly perform impulses alongside a main action until the main action terminates
|
||||
|
||||
@@ -8,17 +8,9 @@ module Dodge.Data.CreatureEffect where
|
||||
import Data.Aeson
|
||||
import Data.Aeson.TH
|
||||
|
||||
data CrWdWd = CrWdWdId
|
||||
data CrImp = NoCrImp | TurnTowardCr Float -- turn amount
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data CrImp
|
||||
= NoCrImp
|
||||
| TurnTowardCr Float -- turn amount
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
--data P2Imp = P2ImpNo
|
||||
-- deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data WdCrBl
|
||||
= WdCrTrue
|
||||
| WdCrBlfromCrBl CrBl
|
||||
@@ -27,30 +19,20 @@ data WdCrBl
|
||||
| WdCrSafeDistFromTarget Float
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data CrBl
|
||||
= CrCanShoot
|
||||
| CrIsAiming
|
||||
| CrIsAnimate
|
||||
data CrBl = CrCanShoot | CrIsAiming | CrIsAnimate
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data CrAc = CrTurnAround
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data MP2Ac = MP2NoAction
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data CrWdAc
|
||||
= CrWdBFSThenReturn Int
|
||||
| ChooseMovementSpreadGun
|
||||
| ChooseMovementLtAuto
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
--deriveJSON defaultOptions ''WdCrCr
|
||||
--deriveJSON defaultOptions ''CrWdImp
|
||||
deriveJSON defaultOptions ''CrWdWd
|
||||
deriveJSON defaultOptions ''CrImp
|
||||
deriveJSON defaultOptions ''CrBl
|
||||
deriveJSON defaultOptions ''WdCrBl
|
||||
deriveJSON defaultOptions ''CrAc
|
||||
deriveJSON defaultOptions ''MP2Ac
|
||||
deriveJSON defaultOptions ''CrWdAc
|
||||
|
||||
Reference in New Issue
Block a user