modifyFightState :: (Monad m) => (FightState -> FightState) -> CyoaT m ()
modifyFightState f = modify $ \gs -> gs{ fight_state = f' (fight_state gs) }
  where f' = Just . f. fromJust
modifyFightState :: (Monad m) => (FightState -> FightState) -> CyoaT m ()
modifyFightState f = modify $ \gs -> gs{ fight_state = f' (fight_state gs) }
  where f' = Just . f. fromJust
modifyFightState f = modify $ \gs -> gs{ fight_state = f' (fight_state gs) }
  where f' = Just . f. fromJust