Implement simple flak and frag bullets

This commit is contained in:
2023-01-12 15:48:32 +00:00
parent 3508d9c266
commit d08b6c5727
14 changed files with 133 additions and 42 deletions
+4 -4
View File
@@ -16,14 +16,14 @@ makeTypeCraftNum i ct =
makeTypeCraft :: CraftType -> Item
makeTypeCraft = makeTypeCraftNum 1
bulletPayloadCraft :: EnergyBallType -> Item
bulletPayloadCraft ebt =
makeTypeCraft (BULPAYLOADMODULE ebt)
energyBallCraft :: EnergyBallType -> Item
energyBallCraft ebt =
makeTypeCraft (ENERGYBALLCRAFT ebt)
& itInvSize .~ 1
& itInvColor .~ chartreuse
incendiaryModule :: Item
incendiaryModule = bulletPayloadCraft IncBall
incendiaryModule = energyBallCraft IncBall
bulletBodyCraft :: BulletEffect -> Item
bulletBodyCraft ebt =
+1
View File
@@ -257,6 +257,7 @@ bulletPayloadColor ebt = case ebt of
IncBall -> orange
TeslaBall -> cyan
ConcBall -> white
FlashBall -> yellow
volleyGunSPic :: Int -> Item -> SPic
volleyGunSPic i it =
+7 -2
View File
@@ -1,5 +1,6 @@
module Dodge.Item.Info where
import StringHelp
import Dodge.Module.Info
import Data.Char
import Dodge.Data.Item
@@ -182,10 +183,11 @@ craftInfo fit = case fit of
BATTERY -> "A store of electical potential energy."
FUELCELL -> "A devices that converts chemical energy into electricity."
PORTABLEFUSION -> "A miniature nuclear reactor."
BULPAYLOADMODULE ebt -> "A device that converts projectiles into " ++ displayBulletPayload ebt ++ " projectiles."
GASINJECTOR -> "A device that can inject small quantities of gas into objects."
ENERGYBALLCRAFT ebt -> "A device that can create " ++ addIndefiniteArticle (displayEnergyBallType ebt) ++ " effect."
FRAGMODULE -> "A device that converts projectiles into fragmentation projectiles."
FLASHMODULE -> "A device that converts projectiles into flashbang projectiles."
BULBODYCRAFT be -> "A device that converts projectiles into " ++ displayBulletBody be ++ " projectiles."
BULBODYCRAFT be -> "A device that converts bullets into " ++ displayBulletBody be ++ " 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."
@@ -193,6 +195,9 @@ craftInfo fit = case fit of
TARGETMODULE _ -> "A targeting module."
FLAKCRAFT -> "Creates flak bullets."
FRAGCRAFT -> "Creates fragmentation bullets."
detectorInfo :: Detector -> String
detectorInfo d = case d of
+1
View File
@@ -1,6 +1,7 @@
module Dodge.Item.Weapon.Bullet (
basicBullet,
hvBullet,
defaultBullet,
) where
import Dodge.Data.Item.Use.Consumption.Ammo