Токовый дух вырезан

- wl-remove: электродемон вырезан до лучших времён:Pepe_Life:
This commit is contained in:
Pupchansky
2024-09-28 15:51:22 +05:00
parent cb86fe22b7
commit cc8ec5f47b
24 changed files with 79 additions and 67 deletions

View File

@@ -211,7 +211,7 @@ public sealed partial class StoreMenu : DefaultWindow
sb.Append(')');
discountMessage = sb.ToString();
}
else
else if (relativeModifiersSummary.Count == 1)
{
// if cost was modified - it should have diff relatively to original cost in 1 or more currency
// ReSharper disable once GenericEnumeratorNotDisposed Dictionary enumerator doesn't require dispose
@@ -223,6 +223,7 @@ public sealed partial class StoreMenu : DefaultWindow
("amount", (amount.ToString("P0")))
);
}
else return string.Empty;
return discountMessage;
}

View File

@@ -16,6 +16,8 @@ using Content.Server._WL.PulseDemon.Components;
using Content.Shared.Silicons.Laws.Components;
using Content.Shared.Emag.Systems;
using Content.Shared.Explosion.Components;
using Content.Shared.Explosion;
using Robust.Shared.Prototypes;
namespace Content.Server._WL.PulseDemon.Systems;
@@ -32,8 +34,10 @@ public sealed partial class PulseDemonSystem
[Dependency] private readonly SharedPointLightSystem _light = default!;
[Dependency] private readonly EmagSystem _emag = default!;
[ValidatePrototypeId<ExplosionPrototype>]
private const string PulseDemonExplosionType = "ElectricExplosion";
[ValidatePrototypeId<EntityPrototype>]
private const string PulseDemonExplosiveParticlePrototype = "EffectSparks4";
private const float PulseDemonDoAfterDistanceThresholdRange = 50000f;

View File

