Add code for determining item orientation
This commit is contained in:
@@ -6,6 +6,7 @@ module Dodge.Projectile.Create (
|
||||
--import Dodge.Data.ComposedItem
|
||||
--import Dodge.Data.DoubleTree
|
||||
|
||||
import qualified Quaternion as Q
|
||||
import Dodge.Data.Muzzle
|
||||
import Data.Maybe
|
||||
import Dodge.Data.World
|
||||
@@ -21,6 +22,7 @@ data PJStabiliser
|
||||
|
||||
-- assumes the mscreen is in your inventory
|
||||
createShell ::
|
||||
(Point3, Q.Quaternion Float) ->
|
||||
Maybe (NewInt ItmInt) ->
|
||||
Maybe (NewInt ItmInt) ->
|
||||
Maybe PJStabiliser ->
|
||||
@@ -30,7 +32,7 @@ createShell ::
|
||||
Creature ->
|
||||
World ->
|
||||
World
|
||||
createShell mdetonator mscreen stab pjtype payload muz cr w =
|
||||
createShell (p,q) mdetonator mscreen stab pjtype payload muz cr w =
|
||||
w
|
||||
& updatescreen
|
||||
& updatedetonator
|
||||
@@ -91,4 +93,4 @@ createShell mdetonator mscreen stab pjtype payload muz cr w =
|
||||
.:~ i
|
||||
i = IM.newKey $ w ^. cWorld . lWorld . projectiles
|
||||
dir = _crDir cr + _mzRot muz
|
||||
pos = _crPos cr +.+ rotateV dir (_mzPos muz)
|
||||
pos = _crPos cr + xyV3 p + rotateV dir (_mzPos muz)
|
||||
|
||||
Reference in New Issue
Block a user