mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-09-02 10:07:15 +02:00
* Removed the Interfaces folder. * All objects inside the GameObjects subfolders are now in the GameObjects namespace. * Added a Resharper DotSettings file to mark the GameObjects subfolders as not providing namespaces. * Simplified Robust.client.Graphics namespace. * Automated remove redundant using statements.
33 lines
865 B
C#
33 lines
865 B
C#
using System.Collections.Generic;
|
|
using System.Linq;
|
|
|
|
namespace Robust.Shared.GameObjects
|
|
{
|
|
internal class SharedTransformSystem : EntitySystem
|
|
{
|
|
private readonly List<MoveEvent> _deferredMoveEvents = new();
|
|
|
|
public void DeferMoveEvent(MoveEvent moveEvent)
|
|
{
|
|
_deferredMoveEvents.Add(moveEvent);
|
|
}
|
|
|
|
public override void Update(float frameTime)
|
|
{
|
|
base.Update(frameTime);
|
|
|
|
var events = _deferredMoveEvents
|
|
.OrderBy(e => e.Sender.HasComponent<IMapGridComponent>())
|
|
.ToArray();
|
|
|
|
foreach (var ev in events)
|
|
{
|
|
ev.Sender.EntityManager.EventBus.RaiseEvent(EventSource.Local, ev);
|
|
ev.Handled = true;
|
|
}
|
|
|
|
_deferredMoveEvents.RemoveAll(e => e.Handled);
|
|
}
|
|
}
|
|
}
|