Work on held item usage
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
module Dodge.Creature.HandPos where
|
||||
|
||||
import Linear
|
||||
import Control.Lens
|
||||
import Data.Maybe
|
||||
import Dodge.Creature.Test
|
||||
@@ -20,10 +21,18 @@ aimingWeaponZeroPos cr it =
|
||||
aimingWeaponHandlePos cr it
|
||||
- fromMaybe 0 (it ^? itUse . heldAim . aimHandlePos)
|
||||
|
||||
aimingMuzzlePos :: Creature -> Item -> Float
|
||||
aimingMuzzlePos cr it =
|
||||
aimingWeaponZeroPos cr it
|
||||
+ fromMaybe 0 (it ^? itUse . heldAim . aimMuzPos)
|
||||
aimingMuzzlePos :: Creature -> Item -> [Point2]
|
||||
aimingMuzzlePos cr it = fmap ((+ zp) . _mzPos) (it ^.. itUse . heldAim . aimMuzzles . folded)
|
||||
where
|
||||
zp = V2 (aimingWeaponZeroPos cr it) 0
|
||||
|
||||
aimingMuzzleOff :: Creature -> Item -> [Point2]
|
||||
aimingMuzzleOff cr it = fmap (rotateV (_crDir cr) . (+ zp) . _mzPos) (it ^.. itUse . heldAim . aimMuzzles . folded)
|
||||
where
|
||||
zp = V2 (aimingWeaponZeroPos cr it) 0
|
||||
|
||||
aimingMuzzleLength :: Creature -> Item -> Float
|
||||
aimingMuzzleLength cr it = head (aimingMuzzlePos cr it) ^. _x
|
||||
|
||||
translatePointToRightHand :: Creature -> Point3 -> Point3
|
||||
translatePointToRightHand cr = translatePointToRightHand' cr . mirrorV3xz
|
||||
|
||||
Reference in New Issue
Block a user