Fix crWallCollisions by using a rectangle zone instead of a point
This commit is contained in:
+15
-19
@@ -8,7 +8,7 @@ itmInfo :: Item -> String
|
||||
itmInfo itm = itmBaseInfo itm ++ " " ++ itmUsageInfo itm
|
||||
|
||||
itmBaseInfo :: Item -> String
|
||||
itmBaseInfo itm = case (itm ^. itType . iyBase) of
|
||||
itmBaseInfo itm = case itm ^. itType . iyBase of
|
||||
HELD hit -> heldInfo hit
|
||||
LEFT lit -> leftInfo lit
|
||||
EQUIP eit -> equipInfo eit
|
||||
@@ -35,13 +35,13 @@ showInt i = case i of
|
||||
|
||||
heldInfo :: HeldItemType -> String
|
||||
heldInfo hit = case hit of
|
||||
BANGSTICK 1 -> "A MAKESHIFT FIREARM WITH A SHORT BARREL THAT REQUIRES RELOADING AFTER EACH SHOT."
|
||||
BANGSTICK 1 -> "A 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."
|
||||
PISTOL -> "A SMALL FIREARM FED BY A 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."
|
||||
MACHINEPISTOL -> "A SMALL FIREARM AUTOMATICALLY, AND EXTREMELY RAPIDLY, FED BY A MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
AUTOPISTOL -> "A SMALL FIREARM AUTOMATICALLY FED BY A 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."
|
||||
@@ -49,17 +49,17 @@ heldInfo hit = case hit of
|
||||
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."
|
||||
RIFLE -> "A FIREARM WITH A MID LENGTH BARREL THAT REQUIRES RELOADING AFTER EACH SHOT."
|
||||
REPEATER -> "A FIREARM FED BY A MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
AUTORIFLE -> "A FIREARM AUTOMATICALLY FED BY A MAGAZINE. THE ENTIRE MAGAZINE MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
BURSTRIFLE -> "A FIREARM THAT RAPIDLY FIRES THREE PROJECTILES FROM ITS 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."
|
||||
AMR -> "AN ANTIMATERIEL RIFLE, DESIGNED TO DISABLE MILITARY EQUIPMENT. ITS LONG BARREL IS FED BY A MAGAZINE THAT MUST BE REPLACED WHEN RELOADING THE WEAPON."
|
||||
AUTOAMR -> "AN AUTOMATIC ANTIMATERIEL RIFLE, DESIGNED TO DISABLE MILITARY EQUIPMENT. ITS LONG BARREL IS FED BY A 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."
|
||||
FLAMESPITTER -> "A WEAPON THAT GLOBS OUT 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."
|
||||
@@ -182,7 +182,7 @@ detectorInfo d = case d of
|
||||
WALLDETECTOR -> "WALLS"
|
||||
|
||||
itmUsageInfo :: Item -> String
|
||||
itmUsageInfo itm = case (itm ^. itType . iyBase) of
|
||||
itmUsageInfo itm = case itm ^. itType . iyBase of
|
||||
HELD _ -> heldPositionInfo itm
|
||||
LEFT _ -> "THIS ITEM CAN BE EQUIPPED" ++ itmEquipSiteInfo itm
|
||||
++ ". WHEN EQUIPPED, IT CAN BE ACTIVATED."
|
||||
@@ -192,9 +192,7 @@ itmUsageInfo itm = case (itm ^. itType . iyBase) of
|
||||
_ -> "THIS SHOULD NOT BE DISPLAYED"
|
||||
|
||||
heldPositionInfo :: Item -> String
|
||||
heldPositionInfo itm = case itm ^? itUse . heldAim . aimStance of
|
||||
Nothing -> undefined
|
||||
Just as -> aimStanceInfo as
|
||||
heldPositionInfo = maybe undefined aimStanceInfo . (^? itUse . heldAim . aimStance)
|
||||
|
||||
aimStanceInfo :: AimStance -> String
|
||||
aimStanceInfo as = case as of
|
||||
@@ -204,9 +202,7 @@ aimStanceInfo as = case as of
|
||||
LeaveHolstered -> "IT IS TO BE LEFT HOLSTERED."
|
||||
|
||||
itmEquipSiteInfo :: Item -> String
|
||||
itmEquipSiteInfo itm = case itm ^? itUse . equipEffect . eeSite of
|
||||
Nothing -> ""
|
||||
Just es -> equipSiteInfo es
|
||||
itmEquipSiteInfo = maybe "" equipSiteInfo . (^? itUse . equipEffect . eeSite)
|
||||
|
||||
equipSiteInfo :: EquipSite -> String
|
||||
equipSiteInfo es = case es of
|
||||
|
||||
Reference in New Issue
Block a user