H.O.N.K. mech (#14670)

Co-authored-by: deltanedas <@deltanedas:kde.org>
This commit is contained in:
deltanedas
2023-05-05 13:21:13 +00:00
committed by GitHub
parent 19b313b218
commit bc101e1fb5
49 changed files with 822 additions and 8 deletions

View File

@@ -312,6 +312,27 @@
- RipleyLLeg
- RipleyRLeg
- type: technology
name: technologies-clown-technology
id: ClownTechnology
description: technologies-clown-technology-description
icon:
sprite: Objects/Specific/Mech/mecha.rsi
state: honker
requiredPoints: 15000
requiredTechnologies:
- RipleyTechnology
unlockedRecipes:
- HonkerCentralElectronics
- HonkerPeripheralsElectronics
- HonkerTargetingElectronics
- MechEquipmentHorn
- HonkerHarness
- HonkerLArm
- HonkerRArm
- HonkerLLeg
- HonkerRLeg
# Industrial Engineering Technology Tree
- type: technology

View File

@@ -172,6 +172,10 @@
sprite: Clothing/Mask/clown.rsi
- type: BreathMask
- type: IdentityBlocker
# for H.O.N.K. construction
- type: Tag
tags:
- ClownMask
- type: entity
parent: ClothingMaskBase

View File

@@ -22,6 +22,10 @@
- type: FootstepModifier
footstepSoundCollection:
collection: FootstepClown
# for H.O.N.K. construction
- type: Tag
tags:
- ClownShoes
- type: entity
parent: ClothingShoesBaseButcherable

View File

@@ -1,3 +1,5 @@
# Ripley
- type: entity
id: RipleyCentralElectronics
parent: BaseElectronics
@@ -22,4 +24,45 @@
state: id_mod
- type: Tag
tags:
- RipleyPeripheralsControlModule
- RipleyPeripheralsControlModule
# H.O.N.K.
- type: entity
id: HonkerCentralElectronics
parent: BaseElectronics
name: H.O.N.K. central control module
description: The electrical control center for the H.O.N.K. mech.
components:
- type: Sprite
sprite: Objects/Misc/module.rsi
state: mainboard
- type: Tag
tags:
- HonkerCentralControlModule
- type: entity
id: HonkerPeripheralsElectronics
parent: BaseElectronics
name: H.O.N.K. peripherals control module
description: The electrical peripherals control for the H.O.N.K. mech.
components:
- type: Sprite
sprite: Objects/Misc/module.rsi
state: id_mod
- type: Tag
tags:
- HonkerPeripheralsControlModule
- type: entity
id: HonkerTargetingElectronics
parent: BaseElectronics
name: H.O.N.K. weapon control and targeting module
description: The electrical targeting control for the H.O.N.K. mech.
components:
- type: Sprite
sprite: Objects/Misc/module.rsi
state: id_mod
- type: Tag
tags:
- HonkerTargetingControlModule

View File

@@ -39,6 +39,11 @@
damage:
types:
Blunt: 0
- type: Tool
qualities:
- Honking
useSound:
collection: BikeHorn
- type: entity
parent: BaseItem

View File

@@ -150,3 +150,132 @@
graph: Ripley
node: start
defaultTarget: ripley
# H.O.N.K.
- type: entity
id: BaseHonkerPart
parent: BaseMechPart
abstract: true
components:
- type: Sprite
drawdepth: Items
noRot: false
netsync: false
sprite: Objects/Specific/Mech/honker_construction.rsi
- type: entity
id: BaseHonkerPartItem
parent: BaseHonkerPart
abstract: true
components:
- type: Item
size: 50
- type: entity
parent: BaseHonkerPart
id: HonkerHarness
name: H.O.N.K. harness
description: The core of the H.O.N.K. mech
components:
- type: Appearance
- type: ItemMapper
mapLayers:
honker_l_arm+o:
whitelist:
tags:
- HonkerLArm
honker_r_arm+o:
whitelist:
tags:
- HonkerRArm
honker_l_leg+o:
whitelist:
tags:
- HonkerLLeg
honker_r_leg+o:
whitelist:
tags:
- HonkerRLeg
sprite: Objects/Specific/Mech/honker_construction.rsi
- type: ContainerContainer
containers:
mech-assembly-container: !type:Container
- type: MechAssembly
finishedPrototype: HonkerChassis
requiredParts:
HonkerLArm: false
HonkerRArm: false
HonkerLLeg: false
HonkerRLeg: false
- type: Sprite
state: honker_harness+o
noRot: true
- type: entity
parent: BaseHonkerPartItem
id: HonkerLArm
name: H.O.N.K. left arm
description: A H.O.N.K. left arm, with unique sockets that accept odd weaponry designed by clown scientists.
components:
- type: Sprite
state: honker_l_arm
- type: Tag
tags:
- HonkerLArm
- type: entity
parent: BaseHonkerPartItem
id: HonkerLLeg
name: H.O.N.K. left leg
description: A H.O.N.K. left leg. The foot appears just large enough to fully accommodate a clown shoe.
components:
- type: Sprite
state: honker_l_leg
- type: Tag
tags:
- HonkerLLeg
- type: entity
parent: BaseHonkerPartItem
id: HonkerRLeg
name: H.O.N.K. right leg
description: A H.O.N.K. right leg. The foot appears just large enough to fully accommodate a clown shoe.
components:
- type: Sprite
state: honker_r_leg
- type: Tag
tags:
- HonkerRLeg
- type: entity
parent: BaseHonkerPartItem
id: HonkerRArm
name: H.O.N.K. right arm
description: A H.O.N.K. right arm, with unique sockets that accept odd weaponry designed by clown scientists.
components:
- type: Sprite
state: honker_r_arm
- type: Tag
tags:
- HonkerRArm
- type: entity
id: HonkerChassis
parent: BaseHonkerPart
name: H.O.N.K. chassis
description: An in-progress construction of a H.O.N.K. mech. Contains chuckle unit, bananium core and honk support systems.
components:
- type: Appearance
- type: ContainerContainer
containers:
battery-container: !type:Container
- type: MechAssemblyVisuals
statePrefix: honker
- type: Sprite
noRot: true
state: honker0
- type: Construction
graph: Honker
node: start
defaultTarget: honker

View File

@@ -23,4 +23,27 @@
ui: !type:MechGrabberUi
- type: ContainerContainer
containers:
item-container: !type:Container
item-container: !type:Container
- type: entity
id: MechEquipmentHorn
parent: BaseMechEquipment
name: mech horn
description: An enhanced bike horn that plays a hilarious array of sounds for the enjoyment of the crew. HONK!
components:
- type: Sprite
# TODO: use own sprite
state: mecha_honker
- type: MechSoundboard
sounds:
- collection: BikeHorn
- collection: CluwneHorn
- collection: TrollAnimals
- collection: TrollBeeping
- collection: TrollEsword
- collection: TrollMeeting
- type: UIFragment
ui: !type:MechSoundboardUi
- type: UseDelay
delay: 0.5
# TODO: tag as being for H.O.N.K. only!!!

View File

@@ -103,3 +103,37 @@
containers:
mech-battery-slot:
- PowerCellHigh
# TODO: have a whitelist for honker equipment
- type: entity
id: MechHonker
parent: BaseMech
name: H.O.N.K.
description: "Produced by \"Tyranny of Honk, INC\", this exosuit is designed as heavy clown-support. Used to spread the fun and joy of life. HONK!"
components:
- type: Sprite
netsync: false
drawdepth: Mobs
noRot: true
sprite: Objects/Specific/Mech/mecha.rsi
layers:
- map: [ "enum.MechVisualLayers.Base" ]
state: honker
- type: FootstepModifier
footstepSoundCollection:
collection: FootstepClown
- type: Mech
baseState: honker
openState: honker-open
brokenState: honker-broken
mechToPilotDamageMultiplier: 0.5
- type: entity
id: MechHonkerBattery
parent: MechHonker
suffix: Battery
components:
- type: ContainerFill
containers:
mech-battery-slot:
- PowerCellHigh

View File

@@ -313,6 +313,9 @@
- OreProcessorMachineCircuitboard
- RipleyCentralElectronics
- RipleyPeripheralsElectronics
- HonkerCentralElectronics
- HonkerPeripheralsElectronics
- HonkerTargetingElectronics
- GeneratorPlasmaMachineCircuitboard
- GeneratorUraniumMachineCircuitboard
- WallmountGeneratorElectronics
@@ -373,6 +376,12 @@
- RipleyLLeg
- RipleyRLeg
- MechEquipmentGrabber
- HonkerHarness
- HonkerLArm
- HonkerRArm
- HonkerLLeg
- HonkerRLeg
- MechEquipmentHorn
- type: MaterialStorage
whitelist:
tags:

View File

@@ -0,0 +1,116 @@
- type: constructionGraph
id: Honker
start: start
graph:
- node: start
edges:
- to: honker
steps:
- tool: Honking
doAfter: 1
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 1
- tag: HonkerCentralControlModule
name: H.O.N.K. central control module
icon:
sprite: "Objects/Misc/module.rsi"
state: "mainboard"
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 2
- tool: Honking
doAfter: 1
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 3
- tag: HonkerPeripheralsControlModule
name: H.O.N.K. peripherals control module
icon:
sprite: "Objects/Misc/module.rsi"
state: id_mod
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 4
- tool: Honking
doAfter: 1
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 5
- tag: HonkerTargetingControlModule
name: H.O.N.K. weapon control and targeting module
icon:
sprite: "Objects/Misc/module.rsi"
state: id_mod
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 6
- tool: Honking
doAfter: 1
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 7
#i omitted the steps involving inserting machine parts because
#currently mechs don't support upgrading. add them back in once that's squared away.
- component: PowerCell
name: power cell
store: battery-container
icon:
sprite: Objects/Power/power_cells.rsi
state: small
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 8
- tool: Honking
doAfter: 1
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 9
- tag: ClownMask
icon:
sprite: "Clothing/Mask/clown.rsi"
state: "icon"
name: "a clown's mask"
doAfter: 1
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 10
- tag: ClownShoes
icon:
sprite: "Clothing/Shoes/Specific/clown.rsi"
state: "icon"
name: "a clown's shoes"
doAfter: 1
completed:
- !type:VisualizerDataInt
key: "enum.MechAssemblyVisuals.State"
data: 11
- tool: Honking
doAfter: 1
- node: honker
actions:
- !type:BuildMech
mechPrototype: MechHonker

View File

@@ -327,6 +327,33 @@
Glass: 900
Gold: 100
- type: latheRecipe
id: HonkerCentralElectronics
result: HonkerCentralElectronics
completetime: 4
materials:
Steel: 100
Glass: 900
Bananium: 100
- type: latheRecipe
id: HonkerPeripheralsElectronics
result: HonkerPeripheralsElectronics
completetime: 4
materials:
Steel: 100
Glass: 900
Bananium: 100
- type: latheRecipe
id: HonkerTargetingElectronics
result: HonkerTargetingElectronics
completetime: 4
materials:
Steel: 100
Glass: 900
Bananium: 100
# Power
- type: latheRecipe
id: APCElectronics

View File

@@ -1,3 +1,4 @@
# Ripley
- type: latheRecipe
id: RipleyHarness
result: RipleyHarness
@@ -45,3 +46,57 @@
materials:
Steel: 500
Plastic: 200
# H.O.N.K.
- type: latheRecipe
id: HonkerHarness
result: HonkerHarness
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
id: HonkerLArm
result: HonkerLArm
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
id: HonkerLLeg
result: HonkerLLeg
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
id: HonkerRLeg
result: HonkerRLeg
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
id: HonkerRArm
result: HonkerRArm
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
id: MechEquipmentHorn
result: MechEquipmentHorn
completetime: 10
materials:
Steel: 500
Bananium: 200

View File

@@ -0,0 +1,43 @@
# various troll sounds for H.O.N.K.
- type: soundCollection
id: TrollAnimals
files:
- /Audio/Animals/bear.ogg
- /Audio/Animals/cat_hiss.ogg
- /Audio/Animals/cat_meow.ogg
- /Audio/Animals/chicken_cluck_happy.ogg
- /Audio/Animals/cow_moo.ogg
- /Audio/Animals/duck_quack_happy.ogg
- /Audio/Animals/ferret_happy.ogg
- /Audio/Animals/fox_squeak.ogg
- /Audio/Animals/frog_ribbit.ogg
- /Audio/Animals/goat_bah.ogg
- /Audio/Animals/goose_honk.ogg
- /Audio/Animals/lizard_happy.ogg
- /Audio/Animals/monkey_scream.ogg
- /Audio/Animals/mouse_squeak.ogg
- /Audio/Animals/parrot_raught.ogg
- /Audio/Animals/penguin_squawk.ogg
- /Audio/Animals/pig_oink.ogg
- /Audio/Animals/raccoon_chatter.ogg
- /Audio/Animals/sloth_squeak.ogg
- /Audio/Animals/small_dog_bark_happy.ogg
- /Audio/Animals/snake_hiss.ogg
- /Audio/Animals/space_dragon_roar.ogg
- type: soundCollection
id: TrollBeeping
files:
- /Audio/Effects/countdown.ogg
- type: soundCollection
id: TrollEsword
files:
- /Audio/Weapons/ebladeoff.ogg
- /Audio/Weapons/ebladeon.ogg
- /Audio/Weapons/eblade1.ogg
- type: soundCollection
id: TrollMeeting
files:
- /Audio/Misc/emergency_meeting.ogg

View File

@@ -141,10 +141,7 @@
id: CigPack
- type: Tag
id: HardsuitEVA
- type: Tag
id: HelmetEVA
id: ClownMask
- type: Tag
id: ClownRecorder
@@ -152,6 +149,9 @@
- type: Tag
id: ClownRubberStamp
- type: Tag
id: ClownShoes
- type: Tag
id: CluwneHorn
@@ -327,9 +327,15 @@
- type: Tag
id: Hardsuit # Prevent melee injectors that can't penetrate hardsuits from injecting the wearer (nettles)
- type: Tag
id: HardsuitEVA
- type: Tag
id: Head
- type: Tag
id: HelmetEVA
- type: Tag
id: HideContextMenu
@@ -348,6 +354,27 @@
- type: Tag
id: HolosignProjector
- type: Tag
id: HonkerCentralControlModule
- type: Tag
id: HonkerPeripheralsControlModule
- type: Tag
id: HonkerTargetingControlModule
- type: Tag
id: HonkerLArm
- type: Tag
id: HonkerLLeg
- type: Tag
id: HonkerRLeg
- type: Tag
id: HonkerRArm
- type: Tag #Drop this innate tool instead of deleting it.
id: InnateDontDelete

View File

@@ -53,3 +53,10 @@
toolName: tool-quality-sawing-tool-name
spawn: Saw
icon: { sprite: Objects/Specific/Medical/Surgery/saw.rsi, state: saw }
- type: tool
id: Honking
name: tool-quality-honking-name
toolName: tool-quality-honking-tool-name
spawn: BikeHorn
icon: { sprite: Objects/Fun/bikehorn.rsi, state: icon }