using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static VPet_Simulator.Core.GraphInfo;
using VPet_Simulator.Core;
namespace VPet_Simulator.Windows.Interface;
///
/// 多人联机窗口接口 (访客表)
///
public interface IMPWindows
{
///
/// 访客表id
///
ulong LobbyID { get; }
///
/// 所有好友(不包括自己)
///
IEnumerable Friends { get; }
///
/// 主持人SteamID
///
ulong OwnerID { get; }
///
/// 事件:成员退出
///
event Action OnMemberLeave;
///
/// 事件:成员加入
///
event Action OnMemberJoined;
///
/// 给指定好友发送消息(数据包)
///
/// 好友id
/// 消息内容(数据包)
void SendMessage(ulong friendid, MPMessage msg);
///
/// 给所有人发送消息
///
void SendMessageALL(MPMessage msg);
///
/// 发送日志消息
///
/// 日志
void Log(string message);
///
/// 收到消息日志 发送人id, 消息内容
///
event Action ReceivedMessage;
///
/// 事件: 结束访客表, 窗口关闭
///
event Action ClosingMutiPlayer;
///
/// 当前是否有游戏(其他mod的)正在进行 避免多个游戏同时进行而导致冲突
/// 如果你的游戏开始了, 请请设置为true, 并在游戏结束后设置为false
///
bool IsGameRunning { get; set; }
}