Files
wwdpublic/Content.Client/Clock/ClockSystem.cs
bruhmogus 84faccfd1f Ports Smuggler Satchel, Watches, and Rings (#2088)
# Description

Adds the watches, smuggler satchel, and rings from wizden.
If I fucked anything up, tell me and I'll do my best to fix it, IF I
CAN. I'll probably need some help.
Yell at me really loudly if I managed to delete the entire repo or
something

---

# TODO

- [x] Smuggler satchel
- [x] Watches
- [x] Rings

---

https://github.com/user-attachments/assets/7d1e06a7-a049-4d74-9f7e-2b8f04d1e5d1

---

# Changelog

🆑
- add: Ported Smuggler Satchels from Wizden
- add: Ported watches (both normal and gold) from Wizden
- Ported rings from Wizden

---------

Signed-off-by: bruhmogus <104110869+bruhmogus@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Signed-off-by: Timfa <timfalken@hotmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Timfa <timfalken@hotmail.com>
(cherry picked from commit 667013f9f82b3b291641b5501421653d7f79ddbd)
2025-04-04 14:51:58 +03:00

27 lines
927 B
C#

using Content.Shared.Clock;
using Robust.Client.GameObjects;
namespace Content.Client.Clock;
public sealed class ClockSystem : SharedClockSystem
{
public override void Update(float frameTime)
{
base.Update(frameTime);
var query = EntityQueryEnumerator<ClockComponent, SpriteComponent>();
while (query.MoveNext(out var uid, out var comp, out var sprite))
{
if (!sprite.LayerMapTryGet(ClockVisualLayers.HourHand, out var hourLayer) ||
!sprite.LayerMapTryGet(ClockVisualLayers.MinuteHand, out var minuteLayer))
continue;
var time = GetClockTime((uid, comp));
var hourState = $"{comp.HoursBase}{time.Hours % 12}";
var minuteState = $"{comp.MinutesBase}{time.Minutes / 5}";
sprite.LayerSetState(hourLayer, hourState);
sprite.LayerSetState(minuteLayer, minuteState);
}
}
}