Start more sensibly separating avatar from ai creatures

This commit is contained in:
2024-12-17 19:55:07 +00:00
parent 234b10df40
commit d0ef2628ce
23 changed files with 392 additions and 368 deletions
+1 -1
View File
@@ -78,7 +78,7 @@ shellMag =
{ _iaMax = 1
, _iaLoaded = 1
}
, _amagType = ProjectileAmmo
, _amagType = LauncherAmmo
}
megaBattery :: Item
+1
View File
@@ -65,6 +65,7 @@ fractionLoadedAmmo rs = fromIntegral (_iaLoaded rs) / fromIntegral (_iaMax rs)
equipItemSPic :: EquipItemType -> Item -> SPic
equipItemSPic et _ = case et of
PULSECHECKER -> defSPic
MAGSHIELD -> defSPic
FLAMESHIELD -> defSPic
FRONTARMOUR -> defSPic
+7
View File
@@ -15,6 +15,7 @@ module Dodge.Item.Equipment (
speedLegs,
jumpLegs,
flameShield,
pulseChecker,
) where
import Geometry.Data
@@ -123,3 +124,9 @@ wristInvisibility =
& itUse . uequipEffect . eeOnEquip .~ ECamouflage Invisible
& itUse . uequipEffect . eeOnRemove .~ ECamouflage FullyVisible
& itType .~ EQUIP (INVISIBILITYEQUIPMENT GoesOnWrist)
pulseChecker :: Item
pulseChecker =
defaultEquipment
& itUse . uequipEffect . eeSite .~ GoesOnWrist
& itType .~ EQUIP PULSECHECKER
+1 -1
View File
@@ -88,7 +88,7 @@ itemToFunction itm = case itm ^. itType of
ATTACH REMOTESCREEN -> RemoteScreenSF
ATTACH BULLETSYNTH -> AmmoModifierSF BulletAmmo
ATTACH ZOOMSCOPE -> WeaponScopeSF
ATTACH HOMINGMODULE -> AmmoTargetingSF ProjectileAmmo
ATTACH HOMINGMODULE -> AmmoTargetingSF LauncherAmmo
ATTACH AUGMENTEDHUD -> AugmentedHUDSF
BULLETMOD BulletModTrajectory{} -> AmmoTargetingSF BulletAmmo
BULLETMOD BulletModPayload{} -> AmmoPayloadSF BulletAmmo
+2 -2
View File
@@ -18,7 +18,7 @@ launcher =
& itUse . heldAim . aimStance .~ TwoHandOver
& itUse . heldAim . aimMuzzles . ix 0 . mzInaccuracy .~ 0
& itUse . heldAim . aimMuzzles . ix 0 . mzEffect .~ MuzzleLauncher
& itAmmoSlots .~ singleAmmo ProjectileAmmo
& itAmmoSlots .~ singleAmmo LauncherAmmo
& itType .~ HELD LAUNCHER
& itUse . heldParams . muzVel .~ ConstFloat 0
& itUse . heldParams . rifling .~ ConstFloat 0
@@ -36,6 +36,6 @@ launcherX i =
<*> pure DefaultFlareType
<*> pure MuzzleLauncher
)
& itAmmoSlots .~ IM.fromList [(j,ProjectileAmmo) | j <- [0..i-1]]
& itAmmoSlots .~ IM.fromList [(j,LauncherAmmo) | j <- [0..i-1]]
where
angles = take i [0,2*pi/ fromIntegral i ..]
+1
View File
@@ -119,6 +119,7 @@ equipInfo eit = case eit of
BULLETBELTBRACER -> "A container holding a long belt of bullets."
BATTERYPACK -> "A collection of batteries with a universal adapter."
AUTODETECTOR d -> "A device that detects " ++ detectorInfo d ++ " in an expanding radius. Pulses automatically. "
PULSECHECKER -> "A device that detects heartbeats."
--targetingInfo :: TargetingType -> String
--targetingInfo tt = case tt of