89 lines
2.3 KiB
Haskell
89 lines
2.3 KiB
Haskell
{-# LANGUAGE DeriveGeneric #-}
|
|
{-# LANGUAGE DeriveAnyClass #-}
|
|
{-# LANGUAGE StrictData #-}
|
|
{-# LANGUAGE TemplateHaskell #-}
|
|
|
|
module Dodge.Data.WorldEffect where
|
|
|
|
import Dodge.Data.LightSource
|
|
import Dodge.Data.ComposedItem
|
|
import Dodge.Data.DoubleTree
|
|
import Data.Aeson
|
|
import Data.Aeson.TH
|
|
import Dodge.Data.CreatureEffect
|
|
import Dodge.Data.Item
|
|
import Dodge.Data.SoundOrigin
|
|
import Geometry.Data
|
|
import Sound.Data
|
|
|
|
data ItCrWdWd = ItCrWdItemHeldEffect
|
|
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
|
|
|
data WdWd
|
|
= NoWorldEffect
|
|
| SetTrigger Bool Int
|
|
| WorldEffects [WdWd]
|
|
| SetLSCol Point3 Int
|
|
| AccessTerminal (Maybe Int)
|
|
| UnlockInv Int
|
|
| SoundStart SoundOrigin Point2 SoundID (Maybe Int)
|
|
| MakeStartCloudAt Point3
|
|
| TorqueCr Float Int
|
|
| WdWdNegateTrig Int
|
|
| WdWdFromItCrixWdWd (LabelDoubleTree ComposeLinkType Item) Int ItCrWdWd
|
|
| MakeTempLight LSParam Int
|
|
--deriving (Eq, Show, Read) --, Generic)
|
|
--h--deriving (Eq, Show, Read) --Generic, Flat)
|
|
|
|
data WdP2
|
|
= WdP2Const Point2
|
|
| WdYouPos
|
|
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
|
|
|
data MdWdWd
|
|
= MdWdId
|
|
| MdTrigIf MdWdWd MdWdWd
|
|
| MdSetLSCol Point3
|
|
| MdFlickerUpdate
|
|
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
|
|
|
data WdBl
|
|
= WdTrig Int
|
|
| WdBlDoorMoving Int
|
|
| WdBlConst Bool
|
|
| WdBlNegate WdBl
|
|
| WdBlCrFilterNearPoint Float Point2 CrBl
|
|
| WdBlBtOn Int
|
|
| WdBlBtNotOff Int
|
|
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
|
|
|
data WdP2f
|
|
= WdP2f0
|
|
| WdP2fDoorPosition Int
|
|
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
|
|
|
data DrWdWd
|
|
= DrWdId
|
|
| DrWdMakeDoorDebris
|
|
| DrWdMechanismStepwise Int [Int] [(Point2, Point2)]
|
|
| DoorMechanism
|
|
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
|
|
|
data TmWdWd
|
|
= TmWdId
|
|
| TmWdWdDisconnectTerminal
|
|
| TmWdWdfromWdWd WdWd
|
|
| TmWdWdTermSound SoundID
|
|
| TmWdWdDoDeathTriggers
|
|
--deriving (Eq, Show, Read) --, Generic)
|
|
--h--deriving (Eq, Show, Read) --Generic, Flat)
|
|
|
|
deriveJSON defaultOptions ''ItCrWdWd
|
|
deriveJSON defaultOptions ''WdWd
|
|
deriveJSON defaultOptions ''WdP2
|
|
deriveJSON defaultOptions ''MdWdWd
|
|
deriveJSON defaultOptions ''WdBl
|
|
deriveJSON defaultOptions ''WdP2f
|
|
deriveJSON defaultOptions ''DrWdWd
|
|
deriveJSON defaultOptions ''TmWdWd
|