{-# LANGUAGE StrictData #-} module Dodge.Data.ComposedItem where import Dodge.Data.AmmoType import Dodge.Data.Item import Linear import qualified Linear.Quaternion as Q data ItemStructuralFunction = UnloadedWeaponSF | HeldPlatformSF | UnderBarrelSlotSF | UnderBarrelPlatformSF | EquipmentPlatformSF | GadgetPlatformSF | WeaponScopeSF | WeaponTargetingSF | IntroScanSF | TriggerSF | ARHUDSF | AmmoMagSF Int AmmoType | RemoteScreenSF | JoystickSF | RemoteDetonatorSF | SmokeReducerSF | NoSF | AmmoModifierSF AmmoType | AmmoTargetingSF AmmoType | AmmoPayloadSF AmmoType | AmmoEffectSF AmmoType | FunctionChangeSF | MakeAutoSF | ProjectileStabiliserSF | GrenadeHitEffectSF | ToggleSF | MapperSF | LaserWeaponSF deriving (Eq, Ord, Show, Read) type CItem = (Item, ItemStructuralFunction) type OItem = (Item, ItemStructuralFunction, (V3 Float,Q.Quaternion Float))