@@ -25,6 +25,10 @@ using Content.Shared.Store.Components;
using Content.Shared.Ghost;
using System.Threading.Tasks;
using Content.Shared._WL.PulseDemon;
using Content.Shared.Damage.Prototypes;
using Robust.Shared.Prototypes;
using Content.Server.Store.Systems;
using Content.Shared.Store;
namespace Content.Server._WL.PulseDemon.Systems;
@@ -53,9 +57,14 @@ public sealed partial class PulseDemonSystem : EntitySystem
};
#endregion
[ValidatePrototypeId<EntityPrototype>]
private const string MarkerCablePrototypeID = "MarkerCable";
//private const string HijackAPCsObjective = "HijackAPCsObjective";
[ValidatePrototypeId<DamageTypePrototype>]
private const string ShockDamageTypeId = "Shock";
[ValidatePrototypeId<CurrencyPrototype>]
public const string EnergyCurrencyPrototype = "Energy";
public const int InvisibleWallsLayer = 256;
@@ -155,7 +164,7 @@ public sealed partial class PulseDemonSystem : EntitySystem
{
var damageValue = damage.Value.Float() * component.DemonDamageModifier;
if (damage.Key == "Shock")
if (damage.Key == ShockDamageTypeId)
damageValue *= -1;
DealBatteryDamage(battery, damageValue);
@@ -164,7 +173,8 @@ public sealed partial class PulseDemonSystem : EntitySystem
private async void OnMove(EntityUid uid, PulseDemonComponent component, MoveEvent args)
{
TimeBasedParticlesSpawn(uid, component, args);
if (!component.IsHiding)
TimeBasedParticlesSpawn(uid, component, args);
if (!TryComp<TransformComponent>(uid, out var transform))
return;
@@ -281,7 +291,7 @@ public sealed partial class PulseDemonSystem : EntitySystem
if (!nodeComp.Nodes.TryGetValue("power", out var node) || node.NodeGroup == null)
continue;
var network = (IBasePowerNet) node.NodeGroup;
var network = (IBasePowerNet)node.NodeGroup;
var statistic = _power.GetNetworkStatistics(network.NetworkNode);

View File

@@ -70,7 +70,7 @@
id: ActionGhostReturnToLobby
name: Вернуться в лобби
description: "[color=red]СТРОГО ЗАПРЕЩАЕТСЯ[/color] заходить за персонажей, которые уже были в раунде. Если вы стали свидетелем оного, то смело пишите жалобу используя правило 4."
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
icon: Interface/eject.png

View File

@@ -498,7 +498,7 @@
prototype: InitialInfected
# - type: entity
# noSpawn: true
# categories: [ HideSpawnMenu ]
# parent: BaseNukeopsRule
# id: LoneOpsSpawn
# components:

View File

@@ -2,7 +2,7 @@
id: PulseDemonActionShop
name: Shop
description: Opens the ability shop.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
icon: Interface/Actions/shop.png
@@ -12,7 +12,7 @@
id: PulseDemonActionHijackAPC
name: Hijack APC
description: Allows you to hack APC to gain control over devices.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: EntityTargetAction
useDelay: 3
@@ -38,7 +38,7 @@
id: PulseDemonActionElectromagneticTamper
name: Electromagnetic Tamper
description: Allows you to interact with machines and consoles, what happens depends on the machine.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: EntityTargetAction
priority: 1
@@ -66,7 +66,7 @@
id: PulseDemonActionSelfSustaining
name: Self-Sustaining
description: Your power allows you to leave the wires for a while. If you do not make it back in time, then you will face an unenviable fate. It will cost 40000 units of energy.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
useDelay: 180
@@ -87,7 +87,7 @@
name: Self-Sustaining II
parent: PulseDemonActionSelfSustaining
description: Your power allows you to leave the wires for a while. If you do not make it back in time, then you will face an unenviable fate. It will cost 30000 units of energy.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
useDelay: 150
@@ -100,7 +100,7 @@
name: Self-Sustaining III
parent: PulseDemonActionSelfSustaining
description: You enter into the wires, which makes you invisible. Trying to drain energy or hijack APC will force you to get out of the wires. It will cost 20000 units of energy.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
useDelay: 120
@@ -113,7 +113,7 @@
id: PulseDemonActionHide
name: Hide
description: You enter into the wires, which makes you invisible. Trying to drain energy or hijack APC will force you to get out of the wires.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
useDelay: 120
@@ -134,7 +134,7 @@
name: Hide II
parent: PulseDemonActionHide
description: You enter into the wires, which makes you invisible. Trying to drain energy or hijack APC will force you to get out of the wires.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
useDelay: 100
@@ -147,7 +147,7 @@
name: Hide III
parent: PulseDemonActionHide
description: You enter into the wires, which makes you invisible. Trying to drain energy or hijack APC will force you to get out of the wires.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
useDelay: 60
@@ -160,7 +160,6 @@
id: PulseDemonActionAbsorption
name: Absorption
description: Drains the energy from the devices.
noSpawn: true
components:
- type: EntityTargetAction
useDelay: 5
@@ -187,7 +186,6 @@
name: Remote Absorption
parent: PulseDemonActionAbsorption
description: Drains energy from devices at a distance of 6 tiles.
noSpawn: true
components:
- type: EntityTargetAction
event: !type:PulseDemonAbsorptionActionEvent
@@ -208,7 +206,6 @@
name: Remote Absorption II
parent: PulseDemonActionRemoteAbsorption
description: Drains energy from devices at a distance of 7 tiles.
noSpawn: true
components:
- type: EntityTargetAction
event: !type:PulseDemonAbsorptionActionEvent
@@ -224,7 +221,7 @@
name: Remote Absorption III
parent: PulseDemonActionRemoteAbsorption
description: Drains energy from devices at a distance of 7.5 tiles.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: EntityTargetAction
event: !type:PulseDemonAbsorptionActionEvent
@@ -240,7 +237,7 @@
name: Remote Absorption IIII
parent: PulseDemonActionRemoteAbsorption
description: Drains energy from devices at a distance of 8 tiles.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: EntityTargetAction
event: !type:PulseDemonAbsorptionActionEvent
@@ -256,7 +253,7 @@
id: PulseDemonActionCableHop
name: Cable jump
description: Allows you to make a jump to an available cable within a radius of 4 tiles. It will cost 20,000 units of energy.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: WorldTargetAction
checkCanAccess: false
@@ -282,7 +279,7 @@
name: Cable jump II
parent: PulseDemonActionCableHop
description: Allows you to make a jump to an available cable within a radius of 5 tiles. It will cost 15,000 units of energy.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: WorldTargetAction
event: !type:PulseDemonCableHopActionEvent
@@ -298,7 +295,7 @@
name: Cable jump III
parent: PulseDemonActionCableHop
description: Allows you to make a jump to an available cable within a radius of 7 tiles. It will cost 13,000 units of energy.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: WorldTargetAction
event: !type:PulseDemonCableHopActionEvent
@@ -314,7 +311,7 @@
name: Cable jump IIII
parent: PulseDemonActionCableHop
description: Allows you to make a jump to an available cable within a radius of 8 tiles. It will cost 11,000 units of energy.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: WorldTargetAction
event: !type:PulseDemonCableHopActionEvent
@@ -330,7 +327,7 @@
id: PulseDemonActionEmp
name: Emp
description: Creates a powerful electromagnetic pulse. Don't hurt yourself!
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: WorldTargetAction
checkCanAccess: false
@@ -356,7 +353,7 @@
name: Emp II
parent: PulseDemonActionEmp
description: Creates a powerful electromagnetic pulse. Don't hurt yourself!
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: WorldTargetAction
event: !type:PulseDemonEmpActionEvent
@@ -374,7 +371,7 @@
name: Emp III
parent: PulseDemonActionEmp
description: Creates a powerful electromagnetic pulse. Don't hurt yourself!
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: WorldTargetAction
event: !type:PulseDemonEmpActionEvent
@@ -392,7 +389,7 @@
name: Emp IIII
parent: PulseDemonActionEmp
description: Creates a powerful electromagnetic pulse. Don't hurt yourself!
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: WorldTargetAction
event: !type:PulseDemonEmpActionEvent
@@ -410,7 +407,7 @@
id: PulseDemonActionOverloadMachine
name: Overload machine
description: Makes machinery explode. Don't blow yourself up!
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: EntityTargetAction
useDelay: 55
@@ -444,7 +441,7 @@
name: Overload machine II
parent: PulseDemonActionOverloadMachine
description: Makes machinery explode. Don't blow yourself up!
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: EntityTargetAction
useDelay: 50
@@ -460,7 +457,7 @@
name: Overload machine III
parent: PulseDemonActionOverloadMachine
description: Makes machinery explode. Don't blow yourself up!
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: EntityTargetAction
useDelay: 42
@@ -476,7 +473,7 @@
name: Overload machine IIII
parent: PulseDemonActionOverloadMachine
description: Makes machinery explode. Don't blow yourself up!
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: EntityTargetAction
useDelay: 33

View File

@@ -1,7 +1,7 @@
- type: entity
id: TurretExitStateAction
name: Перестать управлять
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
icon: Interface/eject.png

View File

@@ -76,7 +76,7 @@
id: ActionGolemCorePlayMidi
name: Play MIDI
description: Open your portable MIDI interface to soothe your owner.
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: InstantAction
checkCanInteract: false

View File

@@ -35,7 +35,7 @@
id: OrganMurineLiver
parent: BaseAnimalOrgan
name: печень мурина
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: Sprite
state: liver

View File

@@ -21,7 +21,7 @@
id: PulseDemonDrainUpgrade
name: Улучшить Удалённое поглощение
priority: 2
productUpgradeID: PulseDemonDrain
productUpgradeID: PulseDemonDrainUpgrade
description: Улучшает способность Удалённое поглощение. Увеличивет дальность способности и скорость перезарядки.
productEvents:
- events:
@@ -289,7 +289,6 @@
categories:
- PulseDemonAbilities
##Characteristics

View File

@@ -1063,7 +1063,7 @@
- type: entity
id: BaseChipsCase
parent: [ BaseStorageItem, BaseBagOpenClose ]
noSpawn: true
categories: [ HideSpawnMenu ]
abstract: true
name: Кейс с фишками
description: Большой кейс с разнообразными фишками. Всех по два!

View File

@@ -1,6 +1,6 @@
- type: entity
id: EffectSparks2
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: TimedDespawn
lifetime: 1.3
@@ -23,7 +23,7 @@
- type: entity
id: EffectSparks3
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: TimedDespawn
lifetime: 0.50
@@ -46,7 +46,7 @@
- type: entity
id: EffectSparks4
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: DoAfter
- type: Sprite

View File

@@ -1,6 +1,6 @@
- type: entity
id: MarkerCable
noSpawn: true
categories: [ HideSpawnMenu ]
placement:
mode: SnapgridCenter
components:
@@ -42,7 +42,7 @@
False: { color: red }
- type: entity
noSpawn: true
categories: [ HideSpawnMenu ]
id: MarkerWall
placement:
mode: SnapgridCenter

View File

@@ -1,6 +1,7 @@
- type: entity
id: MobPulseDemon
name: pulse demon
suffix: СЛОМАНО
description: Run and hide before YOUR electricity becomes his next meal!
components:
- type: ArrivalsBlacklist

View File

@@ -36,7 +36,7 @@
name: Urist McHands
parent: MobHumanDummy
id: MobAkulaDummy
noSpawn: true
categories: [ HideSpawnMenu ]
description: A dummy fish meant to be used in character setup.
components:
- type: HumanoidAppearance

View File

@@ -223,7 +223,7 @@
description: A dummy android meant to be used in character setup.
id: MobAndroidDummy
parent: MobHumanDummy
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: HumanoidAppearance
species: Android

View File

@@ -82,5 +82,5 @@
name: Chischi Dummy
parent: BaseMobCischi
id: MobCischiDummy
noSpawn: true
categories: [ HideSpawnMenu ]
description: A dummy felinid meant to be used in character setup.

View File

@@ -90,5 +90,5 @@
name: Felinid Dummy
parent: MobHumanDummy
id: MobFelinidDummy
noSpawn: true
categories: [ HideSpawnMenu ]
description: A dummy felinid meant to be used in character setup.

View File

@@ -213,7 +213,7 @@
name: Урист МакГолем
id: MobGolemDummy
parent: MobHumanDummy
noSpawn: true
categories: [ HideSpawnMenu ]
components:
- type: HumanoidAppearance
species: Golem

View File

@@ -35,7 +35,7 @@
name: Urist McHands
parent: MobHumanDummy
id: MobHumanoidKidanDummy
noSpawn: true
categories: [ HideSpawnMenu ]
description: A dummy Kidan meant to be used in character setup.
components:
- type: HumanoidAppearance

View File

@@ -59,7 +59,7 @@
name: Урист МакМурин
parent: MobHumanDummy
id: MobHumanoidMurineDummy
noSpawn: true
categories: [ HideSpawnMenu ]
description: A dummy vulp meant to be used in character setup.
components:
- type: HumanoidAppearance

View File

@@ -33,7 +33,7 @@
name: Urist McHands
parent: MobHumanDummy
id: MobHumanoidTajaraDummy
noSpawn: true
categories: [ HideSpawnMenu ]
description: A dummy Tajara meant to be used in character setup.
components:
- type: HumanoidAppearance

View File

@@ -1,15 +1,15 @@
- type: entity
parent: BaseGameRule
id: PulseDemonSpawn
noSpawn: true
components:
- type: StationEvent
weight: 5
duration: 1
earliestStart: 70
reoccurrenceDelay: 90
spawnConfig:
standartConfig:
minPlayers: 15
- type: PulseDemonSpawnRule
prototype: SpawnPointPulseDemon
# - type: entity
# parent: BaseGameRule
# id: PulseDemonSpawn
# categories: [ HideSpawnMenu ]
# components:
# - type: StationEvent
# weight: 6
# duration: 1
# earliestStart: 70
# reoccurrenceDelay: 90
# spawnConfig:
# standartConfig:
# minPlayers: 15
# - type: PulseDemonSpawnRule
# prototype: SpawnPointPulseDemon

View File

@@ -1,5 +1,5 @@
#- type: entity
# noSpawn: true
# categories: [ HideSpawnMenu ]
# parent: BaseObjective
# id: HijackAPCsObjective
# name: Hijack all the APC's on the station