Merge pull request #865 from Zumorica/2020-04-28-tool-component

Tool refactor, multi tools
This commit is contained in:
Víctor Aguilera Puerto
2020-05-24 13:42:02 +02:00
committed by GitHub
50 changed files with 925 additions and 580 deletions

View File

@@ -20,7 +20,7 @@
- type: Computer
- type: PowerDevice
priority: High
- type: Wrenchable
- type: Anchorable
- type: Sprite
sprite: Buildings/computer.rsi

View File

@@ -39,7 +39,7 @@
- type: PowerDevice
priority: Low
- type: Wires
- type: Wrenchable
- type: Anchorable
- type: entity
parent: VendingMachine

View File

@@ -116,7 +116,7 @@
- type: Appearance
visuals:
- type: PowerChargerVisualizer2D
- type: Wrenchable
- type: Anchorable
- type: Physics
mass: 5
- type: Clickable
@@ -148,7 +148,7 @@
- type: Appearance
visuals:
- type: PowerChargerVisualizer2D
- type: Wrenchable
- type: Anchorable
- type: Physics
mass: 5
- type: Clickable

View File

@@ -4,7 +4,6 @@
id: Wirecutter
description: This kills the wire.
components:
- type: Wirecutter
- type: Sprite
sprite: Objects/Tools/wirecutters.rsi
layers:
@@ -15,6 +14,10 @@
state: cutters-map
- type: ItemCooldown
- type: MeleeWeapon
- type: Tool
qualities:
- Cutting
useSound: /Audio/items/wirecutter.ogg
- type: RandomToolColor
state: cutters
colors:
@@ -32,12 +35,14 @@
id: Screwdriver
description: Industrial grade torque in a small screwdriving package
components:
- type: Screwdriver
- type: Sprite
sprite: Objects/Tools/screwdriver.rsi
layers:
- state: screwdriver-map
- state: screwdriver-screwybits
- state: screwdriver-map
- state: screwdriver-screwybits
- type: Icon
sprite: Objects/Tools/screwdriver.rsi
state: screwdriver
- type: Icon
sprite: Objects/Tools/screwdriver.rsi
@@ -45,9 +50,12 @@
- type: Item
sprite: Objects/Tools/screwdriver.rsi
- type: ItemCooldown
- type: MeleeWeapon
- type: Tool
qualities:
- Screwing
useSoundCollection: Screwdriver
- type: RandomToolColor
state: screwdriver
colors:
@@ -59,14 +67,12 @@
cyan: "#18a2d5"
yellow: "#ffa500"
- type: entity
name: Welding Tool
parent: BaseItem
id: Welder
description: Melts anything as long as it's fueled, don't forget your eye protection!
components:
- type: Welder
- type: Sprite
sprite: Objects/Tools/welder.rsi
layers:
@@ -74,13 +80,21 @@
- state: welder_flame
shader: unshaded
visible: false
- type: Icon
sprite: Objects/Tools/welder.rsi
state: welder
- type: ItemCooldown
- type: MeleeWeapon
- type: ItemStatus
- type: Solution
maxVol: 100
caps: 9
contents:
reagents:
- ReagentId: chem.WeldingFuel
Quantity: 100
- type: Welder
useSoundCollection: Welder
- type: entity
name: Wrench
@@ -88,24 +102,16 @@
id: Wrench
description: A common tool for assembly and disassembly, righty tighty lefty loosey
components:
- type: Wrench
- type: Sprite
texture: Objects/Tools/wrench.png
- type: Icon
texture: Objects/Tools/wrench.png
- type: ItemCooldown
- type: MeleeWeapon
- type: sound_collection
id: welder_on
files:
- /Audio/items/lighter1.ogg
- /Audio/items/lighter2.ogg
- type: sound_collection
id: welder_off
files:
- /Audio/effects/zzzt.ogg
- type: Tool
qualities:
- Anchoring
useSound: /Audio/items/ratchet.ogg
- type: entity
name: Crowbar
@@ -113,13 +119,17 @@
id: Crowbar
description: A multipurpose tool to pry open doors and fight interdimensional invaders
components:
- type: Crowbar
- type: Sprite
texture: Objects/Tools/crowbar.png
- type: Icon
texture: Objects/Tools/crowbar.png
- type: ItemCooldown
- type: MeleeWeapon
- type: Tool
qualities:
- Prying
useSound: /Audio/items/crowbar.ogg
- type: TilePrying
- type: entity
name: Multitool
@@ -127,14 +137,73 @@
id: Multitool
description: An advanced tool to copy, store, and send electrical pulses and signals through wires and machines
components:
- type: Multitool
- type: Sprite
sprite: Objects/Tools/multitool.rsi
state: multitool
- type: Icon
sprite: Objects/Tools/multitool.rsi
state: multitool
- type: Item
sprite: Objects/Tools/multitool.rsi
- type: Tool
qualities:
- Multitool
- type: entity
name: Jaws of life
parent: BaseItem
id: JawsOfLife
description: A set of jaws of life, compressed through the magic of science.
components:
- type: Sprite
sprite: Objects/Tools/jaws_of_life.rsi
state: jaws_pry
- type: Icon
sprite: Objects/Tools/jaws_of_life.rsi
state: jaws_pry
- type: Item
sprite: Objects/Tools/jaws_of_life.rsi
- type: TilePrying
- type: Tool
qualities:
- Prying
statusShowBehavior: true
- type: MultiTool
tools:
- behavior: Prying
state: jaws_pry
useSound: /Audio/items/jaws_pry.ogg
changeSound: /Audio/items/change_jaws.ogg
- behavior: Cutting
state: jaws_cutter
useSound: /Audio/items/jaws_cut.ogg
changeSound: /Audio/items/change_jaws.ogg
- type: entity
name: Power Drill
parent: BaseItem
id: PowerDrill
description: A simple powered hand drill.
components:
- type: Sprite
sprite: Objects/Tools/drill.rsi
state: drill_screw
- type: Icon
sprite: Objects/Tools/drill.rsi
state: drill_screw
- type: Item
sprite: Objects/Tools/drill.rsi
- type: Tool
qualities:
- Screwing
statusShowBehavior: true
- type: MultiTool
tools:
- behavior: Screwing
state: drill_screw
useSound: /Audio/items/drill_use.ogg
changeSound: /Audio/items/change_drill.ogg
- behavior: Anchoring
state: drill_bolt
useSound: /Audio/items/drill_use.ogg
changeSound: /Audio/items/change_drill.ogg

