Work towards making world read/showable
This commit is contained in:
+18
-13
@@ -33,20 +33,25 @@ import qualified Streaming.Prelude as S
|
||||
import Streaming
|
||||
{- Update the screen camera rotation and position, including any in rold scope/remote camera modifiers;
|
||||
update where your avatar's view is from. -}
|
||||
updateCamera :: Configuration -> World -> World
|
||||
updateCamera cfig = setViewDistance cfig
|
||||
. moveZoomCamera cfig
|
||||
. updateScopeZoom
|
||||
. rotateCamera cfig
|
||||
|
||||
moveZoomCamera :: Configuration -> World -> World
|
||||
moveZoomCamera cfig w = w
|
||||
& cameraCenter .~ newcen
|
||||
& cameraViewFrom .~ newvf
|
||||
& cameraZoom .~ newzoom
|
||||
& defaultZoom .~ newDefaultZoom
|
||||
& itemZoom .~ newItemZoom
|
||||
updateCamera :: Universe -> Universe
|
||||
updateCamera uv = uv
|
||||
& over uvWorld (setViewDistance cfig )
|
||||
& moveZoomCamera
|
||||
& over uvWorld (updateScopeZoom )
|
||||
& over uvWorld (rotateCamera cfig )
|
||||
where
|
||||
cfig = _uvConfig uv
|
||||
|
||||
moveZoomCamera :: Universe -> Universe
|
||||
moveZoomCamera uv = uv
|
||||
& uvWorld . cameraCenter .~ newcen
|
||||
& uvWorld . cameraViewFrom .~ newvf
|
||||
& uvWorld . cameraZoom .~ newzoom
|
||||
& uvWorld . defaultZoom .~ newDefaultZoom
|
||||
& uvWorld . itemZoom .~ newItemZoom
|
||||
where
|
||||
cfig = _uvConfig uv
|
||||
w = _uvWorld uv
|
||||
cpos =_crPos (you w)
|
||||
newvf = cpos +.+ fromMaybe (V2 0 0) vfoffset
|
||||
vfoffset = do
|
||||
|
||||
Reference in New Issue
Block a user