Work on placements

This commit is contained in:
2025-09-25 17:32:02 +01:00
parent 23f61081cf
commit f5a3486f72
13 changed files with 155 additions and 157 deletions
+25
View File
@@ -8,6 +8,7 @@ module Dodge.Data.GenWorld (
module Dodge.Data.World,
) where
import ShortShow
import Color
import Control.Lens
import Control.Monad.State
@@ -62,6 +63,30 @@ data PSType
| PutID {_putID :: Int}
| PutChasm {_putChasmPoly :: [Point2]}
instance ShortShow PSType where
shortShow PutCrit {} = "PutCrit"
shortShow PutMachine {} = "PutMachine"
shortShow PutLS {} = "PutLS"
shortShow PutButton {} = "PutButton"
shortShow PutProp {} = "PutProp"
shortShow PutTerminal {} = "PutTerminal"
shortShow PutFlIt {} = "PutFlIt"
shortShow PutPPlate {} = "PutPPlate"
shortShow PutBlock {} = "PutBlock"
shortShow PutCoord {} = "PutCoord"
shortShow PutMod {} = "PutMod"
shortShow PutTrigger {} = "PutTrigger"
shortShow PutLineBlock {} = "PutLineBlock"
shortShow PutWall {} = "PutWall"
shortShow PutSlideDr {} = "PutSlideDr"
shortShow PutDoor {} = "PutDoor"
shortShow RandPS {} = "RandPS"
shortShow PutForeground {} = "PutForeground"
shortShow PutWorldUpdate {} = "PutWorldUpdate"
shortShow PutNothing = "PutNothing"
shortShow PutID {} = "PutID"
shortShow PutChasm {} = "PutChasm"
-- maybe there is a monadic implementation of this?
-- add room effect for any placement spot?
data PlacementSpot