public override void OnRemove() { _appearance = null; _powerReceiver.OnPowerStateChanged -= UpdatePower; _powerReceiver = null; base.OnRemove(); }
private static void BodyTypeChanged( EntityUid uid, PowerReceiverComponent component, PhysicsBodyTypeChangedEvent args) { component.AnchorUpdate(); }
public override void Initialize() { base.Initialize(); _userInterface = Owner.GetComponent <ServerUserInterfaceComponent>().GetBoundUserInterface(ResearchConsoleUiKey.Key); _userInterface.OnReceiveMessage += UserInterfaceOnOnReceiveMessage; _client = Owner.GetComponent <ResearchClientComponent>(); _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); }
public override void Initialize() { base.Initialize(); _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); _container = ContainerManagerComponent.Ensure <ContainerSlot>($"{Name}-powerCellContainer", Owner); _appearanceComponent = Owner.GetComponent <AppearanceComponent>(); // Default state in the visualizer is OFF, so when this gets powered on during initialization it will generally show empty _powerReceiver.OnPowerStateChanged += PowerUpdate; }
public override void Initialize() { base.Initialize(); _userInterface = Owner.GetComponent<ServerUserInterfaceComponent>().GetBoundUserInterface(SolarControlConsoleUiKey.Key); _userInterface.OnReceiveMessage += UserInterfaceOnReceiveMessage; _powerReceiver = Owner.GetComponent<PowerReceiverComponent>(); _powerSolarSystem = _entitySystemManager.GetEntitySystem<PowerSolarSystem>(); }
public override void Initialize() { base.Initialize(); _appearance = Owner.GetComponent <AppearanceComponent>(); _userInterface = Owner.GetComponent <ServerUserInterfaceComponent>() .GetBoundUserInterface(MedicalScannerUiKey.Key); _bodyContainer = ContainerManagerComponent.Ensure <ContainerSlot>($"{Name}-bodyContainer", Owner); _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); UpdateUserInterface(); }
public override void Initialize() { base.Initialize(); _appearance = Owner.GetComponent <AppearanceComponent>(); _userInterface = Owner.GetComponent <ServerUserInterfaceComponent>() .GetBoundUserInterface(VendingMachineUiKey.Key); _userInterface.OnReceiveMessage += UserInterfaceOnOnReceiveMessage; _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); _powerReceiver.OnPowerStateChanged += UpdatePower; TrySetVisualState(_powerReceiver.Powered ? VendingMachineVisualState.Normal : VendingMachineVisualState.Off); InitializeFromPrototype(); }
public override void Initialize() { base.Initialize(); _userInterface = Owner.GetComponent <ServerUserInterfaceComponent>().GetBoundUserInterface(CommunicationsConsoleUiKey.Key); _userInterface.OnReceiveMessage += UserInterfaceOnOnReceiveMessage; _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); RoundEndSystem.OnRoundEndCountdownStarted += UpdateBoundInterface; RoundEndSystem.OnRoundEndCountdownCancelled += UpdateBoundInterface; RoundEndSystem.OnRoundEndCountdownFinished += UpdateBoundInterface; }
public override void Initialize() { base.Initialize(); _userInterface = Owner.GetComponent <ServerUserInterfaceComponent>() .GetBoundUserInterface(GravityGeneratorUiKey.Key); _userInterface.OnReceiveMessage += HandleUIMessage; _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); _sprite = Owner.GetComponent <SpriteComponent>(); _switchedOn = true; _intact = true; _status = GravityGeneratorStatus.On; UpdateState(); }
/// <summary> /// Called once per instance of this component. Gets references to any other components needed /// by this component and initializes it's UI and other data. /// </summary> public override void Initialize() { base.Initialize(); _userInterface = Owner.GetComponent <ServerUserInterfaceComponent>() .GetBoundUserInterface(ReagentDispenserUiKey.Key); _userInterface.OnReceiveMessage += OnUiReceiveMessage; _beakerContainer = ContainerManagerComponent.Ensure <ContainerSlot>($"{Name}-reagentContainerContainer", Owner); _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); InitializeFromPrototype(); UpdateUserInterface(); }
public override void Initialize() { base.Initialize(); _solution ??= Owner.TryGetComponent(out SolutionComponent solutionComponent) ? solutionComponent : Owner.AddComponent <SolutionComponent>(); _storage = ContainerManagerComponent.Ensure <Container>("microwave_entity_container", Owner, out var existed); _appearance = Owner.GetComponent <AppearanceComponent>(); _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); _audioSystem = EntitySystem.Get <AudioSystem>(); _userInterface = Owner.GetComponent <ServerUserInterfaceComponent>() .GetBoundUserInterface(MicrowaveUiKey.Key); _userInterface.OnReceiveMessage += UserInterfaceOnReceiveMessage; }
/// <summary> /// Called once per instance of this component. Gets references to any other components needed /// by this component and initializes it's UI and other data. /// </summary> public override void Initialize() { base.Initialize(); _userInterface = Owner.GetComponent <ServerUserInterfaceComponent>() .GetBoundUserInterface(ChemMasterUiKey.Key); _userInterface.OnReceiveMessage += OnUiReceiveMessage; _beakerContainer = ContainerManagerComponent.Ensure <ContainerSlot>($"{Name}-reagentContainerContainer", Owner); _powerReceiver = Owner.GetComponent <PowerReceiverComponent>(); //BufferSolution = Owner.BufferSolution BufferSolution.Solution = new Solution(); BufferSolution.MaxVolume = ReagentUnit.New(1000); UpdateUserInterface(); }
private bool TryGetWireNet(PowerReceiverComponent powerReceiver, out INodeGroup net) { if (powerReceiver.Provider is PowerProviderComponent && powerReceiver.Provider.ProviderOwner.TryGetComponent <NodeContainerComponent>(out var nodeContainer)) { var nodes = nodeContainer.Nodes; for (var index = 0; index < nodes.Count; index++) { if (nodes[index].NodeGroupID == NodeGroupID.WireNet) { net = nodes[index].NodeGroup; return(true); } } } net = default; return(false); }
public async Task ApcNetTest() { var options = new ServerIntegrationOptions { ExtraPrototypes = Prototypes }; var server = StartServerDummyTicker(options); PowerReceiverComponent receiver = null; server.Assert(() => { var mapMan = IoCManager.Resolve <IMapManager>(); var entityMan = IoCManager.Resolve <IEntityManager>(); mapMan.CreateMap(new MapId(1)); var grid = mapMan.CreateGrid(new MapId(1)); var apcEnt = entityMan.SpawnEntity("ApcDummy", grid.ToCoordinates(0, 0)); var apcExtensionEnt = entityMan.SpawnEntity("ApcExtensionCableDummy", grid.ToCoordinates(0, 1)); var powerReceiverEnt = entityMan.SpawnEntity("PowerReceiverDummy", grid.ToCoordinates(0, 2)); Assert.That(apcEnt.TryGetComponent <ApcComponent>(out var apc)); Assert.That(apcExtensionEnt.TryGetComponent <PowerProviderComponent>(out var provider)); Assert.That(powerReceiverEnt.TryGetComponent(out receiver)); Assert.NotNull(apc.Battery); provider.PowerTransferRange = 5; //arbitrary range to reach receiver receiver.PowerReceptionRange = 5; //arbitrary range to reach provider apc.Battery.MaxCharge = 10000; //arbitrary nonzero amount of charge apc.Battery.CurrentCharge = apc.Battery.MaxCharge; //fill battery receiver.Load = 1; //arbitrary small amount of power }); server.RunTicks(1); //let run a tick for ApcNet to process power server.Assert(() => { Assert.That(receiver.Powered); }); await server.WaitIdleAsync(); }
private bool TryGetWireNet(PowerReceiverComponent powerReceiver, [NotNullWhen(true)] out INodeGroup?net) { if (powerReceiver.Provider is PowerProviderComponent provider && provider.ProviderOwner.TryGetComponent <NodeContainerComponent>(out var nodeContainer)) { var nodes = nodeContainer.Nodes; foreach (var node in nodes.Values) { if (node.NodeGroupID == NodeGroupID.WireNet) { net = node.NodeGroup; return(true); } } } net = default; return(false); }