private static async Task HandleCommand(IContentEngineContent content, IContentEngineGame game, string js) { var bc = js.FromJson<CommandBase>(); switch (bc.Command) { case Commands.installDll: { var c = js.FromJson<InstallDllCommand>(); InstallDll(content, game, c); break; } case Commands.installTeamspeakPlugin: { var c = js.FromJson<InstallTeamspeakPluginCommand>(); InstallTeamspeakFiles(content, c); break; } } }
private static async Task HandleCommand(IContentEngineContent content, IContentEngineGame game, string js) { var bc = js.FromJson <CommandBase>(); switch (bc.Command) { case Commands.installDll: { var c = js.FromJson <InstallDllCommand>(); InstallDll(content, game, c); break; } case Commands.installTeamspeakPlugin: { var c = js.FromJson <InstallTeamspeakPluginCommand>(); InstallTeamspeakFiles(content, c); break; } } }
async Task LoadModSFromStream(IContentEngineContent content, IContentEngineGame game) { using (var streamR = new StreamReader(_resourceService.GetResource(GetScriptPath(content.Id)))) { var js = streamR.ReadToEnd(); await HandleCommand(content, game, js).ConfigureAwait(false); } }
public Task LoadModS(IContentEngineContent mod, IContentEngineGame game, bool overrideMod = false) { if (!ModHasScript(mod)) throw new Exception("This mod does not have a Script"); return LoadModSFromStream(mod, game); }
private static void InstallDll(IContentEngineContent content, IContentEngineGame game, InstallDllCommand c) { var s = new GameFolderService(); foreach (var f in c.Source) s.InstallDllPlugin(game, content, f, c.Options.Force); }
public void InstallDllPlugin(IContentEngineGame game, IContentEngineContent content, string plugin, bool force = false) { var success = TryInstallPlugin(game.WorkingDirectory, content, plugin, force); MainLog.Logger.Info("Install Success?: " + success); }
public GameFolderService(RegisteredMod mod, IContentEngineGame game) : base(mod) { _game = game; }