private void onEditButtonClicked(string name) { var dialog = new UIConfirmDialog(gameSystem, "confirm", "edit game world?"); dialog.okButtonClicked = () => { dialog.Close(); uiEditGameWorldDialog.Close(); gameSystem.sceneToWaiting(); Task.Run(async() => { try { var gw = await GameWorldHelper.loadGameWorldData <GameWorldSystem>(name); gw.camera = new Camera(gameSystem.option.screenWidth, gameSystem.option.screenHeight); gameSystem.dispatchSceneToEditGame(gw); } catch (Exception e) { Debug.WriteLine(e); throw; } }); }; dialog.ShowDialog(formMain); }
private async ValueTask <bool> onCreateGameWorld(string name, string txtWidth, string txtHeight) { name = name.Trim(); if (string.IsNullOrWhiteSpace(name)) { new UIDialog(gameSystem, "error", "game_world_name").ShowDialog(formMain); return(false); } if (!int.TryParse(txtWidth.Trim(), out var width)) { new UIDialog(gameSystem, "error", "width_number").ShowDialog(formMain); return(false); } if (!int.TryParse(txtHeight.Trim(), out var height)) { new UIDialog(gameSystem, "error", "height_number").ShowDialog(formMain); return(false); } if (width < GameConstant.mapMinSize || height < GameConstant.mapMinSize) { new UIDialog(gameSystem, "error", $"map size > {GameConstant.mapMinSize}").ShowDialog(formMain); return(false); } if (width > GameConstant.mapMaxSize || height > GameConstant.mapMaxSize) { new UIDialog(gameSystem, "error", $"map size < {GameConstant.mapMaxSize}").ShowDialog(formMain); return(false); } if (!await GameWorldHelper.create(name, width, height)) { new UIDialog(gameSystem, "error", "create_failed").ShowDialog(formMain); return(false); } return(true); }
private void onRemoveButtonClicked(string name) { var dialog = new UIConfirmDialog(gameSystem, "confirm", "delete?"); dialog.okButtonClicked = () => { dialog.Close(); try { GameWorldHelper.delete(name); } catch (Exception e) { MessageBox.Show("create_failed:" + e.Message); return; } _ = loadGameWorldMapList(); }; dialog.ShowDialog(formMain); }
private async Task save() { await GameWorldHelper.saveGameWorldData(gameWorld.name, gameMap); }
public async Task load(string gameWorldFileName, string gameScenarioFile) { var gameWorld = await GameWorldHelper.loadGameWorldData <GameWorld>(gameWorldFileName); }
private async Task loadGameWorldMapList() => uiEditGameWorldDialog.setData(await GameWorldHelper.getInfoList());
private async Task loadGameScenarioList() => uiSelectGameScenarioDialog.setData(await GameWorldHelper.getGameScenarioInfoList());