feat: 50 игр на Lua + импорт Roblox для всех + поддержка Lua в плеере #39

Merged
min merged 215 commits from feat/lua-50-games-bundle into main 2026-06-09 21:59:25 +00:00
Showing only changes of commit 66aac4826e - Show all commits

View File

@ -213,16 +213,25 @@ export class GameRuntime {
} }
} else if (cmd === 'lightingTimeUpdate') { } else if (cmd === 'lightingTimeUpdate') {
// Roblox Lighting:SetMinutesAfterMidnight → Babylon небо. // Roblox Lighting:SetMinutesAfterMidnight → Babylon небо.
// Скрипты делают это каждый кадр — троттлим до 4 раз/сек.
const now = performance.now(); const now = performance.now();
if (!this._lastLightUpdate || now - this._lastLightUpdate > 250) { if (!this._lastLightUpdate || now - this._lastLightUpdate > 250) {
this._lastLightUpdate = now; this._lastLightUpdate = now;
try { try {
const hour = Number(payload?.hour); const hour = Number(payload?.hour);
// Debug-лог (первые несколько раз)
if (!this._lightDbgCount) this._lightDbgCount = 0;
if (this._lightDbgCount < 5) {
this._lightDbgCount++;
console.log('[lightingTimeUpdate]', { payload, hour,
hasSetTimeOfDay: typeof this.scene3d?.setTimeOfDay,
hasEnvironment: !!this.scene3d?.environment });
}
if (hour >= 0 && hour < 24) { if (hour >= 0 && hour < 24) {
this.scene3d?.setTimeOfDay?.(hour); this.scene3d?.setTimeOfDay?.(hour);
} }
} catch (_) {} } catch (e) {
console.error('[lightingTimeUpdate] error:', e);
}
} }
} else if (cmd === 'particleCreated') { } else if (cmd === 'particleCreated') {
// Roblox Instance.new('Sparkles') — запомнили какие // Roblox Instance.new('Sparkles') — запомнили какие