20 lines
1.0 KiB
Go
20 lines
1.0 KiB
Go
package methods
|
|||
|
|
|
||
|
|
//
|
||
|
|
// SyncSceneFogMapAllUnlock(64915741) — reveal a whole scene's map fog.
|
||
|
|
// Wire shape read from the client's own Lua reader (RPCDeserializeAuto.lua
|
||
|
|
// midToReader[64915741], export option **LuaOnly** — the native side never touches it):
|
||
|
|
// <code>
|
||
|
|
// local sceneId = reader.ReadUInt32(reader)
|
||
|
|
// local unlock = reader.ReadBoolean(reader)
|
||
|
|
// </code>
|
||
|
|
// Two bare primitives with NO complex header, so this contract must be Inline; a 0xFF
|
||
|
|
// marker would shift the scene id.
|
||
|
|
// The Lua impl is GameToClientImpl.SyncSceneFogMapAllUnlock -> MapFogDataMgr.SyncUnlockScene
|
||
|
|
// (sceneId, unlocked), i.e. the client's own "whole map revealed" switch.
|
||
|
|
// IMPORTANT: the parameter is a **sceneId** (RaidConfig.SceneId, e.g. 20001222), NOT a raid
|
||
|
|
// id. MapSystem_FogMap.IsUnlocked calls MapFogDataMgr.IsInFog(sceneId, x, z), so a raid id
|
||
|
|
// here silently unlocks nothing.
|
||
|
|
// Note this is the correct mechanism — publishing PlayerClientInfoAchievement.SceneFogMaps
|
||
|
|
// at login does nothing, because no client code reads that field for fog state.
|
||
|
|
//
|