Incendiary projectiles and lava firestack reduction (#23479)
* Firestack reduction and FireStackOnHit added * Slight lava tweak * Remove component and tweaked incendiary pellets * Incendiary grenade tweak * Now ignites on projectile fixture or ignition fixture + incendiary grenade tweak * flare shells now ignite entities again * Comment * undo flare gun ignite
This commit is contained in:
@@ -13,4 +13,8 @@ public sealed partial class IgniteOnCollideComponent : Component
|
|||||||
|
|
||||||
[ViewVariables(VVAccess.ReadWrite), DataField("fireStacks")]
|
[ViewVariables(VVAccess.ReadWrite), DataField("fireStacks")]
|
||||||
public float FireStacks;
|
public float FireStacks;
|
||||||
|
|
||||||
|
[ViewVariables(VVAccess.ReadWrite), DataField("fixtureId")]
|
||||||
|
public string FixtureId = "ignition";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ using Content.Shared.Database;
|
|||||||
using Content.Shared.Interaction;
|
using Content.Shared.Interaction;
|
||||||
using Content.Shared.Physics;
|
using Content.Shared.Physics;
|
||||||
using Content.Shared.Popups;
|
using Content.Shared.Popups;
|
||||||
|
using Content.Shared.Projectiles;
|
||||||
using Content.Shared.Rejuvenate;
|
using Content.Shared.Rejuvenate;
|
||||||
using Content.Shared.Temperature;
|
using Content.Shared.Temperature;
|
||||||
using Content.Shared.Throwing;
|
using Content.Shared.Throwing;
|
||||||
@@ -102,6 +103,12 @@ namespace Content.Server.Atmos.EntitySystems
|
|||||||
if (!EntityManager.TryGetComponent(otherEnt, out FlammableComponent? flammable))
|
if (!EntityManager.TryGetComponent(otherEnt, out FlammableComponent? flammable))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
//Only ignite when the colliding fixture is projectile or ignition.
|
||||||
|
if (args.OurFixtureId != component.FixtureId && args.OurFixtureId != SharedProjectileSystem.ProjectileFixture)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
flammable.FireStacks += component.FireStacks;
|
flammable.FireStacks += component.FireStacks;
|
||||||
Ignite(otherEnt, uid, flammable);
|
Ignite(otherEnt, uid, flammable);
|
||||||
component.Count--;
|
component.Count--;
|
||||||
|
|||||||
@@ -19,5 +19,5 @@ public sealed partial class LavaComponent : Component
|
|||||||
/// How many fire stacks are applied per second.
|
/// How many fire stacks are applied per second.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[ViewVariables(VVAccess.ReadWrite), DataField("fireStacks")]
|
[ViewVariables(VVAccess.ReadWrite), DataField("fireStacks")]
|
||||||
public float FireStacks = 2f;
|
public float FireStacks = 1.25f;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,8 +49,9 @@
|
|||||||
deleteOnCollide: false
|
deleteOnCollide: false
|
||||||
canPenetrate: true
|
canPenetrate: true
|
||||||
damage:
|
damage:
|
||||||
groups:
|
types:
|
||||||
Burn: 4
|
Blunt: 1
|
||||||
|
Heat: 2
|
||||||
- type: IgniteOnCollide
|
- type: IgniteOnCollide
|
||||||
fireStacks: 3
|
fireStacks: 3
|
||||||
count: 10
|
count: 10
|
||||||
|
|||||||
@@ -139,7 +139,7 @@
|
|||||||
radius: 2.0
|
radius: 2.0
|
||||||
energy: 7.0
|
energy: 7.0
|
||||||
- type: IgniteOnCollide
|
- type: IgniteOnCollide
|
||||||
fireStacks: 1
|
fireStacks: 0.25
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: BaseBulletAP
|
id: BaseBulletAP
|
||||||
|
|||||||
@@ -156,7 +156,7 @@
|
|||||||
map: ["enum.TriggerVisualLayers.Base"]
|
map: ["enum.TriggerVisualLayers.Base"]
|
||||||
- type: ClusterGrenade
|
- type: ClusterGrenade
|
||||||
fillPrototype: PelletClusterIncendiary
|
fillPrototype: PelletClusterIncendiary
|
||||||
maxGrenadesCount: 15
|
maxGrenadesCount: 30
|
||||||
grenadeType: enum.GrenadeType.Shoot
|
grenadeType: enum.GrenadeType.Shoot
|
||||||
- type: OnUseTimerTrigger
|
- type: OnUseTimerTrigger
|
||||||
beepSound:
|
beepSound:
|
||||||
|
|||||||
@@ -90,10 +90,21 @@
|
|||||||
name: "ignite rune"
|
name: "ignite rune"
|
||||||
components:
|
components:
|
||||||
- type: TriggerOnCollide
|
- type: TriggerOnCollide
|
||||||
fixtureID: rune
|
fixtureID: ignition
|
||||||
|
- type: Fixtures
|
||||||
|
fixtures:
|
||||||
|
ignition:
|
||||||
|
shape:
|
||||||
|
!type:PhysShapeAabb
|
||||||
|
bounds: "-0.4,-0.4,0.4,0.4"
|
||||||
|
hard: false
|
||||||
|
mask:
|
||||||
|
- ItemMask
|
||||||
|
layer:
|
||||||
|
- SlipLayer
|
||||||
- type: DeleteOnTrigger
|
- type: DeleteOnTrigger
|
||||||
- type: IgniteOnCollide
|
- type: IgniteOnCollide
|
||||||
fireStacks: 10
|
fireStacks: 5
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
sprite: Structures/Magic/Cult/trap.rsi
|
sprite: Structures/Magic/Cult/trap.rsi
|
||||||
layers:
|
layers:
|
||||||
|
|||||||
Reference in New Issue
Block a user