mirror of
https://github.com/project-redbud/FunGame-Core.git
synced 2025-04-22 03:59:35 +08:00
统一命名 并禁止GameModuleServer调用DataRequest (#81)
* 统一命名 并禁止GameModuleServer调用DataRequest * 添加了GameModuleDepend (依赖集合) 用于整合Maps Characters Items Skills
This commit is contained in:
parent
e944b0232c
commit
c51b7c50fa
@ -13,9 +13,9 @@ namespace Milimoe.FunGame.Core.Api.Factory
|
|||||||
return RoomFactory.Create();
|
return RoomFactory.Create();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Room Create(long Id = 0, string Roomid = "-1", DateTime? CreateTime = null, User? RoomMaster = null, RoomType RoomType = RoomType.All, string GameMode = "", string GameMap = "", RoomState RoomState = RoomState.Created, bool IsRank = false, string Password = "")
|
public static Room Create(long Id = 0, string Roomid = "-1", DateTime? CreateTime = null, User? RoomMaster = null, RoomType RoomType = RoomType.All, string GameModule = "", string GameMap = "", RoomState RoomState = RoomState.Created, bool IsRank = false, string Password = "")
|
||||||
{
|
{
|
||||||
return new Room(Id, Roomid, CreateTime, RoomMaster, RoomType, GameMode, GameMap, RoomState, IsRank, Password);
|
return new Room(Id, Roomid, CreateTime, RoomMaster, RoomType, GameModule, GameMap, RoomState, IsRank, Password);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -69,15 +69,15 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
/// <param name="CreateTime">创建时间</param>
|
/// <param name="CreateTime">创建时间</param>
|
||||||
/// <param name="RoomMaster">房主</param>
|
/// <param name="RoomMaster">房主</param>
|
||||||
/// <param name="RoomType">房间类型</param>
|
/// <param name="RoomType">房间类型</param>
|
||||||
/// <param name="GameMode">游戏模组</param>
|
/// <param name="GameModule">游戏模组</param>
|
||||||
/// <param name="GameMap"></param>
|
/// <param name="GameMap"></param>
|
||||||
/// <param name="RoomState">房间状态</param>
|
/// <param name="RoomState">房间状态</param>
|
||||||
/// <param name="IsRank"></param>
|
/// <param name="IsRank"></param>
|
||||||
/// <param name="Password">房间密码</param>
|
/// <param name="Password">房间密码</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static Room GetRoom(long Id = 0, string Roomid = "-1", DateTime? CreateTime = null, User? RoomMaster = null, RoomType RoomType = RoomType.All, string GameMode = "", string GameMap = "", RoomState RoomState = RoomState.Created, bool IsRank = false, string Password = "")
|
public static Room GetRoom(long Id = 0, string Roomid = "-1", DateTime? CreateTime = null, User? RoomMaster = null, RoomType RoomType = RoomType.All, string GameModule = "", string GameMap = "", RoomState RoomState = RoomState.Created, bool IsRank = false, string Password = "")
|
||||||
{
|
{
|
||||||
return RoomFactory.Create(Id, Roomid, CreateTime, RoomMaster, RoomType, GameMode, GameMap, RoomState, IsRank, Password);
|
return RoomFactory.Create(Id, Roomid, CreateTime, RoomMaster, RoomType, GameModule, GameMap, RoomState, IsRank, Password);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -96,12 +96,12 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
DateTime CreateTime = (DateTime)DrRoom[RoomQuery.Column_CreateTime];
|
DateTime CreateTime = (DateTime)DrRoom[RoomQuery.Column_CreateTime];
|
||||||
User RoomMaster = User;
|
User RoomMaster = User;
|
||||||
RoomType RoomType = (RoomType)Convert.ToInt32(DrRoom[RoomQuery.Column_RoomType]);
|
RoomType RoomType = (RoomType)Convert.ToInt32(DrRoom[RoomQuery.Column_RoomType]);
|
||||||
string GameMode = (string)DrRoom[RoomQuery.Column_GameMode];
|
string GameModule = (string)DrRoom[RoomQuery.Column_GameModule];
|
||||||
string GameMap = (string)DrRoom[RoomQuery.Column_GameMap];
|
string GameMap = (string)DrRoom[RoomQuery.Column_GameMap];
|
||||||
RoomState RoomState = (RoomState)Convert.ToInt32(DrRoom[RoomQuery.Column_RoomState]);
|
RoomState RoomState = (RoomState)Convert.ToInt32(DrRoom[RoomQuery.Column_RoomState]);
|
||||||
bool IsRank = Convert.ToInt32(DrRoom[RoomQuery.Column_IsRank]) == 1;
|
bool IsRank = Convert.ToInt32(DrRoom[RoomQuery.Column_IsRank]) == 1;
|
||||||
string Password = (string)DrRoom[RoomQuery.Column_Password];
|
string Password = (string)DrRoom[RoomQuery.Column_Password];
|
||||||
room = GetRoom(Id, Roomid, CreateTime, RoomMaster, RoomType, GameMode, GameMap, RoomState, IsRank, Password);
|
room = GetRoom(Id, Roomid, CreateTime, RoomMaster, RoomType, GameModule, GameMap, RoomState, IsRank, Password);
|
||||||
}
|
}
|
||||||
return room;
|
return room;
|
||||||
}
|
}
|
||||||
@ -135,12 +135,12 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
RoomType RoomType = (RoomType)Convert.ToInt32(DrRoom[RoomQuery.Column_RoomType]);
|
RoomType RoomType = (RoomType)Convert.ToInt32(DrRoom[RoomQuery.Column_RoomType]);
|
||||||
string GameMode = (string)DrRoom[RoomQuery.Column_GameMode];
|
string GameModule = (string)DrRoom[RoomQuery.Column_GameModule];
|
||||||
string GameMap = (string)DrRoom[RoomQuery.Column_GameMap];
|
string GameMap = (string)DrRoom[RoomQuery.Column_GameMap];
|
||||||
RoomState RoomState = (RoomState)Convert.ToInt32(DrRoom[RoomQuery.Column_RoomState]);
|
RoomState RoomState = (RoomState)Convert.ToInt32(DrRoom[RoomQuery.Column_RoomState]);
|
||||||
bool IsRank = Convert.ToInt32(DrRoom[RoomQuery.Column_IsRank]) == 1;
|
bool IsRank = Convert.ToInt32(DrRoom[RoomQuery.Column_IsRank]) == 1;
|
||||||
string Password = (string)DrRoom[RoomQuery.Column_Password];
|
string Password = (string)DrRoom[RoomQuery.Column_Password];
|
||||||
list.Add(GetRoom(Id, Roomid, CreateTime, RoomMaster, RoomType, GameMode, GameMap, RoomState, IsRank, Password));
|
list.Add(GetRoom(Id, Roomid, CreateTime, RoomMaster, RoomType, GameModule, GameMap, RoomState, IsRank, Password));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return list;
|
return list;
|
||||||
|
@ -6,17 +6,17 @@ using Milimoe.FunGame.Core.Service;
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Api.Utility
|
namespace Milimoe.FunGame.Core.Api.Utility
|
||||||
{
|
{
|
||||||
public class GameModeLoader
|
public class GameModuleLoader
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 适用于客户端的模组集
|
/// 适用于客户端的模组集
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Dictionary<string, GameMode> Modes { get; } = [];
|
public Dictionary<string, GameModule> Modes { get; } = [];
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 适用于服务器的模组集
|
/// 适用于服务器的模组集
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Dictionary<string, GameModeServer> ServerModes { get; } = [];
|
public Dictionary<string, GameModuleServer> ServerModes { get; } = [];
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 游戏地图集
|
/// 游戏地图集
|
||||||
@ -38,7 +38,7 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public List<Item> Items { get; } = [];
|
public List<Item> Items { get; } = [];
|
||||||
|
|
||||||
private GameModeLoader()
|
private GameModuleLoader()
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -50,20 +50,20 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
/// <seealso cref="Maps"/> 都会读取
|
/// <seealso cref="Maps"/> 都会读取
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="runtime">传入 <see cref="FunGameInfo.FunGame"/> 类型来创建指定端的模组读取器</param>
|
/// <param name="runtime">传入 <see cref="FunGameInfo.FunGame"/> 类型来创建指定端的模组读取器</param>
|
||||||
/// <param name="delegates">用于构建 <see cref="Controller.AddonController"/></param>
|
/// <param name="delegates">用于构建 <see cref="Controller.AddonController{T}"/></param>
|
||||||
/// <param name="otherobjs">其他需要传入给插件初始化的对象</param>
|
/// <param name="otherobjs">其他需要传入给插件初始化的对象</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static GameModeLoader LoadGameModes(FunGameInfo.FunGame runtime, Hashtable delegates, params object[] otherobjs)
|
public static GameModuleLoader LoadGameModules(FunGameInfo.FunGame runtime, Hashtable delegates, params object[] otherobjs)
|
||||||
{
|
{
|
||||||
GameModeLoader loader = new();
|
GameModuleLoader loader = new();
|
||||||
if (runtime == FunGameInfo.FunGame.FunGame_Desktop)
|
if (runtime == FunGameInfo.FunGame.FunGame_Desktop)
|
||||||
{
|
{
|
||||||
AddonManager.LoadGameModes(loader.Modes, loader.Characters, loader.Skills, loader.Items, delegates, otherobjs);
|
AddonManager.LoadGameModules(loader.Modes, loader.Characters, loader.Skills, loader.Items, delegates, otherobjs);
|
||||||
AddonManager.LoadGameMaps(loader.Maps, otherobjs);
|
AddonManager.LoadGameMaps(loader.Maps, otherobjs);
|
||||||
}
|
}
|
||||||
else if (runtime == FunGameInfo.FunGame.FunGame_Server)
|
else if (runtime == FunGameInfo.FunGame.FunGame_Server)
|
||||||
{
|
{
|
||||||
AddonManager.LoadGameModesForServer(loader.ServerModes, loader.Characters, loader.Skills, loader.Items, delegates, otherobjs);
|
AddonManager.LoadGameModulesForServer(loader.ServerModes, loader.Characters, loader.Skills, loader.Items, delegates, otherobjs);
|
||||||
AddonManager.LoadGameMaps(loader.Maps, otherobjs);
|
AddonManager.LoadGameMaps(loader.Maps, otherobjs);
|
||||||
}
|
}
|
||||||
return loader;
|
return loader;
|
||||||
@ -75,7 +75,7 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="name"></param>
|
/// <param name="name"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public GameMode this[string name]
|
public GameModule this[string name]
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
@ -92,7 +92,7 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="name"></param>
|
/// <param name="name"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public GameModeServer GetServerMode(string name)
|
public GameModuleServer GetServerMode(string name)
|
||||||
{
|
{
|
||||||
return ServerModes[name];
|
return ServerModes[name];
|
||||||
}
|
}
|
@ -59,7 +59,7 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
InterfaceMethod.RemoteServerIP => InterfaceSet.Method.RemoteServerIP,
|
InterfaceMethod.RemoteServerIP => InterfaceSet.Method.RemoteServerIP,
|
||||||
InterfaceMethod.DBConnection => InterfaceSet.Method.DBConnection,
|
InterfaceMethod.DBConnection => InterfaceSet.Method.DBConnection,
|
||||||
InterfaceMethod.GetServerSettings => InterfaceSet.Method.GetServerSettings,
|
InterfaceMethod.GetServerSettings => InterfaceSet.Method.GetServerSettings,
|
||||||
InterfaceMethod.GameModeList => InterfaceSet.Method.GameModeList,
|
InterfaceMethod.GameModuleList => InterfaceSet.Method.GameModuleList,
|
||||||
InterfaceMethod.GameMapList => InterfaceSet.Method.GameMapList,
|
InterfaceMethod.GameMapList => InterfaceSet.Method.GameMapList,
|
||||||
_ => ""
|
_ => ""
|
||||||
};
|
};
|
||||||
|
@ -21,7 +21,7 @@ namespace Milimoe.FunGame.Core.Api.Utility
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 构建一个插件读取器并读取插件
|
/// 构建一个插件读取器并读取插件
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="delegates">用于构建 <see cref="Controller.AddonController"/></param>
|
/// <param name="delegates">用于构建 <see cref="Controller.AddonController{T}"/></param>
|
||||||
/// <param name="otherobjs">其他需要传入给插件初始化的对象</param>
|
/// <param name="otherobjs">其他需要传入给插件初始化的对象</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static PluginLoader LoadPlugins(Hashtable delegates, params object[] otherobjs)
|
public static PluginLoader LoadPlugins(Hashtable delegates, params object[] otherobjs)
|
||||||
|
@ -5,20 +5,12 @@ using Milimoe.FunGame.Core.Library.Constant;
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Controller
|
namespace Milimoe.FunGame.Core.Controller
|
||||||
{
|
{
|
||||||
public class AddonController
|
/// <summary>
|
||||||
|
/// 这个控制器在Base的基础上添加了DataRequest
|
||||||
|
/// </summary>
|
||||||
|
/// <typeparam name="T"></typeparam>
|
||||||
|
public class AddonController<T> : BaseAddonController<T> where T : IAddon
|
||||||
{
|
{
|
||||||
private IAddon Addon { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 输出系统消息
|
|
||||||
/// </summary>
|
|
||||||
private Action<string> MaskMethod_WriteLine { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 输出错误消息
|
|
||||||
/// </summary>
|
|
||||||
private Action<Exception> MaskMethod_Error { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 基于本地已连接的Socket创建新的数据请求
|
/// 基于本地已连接的Socket创建新的数据请求
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -29,62 +21,49 @@ namespace Milimoe.FunGame.Core.Controller
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private Func<DataRequestType, DataRequest> MaskMethod_NewLongRunningDataRequest { get; set; }
|
private Func<DataRequestType, DataRequest> MaskMethod_NewLongRunningDataRequest { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 输出系统消息
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="msg"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public void WriteLine(string msg) => MaskMethod_WriteLine(msg);
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 输出错误消息
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="e"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public void Error(Exception e) => MaskMethod_Error(e);
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 基于本地已连接的Socket创建新的数据请求
|
/// 基于本地已连接的Socket创建新的数据请求
|
||||||
/// <para>请勿在 <see cref="Library.Common.Addon.GameModeServer"/> 中调用此方法</para>
|
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="type"></param>
|
/// <param name="type"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public DataRequest NewDataRequest(DataRequestType type) => MaskMethod_NewDataRequest(type);
|
/// <exception cref="ModuleServerNewDataRequestException"></exception>
|
||||||
|
public DataRequest NewDataRequest(DataRequestType type)
|
||||||
|
{
|
||||||
|
if (typeof(T).IsAssignableFrom(typeof(IGameModuleServer)))
|
||||||
|
{
|
||||||
|
throw new ModuleServerNewDataRequestException();
|
||||||
|
}
|
||||||
|
return MaskMethod_NewDataRequest(type);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 基于本地已连接的Socket创建长时间运行的数据请求
|
/// 基于本地已连接的Socket创建长时间运行的数据请求
|
||||||
/// <para>请勿在 <see cref="Library.Common.Addon.GameModeServer"/> 中调用此方法</para>
|
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="type"></param>
|
/// <param name="type"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public DataRequest NewLongRunningDataRequest(DataRequestType type) => MaskMethod_NewLongRunningDataRequest(type);
|
/// <exception cref="ModuleServerNewDataRequestException"></exception>
|
||||||
|
public DataRequest NewLongRunningDataRequest(DataRequestType type)
|
||||||
|
{
|
||||||
|
if (typeof(T).IsAssignableFrom(typeof(IGameModuleServer)))
|
||||||
|
{
|
||||||
|
throw new ModuleServerNewDataRequestException();
|
||||||
|
}
|
||||||
|
return MaskMethod_NewLongRunningDataRequest(type);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 新建一个AddonController
|
/// 新建一个AddonController
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="Addon"></param>
|
/// <param name="addon"></param>
|
||||||
/// <param name="delegates"></param>
|
/// <param name="delegates"></param>
|
||||||
public AddonController(IAddon Addon, Hashtable delegates)
|
public AddonController(IAddon addon, Hashtable delegates) : base(addon, delegates)
|
||||||
{
|
{
|
||||||
this.Addon = Addon;
|
|
||||||
if (delegates.ContainsKey("WriteLine")) MaskMethod_WriteLine = delegates["WriteLine"] != null ? (Action<string>)delegates["WriteLine"]! : new(DefaultPrint);
|
|
||||||
if (delegates.ContainsKey("Error")) MaskMethod_Error = delegates["Error"] != null ? (Action<Exception>)delegates["Error"]! : new(DefaultPrint);
|
|
||||||
if (delegates.ContainsKey("NewDataRequest")) MaskMethod_NewDataRequest = delegates["NewDataRequest"] != null ? (Func<DataRequestType, DataRequest>)delegates["NewDataRequest"]! : new(DefaultNewDataRequest);
|
if (delegates.ContainsKey("NewDataRequest")) MaskMethod_NewDataRequest = delegates["NewDataRequest"] != null ? (Func<DataRequestType, DataRequest>)delegates["NewDataRequest"]! : new(DefaultNewDataRequest);
|
||||||
if (delegates.ContainsKey("NewLongRunningDataRequest")) MaskMethod_NewLongRunningDataRequest = delegates["NewLongRunningDataRequest"] != null ? (Func<DataRequestType, DataRequest>)delegates["NewLongRunningDataRequest"]! : new(DefaultNewDataRequest);
|
if (delegates.ContainsKey("NewLongRunningDataRequest")) MaskMethod_NewLongRunningDataRequest = delegates["NewLongRunningDataRequest"] != null ? (Func<DataRequestType, DataRequest>)delegates["NewLongRunningDataRequest"]! : new(DefaultNewDataRequest);
|
||||||
MaskMethod_WriteLine ??= new(DefaultPrint);
|
|
||||||
MaskMethod_Error ??= new(DefaultPrint);
|
|
||||||
MaskMethod_NewDataRequest ??= new(DefaultNewDataRequest);
|
MaskMethod_NewDataRequest ??= new(DefaultNewDataRequest);
|
||||||
MaskMethod_NewLongRunningDataRequest ??= new(DefaultNewDataRequest);
|
MaskMethod_NewLongRunningDataRequest ??= new(DefaultNewDataRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DefaultPrint(string msg) => Console.Write("\r" + msg + "\n\r> ");
|
private DataRequest DefaultNewDataRequest(DataRequestType type) => throw new ConnectFailedException();
|
||||||
|
|
||||||
private void DefaultPrint(Exception e) => DefaultPrint(e.ToString());
|
|
||||||
|
|
||||||
private DataRequest DefaultNewDataRequest(DataRequestType type)
|
|
||||||
{
|
|
||||||
if (Addon is IGameModeServer) throw new NotSupportedException("请勿在GameModeServer类中调用此方法");
|
|
||||||
else throw new ConnectFailedException();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
70
Controller/BaseAddonController.cs
Normal file
70
Controller/BaseAddonController.cs
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using Milimoe.FunGame.Core.Interface.Addons;
|
||||||
|
using Milimoe.FunGame.Core.Library.Common.Addon;
|
||||||
|
|
||||||
|
namespace Milimoe.FunGame.Core.Controller
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 这是通用的控制器,仅提供基本功能
|
||||||
|
/// </summary>
|
||||||
|
/// <typeparam name="T">Addon的类型,如<see cref="GameModule"/>或者<see cref="Plugin"/></typeparam>
|
||||||
|
public class BaseAddonController<T> where T : IAddon
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 控制器的本体
|
||||||
|
/// </summary>
|
||||||
|
public T Addon { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 输出系统消息
|
||||||
|
/// </summary>
|
||||||
|
protected Action<string> MaskMethod_WriteLine { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 输出错误消息
|
||||||
|
/// </summary>
|
||||||
|
protected Action<Exception> MaskMethod_Error { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 输出系统消息
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="msg"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public void WriteLine(string msg) => MaskMethod_WriteLine(msg);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 输出错误消息
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="e"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public void Error(Exception e) => MaskMethod_Error(e);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 新建一个BaseAddonController
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="addon"></param>
|
||||||
|
/// <param name="delegates"></param>
|
||||||
|
public BaseAddonController(IAddon addon, Hashtable delegates)
|
||||||
|
{
|
||||||
|
Addon = (T)addon;
|
||||||
|
if (delegates.ContainsKey("WriteLine")) MaskMethod_WriteLine = delegates["WriteLine"] != null ? (Action<string>)delegates["WriteLine"]! : new(DefaultPrint);
|
||||||
|
if (delegates.ContainsKey("Error")) MaskMethod_Error = delegates["Error"] != null ? (Action<Exception>)delegates["Error"]! : new(DefaultPrint);
|
||||||
|
MaskMethod_WriteLine ??= new(DefaultPrint);
|
||||||
|
MaskMethod_Error ??= new(DefaultPrint);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 默认的输出错误消息方法
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="msg"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
private void DefaultPrint(string msg) => Console.Write("\r" + msg + "\n\r> ");
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 输出错误消息
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="e"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
private void DefaultPrint(Exception e) => DefaultPrint(e.ToString());
|
||||||
|
}
|
||||||
|
}
|
@ -302,7 +302,7 @@
|
|||||||
<param name="CreateTime">创建时间</param>
|
<param name="CreateTime">创建时间</param>
|
||||||
<param name="RoomMaster">房主</param>
|
<param name="RoomMaster">房主</param>
|
||||||
<param name="RoomType">房间类型</param>
|
<param name="RoomType">房间类型</param>
|
||||||
<param name="GameMode">游戏模组</param>
|
<param name="GameModule">游戏模组</param>
|
||||||
<param name="GameMap"></param>
|
<param name="GameMap"></param>
|
||||||
<param name="RoomState">房间状态</param>
|
<param name="RoomState">房间状态</param>
|
||||||
<param name="IsRank"></param>
|
<param name="IsRank"></param>
|
||||||
@ -389,64 +389,64 @@
|
|||||||
<param name="dr"></param>
|
<param name="dr"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.Modes">
|
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.Modes">
|
||||||
<summary>
|
<summary>
|
||||||
适用于客户端的模组集
|
适用于客户端的模组集
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.ServerModes">
|
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.ServerModes">
|
||||||
<summary>
|
<summary>
|
||||||
适用于服务器的模组集
|
适用于服务器的模组集
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.Maps">
|
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.Maps">
|
||||||
<summary>
|
<summary>
|
||||||
游戏地图集
|
游戏地图集
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.Characters">
|
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.Characters">
|
||||||
<summary>
|
<summary>
|
||||||
角色表
|
角色表
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.Skills">
|
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.Skills">
|
||||||
<summary>
|
<summary>
|
||||||
技能表
|
技能表
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.Items">
|
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.Items">
|
||||||
<summary>
|
<summary>
|
||||||
物品表
|
物品表
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.LoadGameModes(Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame,System.Collections.Hashtable,System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.LoadGameModules(Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame,System.Collections.Hashtable,System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
传入 <see cref="T:Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame"/> 类型来创建指定端的模组读取器
|
传入 <see cref="T:Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame"/> 类型来创建指定端的模组读取器
|
||||||
<para>runtime = <see cref="F:Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame.FunGame_Desktop"/> 时,仅读取 <seealso cref="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.Modes"/></para>
|
<para>runtime = <see cref="F:Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame.FunGame_Desktop"/> 时,仅读取 <seealso cref="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.Modes"/></para>
|
||||||
<para>runtime = <see cref="F:Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame.FunGame_Server"/> 时,仅读取 <seealso cref="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.ServerModes"/></para>
|
<para>runtime = <see cref="F:Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame.FunGame_Server"/> 时,仅读取 <seealso cref="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.ServerModes"/></para>
|
||||||
<seealso cref="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.Maps"/> 都会读取
|
<seealso cref="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.Maps"/> 都会读取
|
||||||
</summary>
|
</summary>
|
||||||
<param name="runtime">传入 <see cref="T:Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame"/> 类型来创建指定端的模组读取器</param>
|
<param name="runtime">传入 <see cref="T:Milimoe.FunGame.Core.Library.Constant.FunGameInfo.FunGame"/> 类型来创建指定端的模组读取器</param>
|
||||||
<param name="delegates">用于构建 <see cref="T:Milimoe.FunGame.Core.Controller.AddonController"/></param>
|
<param name="delegates">用于构建 <see cref="T:Milimoe.FunGame.Core.Controller.AddonController`1"/></param>
|
||||||
<param name="otherobjs">其他需要传入给插件初始化的对象</param>
|
<param name="otherobjs">其他需要传入给插件初始化的对象</param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.Item(System.String)">
|
<member name="P:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.Item(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
获取对应名称的模组实例
|
获取对应名称的模组实例
|
||||||
<para>如果需要取得服务器模组的实例,请调用 <see cref="M:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.GetServerMode(System.String)"/></para>
|
<para>如果需要取得服务器模组的实例,请调用 <see cref="M:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.GetServerMode(System.String)"/></para>
|
||||||
</summary>
|
</summary>
|
||||||
<param name="name"></param>
|
<param name="name"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.GetServerMode(System.String)">
|
<member name="M:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.GetServerMode(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
获取对应名称的服务器模组实例
|
获取对应名称的服务器模组实例
|
||||||
</summary>
|
</summary>
|
||||||
<param name="name"></param>
|
<param name="name"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Api.Utility.GameModeLoader.GetGameMap(System.String)">
|
<member name="M:Milimoe.FunGame.Core.Api.Utility.GameModuleLoader.GetGameMap(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
获取对应名称的游戏地图
|
获取对应名称的游戏地图
|
||||||
</summary>
|
</summary>
|
||||||
@ -943,7 +943,7 @@
|
|||||||
<summary>
|
<summary>
|
||||||
构建一个插件读取器并读取插件
|
构建一个插件读取器并读取插件
|
||||||
</summary>
|
</summary>
|
||||||
<param name="delegates">用于构建 <see cref="T:Milimoe.FunGame.Core.Controller.AddonController"/></param>
|
<param name="delegates">用于构建 <see cref="T:Milimoe.FunGame.Core.Controller.AddonController`1"/></param>
|
||||||
<param name="otherobjs">其他需要传入给插件初始化的对象</param>
|
<param name="otherobjs">其他需要传入给插件初始化的对象</param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
@ -1146,63 +1146,101 @@
|
|||||||
<param name="strs"></param>
|
<param name="strs"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Controller.AddonController.MaskMethod_WriteLine">
|
<member name="T:Milimoe.FunGame.Core.Controller.AddonController`1">
|
||||||
<summary>
|
<summary>
|
||||||
输出系统消息
|
这个控制器在Base的基础上添加了DataRequest
|
||||||
</summary>
|
</summary>
|
||||||
|
<typeparam name="T"></typeparam>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Controller.AddonController.MaskMethod_Error">
|
<member name="P:Milimoe.FunGame.Core.Controller.AddonController`1.MaskMethod_NewDataRequest">
|
||||||
<summary>
|
|
||||||
输出错误消息
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Milimoe.FunGame.Core.Controller.AddonController.MaskMethod_NewDataRequest">
|
|
||||||
<summary>
|
<summary>
|
||||||
基于本地已连接的Socket创建新的数据请求
|
基于本地已连接的Socket创建新的数据请求
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Controller.AddonController.MaskMethod_NewLongRunningDataRequest">
|
<member name="P:Milimoe.FunGame.Core.Controller.AddonController`1.MaskMethod_NewLongRunningDataRequest">
|
||||||
<summary>
|
<summary>
|
||||||
基于本地已连接的Socket创建长时间运行的数据请求
|
基于本地已连接的Socket创建长时间运行的数据请求
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Controller.AddonController.WriteLine(System.String)">
|
<member name="M:Milimoe.FunGame.Core.Controller.AddonController`1.NewDataRequest(Milimoe.FunGame.Core.Library.Constant.DataRequestType)">
|
||||||
|
<summary>
|
||||||
|
基于本地已连接的Socket创建新的数据请求
|
||||||
|
</summary>
|
||||||
|
<param name="type"></param>
|
||||||
|
<returns></returns>
|
||||||
|
<exception cref="T:Milimoe.FunGame.ModuleServerNewDataRequestException"></exception>
|
||||||
|
</member>
|
||||||
|
<member name="M:Milimoe.FunGame.Core.Controller.AddonController`1.NewLongRunningDataRequest(Milimoe.FunGame.Core.Library.Constant.DataRequestType)">
|
||||||
|
<summary>
|
||||||
|
基于本地已连接的Socket创建长时间运行的数据请求
|
||||||
|
</summary>
|
||||||
|
<param name="type"></param>
|
||||||
|
<returns></returns>
|
||||||
|
<exception cref="T:Milimoe.FunGame.ModuleServerNewDataRequestException"></exception>
|
||||||
|
</member>
|
||||||
|
<member name="M:Milimoe.FunGame.Core.Controller.AddonController`1.#ctor(Milimoe.FunGame.Core.Interface.Addons.IAddon,System.Collections.Hashtable)">
|
||||||
|
<summary>
|
||||||
|
新建一个AddonController
|
||||||
|
</summary>
|
||||||
|
<param name="addon"></param>
|
||||||
|
<param name="delegates"></param>
|
||||||
|
</member>
|
||||||
|
<member name="T:Milimoe.FunGame.Core.Controller.BaseAddonController`1">
|
||||||
|
<summary>
|
||||||
|
这是通用的控制器,仅提供基本功能
|
||||||
|
</summary>
|
||||||
|
<typeparam name="T">Addon的类型,如<see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModule"/>或者<see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.Plugin"/></typeparam>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Controller.BaseAddonController`1.Addon">
|
||||||
|
<summary>
|
||||||
|
控制器的本体
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Controller.BaseAddonController`1.MaskMethod_WriteLine">
|
||||||
|
<summary>
|
||||||
|
输出系统消息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Controller.BaseAddonController`1.MaskMethod_Error">
|
||||||
|
<summary>
|
||||||
|
输出错误消息
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:Milimoe.FunGame.Core.Controller.BaseAddonController`1.WriteLine(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
输出系统消息
|
输出系统消息
|
||||||
</summary>
|
</summary>
|
||||||
<param name="msg"></param>
|
<param name="msg"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Controller.AddonController.Error(System.Exception)">
|
<member name="M:Milimoe.FunGame.Core.Controller.BaseAddonController`1.Error(System.Exception)">
|
||||||
<summary>
|
<summary>
|
||||||
输出错误消息
|
输出错误消息
|
||||||
</summary>
|
</summary>
|
||||||
<param name="e"></param>
|
<param name="e"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Controller.AddonController.NewDataRequest(Milimoe.FunGame.Core.Library.Constant.DataRequestType)">
|
<member name="M:Milimoe.FunGame.Core.Controller.BaseAddonController`1.#ctor(Milimoe.FunGame.Core.Interface.Addons.IAddon,System.Collections.Hashtable)">
|
||||||
<summary>
|
<summary>
|
||||||
基于本地已连接的Socket创建新的数据请求
|
新建一个BaseAddonController
|
||||||
<para>请勿在 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer"/> 中调用此方法</para>
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="type"></param>
|
<param name="addon"></param>
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Milimoe.FunGame.Core.Controller.AddonController.NewLongRunningDataRequest(Milimoe.FunGame.Core.Library.Constant.DataRequestType)">
|
|
||||||
<summary>
|
|
||||||
基于本地已连接的Socket创建长时间运行的数据请求
|
|
||||||
<para>请勿在 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer"/> 中调用此方法</para>
|
|
||||||
</summary>
|
|
||||||
<param name="type"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Milimoe.FunGame.Core.Controller.AddonController.#ctor(Milimoe.FunGame.Core.Interface.Addons.IAddon,System.Collections.Hashtable)">
|
|
||||||
<summary>
|
|
||||||
新建一个AddonController
|
|
||||||
</summary>
|
|
||||||
<param name="Addon"></param>
|
|
||||||
<param name="delegates"></param>
|
<param name="delegates"></param>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:Milimoe.FunGame.Core.Controller.BaseAddonController`1.DefaultPrint(System.String)">
|
||||||
|
<summary>
|
||||||
|
默认的输出错误消息方法
|
||||||
|
</summary>
|
||||||
|
<param name="msg"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:Milimoe.FunGame.Core.Controller.BaseAddonController`1.DefaultPrint(System.Exception)">
|
||||||
|
<summary>
|
||||||
|
输出错误消息
|
||||||
|
</summary>
|
||||||
|
<param name="e"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="T:Milimoe.FunGame.Core.Controller.RunTimeController">
|
<member name="T:Milimoe.FunGame.Core.Controller.RunTimeController">
|
||||||
<summary>
|
<summary>
|
||||||
此类实现服务器连接、断开连接、心跳检测、创建数据请求等功能
|
此类实现服务器连接、断开连接、心跳检测、创建数据请求等功能
|
||||||
@ -1518,7 +1556,7 @@
|
|||||||
<member name="M:Milimoe.FunGame.Core.Interface.Base.IServerModel.Read(Milimoe.FunGame.Core.Library.Common.Network.ClientSocket)">
|
<member name="M:Milimoe.FunGame.Core.Interface.Base.IServerModel.Read(Milimoe.FunGame.Core.Library.Common.Network.ClientSocket)">
|
||||||
<summary>
|
<summary>
|
||||||
开始接收客户端消息
|
开始接收客户端消息
|
||||||
<para>请勿在 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer"/> 中调用此方法</para>
|
<para>请勿在 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer"/> 中调用此方法</para>
|
||||||
</summary>
|
</summary>
|
||||||
<param name="socket"></param>
|
<param name="socket"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
@ -1526,7 +1564,7 @@
|
|||||||
<member name="M:Milimoe.FunGame.Core.Interface.Base.IServerModel.Start">
|
<member name="M:Milimoe.FunGame.Core.Interface.Base.IServerModel.Start">
|
||||||
<summary>
|
<summary>
|
||||||
启动对客户端的监听
|
启动对客户端的监听
|
||||||
<para>请勿在 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer"/> 中调用此方法</para>
|
<para>请勿在 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer"/> 中调用此方法</para>
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:Milimoe.FunGame.Core.Interface.IEventHandler">
|
<member name="T:Milimoe.FunGame.Core.Interface.IEventHandler">
|
||||||
@ -1536,7 +1574,7 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="T:Milimoe.FunGame.Core.Interface.IGamingEventHandler">
|
<member name="T:Milimoe.FunGame.Core.Interface.IGamingEventHandler">
|
||||||
<summary>
|
<summary>
|
||||||
局内事件的接口,与 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameMode"/> 配套使用
|
局内事件的接口,与 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModule"/> 配套使用
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:Milimoe.FunGame.Core.Interface.IClient">
|
<member name="T:Milimoe.FunGame.Core.Interface.IClient">
|
||||||
@ -1549,53 +1587,75 @@
|
|||||||
服务器需要实现此接口
|
服务器需要实现此接口
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.Name">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.Name">
|
||||||
<summary>
|
<summary>
|
||||||
模组名称
|
模组名称
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.Description">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.Description">
|
||||||
<summary>
|
<summary>
|
||||||
模组描述
|
模组描述
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.Version">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.Version">
|
||||||
<summary>
|
<summary>
|
||||||
模组版本
|
模组版本
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.Author">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.Author">
|
||||||
<summary>
|
<summary>
|
||||||
模组作者
|
模组作者
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.Characters">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.Characters">
|
||||||
<summary>
|
<summary>
|
||||||
此模组中包含的角色
|
此模组中包含的角色
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.IsLoaded">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.IsLoaded">
|
||||||
<summary>
|
<summary>
|
||||||
加载标记
|
加载标记
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.Load(System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.Load(System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
加载模组
|
加载模组
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.AfterLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.AfterLoad">
|
||||||
<summary>
|
<summary>
|
||||||
模组加载后需要做的事
|
模组加载后需要做的事
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.CharacterMode.BeforeLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.CharacterModule.BeforeLoad">
|
||||||
<summary>
|
<summary>
|
||||||
允许返回false来阻止加载此模组
|
允许返回false来阻止加载此模组
|
||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:Milimoe.FunGame.Core.Library.Common.Addon.ExamplePlugin">
|
<member name="T:Milimoe.FunGame.Core.Library.Common.Addon.Example.ExampleGameModuleConstant">
|
||||||
|
<summary>
|
||||||
|
建议使用一个类来存储常量,方便重用
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="T:Milimoe.FunGame.Core.Library.Common.Addon.Example.ExampleGameModule">
|
||||||
|
<summary>
|
||||||
|
模组:必须继承基类:<see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModule"/><para/>
|
||||||
|
继承事件接口并实现其方法来使模组生效。例如继承:<seealso cref="T:Milimoe.FunGame.Core.Interface.IGamingConnectEvent"/><para/>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="T:Milimoe.FunGame.Core.Library.Common.Addon.Example.ExampleGameModuleServer">
|
||||||
|
<summary>
|
||||||
|
模组服务器:必须继承基类:<see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer"/><para/>
|
||||||
|
使用switch块分类处理 <see cref="T:Milimoe.FunGame.Core.Library.Constant.GamingType"/>。
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="T:Milimoe.FunGame.Core.Library.Common.Addon.Example.ExampleGameMap">
|
||||||
|
<summary>
|
||||||
|
地图:必须继承基类:<see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameMap"/><para/>
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="T:Milimoe.FunGame.Core.Library.Common.Addon.Example.ExamplePlugin">
|
||||||
<summary>
|
<summary>
|
||||||
必须继承基类:<see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.Plugin"/><para/>
|
必须继承基类:<see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.Plugin"/><para/>
|
||||||
继承事件接口并实现其方法来使插件生效。例如继承:<seealso cref="T:Milimoe.FunGame.Core.Interface.ILoginEvent"/>
|
继承事件接口并实现其方法来使插件生效。例如继承:<seealso cref="T:Milimoe.FunGame.Core.Interface.ILoginEvent"/>
|
||||||
@ -1659,145 +1719,188 @@
|
|||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Name">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Name">
|
||||||
<summary>
|
<summary>
|
||||||
模组名称
|
模组名称
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Description">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Description">
|
||||||
<summary>
|
<summary>
|
||||||
模组描述
|
模组描述
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Version">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Version">
|
||||||
<summary>
|
<summary>
|
||||||
模组版本
|
模组版本
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Author">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Author">
|
||||||
<summary>
|
<summary>
|
||||||
模组作者
|
模组作者
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.DefaultMap">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.DefaultMap">
|
||||||
<summary>
|
<summary>
|
||||||
默认地图
|
默认地图
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Maps">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.GameModuleDepend">
|
||||||
<summary>
|
<summary>
|
||||||
模组所使用的地图
|
模组的依赖集合
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.RoomType">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.RoomType">
|
||||||
<summary>
|
<summary>
|
||||||
适用的房间模式
|
适用的房间模式
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Controller">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Controller">
|
||||||
<summary>
|
<summary>
|
||||||
包含了一些常用方法的控制器
|
包含了一些常用方法的控制器
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameMode._Controller">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Milimoe#FunGame#Core#Interface#Addons#IAddonController{Milimoe#FunGame#Core#Interface#Addons#IGameModule}#Controller">
|
||||||
|
<summary>
|
||||||
|
base控制器,没有DataRequest
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameModule._Controller">
|
||||||
<summary>
|
<summary>
|
||||||
控制器内部变量
|
控制器内部变量
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.StartUI(System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.StartGame(Milimoe.FunGame.Core.Model.Gaming,System.Object[])">
|
||||||
|
<summary>
|
||||||
|
必须重写此方法,游戏的主要逻辑写在这里面<para/>
|
||||||
|
此方法会在 <see cref="M:Milimoe.FunGame.Core.Model.Gaming.StartGame(Milimoe.FunGame.Core.Library.Common.Addon.GameModule,Milimoe.FunGame.Core.Entity.Room,System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.User},System.Object[])"/> 时调用<para/>
|
||||||
|
</summary>
|
||||||
|
<param name="instance"></param>
|
||||||
|
<param name="args"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.StartUI(System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
如模组有界面,请重写此方法
|
如模组有界面,请重写此方法
|
||||||
此方法会在StartGame时调用
|
|
||||||
</summary>
|
</summary>
|
||||||
<param name="args"></param>
|
<param name="args"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.IsLoaded">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.IsLoaded">
|
||||||
<summary>
|
<summary>
|
||||||
加载标记
|
加载标记
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Load(System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Load(System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
加载模组
|
加载模组
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.AfterLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.AfterLoad">
|
||||||
<summary>
|
<summary>
|
||||||
模组加载后需要做的事
|
模组加载后需要做的事
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.BeforeLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.BeforeLoad">
|
||||||
<summary>
|
<summary>
|
||||||
允许返回false来阻止加载此模组
|
允许返回false来阻止加载此模组
|
||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Init(System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Init(System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
传递委托以便让模组调用
|
传递委托以便让模组调用
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Session">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Session">
|
||||||
<summary>
|
<summary>
|
||||||
Session对象
|
Session对象
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.Config">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.Config">
|
||||||
<summary>
|
<summary>
|
||||||
Config对象
|
Config对象
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.BindEvent">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.BindEvent">
|
||||||
<summary>
|
<summary>
|
||||||
绑定事件。在<see cref="M:Milimoe.FunGame.Core.Library.Common.Addon.GameMode.BeforeLoad"/>后触发
|
绑定事件。在<see cref="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModule.BeforeLoad"/>后触发
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.Name">
|
<member name="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleDepend">
|
||||||
|
<summary>
|
||||||
|
模组的依赖集合
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleDepend.#ctor(System.String[],System.String[],System.String[],System.String[])">
|
||||||
|
<summary>
|
||||||
|
模组的依赖集合
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleDepend.Maps">
|
||||||
|
<summary>
|
||||||
|
模组所使用的地图组
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleDepend.Characters">
|
||||||
|
<summary>
|
||||||
|
模组所使用的角色组
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleDepend.Items">
|
||||||
|
<summary>
|
||||||
|
模组所使用的物品组
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleDepend.Skills">
|
||||||
|
<summary>
|
||||||
|
模组所使用的技能组
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.Name">
|
||||||
<summary>
|
<summary>
|
||||||
模组名称
|
模组名称
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.Description">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.Description">
|
||||||
<summary>
|
<summary>
|
||||||
模组描述
|
模组描述
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.Version">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.Version">
|
||||||
<summary>
|
<summary>
|
||||||
模组版本
|
模组版本
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.Author">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.Author">
|
||||||
<summary>
|
<summary>
|
||||||
模组作者
|
模组作者
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.DefaultMap">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.DefaultMap">
|
||||||
<summary>
|
<summary>
|
||||||
默认地图
|
默认地图
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.Maps">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.GameModuleDepend">
|
||||||
<summary>
|
<summary>
|
||||||
模组所使用的地图
|
模组的依赖集合
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.Controller">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.Controller">
|
||||||
<summary>
|
<summary>
|
||||||
包含了一些常用方法的控制器
|
包含了一些常用方法的控制器
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer._Controller">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer._Controller">
|
||||||
<summary>
|
<summary>
|
||||||
控制器内部变量
|
控制器内部变量
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.StartServer(System.String,Milimoe.FunGame.Core.Entity.Room,System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.User},Milimoe.FunGame.Core.Interface.Base.IServerModel,System.Collections.Generic.Dictionary{System.String,Milimoe.FunGame.Core.Interface.Base.IServerModel},System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.StartServer(System.String,Milimoe.FunGame.Core.Entity.Room,System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.User},Milimoe.FunGame.Core.Interface.Base.IServerModel,System.Collections.Generic.Dictionary{System.String,Milimoe.FunGame.Core.Interface.Base.IServerModel},System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
启动服务器监听 请在此处实现服务器逻辑
|
启动服务器监听 请在此处实现服务器逻辑
|
||||||
</summary>
|
</summary>
|
||||||
<param name="GameMode"></param>
|
<param name="GameModule"></param>
|
||||||
<param name="Room"></param>
|
<param name="Room"></param>
|
||||||
<param name="Users"></param>
|
<param name="Users"></param>
|
||||||
<param name="RoomMasterServerModel"></param>
|
<param name="RoomMasterServerModel"></param>
|
||||||
@ -1805,7 +1908,7 @@
|
|||||||
<param name="Args"></param>
|
<param name="Args"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.GamingMessageHandler(System.String,Milimoe.FunGame.Core.Library.Constant.GamingType,System.Collections.Hashtable)">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.GamingMessageHandler(System.String,Milimoe.FunGame.Core.Library.Constant.GamingType,System.Collections.Hashtable)">
|
||||||
<summary>
|
<summary>
|
||||||
接收并处理GamingMessage
|
接收并处理GamingMessage
|
||||||
</summary>
|
</summary>
|
||||||
@ -1814,68 +1917,68 @@
|
|||||||
<param name="data">消息参数</param>
|
<param name="data">消息参数</param>
|
||||||
<returns>底层会将哈希表中的数据发送给客户端</returns>
|
<returns>底层会将哈希表中的数据发送给客户端</returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.IsLoaded">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.IsLoaded">
|
||||||
<summary>
|
<summary>
|
||||||
加载标记
|
加载标记
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.Load(System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.Load(System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
加载模组
|
加载模组
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.AfterLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.AfterLoad">
|
||||||
<summary>
|
<summary>
|
||||||
模组加载后需要做的事
|
模组加载后需要做的事
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer.BeforeLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer.BeforeLoad">
|
||||||
<summary>
|
<summary>
|
||||||
允许返回false来阻止加载此模组
|
允许返回false来阻止加载此模组
|
||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.Name">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.Name">
|
||||||
<summary>
|
<summary>
|
||||||
模组名称
|
模组名称
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.Description">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.Description">
|
||||||
<summary>
|
<summary>
|
||||||
模组描述
|
模组描述
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.Version">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.Version">
|
||||||
<summary>
|
<summary>
|
||||||
模组版本
|
模组版本
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.Author">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.Author">
|
||||||
<summary>
|
<summary>
|
||||||
模组作者
|
模组作者
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.Items">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.Items">
|
||||||
<summary>
|
<summary>
|
||||||
此模组中包含的物品
|
此模组中包含的物品
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.IsLoaded">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.IsLoaded">
|
||||||
<summary>
|
<summary>
|
||||||
加载标记
|
加载标记
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.Load(System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.Load(System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
加载模组
|
加载模组
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.AfterLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.AfterLoad">
|
||||||
<summary>
|
<summary>
|
||||||
模组加载后需要做的事
|
模组加载后需要做的事
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.ItemMode.BeforeLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.ItemModule.BeforeLoad">
|
||||||
<summary>
|
<summary>
|
||||||
允许返回false来阻止加载此模组
|
允许返回false来阻止加载此模组
|
||||||
</summary>
|
</summary>
|
||||||
@ -1906,6 +2009,11 @@
|
|||||||
包含了一些常用方法的控制器
|
包含了一些常用方法的控制器
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.Plugin.Milimoe#FunGame#Core#Interface#Addons#IAddonController{Milimoe#FunGame#Core#Interface#Addons#IPlugin}#Controller">
|
||||||
|
<summary>
|
||||||
|
base控制器,没有DataRequest
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.Plugin._Controller">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.Plugin._Controller">
|
||||||
<summary>
|
<summary>
|
||||||
控制器内部变量
|
控制器内部变量
|
||||||
@ -1952,47 +2060,47 @@
|
|||||||
绑定事件。在<see cref="M:Milimoe.FunGame.Core.Library.Common.Addon.Plugin.BeforeLoad"/>后触发
|
绑定事件。在<see cref="M:Milimoe.FunGame.Core.Library.Common.Addon.Plugin.BeforeLoad"/>后触发
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.Name">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.Name">
|
||||||
<summary>
|
<summary>
|
||||||
模组名称
|
模组名称
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.Description">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.Description">
|
||||||
<summary>
|
<summary>
|
||||||
模组描述
|
模组描述
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.Version">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.Version">
|
||||||
<summary>
|
<summary>
|
||||||
模组版本
|
模组版本
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.Author">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.Author">
|
||||||
<summary>
|
<summary>
|
||||||
模组作者
|
模组作者
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.Skills">
|
<member name="P:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.Skills">
|
||||||
<summary>
|
<summary>
|
||||||
此模组中包含的技能
|
此模组中包含的技能
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.IsLoaded">
|
<member name="F:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.IsLoaded">
|
||||||
<summary>
|
<summary>
|
||||||
加载标记
|
加载标记
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.Load(System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.Load(System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
加载模组
|
加载模组
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.AfterLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.AfterLoad">
|
||||||
<summary>
|
<summary>
|
||||||
模组加载后需要做的事
|
模组加载后需要做的事
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.SkillMode.BeforeLoad">
|
<member name="M:Milimoe.FunGame.Core.Library.Common.Addon.SkillModule.BeforeLoad">
|
||||||
<summary>
|
<summary>
|
||||||
允许返回false来阻止加载此模组
|
允许返回false来阻止加载此模组
|
||||||
</summary>
|
</summary>
|
||||||
@ -2468,23 +2576,35 @@
|
|||||||
客户端需要使用创建此类单例
|
客户端需要使用创建此类单例
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Model.Gaming.StartGame(Milimoe.FunGame.Core.Library.Common.Addon.GameMode,Milimoe.FunGame.Core.Entity.Room,System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.User})">
|
<member name="P:Milimoe.FunGame.Core.Model.Gaming.GameModule">
|
||||||
|
<summary>
|
||||||
|
使用的模组实例
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:Milimoe.FunGame.Core.Model.Gaming.EventArgs">
|
||||||
|
<summary>
|
||||||
|
游戏的参数
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="M:Milimoe.FunGame.Core.Model.Gaming.StartGame(Milimoe.FunGame.Core.Library.Common.Addon.GameModule,Milimoe.FunGame.Core.Entity.Room,System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.User},System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
传入游戏所需的参数,构造一个Gaming实例
|
传入游戏所需的参数,构造一个Gaming实例
|
||||||
</summary>
|
</summary>
|
||||||
<param name="GameMode"></param>
|
<param name="module"></param>
|
||||||
<param name="Room"></param>
|
<param name="room"></param>
|
||||||
<param name="Users"></param>
|
<param name="users"></param>
|
||||||
|
<param name="args"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Model.Gaming.GamingHandler(Milimoe.FunGame.Core.Library.Constant.GamingType,System.Collections.Hashtable)">
|
<member name="M:Milimoe.FunGame.Core.Model.Gaming.GamingHandler(Milimoe.FunGame.Core.Library.Constant.GamingType,System.Collections.Hashtable)">
|
||||||
<summary>
|
<summary>
|
||||||
需在RunTimeController的SocketHandler_Gaming方法中调用此方法
|
需在RunTimeController的SocketHandler_Gaming方法中调用此方法
|
||||||
<para>客户端也可以参照此方法自行实现</para>
|
<para>客户端也可以参照此方法自行实现</para>
|
||||||
<para>此方法目的是为了触发 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameMode"/> 的局内事件实现</para>
|
<para>此方法目的是为了触发 <see cref="T:Milimoe.FunGame.Core.Library.Common.Addon.GameModule"/> 的局内事件实现</para>
|
||||||
</summary>
|
</summary>
|
||||||
<param name="GamingType"></param>
|
<param name="type">消息类型</param>
|
||||||
<param name="Data"></param>
|
<param name="data">接收到的数据</param>
|
||||||
|
<returns>底层会将哈希表中的数据发送给服务器</returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:Milimoe.FunGame.Core.Model.Session.Server_Address">
|
<member name="P:Milimoe.FunGame.Core.Model.Session.Server_Address">
|
||||||
<summary>
|
<summary>
|
||||||
@ -2530,11 +2650,11 @@
|
|||||||
<param name="otherobjs"></param>
|
<param name="otherobjs"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Service.AddonManager.LoadGameModes(System.Collections.Generic.Dictionary{System.String,Milimoe.FunGame.Core.Library.Common.Addon.GameMode},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Character},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Skill},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Item},System.Collections.Hashtable,System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Service.AddonManager.LoadGameModules(System.Collections.Generic.Dictionary{System.String,Milimoe.FunGame.Core.Library.Common.Addon.GameModule},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Character},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Skill},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Item},System.Collections.Hashtable,System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
从gamemodes目录加载所有模组
|
从modules目录加载所有模组
|
||||||
</summary>
|
</summary>
|
||||||
<param name="gamemodes"></param>
|
<param name="modules"></param>
|
||||||
<param name="characters"></param>
|
<param name="characters"></param>
|
||||||
<param name="skills"></param>
|
<param name="skills"></param>
|
||||||
<param name="items"></param>
|
<param name="items"></param>
|
||||||
@ -2542,11 +2662,11 @@
|
|||||||
<param name="otherobjs"></param>
|
<param name="otherobjs"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Service.AddonManager.LoadGameModesForServer(System.Collections.Generic.Dictionary{System.String,Milimoe.FunGame.Core.Library.Common.Addon.GameModeServer},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Character},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Skill},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Item},System.Collections.Hashtable,System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Service.AddonManager.LoadGameModulesForServer(System.Collections.Generic.Dictionary{System.String,Milimoe.FunGame.Core.Library.Common.Addon.GameModuleServer},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Character},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Skill},System.Collections.Generic.List{Milimoe.FunGame.Core.Entity.Item},System.Collections.Hashtable,System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
从gamemodes目录加载所有适用于服务器的模组
|
从modules目录加载所有适用于服务器的模组
|
||||||
</summary>
|
</summary>
|
||||||
<param name="gamemodes"></param>
|
<param name="modules"></param>
|
||||||
<param name="characters"></param>
|
<param name="characters"></param>
|
||||||
<param name="skills"></param>
|
<param name="skills"></param>
|
||||||
<param name="items"></param>
|
<param name="items"></param>
|
||||||
@ -2556,9 +2676,9 @@
|
|||||||
</member>
|
</member>
|
||||||
<member name="M:Milimoe.FunGame.Core.Service.AddonManager.LoadGameMaps(System.Collections.Generic.Dictionary{System.String,Milimoe.FunGame.Core.Library.Common.Addon.GameMap},System.Object[])">
|
<member name="M:Milimoe.FunGame.Core.Service.AddonManager.LoadGameMaps(System.Collections.Generic.Dictionary{System.String,Milimoe.FunGame.Core.Library.Common.Addon.GameMap},System.Object[])">
|
||||||
<summary>
|
<summary>
|
||||||
从gamemaps目录加载所有地图
|
从maps目录加载所有地图
|
||||||
</summary>
|
</summary>
|
||||||
<param name="gamemaps"></param>
|
<param name="maps"></param>
|
||||||
<param name="objs"></param>
|
<param name="objs"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Core.Entity
|
|||||||
public DateTime CreateTime { get; set; } = General.DefaultTime;
|
public DateTime CreateTime { get; set; } = General.DefaultTime;
|
||||||
public User RoomMaster { get; set; } = General.UnknownUserInstance;
|
public User RoomMaster { get; set; } = General.UnknownUserInstance;
|
||||||
public RoomType RoomType { get; set; } = RoomType.All;
|
public RoomType RoomType { get; set; } = RoomType.All;
|
||||||
public string GameMode { get; set; } = "";
|
public string GameModule { get; set; } = "";
|
||||||
public string GameMap { get; set; } = "";
|
public string GameMap { get; set; } = "";
|
||||||
public RoomState RoomState { get; set; }
|
public RoomState RoomState { get; set; }
|
||||||
public bool IsRank { get; set; } = false;
|
public bool IsRank { get; set; } = false;
|
||||||
@ -24,14 +24,14 @@ namespace Milimoe.FunGame.Core.Entity
|
|||||||
Statistics = new(this);
|
Statistics = new(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
internal Room(long Id = 0, string Roomid = "-1", DateTime? CreateTime = null, User? RoomMaster = null, RoomType RoomType = RoomType.All, string GameMode = "", string GameMap = "", RoomState RoomState = RoomState.Created, bool IsRank = false, string Password = "")
|
internal Room(long Id = 0, string Roomid = "-1", DateTime? CreateTime = null, User? RoomMaster = null, RoomType RoomType = RoomType.All, string GameModule = "", string GameMap = "", RoomState RoomState = RoomState.Created, bool IsRank = false, string Password = "")
|
||||||
{
|
{
|
||||||
this.Id = Id;
|
this.Id = Id;
|
||||||
this.Roomid = Roomid;
|
this.Roomid = Roomid;
|
||||||
this.CreateTime = CreateTime ?? General.DefaultTime;
|
this.CreateTime = CreateTime ?? General.DefaultTime;
|
||||||
this.RoomMaster = RoomMaster ?? General.UnknownUserInstance;
|
this.RoomMaster = RoomMaster ?? General.UnknownUserInstance;
|
||||||
this.RoomType = RoomType;
|
this.RoomType = RoomType;
|
||||||
this.GameMode = GameMode;
|
this.GameModule = GameModule;
|
||||||
this.GameMap = GameMap;
|
this.GameMap = GameMap;
|
||||||
this.RoomState = RoomState;
|
this.RoomState = RoomState;
|
||||||
this.IsRank = IsRank;
|
this.IsRank = IsRank;
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Interface.Addons
|
namespace Milimoe.FunGame.Core.Interface.Addons
|
||||||
{
|
{
|
||||||
public interface IAddonController
|
public interface IAddonController<T> where T : IAddon
|
||||||
{
|
{
|
||||||
public AddonController Controller { get; set; }
|
public BaseAddonController<T> Controller { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,9 +0,0 @@
|
|||||||
namespace Milimoe.FunGame.Core.Interface.Addons
|
|
||||||
{
|
|
||||||
public interface IGameMode : IAddon, IAddonController, IGamingConnectEventHandler, IGamingDisconnectEventHandler, IGamingReconnectEventHandler, IGamingBanCharacterEventHandler, IGamingPickCharacterEventHandler,
|
|
||||||
IGamingRandomEventHandler, IGamingRoundEventHandler, IGamingLevelUpEventHandler, IGamingMoveEventHandler, IGamingAttackEventHandler, IGamingSkillEventHandler, IGamingItemEventHandler, IGamingMagicEventHandler,
|
|
||||||
IGamingBuyEventHandler, IGamingSuperSkillEventHandler, IGamingPauseEventHandler, IGamingUnpauseEventHandler, IGamingSurrenderEventHandler, IGamingUpdateInfoEventHandler, IGamingPunishEventHandler
|
|
||||||
{
|
|
||||||
public abstract bool StartUI(params object[] args);
|
|
||||||
}
|
|
||||||
}
|
|
12
Interface/Base/Addons/IGameModule.cs
Normal file
12
Interface/Base/Addons/IGameModule.cs
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
using Milimoe.FunGame.Core.Model;
|
||||||
|
|
||||||
|
namespace Milimoe.FunGame.Core.Interface.Addons
|
||||||
|
{
|
||||||
|
public interface IGameModule : IAddon, IAddonController<IGameModule>, IGamingConnectEventHandler, IGamingDisconnectEventHandler, IGamingReconnectEventHandler, IGamingBanCharacterEventHandler, IGamingPickCharacterEventHandler,
|
||||||
|
IGamingRandomEventHandler, IGamingRoundEventHandler, IGamingLevelUpEventHandler, IGamingMoveEventHandler, IGamingAttackEventHandler, IGamingSkillEventHandler, IGamingItemEventHandler, IGamingMagicEventHandler,
|
||||||
|
IGamingBuyEventHandler, IGamingSuperSkillEventHandler, IGamingPauseEventHandler, IGamingUnpauseEventHandler, IGamingSurrenderEventHandler, IGamingUpdateInfoEventHandler, IGamingPunishEventHandler, IGameModuleDepend
|
||||||
|
{
|
||||||
|
public abstract void StartGame(Gaming instance, params object[] args);
|
||||||
|
public abstract void StartUI(params object[] args);
|
||||||
|
}
|
||||||
|
}
|
9
Interface/Base/Addons/IGameModuleDepend.cs
Normal file
9
Interface/Base/Addons/IGameModuleDepend.cs
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
using Milimoe.FunGame.Core.Library.Common.Addon;
|
||||||
|
|
||||||
|
namespace Milimoe.FunGame.Core.Interface.Addons
|
||||||
|
{
|
||||||
|
public interface IGameModuleDepend
|
||||||
|
{
|
||||||
|
public GameModuleDepend GameModuleDepend { get; }
|
||||||
|
}
|
||||||
|
}
|
@ -5,9 +5,9 @@ using Milimoe.FunGame.Core.Library.Constant;
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Interface.Addons
|
namespace Milimoe.FunGame.Core.Interface.Addons
|
||||||
{
|
{
|
||||||
public interface IGameModeServer : IAddon, IAddonController
|
public interface IGameModuleServer : IAddon, IAddonController<IGameModuleServer>, IGameModuleDepend
|
||||||
{
|
{
|
||||||
public bool StartServer(string GameMode, Room Room, List<User> Users, IServerModel RoomMasterServerModel, Dictionary<string, IServerModel> OthersServerModel, params object[] args);
|
public bool StartServer(string GameModule, Room Room, List<User> Users, IServerModel RoomMasterServerModel, Dictionary<string, IServerModel> OthersServerModel, params object[] args);
|
||||||
|
|
||||||
public Hashtable GamingMessageHandler(string username, GamingType type, Hashtable data);
|
public Hashtable GamingMessageHandler(string username, GamingType type, Hashtable data);
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
namespace Milimoe.FunGame.Core.Interface.Addons
|
namespace Milimoe.FunGame.Core.Interface.Addons
|
||||||
{
|
{
|
||||||
public interface IPlugin : IAddon, IAddonController, IConnectEventHandler, IDisconnectEventHandler, ILoginEventHandler, ILogoutEventHandler, IRegEventHandler, IIntoRoomEventHandler, ISendTalkEventHandler,
|
public interface IPlugin : IAddon, IAddonController<IPlugin>, IConnectEventHandler, IDisconnectEventHandler, ILoginEventHandler, ILogoutEventHandler, IRegEventHandler, IIntoRoomEventHandler, ISendTalkEventHandler,
|
||||||
ICreateRoomEventHandler, IQuitRoomEventHandler, IChangeRoomSettingEventHandler, IStartMatchEventHandler, IStartGameEventHandler, IChangeProfileEventHandler, IChangeAccountSettingEventHandler,
|
ICreateRoomEventHandler, IQuitRoomEventHandler, IChangeRoomSettingEventHandler, IStartMatchEventHandler, IStartGameEventHandler, IChangeProfileEventHandler, IChangeAccountSettingEventHandler,
|
||||||
IOpenInventoryEventHandler, ISignInEventHandler, IOpenStoreEventHandler, IBuyItemEventHandler, IShowRankingEventHandler, IUseItemEventHandler, IEndGameEventHandler
|
IOpenInventoryEventHandler, ISignInEventHandler, IOpenStoreEventHandler, IBuyItemEventHandler, IShowRankingEventHandler, IUseItemEventHandler, IEndGameEventHandler
|
||||||
{
|
{
|
||||||
|
@ -59,7 +59,7 @@ namespace Milimoe.FunGame.Core.Interface.Base
|
|||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 开始接收客户端消息
|
/// 开始接收客户端消息
|
||||||
/// <para>请勿在 <see cref="GameModeServer"/> 中调用此方法</para>
|
/// <para>请勿在 <see cref="GameModuleServer"/> 中调用此方法</para>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="socket"></param>
|
/// <param name="socket"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
@ -67,7 +67,7 @@ namespace Milimoe.FunGame.Core.Interface.Base
|
|||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 启动对客户端的监听
|
/// 启动对客户端的监听
|
||||||
/// <para>请勿在 <see cref="GameModeServer"/> 中调用此方法</para>
|
/// <para>请勿在 <see cref="GameModuleServer"/> 中调用此方法</para>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void Start();
|
public void Start();
|
||||||
}
|
}
|
||||||
|
@ -5,14 +5,14 @@ using Milimoe.FunGame.Core.Library.Common.Event;
|
|||||||
namespace Milimoe.FunGame.Core.Interface
|
namespace Milimoe.FunGame.Core.Interface
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 局内事件的接口,与 <see cref="GameMode"/> 配套使用
|
/// 局内事件的接口,与 <see cref="GameModule"/> 配套使用
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IGamingEventHandler
|
public interface IGamingEventHandler
|
||||||
{
|
{
|
||||||
public delegate void BeforeEventHandler(object sender, GamingEventArgs e, Hashtable data);
|
public delegate void BeforeEventHandler(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public delegate void AfterEventHandler(object sender, GamingEventArgs e, Hashtable data);
|
public delegate void AfterEventHandler(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public delegate void SucceedEventHandler(object sender, GamingEventArgs e, Hashtable data);
|
public delegate void SucceedEventHandler(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public delegate void FailedEventHandler(object sender, GamingEventArgs e, Hashtable data);
|
public delegate void FailedEventHandler(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingConnectEventHandler : IGamingEventHandler
|
public interface IGamingConnectEventHandler : IGamingEventHandler
|
||||||
@ -22,10 +22,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingConnect;
|
public event SucceedEventHandler? SucceedGamingConnect;
|
||||||
public event FailedEventHandler? FailedGamingConnect;
|
public event FailedEventHandler? FailedGamingConnect;
|
||||||
|
|
||||||
public void OnBeforeGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingDisconnectEventHandler : IGamingEventHandler
|
public interface IGamingDisconnectEventHandler : IGamingEventHandler
|
||||||
@ -35,10 +35,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingDisconnect;
|
public event SucceedEventHandler? SucceedGamingDisconnect;
|
||||||
public event FailedEventHandler? FailedGamingDisconnect;
|
public event FailedEventHandler? FailedGamingDisconnect;
|
||||||
|
|
||||||
public void OnBeforeGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingReconnectEventHandler : IGamingEventHandler
|
public interface IGamingReconnectEventHandler : IGamingEventHandler
|
||||||
@ -48,10 +48,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingReconnect;
|
public event SucceedEventHandler? SucceedGamingReconnect;
|
||||||
public event FailedEventHandler? FailedGamingReconnect;
|
public event FailedEventHandler? FailedGamingReconnect;
|
||||||
|
|
||||||
public void OnBeforeGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingBanCharacterEventHandler : IGamingEventHandler
|
public interface IGamingBanCharacterEventHandler : IGamingEventHandler
|
||||||
@ -61,10 +61,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingBanCharacter;
|
public event SucceedEventHandler? SucceedGamingBanCharacter;
|
||||||
public event FailedEventHandler? FailedGamingBanCharacter;
|
public event FailedEventHandler? FailedGamingBanCharacter;
|
||||||
|
|
||||||
public void OnBeforeGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingPickCharacterEventHandler : IGamingEventHandler
|
public interface IGamingPickCharacterEventHandler : IGamingEventHandler
|
||||||
@ -74,10 +74,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingPickCharacter;
|
public event SucceedEventHandler? SucceedGamingPickCharacter;
|
||||||
public event FailedEventHandler? FailedGamingPickCharacter;
|
public event FailedEventHandler? FailedGamingPickCharacter;
|
||||||
|
|
||||||
public void OnBeforeGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingRandomEventHandler : IGamingEventHandler
|
public interface IGamingRandomEventHandler : IGamingEventHandler
|
||||||
@ -87,10 +87,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingRandom;
|
public event SucceedEventHandler? SucceedGamingRandom;
|
||||||
public event FailedEventHandler? FailedGamingRandom;
|
public event FailedEventHandler? FailedGamingRandom;
|
||||||
|
|
||||||
public void OnBeforeGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingRoundEventHandler : IGamingEventHandler
|
public interface IGamingRoundEventHandler : IGamingEventHandler
|
||||||
@ -100,10 +100,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingRound;
|
public event SucceedEventHandler? SucceedGamingRound;
|
||||||
public event FailedEventHandler? FailedGamingRound;
|
public event FailedEventHandler? FailedGamingRound;
|
||||||
|
|
||||||
public void OnBeforeGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingLevelUpEventHandler : IGamingEventHandler
|
public interface IGamingLevelUpEventHandler : IGamingEventHandler
|
||||||
@ -113,10 +113,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingLevelUp;
|
public event SucceedEventHandler? SucceedGamingLevelUp;
|
||||||
public event FailedEventHandler? FailedGamingLevelUp;
|
public event FailedEventHandler? FailedGamingLevelUp;
|
||||||
|
|
||||||
public void OnBeforeGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingMoveEventHandler : IGamingEventHandler
|
public interface IGamingMoveEventHandler : IGamingEventHandler
|
||||||
@ -126,10 +126,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingMove;
|
public event SucceedEventHandler? SucceedGamingMove;
|
||||||
public event FailedEventHandler? FailedGamingMove;
|
public event FailedEventHandler? FailedGamingMove;
|
||||||
|
|
||||||
public void OnBeforeGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingAttackEventHandler : IGamingEventHandler
|
public interface IGamingAttackEventHandler : IGamingEventHandler
|
||||||
@ -139,10 +139,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingAttack;
|
public event SucceedEventHandler? SucceedGamingAttack;
|
||||||
public event FailedEventHandler? FailedGamingAttack;
|
public event FailedEventHandler? FailedGamingAttack;
|
||||||
|
|
||||||
public void OnBeforeGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingSkillEventHandler : IGamingEventHandler
|
public interface IGamingSkillEventHandler : IGamingEventHandler
|
||||||
@ -152,10 +152,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingSkill;
|
public event SucceedEventHandler? SucceedGamingSkill;
|
||||||
public event FailedEventHandler? FailedGamingSkill;
|
public event FailedEventHandler? FailedGamingSkill;
|
||||||
|
|
||||||
public void OnBeforeGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingItemEventHandler : IGamingEventHandler
|
public interface IGamingItemEventHandler : IGamingEventHandler
|
||||||
@ -165,10 +165,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingItem;
|
public event SucceedEventHandler? SucceedGamingItem;
|
||||||
public event FailedEventHandler? FailedGamingItem;
|
public event FailedEventHandler? FailedGamingItem;
|
||||||
|
|
||||||
public void OnBeforeGamingItemEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingItemEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingMagicEventHandler : IGamingEventHandler
|
public interface IGamingMagicEventHandler : IGamingEventHandler
|
||||||
@ -178,10 +178,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingMagic;
|
public event SucceedEventHandler? SucceedGamingMagic;
|
||||||
public event FailedEventHandler? FailedGamingMagic;
|
public event FailedEventHandler? FailedGamingMagic;
|
||||||
|
|
||||||
public void OnBeforeGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingBuyEventHandler : IGamingEventHandler
|
public interface IGamingBuyEventHandler : IGamingEventHandler
|
||||||
@ -191,10 +191,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingBuy;
|
public event SucceedEventHandler? SucceedGamingBuy;
|
||||||
public event FailedEventHandler? FailedGamingBuy;
|
public event FailedEventHandler? FailedGamingBuy;
|
||||||
|
|
||||||
public void OnBeforeGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingSuperSkillEventHandler : IGamingEventHandler
|
public interface IGamingSuperSkillEventHandler : IGamingEventHandler
|
||||||
@ -204,10 +204,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingSuperSkill;
|
public event SucceedEventHandler? SucceedGamingSuperSkill;
|
||||||
public event FailedEventHandler? FailedGamingSuperSkill;
|
public event FailedEventHandler? FailedGamingSuperSkill;
|
||||||
|
|
||||||
public void OnBeforeGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingPauseEventHandler : IGamingEventHandler
|
public interface IGamingPauseEventHandler : IGamingEventHandler
|
||||||
@ -217,10 +217,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingPause;
|
public event SucceedEventHandler? SucceedGamingPause;
|
||||||
public event FailedEventHandler? FailedGamingPause;
|
public event FailedEventHandler? FailedGamingPause;
|
||||||
|
|
||||||
public void OnBeforeGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingUnpauseEventHandler : IGamingEventHandler
|
public interface IGamingUnpauseEventHandler : IGamingEventHandler
|
||||||
@ -230,10 +230,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingUnpause;
|
public event SucceedEventHandler? SucceedGamingUnpause;
|
||||||
public event FailedEventHandler? FailedGamingUnpause;
|
public event FailedEventHandler? FailedGamingUnpause;
|
||||||
|
|
||||||
public void OnBeforeGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingSurrenderEventHandler : IGamingEventHandler
|
public interface IGamingSurrenderEventHandler : IGamingEventHandler
|
||||||
@ -243,10 +243,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingSurrender;
|
public event SucceedEventHandler? SucceedGamingSurrender;
|
||||||
public event FailedEventHandler? FailedGamingSurrender;
|
public event FailedEventHandler? FailedGamingSurrender;
|
||||||
|
|
||||||
public void OnBeforeGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingUpdateInfoEventHandler : IGamingEventHandler
|
public interface IGamingUpdateInfoEventHandler : IGamingEventHandler
|
||||||
@ -256,10 +256,10 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingUpdateInfo;
|
public event SucceedEventHandler? SucceedGamingUpdateInfo;
|
||||||
public event FailedEventHandler? FailedGamingUpdateInfo;
|
public event FailedEventHandler? FailedGamingUpdateInfo;
|
||||||
|
|
||||||
public void OnBeforeGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingPunishEventHandler : IGamingEventHandler
|
public interface IGamingPunishEventHandler : IGamingEventHandler
|
||||||
@ -269,9 +269,9 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
public event SucceedEventHandler? SucceedGamingPunish;
|
public event SucceedEventHandler? SucceedGamingPunish;
|
||||||
public event FailedEventHandler? FailedGamingPunish;
|
public event FailedEventHandler? FailedGamingPunish;
|
||||||
|
|
||||||
public void OnBeforeGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnBeforeGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnAfterGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnAfterGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnSucceedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnSucceedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void OnFailedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void OnFailedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -6,161 +6,161 @@ namespace Milimoe.FunGame.Core.Interface
|
|||||||
{
|
{
|
||||||
public interface IGamingConnectEvent
|
public interface IGamingConnectEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingDisconnectEvent
|
public interface IGamingDisconnectEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingReconnectEvent
|
public interface IGamingReconnectEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingBanCharacterEvent
|
public interface IGamingBanCharacterEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingPickCharacterEvent
|
public interface IGamingPickCharacterEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingRandomEvent
|
public interface IGamingRandomEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingRoundEvent
|
public interface IGamingRoundEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingLevelUpEvent
|
public interface IGamingLevelUpEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingMoveEvent
|
public interface IGamingMoveEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingAttackEvent
|
public interface IGamingAttackEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingSkillEvent
|
public interface IGamingSkillEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingItemEvent
|
public interface IGamingItemEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingItemEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingItemEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingMagicEvent
|
public interface IGamingMagicEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingBuyEvent
|
public interface IGamingBuyEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingSuperSkillEvent
|
public interface IGamingSuperSkillEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingPauseEvent
|
public interface IGamingPauseEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingUnpauseEvent
|
public interface IGamingUnpauseEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingSurrenderEvent
|
public interface IGamingSurrenderEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingUpdateInfoEvent
|
public interface IGamingUpdateInfoEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface IGamingPunishEvent
|
public interface IGamingPunishEvent
|
||||||
{
|
{
|
||||||
public void BeforeGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void BeforeGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void AfterGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void AfterGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void SucceedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void SucceedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
public void FailedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data);
|
public void FailedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IServer
|
public interface IServer
|
||||||
{
|
{
|
||||||
public string[] GameModeList { get; }
|
public string[] GameModuleList { get; }
|
||||||
public string[] GameMapList { get; }
|
public string[] GameMapList { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,7 @@ using Milimoe.FunGame.Core.Interface.Addons;
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
||||||
{
|
{
|
||||||
public abstract class CharacterMode : IAddon
|
public abstract class CharacterModule : IAddon
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 模组名称
|
/// 模组名称
|
211
Library/Common/Addon/Example/ExampleGameModule.cs
Normal file
211
Library/Common/Addon/Example/ExampleGameModule.cs
Normal file
@ -0,0 +1,211 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using Milimoe.FunGame.Core.Api.Utility;
|
||||||
|
using Milimoe.FunGame.Core.Entity;
|
||||||
|
using Milimoe.FunGame.Core.Interface;
|
||||||
|
using Milimoe.FunGame.Core.Interface.Base;
|
||||||
|
using Milimoe.FunGame.Core.Library.Common.Event;
|
||||||
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
|
using Milimoe.FunGame.Core.Model;
|
||||||
|
|
||||||
|
// 此演示包含GameModule、GameModuleServer、GameMap
|
||||||
|
namespace Milimoe.FunGame.Core.Library.Common.Addon.Example
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 建议使用一个类来存储常量,方便重用
|
||||||
|
/// </summary>
|
||||||
|
public class ExampleGameModuleConstant
|
||||||
|
{
|
||||||
|
public static GameModuleDepend GameModuleDepend => _depends;
|
||||||
|
|
||||||
|
private static readonly string[] Maps = ["Example GameMap"];
|
||||||
|
private static readonly string[] Characters = [];
|
||||||
|
private static readonly string[] Items = [];
|
||||||
|
private static readonly string[] Skills = [];
|
||||||
|
private static readonly GameModuleDepend _depends = new(Maps, Characters, Items, Skills);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 模组:必须继承基类:<see cref="GameModule"/><para/>
|
||||||
|
/// 继承事件接口并实现其方法来使模组生效。例如继承:<seealso cref="IGamingConnectEvent"/><para/>
|
||||||
|
/// </summary>
|
||||||
|
public class ExampleGameModule : GameModule, IGamingConnectEvent
|
||||||
|
{
|
||||||
|
public override string Name => "FunGame Example GameModule";
|
||||||
|
|
||||||
|
public override string Description => "My First GameModule";
|
||||||
|
|
||||||
|
public override string Version => "1.0.0";
|
||||||
|
|
||||||
|
public override string Author => "FunGamer";
|
||||||
|
|
||||||
|
public override string DefaultMap => GameModuleDepend.Maps.Length > 0 ? GameModuleDepend.Maps[0] : "";
|
||||||
|
|
||||||
|
public override GameModuleDepend GameModuleDepend => ExampleGameModuleConstant.GameModuleDepend;
|
||||||
|
|
||||||
|
public override RoomType RoomType => RoomType.Mix;
|
||||||
|
|
||||||
|
protected Gaming? Instance;
|
||||||
|
protected Room room = General.HallInstance;
|
||||||
|
protected List<User> users = [];
|
||||||
|
protected Dictionary<string, Character> characters = [];
|
||||||
|
|
||||||
|
public override void StartGame(Gaming instance, params object[] args)
|
||||||
|
{
|
||||||
|
Instance = instance;
|
||||||
|
// 取得房间玩家等信息
|
||||||
|
GamingEventArgs eventArgs = instance.EventArgs;
|
||||||
|
room = eventArgs.Room;
|
||||||
|
users = eventArgs.Users;
|
||||||
|
characters = eventArgs.Characters;
|
||||||
|
// 客户端做好准备后,等待服务器的消息通知,下面可以根据需求进一步处理
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void StartUI(params object[] args)
|
||||||
|
{
|
||||||
|
// 如果你是一个WPF或者Winform项目,可以在这里启动你的界面
|
||||||
|
// 如果没有,则不需要重写此方法
|
||||||
|
}
|
||||||
|
|
||||||
|
public void BeforeGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
|
{
|
||||||
|
// 此方法预处理攻击消息
|
||||||
|
// 如果这里将Cancel设置为true,那么这个方法结束后,后续的事件就会终止
|
||||||
|
e.Cancel = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AfterGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SucceedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void FailedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
|
{
|
||||||
|
_ = DiscountGameModuleServer();
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task DiscountGameModuleServer()
|
||||||
|
{
|
||||||
|
// 这是一个主动请求服务器的示例:
|
||||||
|
Api.Transmittal.DataRequest request = Controller.NewDataRequest(DataRequestType.Gaming);
|
||||||
|
request.AddRequestData("type", GamingType.Disconnect);
|
||||||
|
if (await request.SendRequestAsync() == RequestResult.Success)
|
||||||
|
{
|
||||||
|
string msg = request.GetResult<string>("msg") ?? string.Empty;
|
||||||
|
Controller.WriteLine(msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 模组服务器:必须继承基类:<see cref="GameModuleServer"/><para/>
|
||||||
|
/// 使用switch块分类处理 <see cref="GamingType"/>。
|
||||||
|
/// </summary>
|
||||||
|
public class ExampleGameModuleServer : GameModuleServer
|
||||||
|
{
|
||||||
|
public override string Name => "FunGame Example GameModule";
|
||||||
|
|
||||||
|
public override string Description => "My First GameModule";
|
||||||
|
|
||||||
|
public override string Version => "1.0.0";
|
||||||
|
|
||||||
|
public override string Author => "FunGamer";
|
||||||
|
|
||||||
|
public override string DefaultMap => GameModuleDepend.Maps.Length > 0 ? GameModuleDepend.Maps.First() : "";
|
||||||
|
|
||||||
|
public override GameModuleDepend GameModuleDepend => ExampleGameModuleConstant.GameModuleDepend;
|
||||||
|
|
||||||
|
protected Room Room = General.HallInstance;
|
||||||
|
protected List<User> Users = [];
|
||||||
|
protected IServerModel? RoomMaster;
|
||||||
|
protected Dictionary<string, IServerModel> Others = [];
|
||||||
|
protected Dictionary<string, IServerModel> All = [];
|
||||||
|
|
||||||
|
public override bool StartServer(string GameModule, Room Room, List<User> Users, IServerModel RoomMasterServerModel, Dictionary<string, IServerModel> OthersServerModel, params object[] Args)
|
||||||
|
{
|
||||||
|
// 将参数转为本地属性
|
||||||
|
this.Room = Room;
|
||||||
|
this.Users = Users;
|
||||||
|
RoomMaster = RoomMasterServerModel;
|
||||||
|
Others = OthersServerModel;
|
||||||
|
if (RoomMaster != null)
|
||||||
|
{
|
||||||
|
// 这里获得了每名玩家的服务线程,保存为一个字典
|
||||||
|
All = OthersServerModel.ToDictionary(k => k.Key, v => v.Value);
|
||||||
|
All.Add(RoomMaster.User.Username, RoomMaster);
|
||||||
|
}
|
||||||
|
// 创建一个线程执行Test()
|
||||||
|
TaskUtility.NewTask(Test).OnError(Controller.Error);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private readonly List<User> ConnectedUser = [];
|
||||||
|
|
||||||
|
private async Task Test()
|
||||||
|
{
|
||||||
|
// 通常,我们可以对客户端的连接状态进行确认,此方法展示如何确认客户端的连接
|
||||||
|
Controller.WriteLine("欢迎各位玩家进入房间 " + Room.Roomid + " 。");
|
||||||
|
SendAll(SocketMessageType.Gaming, GamingType.Connect);
|
||||||
|
// 新建一个线程等待所有玩家确认
|
||||||
|
while (true)
|
||||||
|
{
|
||||||
|
if (ConnectedUser.Count == Users.Count) break;
|
||||||
|
// 每200ms确认一次,不需要太频繁
|
||||||
|
await Task.Delay(200);
|
||||||
|
}
|
||||||
|
Controller.WriteLine("所有玩家都已经连接。");
|
||||||
|
}
|
||||||
|
|
||||||
|
public override Hashtable GamingMessageHandler(string username, GamingType type, Hashtable data)
|
||||||
|
{
|
||||||
|
Hashtable result = [];
|
||||||
|
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case GamingType.Connect:
|
||||||
|
// 编写处理“连接”命令的逻辑
|
||||||
|
ConnectedUser.Add(Users.Where(u => u.Username == username).First());
|
||||||
|
Controller.WriteLine(username + "已经连接。");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SendAll(SocketMessageType type, params object[] args)
|
||||||
|
{
|
||||||
|
// 循环服务线程,向所有玩家发送消息
|
||||||
|
foreach (IServerModel s in All.Values)
|
||||||
|
{
|
||||||
|
if (s != null && s.Socket != null)
|
||||||
|
{
|
||||||
|
s.Send(s.Socket, type, args);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 地图:必须继承基类:<see cref="GameMap"/><para/>
|
||||||
|
/// </summary>
|
||||||
|
public class ExampleGameMap : GameMap
|
||||||
|
{
|
||||||
|
public override string Name => "Example GameMap";
|
||||||
|
|
||||||
|
public override string Description => "My First GameMap";
|
||||||
|
|
||||||
|
public override string Version => "1.0.0";
|
||||||
|
|
||||||
|
public override string Author => "FunGamer";
|
||||||
|
|
||||||
|
public override float Width => 12.0f;
|
||||||
|
|
||||||
|
public override float Height => 12.0f;
|
||||||
|
|
||||||
|
public override float Size => 4.0f;
|
||||||
|
}
|
||||||
|
}
|
@ -1,7 +1,7 @@
|
|||||||
using Milimoe.FunGame.Core.Interface;
|
using Milimoe.FunGame.Core.Interface;
|
||||||
using Milimoe.FunGame.Core.Library.Common.Event;
|
using Milimoe.FunGame.Core.Library.Common.Event;
|
||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
namespace Milimoe.FunGame.Core.Library.Common.Addon.Example
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 必须继承基类:<see cref="Plugin"/><para/>
|
/// 必须继承基类:<see cref="Plugin"/><para/>
|
||||||
@ -24,7 +24,8 @@ namespace Milimoe.FunGame.Core.Library.Common.Addon
|
|||||||
|
|
||||||
public void BeforeLoginEvent(object sender, LoginEventArgs e)
|
public void BeforeLoginEvent(object sender, LoginEventArgs e)
|
||||||
{
|
{
|
||||||
|
// 如果这里设置Cancel = true,将终止登录
|
||||||
|
e.Cancel = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void FailedLoginEvent(object sender, LoginEventArgs e)
|
public void FailedLoginEvent(object sender, LoginEventArgs e)
|
@ -8,7 +8,7 @@ using Milimoe.FunGame.Core.Model;
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
||||||
{
|
{
|
||||||
public abstract class GameMode : IGameMode
|
public abstract class GameModule : IGameModule
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 模组名称
|
/// 模组名称
|
||||||
@ -36,9 +36,9 @@ namespace Milimoe.FunGame.Core.Library.Common.Addon
|
|||||||
public abstract string DefaultMap { get; }
|
public abstract string DefaultMap { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 模组所使用的地图
|
/// 模组的依赖集合
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract string[] Maps { get; }
|
public abstract GameModuleDepend GameModuleDepend { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 适用的房间模式
|
/// 适用的房间模式
|
||||||
@ -48,26 +48,43 @@ namespace Milimoe.FunGame.Core.Library.Common.Addon
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 包含了一些常用方法的控制器
|
/// 包含了一些常用方法的控制器
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public AddonController Controller
|
public AddonController<IGameModule> Controller
|
||||||
{
|
{
|
||||||
get => _Controller ?? throw new NotImplementedException();
|
get => _Controller ?? throw new NotImplementedException();
|
||||||
set => _Controller = value;
|
internal set => _Controller = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// base控制器,没有DataRequest
|
||||||
|
/// </summary>
|
||||||
|
BaseAddonController<IGameModule> IAddonController<IGameModule>.Controller
|
||||||
|
{
|
||||||
|
get => Controller;
|
||||||
|
set => _Controller = (AddonController<IGameModule>?)value;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 控制器内部变量
|
/// 控制器内部变量
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected AddonController? _Controller;
|
private AddonController<IGameModule>? _Controller;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 必须重写此方法,游戏的主要逻辑写在这里面<para/>
|
||||||
|
/// 此方法会在 <see cref="Gaming.StartGame"/> 时调用<para/>
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="instance"></param>
|
||||||
|
/// <param name="args"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public abstract void StartGame(Gaming instance, params object[] args);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 如模组有界面,请重写此方法
|
/// 如模组有界面,请重写此方法
|
||||||
/// 此方法会在StartGame时调用
|
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="args"></param>
|
/// <param name="args"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public virtual bool StartUI(params object[] args)
|
public virtual void StartUI(params object[] args)
|
||||||
{
|
{
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -402,404 +419,404 @@ namespace Milimoe.FunGame.Core.Library.Common.Addon
|
|||||||
public event IGamingEventHandler.SucceedEventHandler? SucceedGamingPunish;
|
public event IGamingEventHandler.SucceedEventHandler? SucceedGamingPunish;
|
||||||
public event IGamingEventHandler.FailedEventHandler? FailedGamingPunish;
|
public event IGamingEventHandler.FailedEventHandler? FailedGamingPunish;
|
||||||
|
|
||||||
public void OnBeforeGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingConnect?.Invoke(sender, e, data);
|
BeforeGamingConnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingConnect?.Invoke(sender, e, data);
|
AfterGamingConnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingConnect?.Invoke(sender, e, data);
|
SucceedGamingConnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingConnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingConnect?.Invoke(sender, e, data);
|
FailedGamingConnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingDisconnect?.Invoke(sender, e, data);
|
BeforeGamingDisconnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingDisconnect?.Invoke(sender, e, data);
|
AfterGamingDisconnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingDisconnect?.Invoke(sender, e, data);
|
SucceedGamingDisconnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingDisconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingDisconnect?.Invoke(sender, e, data);
|
FailedGamingDisconnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingReconnect?.Invoke(sender, e, data);
|
BeforeGamingReconnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingReconnect?.Invoke(sender, e, data);
|
AfterGamingReconnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingReconnect?.Invoke(sender, e, data);
|
SucceedGamingReconnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingReconnectEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingReconnect?.Invoke(sender, e, data);
|
FailedGamingReconnect?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingBanCharacter?.Invoke(sender, e, data);
|
BeforeGamingBanCharacter?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingBanCharacter?.Invoke(sender, e, data);
|
AfterGamingBanCharacter?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingBanCharacter?.Invoke(sender, e, data);
|
SucceedGamingBanCharacter?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingBanCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingBanCharacter?.Invoke(sender, e, data);
|
FailedGamingBanCharacter?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingPickCharacter?.Invoke(sender, e, data);
|
BeforeGamingPickCharacter?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingPickCharacter?.Invoke(sender, e, data);
|
AfterGamingPickCharacter?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingPickCharacter?.Invoke(sender, e, data);
|
SucceedGamingPickCharacter?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingPickCharacterEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingPickCharacter?.Invoke(sender, e, data);
|
FailedGamingPickCharacter?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingRandom?.Invoke(sender, e, data);
|
BeforeGamingRandom?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingRandom?.Invoke(sender, e, data);
|
AfterGamingRandom?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingRandom?.Invoke(sender, e, data);
|
SucceedGamingRandom?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingRandomEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingRandom?.Invoke(sender, e, data);
|
FailedGamingRandom?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingRound?.Invoke(sender, e, data);
|
BeforeGamingRound?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingRound?.Invoke(sender, e, data);
|
AfterGamingRound?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingRound?.Invoke(sender, e, data);
|
SucceedGamingRound?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingRoundEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingRound?.Invoke(sender, e, data);
|
FailedGamingRound?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingLevelUp?.Invoke(sender, e, data);
|
BeforeGamingLevelUp?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingLevelUp?.Invoke(sender, e, data);
|
AfterGamingLevelUp?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingLevelUp?.Invoke(sender, e, data);
|
SucceedGamingLevelUp?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingLevelUpEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingLevelUp?.Invoke(sender, e, data);
|
FailedGamingLevelUp?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingMove?.Invoke(sender, e, data);
|
BeforeGamingMove?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingMove?.Invoke(sender, e, data);
|
AfterGamingMove?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingMove?.Invoke(sender, e, data);
|
SucceedGamingMove?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingMoveEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingMove?.Invoke(sender, e, data);
|
FailedGamingMove?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingAttack?.Invoke(sender, e, data);
|
BeforeGamingAttack?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingAttack?.Invoke(sender, e, data);
|
AfterGamingAttack?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingAttack?.Invoke(sender, e, data);
|
SucceedGamingAttack?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingAttackEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingAttack?.Invoke(sender, e, data);
|
FailedGamingAttack?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingSkill?.Invoke(sender, e, data);
|
BeforeGamingSkill?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingSkill?.Invoke(sender, e, data);
|
AfterGamingSkill?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingSkill?.Invoke(sender, e, data);
|
SucceedGamingSkill?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingSkill?.Invoke(sender, e, data);
|
FailedGamingSkill?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingItemEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingItem?.Invoke(sender, e, data);
|
BeforeGamingItem?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingItemEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingItem?.Invoke(sender, e, data);
|
AfterGamingItem?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingItem?.Invoke(sender, e, data);
|
SucceedGamingItem?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingItemEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingItem?.Invoke(sender, e, data);
|
FailedGamingItem?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingMagic?.Invoke(sender, e, data);
|
BeforeGamingMagic?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingMagic?.Invoke(sender, e, data);
|
AfterGamingMagic?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingMagic?.Invoke(sender, e, data);
|
SucceedGamingMagic?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingMagicEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingMagic?.Invoke(sender, e, data);
|
FailedGamingMagic?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingBuy?.Invoke(sender, e, data);
|
BeforeGamingBuy?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingBuy?.Invoke(sender, e, data);
|
AfterGamingBuy?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingBuy?.Invoke(sender, e, data);
|
SucceedGamingBuy?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingBuyEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingBuy?.Invoke(sender, e, data);
|
FailedGamingBuy?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingSuperSkill?.Invoke(sender, e, data);
|
BeforeGamingSuperSkill?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingSuperSkill?.Invoke(sender, e, data);
|
AfterGamingSuperSkill?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingSuperSkill?.Invoke(sender, e, data);
|
SucceedGamingSuperSkill?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingSuperSkillEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingSuperSkill?.Invoke(sender, e, data);
|
FailedGamingSuperSkill?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingPause?.Invoke(sender, e, data);
|
BeforeGamingPause?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingPause?.Invoke(sender, e, data);
|
AfterGamingPause?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingPause?.Invoke(sender, e, data);
|
SucceedGamingPause?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingPauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingPause?.Invoke(sender, e, data);
|
FailedGamingPause?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingUnpause?.Invoke(sender, e, data);
|
BeforeGamingUnpause?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingUnpause?.Invoke(sender, e, data);
|
AfterGamingUnpause?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingUnpause?.Invoke(sender, e, data);
|
SucceedGamingUnpause?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingUnpauseEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingUnpause?.Invoke(sender, e, data);
|
FailedGamingUnpause?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingSurrender?.Invoke(sender, e, data);
|
BeforeGamingSurrender?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingSurrender?.Invoke(sender, e, data);
|
AfterGamingSurrender?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingSurrender?.Invoke(sender, e, data);
|
SucceedGamingSurrender?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingSurrenderEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingSurrender?.Invoke(sender, e, data);
|
FailedGamingSurrender?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingUpdateInfo?.Invoke(sender, e, data);
|
BeforeGamingUpdateInfo?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingUpdateInfo?.Invoke(sender, e, data);
|
AfterGamingUpdateInfo?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingUpdateInfo?.Invoke(sender, e, data);
|
SucceedGamingUpdateInfo?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingUpdateInfoEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingUpdateInfo?.Invoke(sender, e, data);
|
FailedGamingUpdateInfo?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnBeforeGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnBeforeGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
BeforeGamingPunish?.Invoke(sender, e, data);
|
BeforeGamingPunish?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnAfterGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnAfterGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
AfterGamingPunish?.Invoke(sender, e, data);
|
AfterGamingPunish?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSucceedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnSucceedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
SucceedGamingPunish?.Invoke(sender, e, data);
|
SucceedGamingPunish?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnFailedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data)
|
public void OnFailedGamingPunishEvent(object sender, GamingEventArgs e, Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
FailedGamingPunish?.Invoke(sender, e, data);
|
FailedGamingPunish?.Invoke(sender, e, data, result);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
28
Library/Common/Addon/GameModuleDepend.cs
Normal file
28
Library/Common/Addon/GameModuleDepend.cs
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 模组的依赖集合
|
||||||
|
/// </summary>
|
||||||
|
public readonly struct GameModuleDepend(string[] Maps, string[] Characters, string[] Items, string[] Skills)
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 模组所使用的地图组
|
||||||
|
/// </summary>
|
||||||
|
public string[] Maps { get; } = Maps;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 模组所使用的角色组
|
||||||
|
/// </summary>
|
||||||
|
public string[] Characters { get; } = Characters;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 模组所使用的物品组
|
||||||
|
/// </summary>
|
||||||
|
public string[] Items { get; } = Items;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 模组所使用的技能组
|
||||||
|
/// </summary>
|
||||||
|
public string[] Skills { get; } = Skills;
|
||||||
|
}
|
||||||
|
}
|
@ -7,7 +7,7 @@ using Milimoe.FunGame.Core.Library.Constant;
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
||||||
{
|
{
|
||||||
public abstract class GameModeServer : IGameModeServer
|
public abstract class GameModuleServer : IGameModuleServer
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 模组名称
|
/// 模组名称
|
||||||
@ -35,14 +35,14 @@ namespace Milimoe.FunGame.Core.Library.Common.Addon
|
|||||||
public abstract string DefaultMap { get; }
|
public abstract string DefaultMap { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 模组所使用的地图
|
/// 模组的依赖集合
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract string[] Maps { get; }
|
public abstract GameModuleDepend GameModuleDepend { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 包含了一些常用方法的控制器
|
/// 包含了一些常用方法的控制器
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public AddonController Controller
|
public BaseAddonController<IGameModuleServer> Controller
|
||||||
{
|
{
|
||||||
get => _Controller ?? throw new NotImplementedException();
|
get => _Controller ?? throw new NotImplementedException();
|
||||||
set => _Controller = value;
|
set => _Controller = value;
|
||||||
@ -51,19 +51,19 @@ namespace Milimoe.FunGame.Core.Library.Common.Addon
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 控制器内部变量
|
/// 控制器内部变量
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected AddonController? _Controller;
|
private BaseAddonController<IGameModuleServer>? _Controller;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 启动服务器监听 请在此处实现服务器逻辑
|
/// 启动服务器监听 请在此处实现服务器逻辑
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="GameMode"></param>
|
/// <param name="GameModule"></param>
|
||||||
/// <param name="Room"></param>
|
/// <param name="Room"></param>
|
||||||
/// <param name="Users"></param>
|
/// <param name="Users"></param>
|
||||||
/// <param name="RoomMasterServerModel"></param>
|
/// <param name="RoomMasterServerModel"></param>
|
||||||
/// <param name="OthersServerModel"></param>
|
/// <param name="OthersServerModel"></param>
|
||||||
/// <param name="Args"></param>
|
/// <param name="Args"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public abstract bool StartServer(string GameMode, Room Room, List<User> Users, IServerModel RoomMasterServerModel, Dictionary<string, IServerModel> OthersServerModel, params object[] Args);
|
public abstract bool StartServer(string GameModule, Room Room, List<User> Users, IServerModel RoomMasterServerModel, Dictionary<string, IServerModel> OthersServerModel, params object[] Args);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 接收并处理GamingMessage
|
/// 接收并处理GamingMessage
|
@ -3,7 +3,7 @@ using Milimoe.FunGame.Core.Interface.Addons;
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
||||||
{
|
{
|
||||||
public abstract class ItemMode : IAddon
|
public abstract class ItemModule : IAddon
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 模组名称
|
/// 模组名称
|
@ -31,16 +31,25 @@ namespace Milimoe.FunGame.Core.Library.Common.Addon
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 包含了一些常用方法的控制器
|
/// 包含了一些常用方法的控制器
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public AddonController Controller
|
public AddonController<IPlugin> Controller
|
||||||
{
|
{
|
||||||
get => _Controller ?? throw new NotImplementedException();
|
get => _Controller ?? throw new NotImplementedException();
|
||||||
set => _Controller = value;
|
internal set => _Controller = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// base控制器,没有DataRequest
|
||||||
|
/// </summary>
|
||||||
|
BaseAddonController<IPlugin> IAddonController<IPlugin>.Controller
|
||||||
|
{
|
||||||
|
get => Controller;
|
||||||
|
set => _Controller = (AddonController<IPlugin>?)value;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 控制器内部变量
|
/// 控制器内部变量
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected AddonController? _Controller;
|
private AddonController<IPlugin>? _Controller;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 加载标记
|
/// 加载标记
|
||||||
|
@ -3,7 +3,7 @@ using Milimoe.FunGame.Core.Interface.Addons;
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
namespace Milimoe.FunGame.Core.Library.Common.Addon
|
||||||
{
|
{
|
||||||
public abstract class SkillMode : IAddon
|
public abstract class SkillModule : IAddon
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 模组名称
|
/// 模组名称
|
@ -2,10 +2,10 @@
|
|||||||
|
|
||||||
namespace Milimoe.FunGame.Core.Library.Common.Event
|
namespace Milimoe.FunGame.Core.Library.Common.Event
|
||||||
{
|
{
|
||||||
public class GamingEventArgs(Room room, List<User> users, List<Character> characters) : GeneralEventArgs
|
public class GamingEventArgs(Room room, List<User> users, Dictionary<string, Character>? characters = null) : GeneralEventArgs
|
||||||
{
|
{
|
||||||
public Room Room { get; } = room;
|
public Room Room { get; } = room;
|
||||||
public List<User> Users { get; } = users;
|
public List<User> Users { get; } = users;
|
||||||
public List<Character> Characters { get; } = characters;
|
public Dictionary<string, Character> Characters { get; } = characters ?? [];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Core.Library.Common.Event
|
|||||||
public long RoomMaster { get; set; } = 0;
|
public long RoomMaster { get; set; } = 0;
|
||||||
public RoomType RoomType { get; set; } = RoomType.All;
|
public RoomType RoomType { get; set; } = RoomType.All;
|
||||||
public string RoomTypeString { get; set; } = RoomSet.All;
|
public string RoomTypeString { get; set; } = RoomSet.All;
|
||||||
public string GameMode { get; set; } = "";
|
public string GameModule { get; set; } = "";
|
||||||
public string GameMap { get; set; } = "";
|
public string GameMap { get; set; } = "";
|
||||||
public RoomState RoomState { get; set; } = RoomState.Created;
|
public RoomState RoomState { get; set; } = RoomState.Created;
|
||||||
public bool HasPassword => Password.Trim() != "";
|
public bool HasPassword => Password.Trim() != "";
|
||||||
@ -31,7 +31,7 @@ namespace Milimoe.FunGame.Core.Library.Common.Event
|
|||||||
RoomID = room.Roomid;
|
RoomID = room.Roomid;
|
||||||
RoomMaster = room.RoomMaster != null ? room.RoomMaster.Id : 0;
|
RoomMaster = room.RoomMaster != null ? room.RoomMaster.Id : 0;
|
||||||
RoomType = room.RoomType;
|
RoomType = room.RoomType;
|
||||||
GameMode = room.GameMode;
|
GameModule = room.GameModule;
|
||||||
GameMap = room.GameMap;
|
GameMap = room.GameMap;
|
||||||
RoomTypeString = room.RoomType switch
|
RoomTypeString = room.RoomType switch
|
||||||
{
|
{
|
||||||
|
@ -54,8 +54,8 @@ namespace Milimoe.FunGame.Core.Library.Common.JsonConverter
|
|||||||
room.RoomType = (RoomType)reader.GetInt64();
|
room.RoomType = (RoomType)reader.GetInt64();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RoomQuery.Column_GameMode:
|
case RoomQuery.Column_GameModule:
|
||||||
room.GameMode = reader.GetString() ?? "";
|
room.GameModule = reader.GetString() ?? "";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RoomQuery.Column_GameMap:
|
case RoomQuery.Column_GameMap:
|
||||||
@ -88,7 +88,7 @@ namespace Milimoe.FunGame.Core.Library.Common.JsonConverter
|
|||||||
writer.WriteString(RoomQuery.Column_RoomID, value.Roomid);
|
writer.WriteString(RoomQuery.Column_RoomID, value.Roomid);
|
||||||
writer.WriteString(RoomQuery.Column_CreateTime, value.CreateTime.ToString(General.GeneralDateTimeFormat));
|
writer.WriteString(RoomQuery.Column_CreateTime, value.CreateTime.ToString(General.GeneralDateTimeFormat));
|
||||||
writer.WriteString(RoomQuery.Column_RoomMaster, JsonSerializer.Serialize(value.RoomMaster, typeof(User), options));
|
writer.WriteString(RoomQuery.Column_RoomMaster, JsonSerializer.Serialize(value.RoomMaster, typeof(User), options));
|
||||||
writer.WriteString(RoomQuery.Column_GameMode, value.GameMode);
|
writer.WriteString(RoomQuery.Column_GameModule, value.GameModule);
|
||||||
writer.WriteString(RoomQuery.Column_GameMap, value.GameMap);
|
writer.WriteString(RoomQuery.Column_GameMap, value.GameMap);
|
||||||
writer.WriteNumber(RoomQuery.Column_RoomType, (long)value.RoomType);
|
writer.WriteNumber(RoomQuery.Column_RoomType, (long)value.RoomType);
|
||||||
writer.WriteNumber(RoomQuery.Column_RoomState, (long)value.RoomState);
|
writer.WriteNumber(RoomQuery.Column_RoomState, (long)value.RoomState);
|
||||||
|
@ -19,7 +19,7 @@ namespace Milimoe.FunGame.Core.Library.Constant
|
|||||||
public const string RemoteServerIP = "RemoteServerIP";
|
public const string RemoteServerIP = "RemoteServerIP";
|
||||||
public const string DBConnection = "DBConnection";
|
public const string DBConnection = "DBConnection";
|
||||||
public const string GetServerSettings = "GetServerSettings";
|
public const string GetServerSettings = "GetServerSettings";
|
||||||
public const string GameModeList = "GameModeList";
|
public const string GameModuleList = "GameModuleList";
|
||||||
public const string GameMapList = "GameMapList";
|
public const string GameMapList = "GameMapList";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -215,7 +215,7 @@ namespace Milimoe.FunGame.Core.Library.Constant
|
|||||||
public const string FUNGAME_IMPL = "FunGame.Implement";
|
public const string FUNGAME_IMPL = "FunGame.Implement";
|
||||||
public static string EXEFolderPath { get; } = AppDomain.CurrentDomain.BaseDirectory; // 程序目录
|
public static string EXEFolderPath { get; } = AppDomain.CurrentDomain.BaseDirectory; // 程序目录
|
||||||
public static string PluginFolderPath { get; } = AppDomain.CurrentDomain.BaseDirectory + @"plugins\"; // 插件目录
|
public static string PluginFolderPath { get; } = AppDomain.CurrentDomain.BaseDirectory + @"plugins\"; // 插件目录
|
||||||
public static string GameModeFolderPath { get; } = AppDomain.CurrentDomain.BaseDirectory + @"gamemods\"; // 游戏模组目录
|
public static string GameModuleFolderPath { get; } = AppDomain.CurrentDomain.BaseDirectory + @"modules\"; // 游戏模组目录
|
||||||
public static string GameMapFolderPath { get; } = AppDomain.CurrentDomain.BaseDirectory + @"maps\"; // 游戏地图目录
|
public static string GameMapFolderPath { get; } = AppDomain.CurrentDomain.BaseDirectory + @"maps\"; // 游戏地图目录
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
FunGame.FunGame_Server => FunGame_Server,
|
FunGame.FunGame_Server => FunGame_Server,
|
||||||
_ => ""
|
_ => ""
|
||||||
};
|
};
|
||||||
return type + " [版本: " + FunGame_Version + FunGame_VersionPatch + "]\n" + (type.Equals(FunGame_Desktop) ? @"©" : "(C)") + "2023 Milimoe. 保留所有权利\n";
|
return type + " [版本: " + FunGame_Version + FunGame_VersionPatch + "]\n" + (type.Equals(FunGame_Desktop) ? @"©" : "(C)") + "2024 Milimoe. 保留所有权利\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ namespace Milimoe.FunGame.Core.Library.Constant
|
|||||||
RemoteServerIP,
|
RemoteServerIP,
|
||||||
DBConnection,
|
DBConnection,
|
||||||
GetServerSettings,
|
GetServerSettings,
|
||||||
GameModeList,
|
GameModuleList,
|
||||||
GameMapList
|
GameMapList
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -407,6 +407,6 @@ namespace Milimoe.FunGame.Core.Library.Constant
|
|||||||
Interface,
|
Interface,
|
||||||
DataRequest,
|
DataRequest,
|
||||||
Plugin,
|
Plugin,
|
||||||
GameMode
|
GameModule
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -159,4 +159,9 @@
|
|||||||
{
|
{
|
||||||
public override string Message => "构造对象实例遇到错误 (#10032)";
|
public override string Message => "构造对象实例遇到错误 (#10032)";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class ModuleServerNewDataRequestException : Exception
|
||||||
|
{
|
||||||
|
public override string Message => "试图在GameModuleServer类中创建数据请求 (#10033)";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
public const string Column_RoomMaster = "RoomMaster";
|
public const string Column_RoomMaster = "RoomMaster";
|
||||||
public const string Column_RoomMasterName = "RoomMasterName";
|
public const string Column_RoomMasterName = "RoomMasterName";
|
||||||
public const string Column_RoomType = "RoomType";
|
public const string Column_RoomType = "RoomType";
|
||||||
public const string Column_GameMode = "GameMode";
|
public const string Column_GameModule = "GameModule";
|
||||||
public const string Column_GameMap = "GameMap";
|
public const string Column_GameMap = "GameMap";
|
||||||
public const string Column_RoomState = "RoomState";
|
public const string Column_RoomState = "RoomState";
|
||||||
public const string Column_IsRank = "IsRank";
|
public const string Column_IsRank = "IsRank";
|
||||||
@ -18,13 +18,13 @@
|
|||||||
public const string Select_Rooms = $"{Command_Select} {TableName}.{Command_All}, {UserQuery.TableName}.{UserQuery.Column_Username} {Command_As} {Column_RoomMasterName} " +
|
public const string Select_Rooms = $"{Command_Select} {TableName}.{Command_All}, {UserQuery.TableName}.{UserQuery.Column_Username} {Command_As} {Column_RoomMasterName} " +
|
||||||
$"{Command_From} {TableName} {Command_LeftJoin} {UserQuery.TableName} {Command_On} {UserQuery.TableName}.{UserQuery.Column_UID} = {TableName}.{Column_RoomMaster}";
|
$"{Command_From} {TableName} {Command_LeftJoin} {UserQuery.TableName} {Command_On} {UserQuery.TableName}.{UserQuery.Column_UID} = {TableName}.{Column_RoomMaster}";
|
||||||
|
|
||||||
public static string Insert_CreateRoom(string RoomID, long RoomMaster, Library.Constant.RoomType RoomType, string GameMode, string GameMap, bool IsRank, string Password)
|
public static string Insert_CreateRoom(string RoomID, long RoomMaster, Library.Constant.RoomType RoomType, string GameModule, string GameMap, bool IsRank, string Password)
|
||||||
{
|
{
|
||||||
Library.Constant.RoomState RoomState = Library.Constant.RoomState.Created;
|
Library.Constant.RoomState RoomState = Library.Constant.RoomState.Created;
|
||||||
DateTime NowTime = DateTime.Now;
|
DateTime NowTime = DateTime.Now;
|
||||||
bool HasPass = Password.Trim() != "";
|
bool HasPass = Password.Trim() != "";
|
||||||
return $"{Command_Insert} {Command_Into} {TableName} ({Column_RoomID}, {Column_CreateTime}, {Column_RoomMaster}, {Column_RoomType}, {Column_GameMode}, {Column_GameMap}, {Column_RoomState}, {Column_IsRank}, {Column_HasPass}, {Column_Password})" +
|
return $"{Command_Insert} {Command_Into} {TableName} ({Column_RoomID}, {Column_CreateTime}, {Column_RoomMaster}, {Column_RoomType}, {Column_GameModule}, {Column_GameMap}, {Column_RoomState}, {Column_IsRank}, {Column_HasPass}, {Column_Password})" +
|
||||||
$" {Command_Values} ('{RoomID}', '{NowTime}', {RoomMaster}, {(int)RoomType}, '{GameMode}', '{GameMap}', {(int)RoomState}, {(IsRank ? 1 : 0)}, {(HasPass ? 1 : 0)}, '{Password}')";
|
$" {Command_Values} ('{RoomID}', '{NowTime}', {RoomMaster}, {(int)RoomType}, '{GameModule}', '{GameMap}', {(int)RoomState}, {(IsRank ? 1 : 0)}, {(HasPass ? 1 : 0)}, '{Password}')";
|
||||||
}
|
}
|
||||||
|
|
||||||
public static string Delete_Rooms(params string[] roomids)
|
public static string Delete_Rooms(params string[] roomids)
|
||||||
|
291
Model/Gaming.cs
291
Model/Gaming.cs
@ -13,474 +13,481 @@ namespace Milimoe.FunGame.Core.Model
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public class Gaming
|
public class Gaming
|
||||||
{
|
{
|
||||||
private readonly GameMode GameMode;
|
/// <summary>
|
||||||
private readonly Room Room;
|
/// 使用的模组实例
|
||||||
private readonly List<User> Users;
|
/// </summary>
|
||||||
private readonly List<Character> Characters;
|
public GameModule GameModule { get; }
|
||||||
private readonly GamingEventArgs EventArgs;
|
|
||||||
|
|
||||||
private Gaming(GameMode GameMode, Room Room, List<User> Users)
|
/// <summary>
|
||||||
|
/// 游戏的参数
|
||||||
|
/// </summary>
|
||||||
|
public GamingEventArgs EventArgs { get; }
|
||||||
|
|
||||||
|
private Gaming(GameModule module, Room room, List<User> users)
|
||||||
{
|
{
|
||||||
this.GameMode = GameMode;
|
GameModule = module;
|
||||||
this.Room = Room;
|
EventArgs = new(room, users);
|
||||||
this.Users = Users;
|
|
||||||
Characters = [];
|
|
||||||
EventArgs = new(Room, Users, Characters);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 传入游戏所需的参数,构造一个Gaming实例
|
/// 传入游戏所需的参数,构造一个Gaming实例
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="GameMode"></param>
|
/// <param name="module"></param>
|
||||||
/// <param name="Room"></param>
|
/// <param name="room"></param>
|
||||||
/// <param name="Users"></param>
|
/// <param name="users"></param>
|
||||||
|
/// <param name="args"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static Gaming StartGame(GameMode GameMode, Room Room, List<User> Users)
|
public static Gaming StartGame(GameModule module, Room room, List<User> users, params object[] args)
|
||||||
{
|
{
|
||||||
Gaming instance = new(GameMode, Room, Users);
|
Gaming instance = new(module, room, users);
|
||||||
// 新建线程来启动模组的界面
|
// 新建线程来启动模组的界面
|
||||||
TaskUtility.NewTask(() =>
|
TaskUtility.NewTask(() =>
|
||||||
{
|
{
|
||||||
GameMode.StartUI(instance.EventArgs);
|
module.StartUI();
|
||||||
});
|
});
|
||||||
|
// 启动模组主线程
|
||||||
|
module.StartGame(instance, args);
|
||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 需在RunTimeController的SocketHandler_Gaming方法中调用此方法
|
/// 需在RunTimeController的SocketHandler_Gaming方法中调用此方法
|
||||||
/// <para>客户端也可以参照此方法自行实现</para>
|
/// <para>客户端也可以参照此方法自行实现</para>
|
||||||
/// <para>此方法目的是为了触发 <see cref="Library.Common.Addon.GameMode"/> 的局内事件实现</para>
|
/// <para>此方法目的是为了触发 <see cref="Library.Common.Addon.GameModule"/> 的局内事件实现</para>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="GamingType"></param>
|
/// <param name="type">消息类型</param>
|
||||||
/// <param name="Data"></param>
|
/// <param name="data">接收到的数据</param>
|
||||||
public void GamingHandler(GamingType GamingType, Hashtable Data)
|
/// <returns>底层会将哈希表中的数据发送给服务器</returns>
|
||||||
|
public Hashtable GamingHandler(GamingType type, Hashtable data)
|
||||||
{
|
{
|
||||||
switch (GamingType)
|
Hashtable result = [];
|
||||||
|
switch (type)
|
||||||
{
|
{
|
||||||
case GamingType.Connect:
|
case GamingType.Connect:
|
||||||
Connect(Data);
|
Connect(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Disconnect:
|
case GamingType.Disconnect:
|
||||||
Disconnect(Data);
|
Disconnect(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Reconnect:
|
case GamingType.Reconnect:
|
||||||
Reconnect(Data);
|
Reconnect(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.BanCharacter:
|
case GamingType.BanCharacter:
|
||||||
BanCharacter(Data);
|
BanCharacter(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.PickCharacter:
|
case GamingType.PickCharacter:
|
||||||
PickCharacter(Data);
|
PickCharacter(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Random:
|
case GamingType.Random:
|
||||||
Random(Data);
|
Random(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Round:
|
case GamingType.Round:
|
||||||
Round(Data);
|
Round(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.LevelUp:
|
case GamingType.LevelUp:
|
||||||
LevelUp(Data);
|
LevelUp(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Move:
|
case GamingType.Move:
|
||||||
Move(Data);
|
Move(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Attack:
|
case GamingType.Attack:
|
||||||
Attack(Data);
|
Attack(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Skill:
|
case GamingType.Skill:
|
||||||
Skill(Data);
|
Skill(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Item:
|
case GamingType.Item:
|
||||||
Item(Data);
|
Item(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Magic:
|
case GamingType.Magic:
|
||||||
Magic(Data);
|
Magic(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Buy:
|
case GamingType.Buy:
|
||||||
Buy(Data);
|
Buy(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.SuperSkill:
|
case GamingType.SuperSkill:
|
||||||
SuperSkill(Data);
|
SuperSkill(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Pause:
|
case GamingType.Pause:
|
||||||
Pause(Data);
|
Pause(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Unpause:
|
case GamingType.Unpause:
|
||||||
Unpause(Data);
|
Unpause(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Surrender:
|
case GamingType.Surrender:
|
||||||
Surrender(Data);
|
Surrender(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.UpdateInfo:
|
case GamingType.UpdateInfo:
|
||||||
UpdateInfo(Data);
|
UpdateInfo(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.Punish:
|
case GamingType.Punish:
|
||||||
Punish(Data);
|
Punish(data, result);
|
||||||
break;
|
break;
|
||||||
case GamingType.None:
|
case GamingType.None:
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Connect(Hashtable data)
|
private void Connect(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingConnectEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingConnectEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingConnectEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingConnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingConnectEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingConnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingConnectEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingConnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Disconnect(Hashtable data)
|
private void Disconnect(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingDisconnectEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingDisconnectEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingDisconnectEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingDisconnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingDisconnectEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingDisconnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingDisconnectEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingDisconnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Reconnect(Hashtable data)
|
private void Reconnect(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingReconnectEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingReconnectEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingReconnectEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingReconnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingReconnectEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingReconnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingReconnectEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingReconnectEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void BanCharacter(Hashtable data)
|
private void BanCharacter(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingBanCharacterEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingBanCharacterEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingBanCharacterEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingBanCharacterEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingBanCharacterEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingBanCharacterEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingBanCharacterEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingBanCharacterEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void PickCharacter(Hashtable data)
|
private void PickCharacter(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingPickCharacterEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingPickCharacterEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingPickCharacterEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingPickCharacterEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingPickCharacterEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingPickCharacterEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingPickCharacterEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingPickCharacterEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Random(Hashtable data)
|
private void Random(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingRandomEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingRandomEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingRandomEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingRandomEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingRandomEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingRandomEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingRandomEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingRandomEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Round(Hashtable data)
|
private void Round(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingRoundEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingRoundEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingRoundEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingRoundEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingRoundEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingRoundEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingRoundEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingRoundEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void LevelUp(Hashtable data)
|
private void LevelUp(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingLevelUpEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingLevelUpEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingLevelUpEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingLevelUpEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingLevelUpEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingLevelUpEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingLevelUpEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingLevelUpEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Move(Hashtable data)
|
private void Move(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingMoveEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingMoveEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingMoveEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingMoveEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingMoveEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingMoveEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingMoveEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingMoveEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Attack(Hashtable data)
|
private void Attack(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingAttackEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingAttackEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingAttackEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingAttackEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingAttackEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingAttackEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingAttackEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingAttackEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Skill(Hashtable data)
|
private void Skill(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingSkillEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingSkillEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingSkillEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingSkillEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingSkillEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingSkillEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingSkillEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingSkillEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Item(Hashtable data)
|
private void Item(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingItemEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingItemEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingItemEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingItemEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingItemEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingItemEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingItemEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingItemEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Magic(Hashtable data)
|
private void Magic(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingMagicEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingMagicEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingMagicEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingMagicEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingMagicEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingMagicEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingMagicEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingMagicEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Buy(Hashtable data)
|
private void Buy(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingBuyEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingBuyEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingBuyEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingBuyEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingBuyEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingBuyEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingBuyEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingBuyEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SuperSkill(Hashtable data)
|
private void SuperSkill(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingSuperSkillEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingSuperSkillEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingSuperSkillEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingSuperSkillEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingSuperSkillEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingSuperSkillEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingSuperSkillEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingSuperSkillEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Pause(Hashtable data)
|
private void Pause(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingPauseEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingPauseEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingPauseEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingPauseEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingPauseEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingPauseEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingPauseEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingPauseEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Unpause(Hashtable data)
|
private void Unpause(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingUnpauseEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingUnpauseEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingUnpauseEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingUnpauseEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingUnpauseEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingUnpauseEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingUnpauseEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingUnpauseEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Surrender(Hashtable data)
|
private void Surrender(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingSurrenderEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingSurrenderEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingSurrenderEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingSurrenderEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingSurrenderEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingSurrenderEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingSurrenderEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingSurrenderEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void UpdateInfo(Hashtable data)
|
private void UpdateInfo(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingUpdateInfoEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingUpdateInfoEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingUpdateInfoEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingUpdateInfoEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingUpdateInfoEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingUpdateInfoEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingUpdateInfoEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingUpdateInfoEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Punish(Hashtable data)
|
private void Punish(Hashtable data, Hashtable result)
|
||||||
{
|
{
|
||||||
GameMode.OnBeforeGamingPunishEvent(this, EventArgs, data);
|
GameModule.OnBeforeGamingPunishEvent(this, EventArgs, data, result);
|
||||||
if (EventArgs.Cancel)
|
if (EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!EventArgs.Cancel)
|
if (!EventArgs.Cancel)
|
||||||
{
|
{
|
||||||
GameMode.OnSucceedGamingPunishEvent(this, EventArgs, data);
|
GameModule.OnSucceedGamingPunishEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
GameMode.OnFailedGamingPunishEvent(this, EventArgs, data);
|
GameModule.OnFailedGamingPunishEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
GameMode.OnAfterGamingPunishEvent(this, EventArgs, data);
|
GameModule.OnAfterGamingPunishEvent(this, EventArgs, data, result);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -42,32 +42,32 @@ namespace Milimoe.FunGame.Core.Service
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 从gamemodes目录加载所有模组
|
/// 从modules目录加载所有模组
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="gamemodes"></param>
|
/// <param name="modules"></param>
|
||||||
/// <param name="characters"></param>
|
/// <param name="characters"></param>
|
||||||
/// <param name="skills"></param>
|
/// <param name="skills"></param>
|
||||||
/// <param name="items"></param>
|
/// <param name="items"></param>
|
||||||
/// <param name="delegates"></param>
|
/// <param name="delegates"></param>
|
||||||
/// <param name="otherobjs"></param>
|
/// <param name="otherobjs"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
internal static Dictionary<string, GameMode> LoadGameModes(Dictionary<string, GameMode> gamemodes, List<Character> characters, List<Skill> skills, List<Item> items, Hashtable delegates, params object[] otherobjs)
|
internal static Dictionary<string, GameModule> LoadGameModules(Dictionary<string, GameModule> modules, List<Character> characters, List<Skill> skills, List<Item> items, Hashtable delegates, params object[] otherobjs)
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(ReflectionSet.GameModeFolderPath)) return gamemodes;
|
if (!Directory.Exists(ReflectionSet.GameModuleFolderPath)) return modules;
|
||||||
|
|
||||||
string[] dlls = Directory.GetFiles(ReflectionSet.GameModeFolderPath, "*.dll");
|
string[] dlls = Directory.GetFiles(ReflectionSet.GameModuleFolderPath, "*.dll");
|
||||||
|
|
||||||
foreach (string dll in dlls)
|
foreach (string dll in dlls)
|
||||||
{
|
{
|
||||||
Assembly assembly = Assembly.LoadFrom(dll);
|
Assembly assembly = Assembly.LoadFrom(dll);
|
||||||
|
|
||||||
foreach (Type type in assembly.GetTypes().AsEnumerable().Where(type => type.IsSubclassOf(typeof(GameMode))))
|
foreach (Type type in assembly.GetTypes().AsEnumerable().Where(type => type.IsSubclassOf(typeof(GameModule))))
|
||||||
{
|
{
|
||||||
GameMode? instance = (GameMode?)Activator.CreateInstance(type);
|
GameModule? instance = (GameModule?)Activator.CreateInstance(type);
|
||||||
if (instance != null && instance.Load(otherobjs) && instance.Name.Trim() != "")
|
if (instance != null && instance.Load(otherobjs) && instance.Name.Trim() != "")
|
||||||
{
|
{
|
||||||
instance.Controller = new(instance, delegates);
|
instance.Controller = new(instance, delegates);
|
||||||
gamemodes.TryAdd(instance.Name, instance);
|
modules.TryAdd(instance.Name, instance);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -99,36 +99,36 @@ namespace Milimoe.FunGame.Core.Service
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return gamemodes;
|
return modules;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 从gamemodes目录加载所有适用于服务器的模组
|
/// 从modules目录加载所有适用于服务器的模组
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="gamemodes"></param>
|
/// <param name="modules"></param>
|
||||||
/// <param name="characters"></param>
|
/// <param name="characters"></param>
|
||||||
/// <param name="skills"></param>
|
/// <param name="skills"></param>
|
||||||
/// <param name="items"></param>
|
/// <param name="items"></param>
|
||||||
/// <param name="delegates"></param>
|
/// <param name="delegates"></param>
|
||||||
/// <param name="otherobjs"></param>
|
/// <param name="otherobjs"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
internal static Dictionary<string, GameModeServer> LoadGameModesForServer(Dictionary<string, GameModeServer> gamemodes, List<Character> characters, List<Skill> skills, List<Item> items, Hashtable delegates, params object[] otherobjs)
|
internal static Dictionary<string, GameModuleServer> LoadGameModulesForServer(Dictionary<string, GameModuleServer> modules, List<Character> characters, List<Skill> skills, List<Item> items, Hashtable delegates, params object[] otherobjs)
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(ReflectionSet.GameModeFolderPath)) return gamemodes;
|
if (!Directory.Exists(ReflectionSet.GameModuleFolderPath)) return modules;
|
||||||
|
|
||||||
string[] dlls = Directory.GetFiles(ReflectionSet.GameModeFolderPath, "*.dll");
|
string[] dlls = Directory.GetFiles(ReflectionSet.GameModuleFolderPath, "*.dll");
|
||||||
|
|
||||||
foreach (string dll in dlls)
|
foreach (string dll in dlls)
|
||||||
{
|
{
|
||||||
Assembly assembly = Assembly.LoadFrom(dll);
|
Assembly assembly = Assembly.LoadFrom(dll);
|
||||||
|
|
||||||
foreach (Type type in assembly.GetTypes().AsEnumerable().Where(type => type.IsSubclassOf(typeof(GameModeServer))))
|
foreach (Type type in assembly.GetTypes().AsEnumerable().Where(type => type.IsSubclassOf(typeof(GameModuleServer))))
|
||||||
{
|
{
|
||||||
GameModeServer? instance = (GameModeServer?)Activator.CreateInstance(type);
|
GameModuleServer? instance = (GameModuleServer?)Activator.CreateInstance(type);
|
||||||
if (instance != null && instance.Load(otherobjs) && instance.Name.Trim() != "")
|
if (instance != null && instance.Load(otherobjs) && instance.Name.Trim() != "")
|
||||||
{
|
{
|
||||||
instance.Controller = new(instance, delegates);
|
instance.Controller = new(instance, delegates);
|
||||||
gamemodes.TryAdd(instance.Name, instance);
|
modules.TryAdd(instance.Name, instance);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -160,18 +160,18 @@ namespace Milimoe.FunGame.Core.Service
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return gamemodes;
|
return modules;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 从gamemaps目录加载所有地图
|
/// 从maps目录加载所有地图
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="gamemaps"></param>
|
/// <param name="maps"></param>
|
||||||
/// <param name="objs"></param>
|
/// <param name="objs"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
internal static Dictionary<string, GameMap> LoadGameMaps(Dictionary<string, GameMap> gamemaps, params object[] objs)
|
internal static Dictionary<string, GameMap> LoadGameMaps(Dictionary<string, GameMap> maps, params object[] objs)
|
||||||
{
|
{
|
||||||
if (!Directory.Exists(ReflectionSet.GameMapFolderPath)) return gamemaps;
|
if (!Directory.Exists(ReflectionSet.GameMapFolderPath)) return maps;
|
||||||
|
|
||||||
string[] dlls = Directory.GetFiles(ReflectionSet.GameMapFolderPath, "*.dll");
|
string[] dlls = Directory.GetFiles(ReflectionSet.GameMapFolderPath, "*.dll");
|
||||||
|
|
||||||
@ -184,12 +184,12 @@ namespace Milimoe.FunGame.Core.Service
|
|||||||
GameMap? instance = (GameMap?)Activator.CreateInstance(type);
|
GameMap? instance = (GameMap?)Activator.CreateInstance(type);
|
||||||
if (instance != null && instance.Load(objs) && instance.Name.Trim() != "")
|
if (instance != null && instance.Load(objs) && instance.Name.Trim() != "")
|
||||||
{
|
{
|
||||||
gamemaps.TryAdd(instance.Name, instance);
|
maps.TryAdd(instance.Name, instance);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return gamemaps;
|
return maps;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user