* adds antimatter engine * fixes some nullables * fixes ALL OF THE NULLABLES * adds explosions * adds fancy lighting * requested changes + license info Co-authored-by: ancientpower <ancientpowerer@gmail.com>
70 lines
2.0 KiB
C#
70 lines
2.0 KiB
C#
using Robust.Shared.GameObjects;
|
|
using Robust.Shared.GameObjects.Components.UserInterface;
|
|
using Robust.Shared.Serialization;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
|
|
namespace Content.Shared.GameObjects.Components.Power.AME
|
|
{
|
|
public class SharedAMEControllerComponent : Component
|
|
{
|
|
public override string Name => "AMEController";
|
|
|
|
[Serializable, NetSerializable]
|
|
public class AMEControllerBoundUserInterfaceState : BoundUserInterfaceState
|
|
{
|
|
public readonly bool HasPower;
|
|
public readonly bool IsMaster;
|
|
public readonly bool Injecting;
|
|
public readonly bool HasFuelJar;
|
|
public readonly int FuelAmount;
|
|
public readonly int InjectionAmount;
|
|
public readonly int CoreCount;
|
|
|
|
public AMEControllerBoundUserInterfaceState(bool hasPower, bool isMaster, bool injecting, bool hasFuelJar, int fuelAmount, int injectionAmount, int coreCount)
|
|
{
|
|
HasPower = hasPower;
|
|
IsMaster = isMaster;
|
|
Injecting = injecting;
|
|
HasFuelJar = hasFuelJar;
|
|
FuelAmount = fuelAmount;
|
|
InjectionAmount = injectionAmount;
|
|
CoreCount = coreCount;
|
|
}
|
|
}
|
|
|
|
[Serializable, NetSerializable]
|
|
public class UiButtonPressedMessage : BoundUserInterfaceMessage
|
|
{
|
|
public readonly UiButton Button;
|
|
|
|
public UiButtonPressedMessage(UiButton button)
|
|
{
|
|
Button = button;
|
|
}
|
|
}
|
|
|
|
[Serializable, NetSerializable]
|
|
public enum AMEControllerUiKey
|
|
{
|
|
Key
|
|
}
|
|
|
|
public enum UiButton
|
|
{
|
|
Eject,
|
|
ToggleInjection,
|
|
IncreaseFuel,
|
|
DecreaseFuel,
|
|
RefreshParts
|
|
}
|
|
|
|
[Serializable, NetSerializable]
|
|
public enum AMEControllerVisuals
|
|
{
|
|
DisplayState,
|
|
}
|
|
}
|
|
}
|