Entity Reagent Reactions v2 (#3714)

* Refactors reactions to be more POWERFUL and DATA-ORIENTED
This commit is contained in:
Vera Aguilera Puerto
2021-03-26 12:02:41 +01:00
committed by GitHub
parent 6739d6a6a9
commit a6f04e22e4
25 changed files with 333 additions and 140 deletions

View File

@@ -41,6 +41,19 @@
- type: AtmosExposed
- type: Flammable
fireSpread: true
- type: Reactive
reactions:
- !type:ExtinguishReaction
touch: true
reagents:
- chem.Water
- !type:FlammableReaction
touch: true
reagents:
- chem.WeldingFuel
- chem.Thermite
- chem.Plasma
- chem.Ethanol
- type: Appearance
visuals:
- type: FireVisualizer

View File

@@ -44,6 +44,9 @@
caps: Refillable
- type: SnapGrid
offset: Center
- type: Reactive
reactions:
- !type:AddToSolutionReaction
- type: Appearance
visuals:
- type: PlantHolderVisualizer

View File

@@ -7,6 +7,19 @@
- type: Tag
tags:
- Teleportable
- type: Reactive
reactions:
- !type:ExtinguishReaction
touch: true
reagents:
- chem.Water
- !type:FlammableReaction
touch: true
reagents:
- chem.WeldingFuel
- chem.Thermite
- chem.Plasma
- chem.Ethanol
- type: UtilityAI
behaviorSets:
- Clothing

View File

@@ -10,6 +10,24 @@
tags:
- Teleportable
- FootstepSound
- type: Reactive
reactions:
- !type:ExtinguishReaction
touch: true
reagents:
- chem.Water
- !type:FlammableReaction
touch: true
reagents:
- chem.WeldingFuel
- chem.Thermite
- chem.Plasma
- chem.Ethanol
- !type:WashCreamPieReaction
touch: true
reagents:
- chem.Water
- chem.SpaceCleaner
- type: Flashable
- type: Hands
- type: MovementSpeedModifier

View File

@@ -85,13 +85,21 @@
state: pda-clown
- type: Slippery
paralyzeTime: 4
- type: CollisionWake
enabled: false
- type: Physics
fixtures:
- shape:
!type:PhysShapeAabb
bounds: "-0.25,-0.25,0.25,0.25"
layer:
- MobImpassable
bodyType: KinematicController
mass: 2.5
fixtures: # TODO: Make a second fixture.
- shape:
!type:PhysShapeAabb
bounds: "-0.3,-0.4,0.3,0.4"
hard: false
layer:
- SmallImpassable
mask:
- Impassable
- MobImpassable
- type: entity
name: Mime PDA

View File

@@ -48,6 +48,7 @@
- state: extinguish
map: [ "enum.VaporVisualLayers.Base" ]
- type: Physics
bodyType: KinematicController
fixtures:
- shape:
!type:PhysShapeAabb

View File

@@ -189,7 +189,7 @@
- state: chempuff
map: [ "enum.VaporVisualLayers.Base" ]
- type: Physics
bodyType: Dynamic
bodyType: KinematicController
fixtures:
- shape:
!type:PhysShapeAabb

View File

@@ -13,8 +13,31 @@
caps: Refillable
- type: Sprite
sprite: Objects/Consumable/Food/monkeycube.rsi
- type: Reactive
reactions:
- !type:AddToSolutionReaction
touch: true
ingestion: true
injection: true
reagents:
- chem.Water
- type: Rehydratable
target: MonkeyMob_Content
- type: CollisionWake
enabled: false
- type: Physics
bodyType: KinematicController
mass: 2.5
fixtures: # TODO: Make a second fixture.
- shape:
!type:PhysShapeAabb
bounds: "-0.3,-0.4,0.3,0.4"
hard: false
layer:
- SmallImpassable
mask:
- Impassable
- MobImpassable
- type: entity
parent: PlushieCarp
@@ -29,5 +52,28 @@
Quantity: 10
maxVol: 11 # needs room for water
caps: Refillable
- type: Reactive
reactions:
- !type:AddToSolutionReaction
touch: true
ingestion: true
injection: true
reagents:
- chem.Water
- type: Rehydratable
target: CarpMob_Content
- type: CollisionWake
enabled: false
- type: Physics
bodyType: KinematicController
mass: 2.5
fixtures: # TODO: Make a second fixture.
- shape:
!type:PhysShapeAabb
bounds: "-0.4,-0.4,0.4,0.4"
hard: false
layer:
- SmallImpassable
mask:
- Impassable
- MobImpassable