報酬獲得後のミッションアイコンのバッジ切り替え対応
This commit is contained in:
parent
4aa89bb41e
commit
e6ac4ca4ad
|
|
@ -8,6 +8,8 @@ using UnityEngine.UI;
|
|||
public class MissionManager : MonoBehaviour
|
||||
{
|
||||
public static readonly string MissionDataTag = "MissionData";
|
||||
public static readonly string CallbackTag = "MissionManagerCallback";
|
||||
public static readonly string AchievedCallbackTag = "MissionManagerAchievedCallback";
|
||||
private static readonly string TimeFormat = "更新まで:{0}時間{1}分{2}秒";
|
||||
private static readonly int OpenTrigger = Animator.StringToHash("OpenTrigger");
|
||||
private static readonly int CloseTrigger = Animator.StringToHash("CloseTrigger");
|
||||
|
|
@ -27,6 +29,9 @@ public class MissionManager : MonoBehaviour
|
|||
backgroundAnimator.SetTrigger(CloseTrigger);
|
||||
this.CallWaitForSeconds(.25f, () =>
|
||||
{
|
||||
LocalCacheManager.Load<Action>(CallbackTag, null)?.Invoke();
|
||||
LocalCacheManager.Remove(CallbackTag);
|
||||
LocalCacheManager.Remove(AchievedCallbackTag);
|
||||
TransitionManager.Instance.UnloadScene(GameScenes.Mission);
|
||||
});
|
||||
}).AddTo(this);
|
||||
|
|
@ -98,6 +103,7 @@ public class MissionManager : MonoBehaviour
|
|||
// 達成ID保存
|
||||
gameData.dailyMissionCompleted = true;
|
||||
GameDataManager.SaveGameData();
|
||||
LocalCacheManager.Load<Action>(AchievedCallbackTag, null)?.Invoke();
|
||||
})));
|
||||
TransitionManager.Instance.LoadSceneAdditive(GameScenes.MissionAchievement);
|
||||
}).AddTo(missionView);
|
||||
|
|
@ -131,6 +137,7 @@ public class MissionManager : MonoBehaviour
|
|||
GameDataManager.SaveGameData();
|
||||
completeMissionView.ChangeProgress(gameData.dailyMissionIdArray.Length, gameData.dailyMissionAchievedIdArray.Length);
|
||||
completeMissionView.SetButtonActive(gameData.dailyMissionIdArray.Length <= gameData.dailyMissionAchievedIdArray.Length);
|
||||
LocalCacheManager.Load<Action>(AchievedCallbackTag, null)?.Invoke();
|
||||
})));
|
||||
TransitionManager.Instance.LoadSceneAdditive(GameScenes.MissionAchievement);
|
||||
}).AddTo(missionView);
|
||||
|
|
@ -177,6 +184,7 @@ public class MissionManager : MonoBehaviour
|
|||
GameDataManager.SaveGameData();
|
||||
listView.ResetItemList(MissionCategory.Normal);
|
||||
GenerateNormalMission(missionList);
|
||||
LocalCacheManager.Load<Action>(AchievedCallbackTag, null)?.Invoke();
|
||||
})));
|
||||
TransitionManager.Instance.LoadSceneAdditive(GameScenes.MissionAchievement);
|
||||
}).AddTo(missionView);
|
||||
|
|
@ -184,6 +192,13 @@ public class MissionManager : MonoBehaviour
|
|||
listView.SetIndicator(MissionCategory.Normal, normalIndicateFlag > 0);
|
||||
}
|
||||
|
||||
public static void ShowDialog(Action onClose = null, Action onAchieved = null)
|
||||
{
|
||||
LocalCacheManager.Save(CallbackTag, onClose);
|
||||
LocalCacheManager.Save(AchievedCallbackTag, onAchieved);
|
||||
TransitionManager.Instance.LoadSceneAdditive(GameScenes.Mission);
|
||||
}
|
||||
|
||||
public static int GetProgressValue(MissionData missionData)
|
||||
{
|
||||
var gameData = GameDataManager.GameData;
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ public class HeaderManager : MonoBehaviour
|
|||
});
|
||||
missionButton.OnClickAsObservable().ThrottleFirst(TimeSpan.FromSeconds(1f)).Subscribe(_ =>
|
||||
{
|
||||
TransitionManager.Instance.LoadSceneAdditive(GameScenes.Mission);
|
||||
MissionManager.ShowDialog(onAchieved:() => missionIndicator.SetActive(CheckMissionIndicate()));
|
||||
});
|
||||
informationButton.OnClickAsObservable().ThrottleFirst(TimeSpan.FromSeconds(1f)).Subscribe(_ =>
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue