Cut corners on excessive damage (#6190)

This commit is contained in:
Leon Friedrich
2022-01-18 20:48:17 +13:00
committed by GitHub
parent 0375d02b3f
commit 36a96b7e14
9 changed files with 78 additions and 2 deletions

View File

@@ -41,6 +41,10 @@ namespace Content.Server.Destructible
threshold.Execute(uid, this, EntityManager);
}
// if destruction behavior (or some other deletion effect) occurred, don't run other triggers.
if (EntityManager.IsQueuedForDeletion(uid) || Deleted(uid))
return;
}
}
}

View File

@@ -21,6 +21,12 @@
Blunt: 5
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
behaviors: #excess damage (nuke?). avoid computational cost of spawning entities.
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 5

View File

@@ -43,6 +43,12 @@
damageModifierSet: Glass
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 400
behaviors: #excess damage (nuke?). avoid computational cost of spawning entities.
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 200
@@ -122,6 +128,12 @@
visible: false
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 600
behaviors: #excess damage (nuke?). avoid computational cost of spawning entities.
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 400

View File

@@ -24,7 +24,13 @@
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
damage: 100 #excess damage (nuke?). avoid computational cost of spawning entities.
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:DoActsBehavior
acts: ["Breakage"]

View File

@@ -26,7 +26,7 @@
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
damage: 50
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
@@ -68,6 +68,12 @@
- trigger:
!type:DamageTrigger
damage: 100
behaviors: #excess damage (nuke?). avoid computational cost of spawning entities.
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:SpawnEntitiesBehavior
spawn:
@@ -109,6 +115,12 @@
- trigger:
!type:DamageTrigger
damage: 100
behaviors: #excess damage (nuke?). avoid computational cost of spawning entities.
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:SpawnEntitiesBehavior
spawn:
@@ -153,6 +165,12 @@
- trigger:
!type:DamageTrigger
damage: 100
behaviors: #excess damage (nuke?). avoid computational cost of spawning entities.
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:SpawnEntitiesBehavior
spawn:

View File

@@ -55,6 +55,12 @@
- SmallImpassable
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 50 #excess damage (nuke?). avoid computational cost of spawning entities.
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- trigger:
!type:DamageTrigger
damage: 20

View File

@@ -346,6 +346,12 @@
node: reinforcedWall
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 1200 #excess damage (nuke?). avoid computational cost of spawning entities.
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- trigger:
!type:DamageTrigger
damage: 600
@@ -471,6 +477,12 @@
sprite: Structures/Walls/solid.rsi
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 600 # #excess damage (nuke?). avoid computational cost of spawning entities.
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- trigger:
!type:DamageTrigger
damage: 300

View File

@@ -13,6 +13,12 @@
doAfterDelay: 2
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 300 #excess damage (nuke?). Avoid computational cost of spawning entities.
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 150

View File

@@ -38,6 +38,12 @@
- type: Repairable
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 150 #excess damage (nuke?). avoid computational cost of spawning entities.
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 50