ミッション通常タブの都市名表示を追加
This commit is contained in:
parent
ef6d56b135
commit
58e99c2c06
|
|
@ -40,33 +40,28 @@ public class MissionManager : MonoBehaviour
|
||||||
});
|
});
|
||||||
}).AddTo(this);
|
}).AddTo(this);
|
||||||
|
|
||||||
|
var cityDataList = SpreadsheetDataManager.Instance.GetBaseDataList<CityData>(Const.CityDataSheet);
|
||||||
|
var cityData = cityDataList.First(data => data.id == GameDataManager.GameData.CurrentCityId);
|
||||||
|
listView.SetCityIcon(cityData.GetIconPrefab());
|
||||||
|
|
||||||
|
var timeLimitTextValue = string.Empty;
|
||||||
listView.SelectedTab.Subscribe(category =>
|
listView.SelectedTab.Subscribe(category =>
|
||||||
{
|
{
|
||||||
timeLimitText.gameObject.SetActive(category == MissionCategory.Daily);
|
timeLimitText.text = category == MissionCategory.Daily ? timeLimitTextValue : cityData.Name;
|
||||||
}).AddTo(this);
|
}).AddTo(this);
|
||||||
|
|
||||||
onAchieved = LocalCacheManager.Load<Action<bool>>(AchievedCallbackTag, null);
|
onAchieved = LocalCacheManager.Load<Action<bool>>(AchievedCallbackTag, null);
|
||||||
var gameData = GameDataManager.GameData;
|
var gameData = GameDataManager.GameData;
|
||||||
var cityDataList = SpreadsheetDataManager.Instance.GetBaseDataList<CityData>(Const.CityDataSheet);
|
|
||||||
var cityData = cityDataList.First(data => data.id == GameDataManager.GameData.CurrentCityId);
|
|
||||||
listView.SetCityIcon(cityData.GetIconPrefab());
|
|
||||||
|
|
||||||
// デイリーカウントダウン
|
// デイリーカウントダウン
|
||||||
var limitTime = gameData.GetDailyMissionLimitTime();
|
|
||||||
if (limitTime.TotalSeconds > 0)
|
|
||||||
{
|
|
||||||
timeLimitText.text = String.Format(ScriptLocalization.UI.MissionDailyTimeLimit, limitTime.Hours, limitTime.Minutes, limitTime.Seconds);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
timeLimitText.text = String.Format(ScriptLocalization.UI.MissionDailyTimeLimit, 0, 0, 0);
|
|
||||||
}
|
|
||||||
Observable.Timer(TimeSpan.Zero, TimeSpan.FromSeconds(1f))
|
Observable.Timer(TimeSpan.Zero, TimeSpan.FromSeconds(1f))
|
||||||
.Select(x => gameData.GetDailyMissionLimitTime())
|
.Select(x => gameData.GetDailyMissionLimitTime())
|
||||||
.TakeWhile(x => x.TotalSeconds > 0)
|
.TakeWhile(x => x.TotalSeconds > 0)
|
||||||
|
.StartWith(gameData.GetDailyMissionLimitTime())
|
||||||
.Subscribe(x =>
|
.Subscribe(x =>
|
||||||
{
|
{
|
||||||
timeLimitText.text = String.Format(ScriptLocalization.UI.MissionDailyTimeLimit, x.Hours, x.Minutes, x.Seconds);
|
timeLimitTextValue = GetTimeLimitText(x);
|
||||||
|
if (listView.SelectedTab.Value == MissionCategory.Daily) timeLimitText.text = timeLimitTextValue;
|
||||||
}).AddTo(this);
|
}).AddTo(this);
|
||||||
|
|
||||||
// ミッション読み込み
|
// ミッション読み込み
|
||||||
|
|
@ -211,6 +206,12 @@ public class MissionManager : MonoBehaviour
|
||||||
listView.SetIndicator(MissionCategory.Normal, normalIndicateFlag > 0);
|
listView.SetIndicator(MissionCategory.Normal, normalIndicateFlag > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string GetTimeLimitText(TimeSpan limitTime)
|
||||||
|
{
|
||||||
|
if (limitTime.TotalSeconds < 0) limitTime = TimeSpan.Zero;
|
||||||
|
return String.Format(ScriptLocalization.UI.MissionDailyTimeLimit, limitTime.Hours, limitTime.Minutes, limitTime.Seconds);
|
||||||
|
}
|
||||||
|
|
||||||
public static void ShowDialog(Action onClose = null, Action<bool> onAchieved = null)
|
public static void ShowDialog(Action onClose = null, Action<bool> onAchieved = null)
|
||||||
{
|
{
|
||||||
LocalCacheManager.Save(CallbackTag, onClose);
|
LocalCacheManager.Save(CallbackTag, onClose);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue