/// <summary> /// コンストラクタ /// </summary> public PresetLoaderViewModel(SetEnemyFleetDelegate setEnemyFleetDelegate) { Title.Value = "読み込み中..."; initialize(); Title.Value = "敵編成検索画面"; // 変数を設定する SetEnemyFleetCommand = EnemyInfo.Select(s => s != "").ToReactiveCommand(); // イベントを登録する MapSelectIndex.Subscribe(async value => { // マス情報をダウンロードし、リストに登録する Title.Value = "読み込み中..."; await RefreshPointList(); MapImageUrl.Value = await GetMapImageUrl(); Title.Value = "敵編成検索画面"; RefreshEnemyInfo(); }); LevelSelectIndex.Subscribe(async value => { // マス情報をダウンロードし、リストに登録する Title.Value = "読み込み中..."; await RefreshPointList(); Title.Value = "敵編成検索画面"; RefreshEnemyInfo(); }); PointSelectIndex.Subscribe(value => { RefreshEnemyInfo(); }); SetEnemyFleetCommand.Subscribe(() => { if (PointSelectIndex.Value < 0 || PointList.Count <= PointSelectIndex.Value) { return; } var fleet = model.GetEnemyFleet(PointList[PointSelectIndex.Value]); setEnemyFleetDelegate(fleet); }); }
/// <summary> /// コンストラクタ /// </summary> public MainModel(SetEnemyFleetDelegate setEnemyFleetDelegate) { this.setEnemyFleetDelegate = setEnemyFleetDelegate; OpenPresetLoaderCommand.Subscribe(OpenPresetLoader); }