Improve summit terrain, mobile HUD and multiplayer night equipment
Add the Blender flashlight asset with a 600 lm beam and reduced bloom, shared-mode self badge, and compact phone controls. Relocate the summit marker, blend terrain seams, widen walking routes, and align local server configuration on port 2027.
This commit is contained in:
@@ -3,5 +3,5 @@ export const SERVER_LIMITS = {
|
||||
movementBudgetSeconds: 0.5,
|
||||
updateIntervalMs: 100,
|
||||
weatherSampleMs: 60000,
|
||||
defaultOrigins: ['http://localhost:3000', 'http://127.0.0.1:3000', 'http://localhost:5173', 'http://127.0.0.1:5173'],
|
||||
defaultOrigins: ['http://localhost:2027', 'http://127.0.0.1:2027', 'http://localhost:5173', 'http://127.0.0.1:5173'],
|
||||
} as const;
|
||||
|
||||
+4
-2
@@ -43,7 +43,8 @@ function validUpdate(value: unknown): value is PlayerUpdate {
|
||||
&& Math.abs(v.yaw) <= Math.PI * 2 && typeof v.moving === 'boolean'
|
||||
&& ['idle', 'wave', 'pray'].includes(v.emote) && !!gear
|
||||
&& typeof gear.umbrella === 'boolean' && typeof gear.raincoat === 'boolean'
|
||||
&& typeof gear.hood === 'boolean' && (!gear.hood || gear.raincoat);
|
||||
&& typeof gear.hood === 'boolean' && (!gear.hood || gear.raincoat)
|
||||
&& (gear.flashlight === undefined || typeof gear.flashlight === 'boolean');
|
||||
}
|
||||
|
||||
export class SummitRoom {
|
||||
@@ -191,7 +192,8 @@ export class SummitRoom {
|
||||
|| Object.keys(update.equipment).some(key => update.equipment[key as keyof typeof update.equipment] !== s.player!.equipment[key as keyof typeof update.equipment]);
|
||||
if (!changed) return;
|
||||
s.player = { ...s.player, x: update.x, z: update.z, yaw: update.yaw, moving: update.moving, emote,
|
||||
equipment: { umbrella: update.equipment.umbrella, raincoat: update.equipment.raincoat, hood: update.equipment.hood },
|
||||
equipment: { umbrella: update.equipment.umbrella, raincoat: update.equipment.raincoat, hood: update.equipment.hood,
|
||||
...(update.equipment.flashlight === undefined ? {} : { flashlight: update.equipment.flashlight }) },
|
||||
updatedAt: at, emoteStartedAt: emote === s.player.emote ? s.player.emoteStartedAt : at };
|
||||
this.dirty = true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user