Stop door z fighting when opened
This commit is contained in:
@@ -1,19 +1,19 @@
|
||||
module Dodge.Item.Weapon.Utility where
|
||||
import Dodge.Data
|
||||
import Dodge.Base
|
||||
--import Dodge.Base
|
||||
import Dodge.Default
|
||||
import Dodge.Picture.Layer
|
||||
import Dodge.Creature.Action
|
||||
import Dodge.Item.Weapon.TriggerType
|
||||
import Dodge.Default.Weapon
|
||||
import Sound.Data
|
||||
--import Sound.Data
|
||||
import Geometry
|
||||
import Picture
|
||||
import qualified IntMapHelp as IM
|
||||
import Shape
|
||||
import ShapePicture
|
||||
|
||||
import qualified Data.Map.Strict as M
|
||||
--import qualified Data.Map.Strict as M
|
||||
import Control.Lens
|
||||
|
||||
rewindGun :: Item
|
||||
@@ -27,24 +27,23 @@ rewindGun = defaultGun
|
||||
, _itLeftClickUse = Just $ \cr invid -> useRewindGun (_crInv cr IM.! invid) cr
|
||||
}
|
||||
rewindEffect :: ItEffect -> Creature -> Int -> World -> World
|
||||
rewindEffect iteff cr invid w = w & rewindWorlds %~ (take 100 . (w' : ))
|
||||
rewindEffect _ cr invid w = w & rewindWorlds %~ (take 250 . (w' : ))
|
||||
& creatures . ix (_crID cr) . crInv . ix invid . wpLoadedAmmo .~ length (_rewindWorlds w)
|
||||
where
|
||||
w' = w & rewindWorlds .~ []
|
||||
& rewinding .~ True
|
||||
|
||||
useRewindGun :: Item -> Creature -> World -> World
|
||||
useRewindGun it cr w = case _rewindWorlds w of
|
||||
(w':[]) -> rewindusing w' []
|
||||
(_:w':ws) -> rewindusing w' ws
|
||||
_ -> w
|
||||
useRewindGun _ _ w = case _rewindWorlds w of
|
||||
[w'] -> rewindusing w' []
|
||||
(_:w':ws) -> rewindusing w' ws
|
||||
_ -> w
|
||||
where
|
||||
rewindusing w' ws = w'
|
||||
-- & creatures . ix (_crID cr) .~ cr
|
||||
& upbuts
|
||||
& rewindWorlds .~ ws
|
||||
& lClickHammer .~ HammerUp
|
||||
& worldEvents %~ (. (worldEvents %~ (.(rewinding .~ False)))) -- fucking nesting
|
||||
upbuts = (keys .~ _keys w) . (mouseButtons .~ _mouseButtons w)
|
||||
|
||||
shrinkGun :: Item
|
||||
|
||||
Reference in New Issue
Block a user