fix: give player entities an appearance component for avatar mode rendering

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-06 20:21:05 -05:00
parent 6ffa52ffba
commit fc29bc204c
+3 -1
View File
@@ -1,7 +1,8 @@
import { Server } from 'socket.io';
import type http from 'http';
import type { ClientEvents, ServerEvents, PlayerInput, Position, Movement, PlayerControlled } from '@dflike/shared';
import type { ClientEvents, ServerEvents, PlayerInput, Position, Movement, PlayerControlled, Appearance } from '@dflike/shared';
import { Direction } from '@dflike/shared';
import { generateRandomAppearance } from '../spawner/appearanceGenerator.js';
import type { GameLoop } from '../game/GameLoop.js';
import { serializeWorldState, serializeStateUpdate } from './stateSerializer.js';
@@ -43,6 +44,7 @@ export class SocketServer {
world.addComponent<PlayerControlled>(entity, 'playerControlled', {
playerId, mode: 'camera',
});
world.addComponent<Appearance>(entity, 'appearance', generateRandomAppearance());
// Send full world state
socket.emit('world-state', serializeWorldState(world, map));