using Milimoe.FunGame.Core.Entity; using Milimoe.FunGame.Core.Library.Common.Addon; using Milimoe.FunGame.Core.Service; namespace Milimoe.FunGame.Core.Api.Utility { public class GameModeLoader { public Dictionary Modes { get; } = []; public Dictionary Maps { get; } = []; public List Characters { get; } = []; public List Skills { get; } = []; public List Items { get; } = []; private GameModeLoader() { } public static GameModeLoader LoadGameModes(params object[] objs) { GameModeLoader loader = new(); AddonManager.LoadGameModes(loader.Modes, loader.Characters, loader.Skills, loader.Items, objs); AddonManager.LoadGameMaps(loader.Maps, objs); return loader; } public GameMode this[string name] { get { return Modes[name]; } set { Modes.TryAdd(name, value); } } public GameMap GetGameMap(string name) { return Maps[name]; } } }