Add scroll zooming for admins and ghosts (#14061)

* Add scroll zooming for admins

* Bunch of work

* Kinda better kinda worse scrolling

* shared code

* nyoom

* house md

* Fixes

* Log spam

* Fixes

---------

Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
This commit is contained in:
metalgearsloth
2023-04-22 20:26:41 +10:00
committed by GitHub
parent d68ea6e2cf
commit e98113c71e
13 changed files with 307 additions and 1 deletions

View File

@@ -0,0 +1,29 @@
using Content.Shared.Movement.Components;
using Content.Shared.Movement.Systems;
namespace Content.Server.Movement.Systems;
public sealed class ContentEyeSystem : SharedContentEyeSystem
{
public override void Update(float frameTime)
{
base.Update(frameTime);
var eyeQuery = GetEntityQuery<SharedEyeComponent>();
foreach (var (_, comp) in EntityQuery<ActiveContentEyeComponent, ContentEyeComponent>(true))
{
var uid = comp.Owner;
// Use a separate query jjuussstt in case any actives mistakenly hang around.
if (!eyeQuery.TryGetComponent(comp.Owner, out var eyeComp) ||
eyeComp.Zoom.Equals(comp.TargetZoom))
{
RemComp<ActiveContentEyeComponent>(comp.Owner);
continue;
}
UpdateEye(uid, comp, eyeComp, frameTime);
}
}
}