Magic 3 (#340)
* - add: Some tweaks and localization. * - add: Teleport spell. * - tweak: Tweak wizard hardsuit. * - add: Turn off shield on cast. * - add: New wizard clothes & update wizard shuttle, * - remove: Remove old clothes from shuttle. * - fix: No teleporting to centcomm.
This commit is contained in:
@@ -3,10 +3,12 @@ using Content.Server.DeviceLinking.Systems;
|
||||
using Content.Server.Power.Components;
|
||||
using Content.Server.Power.EntitySystems;
|
||||
using Content.Server.PowerCell;
|
||||
using Content.Shared._White.Events;
|
||||
using Content.Shared.Actions;
|
||||
using Content.Shared.Damage;
|
||||
using Content.Shared.Examine;
|
||||
using Content.Shared.Interaction;
|
||||
using Content.Shared.Inventory;
|
||||
using Content.Shared.Popups;
|
||||
using Content.Shared.PowerCell;
|
||||
using Content.Shared.PowerCell.Components;
|
||||
@@ -53,10 +55,19 @@ public sealed partial class EnergyDomeSystem : EntitySystem
|
||||
|
||||
SubscribeLocalEvent<EnergyDomeGeneratorComponent, ComponentRemove>(OnComponentRemove);
|
||||
|
||||
SubscribeLocalEvent<EnergyDomeGeneratorComponent, InventoryRelayedEvent<EnergyDomeClothesTurnOffEvent>>(
|
||||
OnClothesTurnOff);
|
||||
|
||||
//Dome events
|
||||
SubscribeLocalEvent<EnergyDomeComponent, DamageChangedEvent>(OnDomeDamaged);
|
||||
}
|
||||
|
||||
private void OnClothesTurnOff(Entity<EnergyDomeGeneratorComponent> ent,
|
||||
ref InventoryRelayedEvent<EnergyDomeClothesTurnOffEvent> args)
|
||||
{
|
||||
TurnOff(ent, false);
|
||||
}
|
||||
|
||||
private void OnInit(Entity<EnergyDomeGeneratorComponent> generator, ref MapInitEvent args)
|
||||
{
|
||||
if (generator.Comp.CanDeviceNetworkUse)
|
||||
@@ -179,12 +190,11 @@ public sealed partial class EnergyDomeSystem : EntitySystem
|
||||
|
||||
if (HasComp<PowerCellDrawComponent>(generatorUid))
|
||||
{
|
||||
_powerCell.TryGetBatteryFromSlot(generatorUid, out var cell);
|
||||
if (cell != null)
|
||||
if (_powerCell.TryGetBatteryFromSlot(generatorUid, out var cell, out var batteryComp))
|
||||
{
|
||||
_battery.UseCharge(generatorUid, energyLeak);
|
||||
_battery.UseCharge(cell.Value, energyLeak, batteryComp);
|
||||
|
||||
if (cell.CurrentCharge == 0)
|
||||
if (batteryComp.CurrentCharge == 0)
|
||||
TurnOff((generatorUid, generatorComp), true);
|
||||
}
|
||||
}
|
||||
@@ -298,7 +308,7 @@ public sealed partial class EnergyDomeSystem : EntitySystem
|
||||
return;
|
||||
|
||||
generator.Comp.Enabled = false;
|
||||
QueueDel(generator.Comp.SpawnedDome);
|
||||
Del(generator.Comp.SpawnedDome);
|
||||
|
||||
_powerCell.SetPowerCellDrawEnabled(generator, false);
|
||||
if (TryComp<BatterySelfRechargerComponent>(generator, out var recharger))
|
||||
@@ -325,4 +335,4 @@ public sealed partial class EnergyDomeSystem : EntitySystem
|
||||
? container.Owner
|
||||
: entity;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user