Фиксы арбалета (#330)

* Crossbow fixes

* Add Penetrated to more mobs
This commit is contained in:
Aviu00
2023-08-25 13:31:33 +03:00
committed by Aviu00
parent d0431ee61e
commit bf8839e8b0
11 changed files with 45 additions and 4 deletions

View File

@@ -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)

View File

@@ -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

View File

@@ -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

View File

@@ -79,6 +79,7 @@
interactFailureString: petting-failure-carp
interactFailureSound:
path: /Audio/Effects/bite.ogg
- type: Penetrated
- type: entity
parent: BaseMobCarp

View File

@@ -73,6 +73,7 @@
- type: InputMover
- type: MobMover
- type: ZombieImmune
- type: Penetrated
- type: entity
abstract: true

View File

@@ -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

View File

@@ -107,6 +107,7 @@
- type: TypingIndicator
proto: robot
- type: ZombieImmune
- type: Penetrated
- type: entity
parent: [ MobSiliconBase, BaseVehicle]

View File

@@ -106,4 +106,5 @@
- type: FloatingVisuals
- type: Puller
needsHands: True
- type: Penetrated

View File

@@ -1,4 +1,4 @@
- type: entity
- type: entity
name: basic slime
id: MobAdultSlimes
parent: [ SimpleMobBase, MobCombat ]

View File

@@ -67,6 +67,7 @@
- type: GhostTakeoverAvailable
- type: Speech
speechVerb: LargeMob
- type: Penetrated
- type: entity
name: space bear

View File

@@ -79,6 +79,7 @@
- type: Speech
speechVerb: SmallMob
- type: NonSpreaderZombie
- type: Penetrated
- type: entity
id: MobTickSalvage