View File

@@ -105,3 +105,9 @@
name: Unstable Mutagen
desc: Causes mutations when injected into living people or plants. High doses may be lethal, especially in humans.
color: "#77b58e"
- type: reagent
id: chem.WeldingFuel
name: Welding Fuel
desc: Used by welders to weld.
color: "#a76b1c"

View File

@@ -1,4 +1,4 @@
- type: sound_collection
- type: soundCollection
id: dice
files:
- /Audio/items/dice/dice1.ogg
@@ -7,4 +7,4 @@
- /Audio/items/dice/dice4.ogg
- /Audio/items/dice/dice5.ogg
- /Audio/items/dice/dice6.ogg
- /Audio/items/dice/dice7.ogg
- /Audio/items/dice/dice7.ogg

View File

@@ -1,4 +1,4 @@
- type: sound_collection
- type: soundCollection
id: footstep_carpet
files:
- /Audio/effects/footsteps/carpet1.ogg
@@ -7,7 +7,7 @@
- /Audio/effects/footsteps/carpet4.ogg
- /Audio/effects/footsteps/carpet5.ogg
- type: sound_collection
- type: soundCollection
id: footstep_wood
files:
- /Audio/effects/footsteps/wood1.ogg
@@ -16,7 +16,7 @@
- /Audio/effects/footsteps/wood4.ogg
- /Audio/effects/footsteps/wood5.ogg
- type: sound_collection
- type: soundCollection
id: footstep_catwalk
files:
- /Audio/effects/footsteps/catwalk1.ogg
@@ -25,7 +25,7 @@
- /Audio/effects/footsteps/catwalk4.ogg
- /Audio/effects/footsteps/catwalk5.ogg
- type: sound_collection
- type: soundCollection
id: footstep_floor
files:
- /Audio/effects/footsteps/floor1.ogg
@@ -34,7 +34,7 @@
- /Audio/effects/footsteps/floor4.ogg
- /Audio/effects/footsteps/floor5.ogg
- type: sound_collection
- type: soundCollection
id: footstep_hull
files:
- /Audio/effects/footsteps/hull1.ogg
@@ -43,7 +43,7 @@
- /Audio/effects/footsteps/hull4.ogg
- /Audio/effects/footsteps/hull5.ogg
- type: sound_collection
- type: soundCollection
id: footstep_plating
files:
- /Audio/effects/footsteps/plating1.ogg
@@ -52,7 +52,7 @@
- /Audio/effects/footsteps/plating4.ogg
- /Audio/effects/footsteps/plating5.ogg
- type: sound_collection
- type: soundCollection
id: footstep_tile
files:
- /Audio/effects/footsteps/tile1.ogg
@@ -61,19 +61,19 @@
- /Audio/effects/footsteps/tile4.ogg
- /Audio/effects/footsteps/tile5.ogg
- type: sound_collection
- type: soundCollection
id: footstep_clown
files:
- /Audio/effects/footsteps/clownstep1.ogg
- /Audio/effects/footsteps/clownstep2.ogg
- type: sound_collection
- type: soundCollection
id: footstep_heavy
files:
- /Audio/effects/footsteps/suitstep1.ogg
- /Audio/effects/footsteps/suitstep2.ogg
- type: sound_collection
- type: soundCollection
id: footstep_asteroid
files:
- /Audio/effects/footsteps/asteroid1.ogg

View File

@@ -1,4 +1,4 @@
- type: sound_collection
- type: soundCollection
id: glassbreak
files:
- /Audio/effects/glassbreak1.ogg

View File

@@ -1,8 +1,7 @@
- type: sound_collection
- type: soundCollection
id: keyboard
files:
- /Audio/machines/keyboard/keyboard1.ogg
- /Audio/machines/keyboard/keyboard2.ogg
- /Audio/machines/keyboard/keyboard3.ogg
- /Audio/machines/keyboard/keyboard4.ogg

View File

@@ -0,0 +1,22 @@
- type: soundCollection
id: WelderOn
files:
- /Audio/items/lighter1.ogg
- /Audio/items/lighter2.ogg
- type: soundCollection
id: WelderOff
files:
- /Audio/effects/zzzt.ogg
- type: soundCollection
id: Welder
files:
- /Audio/items/welder.ogg
- /Audio/items/welder2.ogg
- type: soundCollection
id: Screwdriver
files:
- /Audio/items/screwdriver.ogg
- /Audio/items/screwdriver2.ogg