142 lines
3.6 KiB
Haskell
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
|