Remove _crCamouflage/wrist invisibility on equip/unequip
Invisibility no longer works
This commit is contained in:
@@ -25,7 +25,7 @@ smallChaseCrit =
|
||||
invisibleChaseCrit :: Creature
|
||||
invisibleChaseCrit =
|
||||
chaseCrit
|
||||
& crCamouflage .~ Invisible
|
||||
-- & crCamouflage .~ Invisible
|
||||
& crInv . at 0 ?~ wristInvisibility
|
||||
& crEquipment . at OnLeftWrist ?~ 0
|
||||
-- & crInvEquipped . at 0 ?~ OnLeftWrist
|
||||
|
||||
@@ -28,11 +28,14 @@ basicCrPict cr =
|
||||
uncurryV translateSPxy (_crPos cr) (rotateSP (_crDir cr) $ drawEquipment cr)
|
||||
<> noPic (basicCrShape cr)
|
||||
|
||||
crCamouflage :: Creature -> CamouflageStatus
|
||||
crCamouflage _ = FullyVisible
|
||||
|
||||
basicCrShape ::
|
||||
Creature ->
|
||||
Shape
|
||||
basicCrShape cr
|
||||
| _crCamouflage cr == Invisible = mempty
|
||||
| crCamouflage cr == Invisible = mempty
|
||||
| otherwise =
|
||||
tr . scaleSH (V3 crsize crsize crsize) $
|
||||
mconcat
|
||||
|
||||
@@ -179,7 +179,7 @@ invItemLocUpdate cr loc w = doAnyEquipmentEffect loc cr $ case itm ^. itType of
|
||||
|
||||
doAnyEquipmentEffect :: LocationLDT ItemLink ComposedItem -> Creature -> World -> World
|
||||
doAnyEquipmentEffect loc cr = case itm ^? itLocation . ilEquipPosition . _Just of
|
||||
Just _ -> useE (_eeUse (_uequipEffect $ _itUse itm)) loc cr
|
||||
Just _ -> useE loc cr
|
||||
_ -> id
|
||||
where
|
||||
itm = loc ^. locLDT . ldtValue . _1
|
||||
|
||||
@@ -75,7 +75,7 @@ data Creature = Creature
|
||||
, _crHammerPosition :: HammerPosition
|
||||
, _crName :: String
|
||||
, _crStatistics :: CreatureStatistics
|
||||
, _crCamouflage :: CamouflageStatus
|
||||
-- , _crCamouflage :: CamouflageStatus
|
||||
-- , _crTargeting :: CreatureTargeting
|
||||
}
|
||||
|
||||
|
||||
@@ -8,7 +8,6 @@ module Dodge.Data.Item.HeldUse where
|
||||
--import Dodge.Data.Item.Use.Consumption.Ammo
|
||||
import Data.Aeson
|
||||
import Data.Aeson.TH
|
||||
import Dodge.Data.CamouflageStatus
|
||||
import Control.Lens
|
||||
|
||||
data Cuse
|
||||
@@ -22,12 +21,12 @@ data Euse
|
||||
| EWristShield
|
||||
| EHeadLamp
|
||||
-- | EFuelSource {_euseFuelAmount :: Int, _euseFuelMax :: Int}
|
||||
| EBatterySource {_euseBatteryAmount :: Int, _euseBatteryMax :: Int}
|
||||
| EAmmoSource
|
||||
{ _euseAmmoAmount :: Int
|
||||
, _euseAmmoMax :: Int
|
||||
, _euseAmmoLink :: Maybe Int
|
||||
}
|
||||
-- | EBatterySource {_euseBatteryAmount :: Int, _euseBatteryMax :: Int}
|
||||
-- | EAmmoSource
|
||||
-- { _euseAmmoAmount :: Int
|
||||
-- , _euseAmmoMax :: Int
|
||||
-- , _euseAmmoLink :: Maybe Int
|
||||
-- }
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
data Luse
|
||||
|
||||
@@ -105,6 +105,7 @@ data AmmoParams
|
||||
= BulletParams {_ampBullet :: Bullet}
|
||||
| ProjectileParams { _ampPayload :: Payload }
|
||||
| GasParams {_ampCreateGas :: GasFuel}
|
||||
| NoAmmoParams
|
||||
deriving (Eq, Show, Read) --Generic, Flat)
|
||||
|
||||
data AimParams = AimParams
|
||||
|
||||
@@ -7,7 +7,6 @@ module Dodge.Data.Item.Use.Equipment (
|
||||
module Dodge.Data.Item.Use.Equipment,
|
||||
) where
|
||||
|
||||
import Dodge.Data.CamouflageStatus
|
||||
import Geometry.Data
|
||||
import Control.Lens
|
||||
import Data.Aeson
|
||||
@@ -28,7 +27,7 @@ data EquipEffect = EquipEffect
|
||||
|
||||
data ItmCrWdWd
|
||||
= ItmCrWdWdDoNothing
|
||||
| ECamouflage {_euseCamouflageStatus :: CamouflageStatus}
|
||||
-- | ECamouflage {_euseCamouflageStatus :: CamouflageStatus}
|
||||
| EonWristShield
|
||||
| EoffWristShield
|
||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||
|
||||
@@ -56,7 +56,7 @@ defaultCreature =
|
||||
, _crHammerPosition = HammerUp
|
||||
, _crName = "DEFAULTCRNAME"
|
||||
, _crStatistics = CreatureStatistics 50 50 50
|
||||
, _crCamouflage = FullyVisible
|
||||
-- , _crCamouflage = FullyVisible
|
||||
-- , _crTargeting = defaultCreatureTargeting
|
||||
}
|
||||
|
||||
|
||||
+11
-9
@@ -22,21 +22,23 @@ import LensHelp
|
||||
|
||||
doItmCrWdWd :: ItmCrWdWd -> Item -> Creature -> World -> World
|
||||
doItmCrWdWd x itm cr = case x of
|
||||
(ECamouflage vis) -> overCID (crCamouflage .~ vis) itm cr
|
||||
-- (ECamouflage vis) -> overCID (crCamouflage .~ vis) itm cr
|
||||
EonWristShield -> onEquipWristShield itm cr
|
||||
EoffWristShield -> onRemoveWristShield itm cr
|
||||
_ -> id
|
||||
|
||||
useE :: Euse -> LocationLDT ItemLink ComposedItem -> Creature -> World -> World
|
||||
useE eo loc cr = case eo of
|
||||
EDoNothing -> id
|
||||
EMagShield -> useMagShield itm cr
|
||||
EWristShield -> setWristShieldPos itm cr
|
||||
EHeadLamp -> createHeadLamp itm cr
|
||||
EBatterySource{} -> tryChargeBattery itm cr
|
||||
EAmmoSource{} -> tryAttachBulletBelt itm cr
|
||||
useE :: LocationLDT ItemLink ComposedItem -> Creature -> World -> World
|
||||
useE loc cr = case eo of
|
||||
Nothing -> id
|
||||
Just EDoNothing -> id
|
||||
Just EMagShield -> useMagShield itm cr
|
||||
Just EWristShield -> setWristShieldPos itm cr
|
||||
Just EHeadLamp -> createHeadLamp itm cr
|
||||
-- Just EBatterySource{} -> tryChargeBattery itm cr
|
||||
-- Just EAmmoSource{} -> tryAttachBulletBelt itm cr
|
||||
where
|
||||
itm = loc ^. locLDT . ldtValue . _1
|
||||
eo = itm ^? itUse . uequipEffect . eeUse
|
||||
|
||||
tryAttachBulletBelt :: Item -> Creature -> World -> World
|
||||
tryAttachBulletBelt _ _ w = w
|
||||
|
||||
@@ -100,7 +100,7 @@ battery =
|
||||
& itUse .~ UseNothing
|
||||
& itConsumables
|
||||
.~ AmmoMag
|
||||
{ _magParams = BulletParams defaultBullet
|
||||
{ _magParams = NoAmmoParams
|
||||
, _magType = ElectricalAmmo
|
||||
, _magLoadStatus =
|
||||
ReloadStatus
|
||||
|
||||
@@ -88,7 +88,7 @@ itemNumberDisplay cr ci = case (ci ^. _2, itm ^?! itUse, itm ^. itType) of
|
||||
$ itm ^? itConsumables . magLoadStatus . iaLoaded]
|
||||
(_,UseHeld{},_) -> []
|
||||
(_,UseHotkey{_leftConsumption=lc},_) -> [showAutoRechargeProgress lc]
|
||||
(_,UseEquip{},_) -> showEquipmentNumber cr itm
|
||||
(_,UseEquip{},_) -> mempty
|
||||
(_,UseNothing,_) -> []
|
||||
(_,UseConsume {},_) -> []
|
||||
(_,UseAttach (APInt i),_) -> [show i]
|
||||
@@ -105,15 +105,6 @@ displayPulse x = take 5 $ drop y "----^-----"
|
||||
where
|
||||
y = min 5 $ x `div` 3
|
||||
|
||||
showEquipmentNumber :: Creature -> Item -> [String]
|
||||
showEquipmentNumber _ itm = case _eeUse ee of
|
||||
-- EFuelSource x _ -> [show x]
|
||||
EAmmoSource{_euseAmmoAmount = x} -> [show x]--showAmmoSource cr itm
|
||||
EBatterySource{_euseBatteryAmount = x} -> [show x]
|
||||
_ -> [""]
|
||||
where
|
||||
ee = itm ^?! itUse . uequipEffect
|
||||
|
||||
maybeWarmupStatus :: Item -> Maybe String
|
||||
maybeWarmupStatus it = case it ^? itUse . heldDelay . warmMax of
|
||||
Nothing -> Nothing
|
||||
|
||||
@@ -18,8 +18,8 @@ module Dodge.Item.Equipment (
|
||||
pulseChecker,
|
||||
) where
|
||||
|
||||
import Dodge.Item.Weapon.Bullet
|
||||
import Geometry.Data
|
||||
import Dodge.Data.CamouflageStatus
|
||||
import Dodge.Data.Item
|
||||
import Dodge.Default
|
||||
import Dodge.Item.Equipment.Booster
|
||||
@@ -59,7 +59,17 @@ batteryPack =
|
||||
defaultEquipment
|
||||
& itUse . uequipEffect . eeSite .~ GoesOnBack
|
||||
& itUse . uequipEffect . eeAttachPos .~ V3 (-8) 0 10
|
||||
& itUse . uequipEffect . eeUse .~ EBatterySource 10000 10000
|
||||
& itUse . uequipEffect . eeUse .~ EDoNothing
|
||||
& itConsumables
|
||||
.~ AmmoMag
|
||||
{ _magParams = NoAmmoParams
|
||||
, _magType = ElectricalAmmo
|
||||
, _magLoadStatus =
|
||||
ReloadStatus
|
||||
{ _iaMax = 10000000
|
||||
, _iaLoaded = 10000000
|
||||
}
|
||||
}
|
||||
& itType .~ EQUIP BATTERYPACK
|
||||
|
||||
fuelPack :: Item
|
||||
@@ -85,7 +95,17 @@ bulletBeltPack =
|
||||
defaultEquipment
|
||||
& itUse . uequipEffect . eeSite .~ GoesOnBack
|
||||
& itUse . uequipEffect . eeAttachPos .~ V3 (-9) 0 10
|
||||
& itUse . uequipEffect . eeUse .~ EAmmoSource 2000 2000 Nothing
|
||||
& itUse . uequipEffect . eeUse .~ EDoNothing
|
||||
& itConsumables
|
||||
.~ AmmoMag
|
||||
{ _magParams = BulletParams defaultBullet
|
||||
, _magType = BeltBulletAmmo
|
||||
, _magLoadStatus =
|
||||
ReloadStatus
|
||||
{ _iaMax = 10000000
|
||||
, _iaLoaded = 10000000
|
||||
}
|
||||
}
|
||||
& itType .~ EQUIP BULLETBELTPACK
|
||||
|
||||
bulletBeltBracer :: Item
|
||||
@@ -93,7 +113,17 @@ bulletBeltBracer =
|
||||
defaultEquipment
|
||||
& itUse . uequipEffect . eeSite .~ GoesOnWrist
|
||||
& itUse . uequipEffect . eeAttachPos .~ V3 (-9) 0 10
|
||||
& itUse . uequipEffect . eeUse .~ EAmmoSource 100 100 Nothing
|
||||
& itUse . uequipEffect . eeUse .~ EDoNothing
|
||||
& itConsumables
|
||||
.~ AmmoMag
|
||||
{ _magParams = BulletParams defaultBullet
|
||||
, _magType = BeltBulletAmmo
|
||||
, _magLoadStatus =
|
||||
ReloadStatus
|
||||
{ _iaMax = 100000
|
||||
, _iaLoaded = 100000
|
||||
}
|
||||
}
|
||||
& itType .~ EQUIP BULLETBELTBRACER
|
||||
|
||||
brainHat :: Item
|
||||
@@ -131,8 +161,8 @@ wristInvisibility :: Item
|
||||
wristInvisibility =
|
||||
defaultEquipment
|
||||
& itUse . uequipEffect . eeSite .~ GoesOnWrist
|
||||
& itUse . uequipEffect . eeOnEquip .~ ECamouflage Invisible
|
||||
& itUse . uequipEffect . eeOnRemove .~ ECamouflage FullyVisible
|
||||
-- & itUse . uequipEffect . eeOnEquip .~ ECamouflage Invisible
|
||||
-- & itUse . uequipEffect . eeOnRemove .~ ECamouflage FullyVisible
|
||||
& itType .~ EQUIP (INVISIBILITYEQUIPMENT GoesOnWrist)
|
||||
|
||||
pulseChecker :: Item
|
||||
|
||||
Reference in New Issue
Block a user