Files
loop/src/Dodge/Item/Equipment.hs
T

142 lines
3.6 KiB
Haskell

module Dodge.Item.Equipment (
magShield,
powerLegs,
wristInvisibility,
wristArmour,
hat,
brainHat,
frontArmour,
headLamp,
fuelPack,
batteryPack,
bulletBeltPack,
bulletBeltBracer,
speedLegs,
jumpLegs,
flameShield,
pulseChecker,
) where
import Dodge.Data.Magnet
import Dodge.Item.Weapon.Bullet
import Dodge.Data.Item
import Dodge.Default
import LensHelp
magShield :: Item
magShield =
defaultEquipment
& itUse . uequipEffect . eeUse .~ EMagShield MagnetRepulse
& itType .~ EQUIP MAGSHIELD
flameShield :: Item
flameShield =
defaultEquipment
& itType .~ EQUIP FLAMESHIELD
frontArmour :: Item
frontArmour =
defaultEquipment
& itType .~ EQUIP FRONTARMOUR
wristArmour :: Item
wristArmour =
defaultEquipment
-- & itUse . uequipEffect . eeOnEquip .~ EonWristShield
& itUse . uequipEffect . eeUse .~ EWristShield
-- & itUse . uequipEffect . eeOnRemove .~ EoffWristShield
& itType .~ EQUIP WRISTARMOUR
batteryPack :: Item
batteryPack =
defaultEquipment
& itUse . uequipEffect . eeUse .~ EDoNothing
& itConsumables
.~ AmmoMag
{ _magParams = NoAmmoParams
, _magLoadStatus =
ReloadStatus
{ _iaMax = 10000000
, _iaLoaded = 10000000
}
}
& itType .~ EQUIP BATTERYPACK
fuelPack :: Item
fuelPack =
defaultEquipment
-- & itUse . uequipEffect . eeUse .~ EFuelSource 10000 10000
& itType .~ EQUIP FUELPACK
& itConsumables
.~ AmmoMag
{ _magParams = GasParams ChemFuel
, _magLoadStatus =
ReloadStatus
{ _iaMax = 100000
, _iaLoaded = 100000
}
}
bulletBeltPack :: Item
bulletBeltPack =
defaultEquipment
& itUse . uequipEffect . eeUse .~ EDoNothing
& itConsumables
.~ AmmoMag
{ _magParams = BulletParams defaultBullet
, _magLoadStatus =
ReloadStatus
{ _iaMax = 10000000
, _iaLoaded = 10000000
}
}
& itType .~ EQUIP BULLETBELTPACK
bulletBeltBracer :: Item
bulletBeltBracer =
defaultEquipment
& itUse . uequipEffect . eeUse .~ EDoNothing
& itConsumables
.~ AmmoMag
{ _magParams = BulletParams defaultBullet
, _magLoadStatus =
ReloadStatus
{ _iaMax = 100000
, _iaLoaded = 100000
}
}
& itType .~ EQUIP BULLETBELTBRACER
brainHat :: Item
brainHat = defaultEquipment & itType .~ EQUIP BRAINHAT
hat :: Item
hat = defaultEquipment & itType .~ EQUIP HAT
headLamp :: Item
headLamp =
defaultEquipment
& itUse . uequipEffect . eeUse .~ EHeadLamp
& itType .~ EQUIP HEADLAMP
powerLegs :: Item
powerLegs =
defaultEquipment
& itType .~ EQUIP POWERLEGS
speedLegs :: Item
speedLegs = powerLegs & itType .~ EQUIP SPEEDLEGS
jumpLegs :: Item
jumpLegs = powerLegs & itType .~ EQUIP JUMPLEGS
wristInvisibility :: Item
wristInvisibility =
defaultEquipment
-- & itUse . uequipEffect . eeOnEquip .~ ECamouflage Invisible
-- & itUse . uequipEffect . eeOnRemove .~ ECamouflage FullyVisible
& itType .~ EQUIP (INVISIBILITYEQUIPMENT GoesOnWrist)
pulseChecker :: Item
pulseChecker = defaultEquipment & itType .~ EQUIP WRIST_ECG