* MinSolution and SolutionEmpty construction conditions

* make ied sprites

* add ied

* ied crafting stuff

* deconstruct give cable yes

* fix

* tags

* tag

* 3x3

* sharing is caring

* buff damage

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
This commit is contained in:
deltanedas
2023-11-06 03:04:47 +00:00
committed by GitHub
parent 8302bef3e2
commit 96e27810cf
14 changed files with 385 additions and 0 deletions

View File

@@ -59,6 +59,9 @@
- type: PhysicalComposition
materialComposition:
Steel: 50 #reduce, reuse, recycle
- type: Tag
tags:
- DrinkCan
- type: entity
parent: DrinkCanBaseFull
@@ -76,12 +79,38 @@
- type: Tag
tags:
- Cola
- DrinkCan
- Recyclable
- type: Sprite
sprite: Objects/Consumable/Drinks/cola.rsi
- type: Item
sprite: Objects/Consumable/Drinks/cola.rsi
# created when taking apart an ied
- type: entity
parent: DrinkColaCan
id: DrinkColaCanEmpty
suffix: empty
components:
- type: SolutionContainerManager
solutions:
drink:
maxVol: 30
- type: Openable
opened: true
- type: Sprite
sprite: Objects/Consumable/Drinks/cola.rsi
layers:
- state: icon_open
- type: Item
sprite: Objects/Consumable/Drinks/cola.rsi
- type: Tag
tags:
- Cola
- DrinkCan
- Recyclable
- Trash
- type: entity
parent: DrinkCanBaseFull
id: DrinkIcedTeaCan
@@ -317,6 +346,7 @@
Quantity: 5
- type: Tag
tags:
- DrinkCan
- Recyclable
- type: Sprite
sprite: Objects/Consumable/Drinks/robustnukie.rsi

View File

@@ -0,0 +1,101 @@
# ied crafted from random stuff
# ideally it would be dynamic and work by actually sparking the solution but that doesnt exist yet :(
# with that you could make napalm ied instead of welding fuel with no additional complexity
- type: entity
parent: BaseItem
id: ImprovisedExplosive
name: improvised explosive device
description: A weak, improvised incendiary device.
components:
- type: Sprite
sprite: Objects/Weapons/Bombs/ied.rsi
layers:
- state: base
- state: fuel
- state: wires
- type: Item
sprite: Objects/Consumable/Drinks/cola.rsi
- type: OnUseTimerTrigger
delay: 5
examinable: false
initialBeepDelay: 0
beepSound: /Audio/Effects/lightburn.ogg
# TODO: random timer when crafted
- type: TriggerOnSignal
- type: DeviceLinkSink
ports:
- Trigger
- type: Explosive # Weak explosion in a very small radius. Doesn't break underplating.
explosionType: Default
totalIntensity: 50
intensitySlope: 5
maxIntensity: 6
canCreateVacuum: false
- type: ExplodeOnTrigger
- type: Damageable
damageContainer: Inorganic
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- !type:ExplodeBehavior
- type: Construction
graph: ImprovisedExplosive
node: ied
# has igniter but no fuel or wires
- type: entity
parent: DrinkColaCanEmpty
id: ImprovisedExplosiveEmpty
name: improvised explosive device
suffix: empty
description: A weak, improvised incendiary device. This one has no fuel.
components:
- type: Sprite
sprite: Objects/Weapons/Bombs/ied.rsi
layers:
- state: base
map: ["enum.OpenableVisuals.Layer"]
# bad dog
- type: GenericVisualizer
visuals:
enum.OpenableVisuals.Opened:
enum.OpenableVisuals.Layer:
True: {state: "base"}
False: {state: "base"}
- type: Construction
graph: ImprovisedExplosive
node: empty
defaultTarget: ied
- type: Tag
tags:
- Trash
# no DrinkCan, prevent using it to make another ied
- type: entity
parent: ImprovisedExplosiveEmpty
id: ImprovisedExplosiveFuel
suffix: fuel
description: A weak, improvised incendiary device. This one is missing wires.
components:
- type: Sprite
layers:
- state: base
map: ["enum.OpenableVisuals.Layer"]
- state: fuel
- type: SolutionContainerManager
solutions:
drink:
maxVol: 30
reagents:
- ReagentId: WeldingFuel
Quantity: 30
- type: Construction
node: fuel
defaultTarget: ied
- type: Tag
tags: []