@@ -39,7 +39,10 @@ public abstract partial class SharedProjectileSystem : EntitySystem
|
||||
SubscribeLocalEvent<EmbeddableProjectileComponent, ActivateInWorldEvent>(OnEmbedActivate);
|
||||
SubscribeLocalEvent<EmbeddableProjectileComponent, RemoveEmbeddedProjectileEvent>(OnEmbedRemove);
|
||||
SubscribeLocalEvent<EmbeddableProjectileComponent, AttemptPacifiedThrowEvent>(OnAttemptPacifiedThrow);
|
||||
|
||||
SubscribeLocalEvent<EmbeddableProjectileComponent, LandEvent>(OnLand); // WD
|
||||
SubscribeLocalEvent<EmbeddableProjectileComponent, ComponentRemove>(OnRemove); // WD
|
||||
SubscribeLocalEvent<EmbeddableProjectileComponent, EntityTerminatingEvent>(OnEntityTerminating); // WD
|
||||
}
|
||||
|
||||
private void OnEmbedActivate(EntityUid uid, EmbeddableProjectileComponent component, ActivateInWorldEvent args)
|
||||
@@ -201,6 +204,26 @@ public abstract partial class SharedProjectileSystem : EntitySystem
|
||||
}
|
||||
|
||||
// WD EDIT START
|
||||
private void OnEntityTerminating(EntityUid uid, EmbeddableProjectileComponent component,
|
||||
ref EntityTerminatingEvent args)
|
||||
{
|
||||
FreePenetrated(component);
|
||||
}
|
||||
|
||||
private void OnRemove(EntityUid uid, EmbeddableProjectileComponent component, ComponentRemove args)
|
||||
{
|
||||
FreePenetrated(component);
|
||||
}
|
||||
|
||||
private void FreePenetrated(EmbeddableProjectileComponent component)
|
||||
{
|
||||
if (component.PenetratedUid == null)
|
||||
return;
|
||||
|
||||
_penetratedSystem.FreePenetrated(component.PenetratedUid.Value);
|
||||
component.PenetratedUid = null;
|
||||
}
|
||||
|
||||
private void OnLand(EntityUid uid, EmbeddableProjectileComponent component, ref LandEvent args)
|
||||
{
|
||||
if (component.PenetratedUid == null)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
- type: entity
|
||||
- type: entity
|
||||
parent: BaseMob
|
||||
id: BaseBorgChassis
|
||||
name: cyborg
|
||||
@@ -205,6 +205,7 @@
|
||||
- type: GuideHelp
|
||||
guides:
|
||||
- Cyborgs
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
id: BaseBorgChassisNT
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
- type: entity
|
||||
- type: entity
|
||||
save: false
|
||||
parent: [ BaseSimpleMob, MobCombat ]
|
||||
id: BaseMobArgocyte
|
||||
@@ -82,6 +82,7 @@
|
||||
damage:
|
||||
types:
|
||||
Blunt: 3
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -120,6 +121,7 @@
|
||||
damage:
|
||||
types:
|
||||
Blunt: 3
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -156,6 +158,7 @@
|
||||
damage:
|
||||
types:
|
||||
Slash: 3
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -179,6 +182,7 @@
|
||||
60: Dead
|
||||
- type: MovementSpeedModifier
|
||||
baseSprintSpeed : 5
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -202,6 +206,7 @@
|
||||
- type: MovementSpeedModifier
|
||||
baseSprintSpeed : 4
|
||||
baseWalkSpeed : 3.5
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -227,6 +232,7 @@
|
||||
types:
|
||||
Blunt: 2.5
|
||||
Slash: 7.5
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -255,6 +261,7 @@
|
||||
- type: MovementSpeedModifier
|
||||
baseSprintSpeed : 5
|
||||
baseWalkSpeed: 4.5
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -281,6 +288,7 @@
|
||||
Blunt: 5
|
||||
Slash: 10
|
||||
Structural: 5
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -311,6 +319,7 @@
|
||||
- type: MovementSpeedModifier
|
||||
baseSprintSpeed : 6.5
|
||||
baseWalkSpeed: 5
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
@@ -340,6 +349,7 @@
|
||||
- type: MovementSpeedModifier
|
||||
baseSprintSpeed : 3.5
|
||||
baseWalkSpeed: 3
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobArgocyte
|
||||
|
||||
@@ -79,6 +79,7 @@
|
||||
interactFailureString: petting-failure-carp
|
||||
interactFailureSound:
|
||||
path: /Audio/Effects/bite.ogg
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: BaseMobCarp
|
||||
|
||||
@@ -73,6 +73,7 @@
|
||||
- type: InputMover
|
||||
- type: MobMover
|
||||
- type: ZombieImmune
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
abstract: true
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
- type: entity
|
||||
- type: entity
|
||||
name: watcher
|
||||
id: MobWatcherBase
|
||||
parent: [ SimpleSpaceMobBase, FlyingMobBase ]
|
||||
@@ -69,6 +69,7 @@
|
||||
interactFailureString: petting-failure-generic
|
||||
interactSuccessSound:
|
||||
path: /Audio/Animals/lizard_happy.ogg
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
id: MobWatcherLavaland
|
||||
|
||||
@@ -107,6 +107,7 @@
|
||||
- type: TypingIndicator
|
||||
proto: robot
|
||||
- type: ZombieImmune
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
parent: [ MobSiliconBase, BaseVehicle]
|
||||
|
||||
@@ -106,4 +106,5 @@
|
||||
- type: FloatingVisuals
|
||||
- type: Puller
|
||||
needsHands: True
|
||||
- type: Penetrated
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
- type: entity
|
||||
- type: entity
|
||||
name: basic slime
|
||||
id: MobAdultSlimes
|
||||
parent: [ SimpleMobBase, MobCombat ]
|
||||
|
||||
@@ -67,6 +67,7 @@
|
||||
- type: GhostTakeoverAvailable
|
||||
- type: Speech
|
||||
speechVerb: LargeMob
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
name: space bear
|
||||
|
||||
@@ -79,6 +79,7 @@
|
||||
- type: Speech
|
||||
speechVerb: SmallMob
|
||||
- type: NonSpreaderZombie
|
||||
- type: Penetrated
|
||||
|
||||
- type: entity
|
||||
id: MobTickSalvage
|
||||
|
||||
Reference in New Issue
Block a user