Files
zeling_v2/Assets/_Game/Scripts/World/Map/IPinService.cs
Joywayer 5cb6c2a19d Add final evaluation report for Minimap system after all fixes and improvements
- 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
2026-05-25 14:25:19 +08:00

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);
}
}