using LinePutScript.Dictionary; using System; using System.Collections.Generic; using System.IO; using System.Windows; using System.Windows.Controls; using System.Windows.Media; using System.Windows.Threading; using VPet_Simulator.Core; using static VPet_Simulator.Windows.Interface.ScheduleTask; namespace VPet_Simulator.Windows.Interface { /// /// 游戏主窗体 /// public interface IMainWindow { /// /// 存档前缀, 用于多开游戏, 为空时使用默认存档, 不为空时前缀的前缀一般为'-' /// string PrefixSave { get; } /// /// 启动参数 /// LPS_D Args { get; } /// /// 是否为Steam用户 /// bool IsSteamUser { get; } /// /// SteamID /// public ulong SteamID { get; } /// /// 游戏设置 /// ISetting Set { get; } /// /// 宠物加载器列表 /// List Pets { get; } /// /// 所有可用聊天API /// List TalkAPI { get; } /// /// 当前正在使用的TalkBox /// ITalkAPI TalkBoxCurr { get; } /// /// 桌宠数据核心 /// GameCore Core { get; } /// /// 桌宠主要部件 /// Main Main { get; } /// /// 版本号 /// int version { get; } /// /// 版本号 /// string Version { get; } /// /// 上次点击时间 (Tick) /// long lastclicktime { get; set; } /// /// 所有三方插件 /// List Plugins { get; } /// /// 所有食物 /// List Foods { get; } /// /// 需要食物时会说的话 /// List LowFoodText { get; } /// /// 需要饮料时会说的话 /// List LowDrinkText { get; } /// /// 点击时会说的话 /// List ClickTexts { get; } /// /// 选择说的话 /// List SelectTexts { get; } /// /// 获得自动点击的文本 /// /// 说话内容 ClickText GetClickText(); /// /// 图片资源 /// ImageResources ImageSources { get; } /// /// 文件资源, 储存的为文件路径 : 可以给代码插件MOD用 /// Resources FileSources { get; } /// /// 设置游戏缩放倍率 /// /// 缩放倍率 范围0.1-10 void SetZoomLevel(double zl); /// /// 保存设置 /// void Save(); /// /// 加载DIY内容 /// void LoadDIY(); /// /// 显示设置页面 /// /// 设置页 void ShowSetting(int page = -1); /// /// 显示更好买页面 /// /// 食物类型 void ShowBetterBuy(Food.FoodType type); /// /// 关闭桌宠 /// void Close(); /// /// 重启桌宠 /// void Restart(); /// /// 鼠标穿透 /// bool MouseHitThrough { get; set; } /// /// 存档 Hash检查 是否通过 /// bool HashCheck { get; } /// /// 获得当前系统音乐播放音量 /// float AudioPlayingVolume(); /// /// 关闭指示器,默认为true /// bool CloseConfirm { get; } /// /// 关闭该玩家的HashCheck检查 /// 如果你的mod属于作弊mod/有作弊内容,请在作弊前调用这个方法 /// void HashCheckOff(); /// /// 游戏打开过的窗口, 会在退出时统一调用退出 /// List Windows { get; set; } /// /// 游戏存档数据 /// GameSave_v2 GameSavesData { get; } /// /// 主窗体 Grid /// Grid MGHost { get; } /// /// 主窗体 Pet Grid /// Grid PetGrid { get; } /// /// 当创建/加入新的多人联机窗口(访客表)时触发 /// 如果你想写联机功能,请监听这个事件 /// event Action MutiPlayerHandle; /// /// 当创建/加入新的多人联机窗口(访客表)时触发 /// 用于给MOD定义自己的联机窗口时准备的, 一般联机功能不需要调用这个 /// /// void MutiPlayerStart(IMPWindows mp); /// /// 显示吃东西(夹层)动画 /// /// 夹层动画名 /// 被夹在中间的图片 void DisplayFoodAnimation(string graphName, ImageSource imageSource); /// /// 使用/食用物品 (自动扣钱) (不包括显示动画) /// /// 物品 void TakeItem(Food item); /// /// 显示输入框 /// /// 标题 /// 文本 /// 默认文本 /// 结束事件 /// 是否允许多行输入 /// 文本居中 /// 能否隐藏 void ShowInputBox(string title, string text, string defaulttext, Action ENDAction, bool AllowMutiLine = false, bool TextCenter = true, bool CanHide = false); /// /// UI线程调用位置 /// Dispatcher Dispatcher { get; } /// /// 获取当前所有MOD信息 /// IEnumerable ModInfo { get; } /// /// 获取当前所有已启用的MOD信息 /// IEnumerable OnModInfo { get; } /// /// 所有MOD文件位置 /// List MODPath { get; } /// /// 日程表 /// ScheduleTask ScheduleTask { get; } /// /// 所有可用套餐 /// List SchedulePackage { get; } /// /// 事件:吃东西 /// event Action Event_TakeItem; } }