Commit Graph
14 Commits
Author SHA1 Message Date
selimaj-dev 55e57c6379 Removed third party cosmetics 2026-10-09 10:26:57 +02:00
selimaj-dev 54578534d1 Removed some cloaks and added RedBull+ 2026-10-09 07:09:55 +02:00
selimaj-devandclaude ba71a5b838 Draw no cloak for "None" instead of the missing texture
"None" is the empty cloak id, but getCurrentCloakTexture still built textures/cloaks/.png from it, so
the renderer drew Minecraft's missing texture. It now returns null for an empty id and for any id
this version has no texture for, and the renderer already skips a null texture.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-09-29 18:34:24 +02:00
selimaj-devandclaude 9e3bf14ffa Stop per-frame player lookups and make shared state thread-safe
SaturnPlayer stored non-Saturn players as null, which looked the same as
"not fetched yet", so every render re-queued them and flooded the server
with get_player requests. Remember negative lookups and re-check them
after 60 s, retry failed lookups after 5 s, queue each player at most
once, skip lookups while disconnected, and replace the hand-rolled worker
thread with a single-thread executor.

getPlayer now returns null only when the server says the player isn't on
Saturn and throws on failure, so failures are retried instead of cached.

Make state shared between network callbacks and the render thread safe:
ConcurrentHashMap for players, CopyOnWriteArrayList for owned cosmetics,
volatile session/uuid and cosmetic fields, and run emote notifications
on the client thread.

Refs saturnclientmc/saturnclient#2, saturnclientmc/saturnclient#6

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-09-25 14:00:29 +02:00
selimaj-dev 2b6194223a Sanitized cloaks and hats 2026-03-23 20:51:00 +01:00
selimaj-dev 8398c8ce7a Gif loading 2026-03-23 20:33:07 +01:00
selimaj-dev 34eb217747 Gif loading 2026-03-23 20:20:04 +01:00
RudideC 8f09c4cf71 spain flag 2026-03-21 23:17:46 +01:00
RudideC 4cbc574048 best cloak ever 2026-03-21 21:44:58 +01:00
selimaj-dev ff516e3feb End materials and cloaks 2026-03-21 10:57:00 +01:00
selimaj-dev 9c2d5051c5 Albania mark 2026-03-21 01:54:17 +01:00
selimaj-dev 9f2406abdb Cloak loading 2026-03-20 23:06:01 +01:00
selimaj-dev 195f4869bf CloakStore and static loading 2026-03-08 11:58:05 +01:00
selimaj-dev 6b69d12cea Cloaks in common 2026-03-08 11:45:12 +01:00