mirror of
https://github.com/isledecomp/isle-portable.git
synced 2026-05-02 02:23:56 +00:00
* Sync sky color and light position in multiplayer Add ENTITY_SKY and ENTITY_LIGHT to the WorldEvent system so the host controls sky color (hue/saturation via observatory sun/moon/palette buttons) and light position (globe arrows) with the same host-authoritative pattern used for plants and buildings. Non-host players send requests to the host who applies and broadcasts. Sky/light state is appended to the world snapshot so joining players get the current values. https://claude.ai/code/session_01X2cPVQEo7c92wpWA7QPPMG * Clean up sky/light sync: remove debug logging, DRY apply logic, fix host routing - Extract ApplySkyLightState helper to deduplicate sky/light apply code between RestoreSkyLightState and HandleWorldSnapshot - Remove all SDL_Log debug calls and SDL_log.h includes - Remove dead OnWorldEnabled method from WorldStateSync (replaced by OnHostChanged in OnSaveLoaded) - Fix HandleSkyLightMutation host path: return FALSE to let local switch case proceed, instead of duplicating via ApplyWorldEvent - Simplify isle.cpp HandleControl: split observatory cases into individual switch arms with single early-return multiplayer hook - Add save load hooks to sync world state with multiplayer peers - Fix player count to exclude local player without valid actor - Support broadcast snapshots (targetPeerId=0) in relay server --------- |
||
|---|---|---|
| .. | ||
| lego | ||
| modeldb | ||
| mxdirectx | ||
| mxgeometry | ||
| mxstl | ||
| omni | ||
| realtime | ||
| res | ||
| tgl | ||
| viewmanager | ||
| cursor.h | ||
| define.cpp | ||
| define.h | ||
| lego1_export.h | ||
| lego1_pch.h | ||
| library_msvc.h | ||
| library_smack.h | ||
| library_smartheap.h | ||
| main.cpp | ||