Add various item info
This commit is contained in:
@@ -43,7 +43,12 @@ equipItemSPic et _ = case et of
|
||||
JETPACK ->
|
||||
(,) emptySH $
|
||||
setDepth 20 $
|
||||
pictures [color yellow $ polygon $ reverse $ rectNSWE 5 (-5) (-11) (-3)]
|
||||
pictures [color yellow $ polygon $ reverse $ rectNSWE 5 (-5) (-4) (-4)]
|
||||
FUELPACK ->
|
||||
(,) emptySH $
|
||||
setDepth 20 $
|
||||
--pictures [color yellow $ polygon $ reverse $ rectNSWE 5 (-5) (-11) (-3)]
|
||||
pictures [color yellow $ polygon $ reverse $ polyCirc 3 5]
|
||||
AUTODETECTOR dt -> noPic (colorSH (detectorColor dt) $ upperPrismPoly 3 $ rectWH 2 2)
|
||||
|
||||
leftItemSPic :: LeftItemType -> Item -> SPic
|
||||
|
||||
@@ -9,6 +9,7 @@ module Dodge.Item.Equipment (
|
||||
frontArmour,
|
||||
headLamp,
|
||||
jetPack,
|
||||
fuelPack,
|
||||
speedLegs,
|
||||
jumpLegs,
|
||||
flameShield,
|
||||
@@ -49,6 +50,11 @@ wristArmour =
|
||||
& itUse . equipEffect . eeOnRemove .~ EoffWristShield
|
||||
& itType . iyBase .~ EQUIP WRISTARMOUR
|
||||
|
||||
fuelPack :: Item
|
||||
fuelPack =
|
||||
defaultEquipment
|
||||
& itUse . equipEffect . eeSite .~ GoesOnBack
|
||||
& itType . iyBase .~ EQUIP FUELPACK
|
||||
|
||||
jetPack :: Item
|
||||
jetPack =
|
||||
|
||||
+232
-7
@@ -1,12 +1,237 @@
|
||||
module Dodge.Item.Info where
|
||||
|
||||
import Dodge.Data.Item
|
||||
import qualified Data.Map.Strict as M
|
||||
import LensHelp
|
||||
|
||||
itmBaseInfo :: ItemBaseType -> String
|
||||
itmBaseInfo t = case t of
|
||||
HELD _ -> "THIS ITEM CAN BE HELD."
|
||||
LEFT _ -> "THIS ITEM CAN BE EQUIPPED. WHEN EQUIPPED, IT CAN BE ACTIVATED."
|
||||
EQUIP _ -> "THIS ITEM CAN BE EQUIPPED."
|
||||
Consumable _ -> "THIS ITEM CAN BE CONSUMED."
|
||||
CRAFT _ -> "THIS ITEM SEEMS USELESS ON ITS OWN."
|
||||
itmInfo :: Item -> String
|
||||
itmInfo itm = itmBaseInfo itm ++ " " ++ itmUsageInfo itm
|
||||
|
||||
itmBaseInfo :: Item -> String
|
||||
itmBaseInfo itm = case (itm ^. itType . iyBase) of
|
||||
HELD hit -> heldInfo hit
|
||||
LEFT lit -> leftInfo lit
|
||||
EQUIP eit -> equipInfo eit
|
||||
Consumable cit -> consumableInfo cit
|
||||
CRAFT fit -> craftInfo fit
|
||||
_ -> "THIS SHOULD NOT BE DISPLAYED"
|
||||
|
||||
showInt :: Int -> String
|
||||
showInt i = case i of
|
||||
0 -> "ZERO"
|
||||
1 -> "ONE"
|
||||
2 -> "TWO"
|
||||
3 -> "THREE"
|
||||
4 -> "FOUR"
|
||||
5 -> "FIVE"
|
||||
6 -> "SIX"
|
||||
7 -> "SEVEN"
|
||||
8 -> "EIGHT"
|
||||
9 -> "NINE"
|
||||
10 -> "TEN"
|
||||
11 -> "ELEVEN"
|
||||
12 -> "A DOZEN"
|
||||
_ -> "MANY"
|
||||
|
||||
heldInfo :: HeldItemType -> String
|
||||
heldInfo hit = case hit of
|
||||
BANGSTICK 1 -> "A MAKESHIFT FIREARM WITH A SHORT BARREL THAT REQUIRES RELOADING AFTER EACH SHOT."
|
||||
BANGSTICK i -> showInt i++" SMALL GUN BARRELS STRAPPED TOGETHER. EACH BARREL MUST BE INDIVIDUALLY LOADED, BUT NOT ALL NEED BE LOADED FOR THE WEAPON TO FIRE. ALL LOADED BARRELS DISCHARGE SIMULATNEOUSLY, WITH SIGNIFICANT SPREAD."
|
||||
PISTOL -> "A SMALL FIREARM FED BY A MAKESHIFT MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
REVOLVER -> "A SMALL FIREARM FED BY A REVOLVING CYLINDER. SINGLE SHOT AND LOAD."
|
||||
REVOLVERX i -> "A SMALL FIREARM FED BY "++ showInt i++ "REVOLVING CYLINDERS."
|
||||
MACHINEPISTOL -> "A SMALL FIREARM AUTOMATICALLY, AND EXTREMELY RAPIDLY, FED BY A MAKESHIFT MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
AUTOPISTOL -> "A SMALL FIREARM AUTOMATICALLY FED BY A MAKESHIFT MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
SMG -> "A SMALL FIREARM WITH AN ATTACHED STOCK FOR STABILITY."
|
||||
BANGCONE -> "A CONTAINER FOR DEBRIS. EXPOSIVE ACTION PROPELS THE DEBRIS AWAY FROM THE USER. QUITE UNWEILDY."
|
||||
BLUNDERBUSS -> "A CONTAINER FOR DEBRIS ON THE END OF A STICK. EXPLOSIVE ACTION PROPELS THE DEBRIS AWAY FROM THE USER."
|
||||
GRAPECANNON 1 -> "A LARGE CONTAINER FOR DEBRIS ON THE END OF A STICK. EXPLOSIVE ACTION PROPELS THE DEBRIS AWAY FROM THE USER."
|
||||
GRAPECANNON i -> "AN "++ replicate (i-1) 'X' ++"L CONTAINER FOR DEBRIS ON THE END OF A STICK. EXPLOSIVE ACTION PROPELS THE DEBRIS AWAY FROM THE USER."
|
||||
MINIGUNX i -> showInt i ++ " GUN BARRELS THAT REVOLVE RAPIDLY AROUND A CENTRAL STICK. REQUIRES CONSIDERABLE TIME TO WARM UP, BUT HAS AN EXTREMELY RAPID RATE OF FIRE. IT IS ALSO EXTREMELY DIFFICULT TO STABILISE."
|
||||
VOLLEYGUN i -> showInt i ++ " GUN BARRELS LINED UP TO BE ROUGHLY PARALLEL. EACH BARREL MUST BE INDIVIDUALLY LOADED, BUT NOT ALL NEED BE LOADED FOR THE WEAPON TO FIRE. ALL LOADED BARRELS DISCHARGE SIMULTANEOUSLY."
|
||||
RIFLE -> "A MAKESHIFT FIREARM WITH A MID LENGTH BARREL THAT REQUIRES RELOADING AFTER EACH SHOT."
|
||||
REPEATER -> "A FIREARM FED BY A MAKESHIFT MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
AUTORIFLE -> "A FIREARM AUTOMATICALLY FED BY A MAKESHIFT MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
BURSTRIFLE -> "A FIREARM THAT RAPIDLY FIRES THREE PROJECTILES FROM ITS MAKESHIFT MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
BANGROD -> "A FIREARM WITH A LONG BARREL THAT REQUIRES RELOADING AFTER EACH SHOT."
|
||||
ELEPHANTGUN -> "A FIREARM WITH A LONG BARREL THAT REQUIRES RELOADING AFTER EACH SHOT. ITS STOPPING POWER IS ONLY NOMINAL."
|
||||
AMR -> "A MAKESHIFT ANTIMATERIEL RIFLE, DESIGNED TO DISABLE MILITARY EQUIPMENT. ITS LONG BARREL IS FED BY A MAKESHIFT MAGAZINE THAT MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
AUTOAMR -> "A MAKESHIFT AUTOMATIC ANTIMATERIEL RIFLE, DESIGNED TO DISABLE MILITARY EQUIPMENT. ITS LONG BARREL IS FED BY A MAKESHIFT MAGAZINE THAT MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
SNIPERRIFLE -> "A FIREARM DESIGNED WITH LONG RANGE CAPABILITY IN MIND. ITS LONG BARREL REQUIRES RELOADING AFTER EACH SHOT."
|
||||
MACHINEGUN -> "A HEAVY FIREARM WHOSE RATE OF FIRE INCREASES DURING A BARRAGE."
|
||||
FLAMESPITTER -> "A WEAPON THAT SQUIRTS OUT GLOBULES OF BURNING FUEL."
|
||||
FLAMETHROWER -> "A WEAPON THAT SQUIRTS OUT BURNING FUEL."
|
||||
FLAMETORRENT -> "A WEAPON THAT STREAMS OUT BURNING FUEL IN A TORRENT."
|
||||
FLAMEWALL -> "A WEAPON THAT SQUIRTS OUT BURNING FUEL ALL AROUND THE USER."
|
||||
BLOWTORCH -> "A WEAPON THAT PRODUCES A CONCENTRATED FLAME."
|
||||
SPARKGUN -> "A WEAPON THAT PRODUCES AN ARC OF ELECTRICITY. THE ARC WILL ATTEMPT TO DISCHARGE AT A NEARBY OBJECT."
|
||||
TESLAGUN -> "A WEAPON THAT DISCHARGES A SUSTAINED ARC OF ELECTRICITY. THE ARC WILL ATTEMPT TO DISCHARGE AT A NEARBY OBJECT."
|
||||
LASGUN -> "A WEAPON THAT CONTINUOUSLY EMITS PHOTONS IN A NARROW BEAM."
|
||||
LASCIRCLE -> "A EXTENSIVE CONFIGURATION OF PRISMS AND MIRRORS THAT PRODUCES MULTIPLE LASER BEAMS AROUND ITS USER."
|
||||
DUALBEAM -> "A WEAPON THAT EMITS TWO BEAMS THAT CONVERGE AT A SELECTABLE POINT IN FRONT OF THE USER."
|
||||
LASWIDE _ -> "A WEAPON THAT CONTINUOUSLY EMITS PHOTONS IN A NARROW BEAM. THE BEAM EXPANDS AS THE WEAPON HEATS UP."
|
||||
TRACTORGUN -> "AN ITEM THAT PRODUCES A BEAM OF GRAVITONS."
|
||||
LAUNCHER -> "A LARGE TUBE THAT CAN LAUNCH SELF PROPELLED PROJECTILES. MOVING THE TUBE AFTER LAUNCH WILL CAUSE THE PROJECTILE TO SPIN."
|
||||
LAUNCHERX i -> showInt i++" TUBES THAT CAN LAUNCH SELF PROPELLED PROJECTILES. TUBES THAT DO NOT FACE FORWARD LAUNCH THEIR PROJECITLES AT AN ANGLE."
|
||||
REMOTELAUNCHER -> "A LARGE TUBE THAT CAN LAUNCH SELF PROPELLED PROJECTILES. CONTAINS A TRANSMITTER ALLOWING FOR REMOTE CONTROL OF LAUNCHED PROJECTILES."
|
||||
POISONSPRAYER -> "A WEAPON THAT RELEASES NOXIOUS GASES."
|
||||
DRONELAUNCHER -> "A DEVICE FOR LAUNCHING DRONES."
|
||||
SHATTERGUN -> "A SEISMIC DEVICE THAT SHATTERS HARD ITEMS IN ITS LINE OF FIRE."
|
||||
FORCEFIELDGUN -> "A DEVICE THAT PRODUCES A DURABLE FORCEFIELD."
|
||||
HELDDETECTOR d -> "A DEVICE THAT DETECTS "++detectorInfo d ++" IN AN EXPANDING RADIUS."
|
||||
TORCH -> "A STICK WITH A LIGHT ON THE END."
|
||||
FLATSHIELD -> "A PANEL OF METAL THAT BLOCKS UNWANTED OBJECTS FROM THE FRONT OF THE USER."
|
||||
KEYCARD i -> "A KEYCARD. IT IS LABELLED " ++ show i++ "."
|
||||
|
||||
leftInfo :: LeftItemType -> String
|
||||
leftInfo lit = case lit of
|
||||
BOOSTER -> "A DEVICE THAT ALLOWS TRAVEL AT SPEED."
|
||||
STOPWATCH -> "A DEVICE THAT TEMPORARILY PAUSES TIME."
|
||||
REWINDWATCH -> "A DEVICE THAT REWINDS TIME A SHORT AMOUNT."
|
||||
SCROLLWATCH -> "A DEVICE THAT CAN BE USED TO SCROLL THROUGH RECENT EVENTS."
|
||||
BLINKER -> "A DEVICE THAT ALLOWS LOCAL TELEPORTATION."
|
||||
BLINKERUNSAFE -> "A DEVICE THAT ALLOWS LOCAL TELEPORTATION. POTENTIALLY HAZARDOUS AROUND WALLS."
|
||||
SHRINKER -> "A DEVICE THAT SHRINKS THE USER."
|
||||
SPAWNER -> "A DEVICE THAT SPAWNS CREATURES."
|
||||
|
||||
equipInfo :: EquipItemType -> String
|
||||
equipInfo eit = case eit of
|
||||
MAGSHIELD -> "A DEVICE DESIGNED TO REPULSE NEARBY METALLIC OBJECTS."
|
||||
FLAMESHIELD -> "A DEVICE DESIGNED TO REPULSE NEARBY FLAMES."
|
||||
FRONTARMOUR -> "A DEVICE DESIGNED TO SHIELD FROM THE FRONT."
|
||||
WRISTARMOUR -> "A DEVICE THAT PROJECTS A FORCEFIELD."
|
||||
INVISIBILITYEQUIPMENT _ -> "A DEVICE THAT BENDS LIGHT AROUND ITS USER."
|
||||
BRAINHAT -> "AN IQ ENHANCER. USELESS."
|
||||
HAT -> "A HAT"
|
||||
HEADLAMP -> "A TORCH STRAPPED TO A HAT."
|
||||
POWERLEGS -> "STRENGTH ENHANCING LEGS."
|
||||
SPEEDLEGS -> "SPEED ENHANCING LEGS."
|
||||
JUMPLEGS -> "JUMP ENHANCING LEGS."
|
||||
|
||||
JETPACK -> "A DEVICE ENABLING FLIGHT."
|
||||
FUELPACK -> "A LIQUID CONTAINER WITH ATTACHED HOSE."
|
||||
|
||||
AUTODETECTOR d -> "A DEVICE THAT DETECTS "++detectorInfo d ++" IN AN EXPANDING RADIUS. PULSES AUTOMATICALLY. "
|
||||
|
||||
consumableInfo :: ConsumableItemType -> String
|
||||
consumableInfo cit = case cit of
|
||||
MEDKIT _ -> "A SELF-USE HEALING KIT."
|
||||
EXPLOSIVES -> "EXPLOSIVES."
|
||||
|
||||
craftInfo :: CraftType -> String
|
||||
craftInfo fit = case fit of
|
||||
PIPE -> "A RIGID CYLINDER."
|
||||
TUBE -> "A WIDE RIGID CYLINDER."
|
||||
HARDWARE -> "A COLLECTION OF EQUIPMENT AND DEVICES USEFUL FOR GENERAL CONSTRUCTION."
|
||||
SPRING -> "AN OBJECT THAT EXERTS AN OPPOSING FORCE WHEN COMPRESSED OR STRETCHED."
|
||||
|
||||
HOSE -> "A FLEXIBLE CYLINDER."
|
||||
TAPE -> "A STRIP OF MATERIAL WITH AN ADHESIVE SIDE."
|
||||
|
||||
CAN -> "A SMALL METAL CYLINDRICAL CONTAINER."
|
||||
TIN -> "A SMALL METAL CONTINER."
|
||||
STEELDRUM -> "A METAL CYLINDRICAL CONTAINER."
|
||||
PLANK -> "A STURDY PIECE OF WOOD."
|
||||
GLASSSHARD -> "A BROKEN PIECE OF GLASS."
|
||||
SCRAPMETAL -> "A BROKEN PIECE OF METAL."
|
||||
PUMP -> "A DEVICE THAT CAN CREATE PRESSURE."
|
||||
MOTOR -> "A DEVICE THAT CAN CREATE ROTATIONAL FORCE."
|
||||
TRANSFORMER -> "A DEVICE THAT CAN STEP UP OR DOWN VOLTAGE AND CURRENT."
|
||||
PRISM -> "AN OBJECT THAT REFRACTS LIGHT."
|
||||
THERMOMETER -> "AN OBJECT THAT MEASURES TEMPERATURE."
|
||||
LIGHTER -> "A DEVICE THAT CAN CREATE A SMALL FLAME."
|
||||
MAGNET -> "A DEVICE THAT ATTRACTS ACCORDING TO ITS DIPOLES."
|
||||
ANTIMATTER -> "A COLLECTION OF MATERIAL WITH INVERSE QUANTUM VALUES."
|
||||
PLATE -> "A FLAT RIGID SHEET."
|
||||
TRANSMITTER -> "A DEVICE THAT CAN EMIT RADIO SIGNALS."
|
||||
MICROCHIP -> "A MINITURIZED COLLECTION OF ELECTRONIC CIRCUITS."
|
||||
HARDDRIVE -> "A DEVICE DESIGNED TO STORE DATA WHEN UNPOWERED."
|
||||
RAM -> "A DEVICE THAT CAN STORE DATA WHEN POWERED."
|
||||
AIUNIT -> "A GENERAL PURPOSE ARTIFICIAL INTELLIGENCE UNIT."
|
||||
CAMERA -> "A DEVICE DESIGNED TO CAPTURE LIGHT SIGNALS."
|
||||
MINIDISPLAY -> "A DEVICE DESIGNED TO DISPLAY PICTURES."
|
||||
LED -> "A LIGHT EMITTING DIODE."
|
||||
NAILBOX -> "A BOX OF WOOD FASTENINGS."
|
||||
IRONBAR -> "A RIGID PIECE OF METAL."
|
||||
LIGHTSENSOR -> "A DEVICE THAT DETECTS PHOTONS."
|
||||
HEATSENSOR -> "AN OBJECT THAT DETECTS TEMPERATURE."
|
||||
SOUNDSENSOR -> "A DEVICE THAT DETECTS AIR VIBRATION."
|
||||
MICROPHONE -> "A DEVICE THAT MEASURES AIR VIBRATION."
|
||||
CREATURESENSOR -> "A DEVICE FOR DETECTING LIVING BEINGS."
|
||||
WIRE -> "A SMALL THIN OBJECT THAT CONDUCTS ELECTRICITY."
|
||||
BATTERY -> "A STORE OF ELECTICAL POTENTIAL ENERGY."
|
||||
FUELCELL -> "A DEVICES THAT CONVERTS CHEMICAL ENERGY INTO ELECTRICITY."
|
||||
PORTABLEFUSION -> "A MINIATURE NUCLEAR REACTOR."
|
||||
INCENDIARYMODULE -> "A DEVICE THAT CONVERTS PROJECTILES INTO INCENDIARY PROJECTILES."
|
||||
STATICMODULE -> "A DEVICE THAT CONVERTS PROJECTILES INTO ELECTROSTATIC PROJECTILES."
|
||||
CONCUSSMODULE -> "A DEVICE THAT CONVERTS PROJECTILES INTO CONCUSSIVE PROJECTILES."
|
||||
FRAGMODULE -> "A DEVICE THAT CONVERTS PROJECTILES INTO FRAGMENTATION PROJECTILES."
|
||||
FLASHMODULE -> "A DEVICE THAT CONVERTS PROJECTILES INTO FLASHBANG PROJECTILES."
|
||||
BOUNCEMODULE -> "A DEVICE THAT CONVERTS PROJECTILES INTO BOUNCING PROJECTILES."
|
||||
PENMODULE -> "A DEVICE THAT CONVERTS PROJECTILES INTO PENTRATING PROJECTILES."
|
||||
TELEPORTMODULE -> "A DEVICE THAT ALLOWS FOR NEAR-INSTANT TRANSLOCATION ACROSS SPACE."
|
||||
TIMEMODULE -> "A DEVICE THAT CAN AFFECT TEMPORALITY."
|
||||
SIZEMODULE -> "A DEVICE THAT CAN AFFECT PHYSICAL SIZE."
|
||||
GRAVITYMODULE -> "A DEVICE THAT CAN AFFECT GRAVITATIONAL FIELDS."
|
||||
|
||||
|
||||
detectorInfo :: Detector -> String
|
||||
detectorInfo d = case d of
|
||||
ITEMDETECTOR -> "ITEMS"
|
||||
CREATUREDETECTOR -> "CREATURES"
|
||||
WALLDETECTOR -> "WALLS"
|
||||
|
||||
itmUsageInfo :: Item -> String
|
||||
itmUsageInfo itm = case (itm ^. itType . iyBase) of
|
||||
HELD _ -> heldPositionInfo itm
|
||||
LEFT _ -> "THIS ITEM CAN BE EQUIPPED" ++ itmEquipSiteInfo itm
|
||||
++ ". WHEN EQUIPPED, IT CAN BE ACTIVATED."
|
||||
EQUIP _ -> "THIS ITEM CAN BE EQUIPPED " ++ itmEquipSiteInfo itm ++ "."
|
||||
Consumable _ -> "THIS ITEM CAN BE CONSUMED."
|
||||
CRAFT _ -> ""
|
||||
_ -> "THIS SHOULD NOT BE DISPLAYED"
|
||||
|
||||
heldPositionInfo :: Item -> String
|
||||
heldPositionInfo itm = case itm ^? itUse . heldAim . aimStance of
|
||||
Nothing -> undefined
|
||||
Just as -> aimStanceInfo as
|
||||
|
||||
aimStanceInfo :: AimStance -> String
|
||||
aimStanceInfo as = case as of
|
||||
TwoHandTwist -> "IT IS HELD IN TWO HANDS ALONG ITS LENGTH."
|
||||
TwoHandFlat -> "IT IS HELD IN TWO HANDS AT ITS SIDES."
|
||||
OneHand -> "IT IS HELD IN ONE HAND."
|
||||
LeaveHolstered -> "IT IS TO BE LEFT HOLSTERED."
|
||||
|
||||
itmEquipSiteInfo :: Item -> String
|
||||
itmEquipSiteInfo itm = case itm ^? itUse . equipEffect . eeSite of
|
||||
Nothing -> ""
|
||||
Just es -> equipSiteInfo es
|
||||
|
||||
equipSiteInfo :: EquipSite -> String
|
||||
equipSiteInfo es = case es of
|
||||
GoesOnHead -> " ON THE HEAD"
|
||||
GoesOnChest -> " ON THE CHEST"
|
||||
GoesOnBack -> " ON THE BACK"
|
||||
GoesOnWrist -> " ON A WRIST"
|
||||
GoesOnLegs -> " ON BOTH LEGS"
|
||||
GoesOnSpecial -> " IN A UNIQUE LOCATION"
|
||||
|
||||
itmModuleInfo :: M.Map ModuleSlot ItemModuleType -> String
|
||||
itmModuleInfo m
|
||||
| m == mempty = "IT CANNOT BE MODIFIED WITHOUT CHANGING ITS FORM ENTIRELY."
|
||||
| otherwise = "IT CAN BE MODIFIED "
|
||||
|
||||
moduleInfo :: ModuleSlot -> String
|
||||
moduleInfo imt = case imt of
|
||||
ModBullet -> "WITH A NEW BULLET TYPE"
|
||||
ModBulletSpawn -> "TO CHANGE ITS BULLET PAYLOAD"
|
||||
ModRifleMag -> "TO CHANGE ITS MAGAZINE"
|
||||
ModAutoMag -> "TO CHANGE ITS MAGAZINE"
|
||||
ModTarget -> "BY ADDING A TARGETING SYSTEM"
|
||||
ModBulletTrajectory -> "TO CHANGE THE TRAJECTORY OF FIRED BULLETS"
|
||||
ModLauncherHoming -> "TO CHANGE ITS HOMING SYSTEM"
|
||||
ModBattery -> "TO CHANGE ITS BATTERY SYSTEM"
|
||||
ModTeleport -> "TO CHANGE ITS TELEPORT SYSTEM"
|
||||
ModDualBeam -> "TO CHANGE ITS DUAL BEAMS"
|
||||
ModHeldAttach -> "BY ADDING AN ATTACHEMENT"
|
||||
|
||||
Reference in New Issue
Block a user