- Summarized the evolution of scores across five review rounds - Detailed the status of each evaluation dimension post-fixes - Highlighted remaining issues and recommended future work for further enhancements - Compared current system against industry benchmarks
32 lines
1.0 KiB
C#
32 lines
1.0 KiB
C#
using System.Collections.Generic;
|
|
using BaseGames.Core.Save;
|
|
|
|
namespace BaseGames.World.Map
|
|
{
|
|
/// <summary>
|
|
/// 玩家地图标记服务接口。
|
|
/// <para>
|
|
/// MapPanel 依赖此接口而非具体组件,
|
|
/// 允许替换实现(云存档、多存档槽等扩展场景)。
|
|
/// </para>
|
|
/// 通过 <see cref="BaseGames.Core.ServiceLocator"/> 注册与获取。
|
|
/// </summary>
|
|
public interface IPinService
|
|
{
|
|
/// <summary>当前所有地图标记(只读视图)。</summary>
|
|
IReadOnlyList<MapPin> Pins { get; }
|
|
|
|
/// <summary>
|
|
/// 每次增删标记时自增的版本号,供消费方进行脏检查。
|
|
/// </summary>
|
|
int PinsVersion { get; }
|
|
|
|
/// <summary>创建并添加一个地图标记。</summary>
|
|
MapPin CreatePin(string roomId, float normX, float normY,
|
|
PinType type = PinType.Marker, string note = "");
|
|
|
|
/// <summary>移除指定地图标记。</summary>
|
|
void RemovePin(MapPin pin);
|
|
}
|
|
}
|