大量注文受注直後にキャンセルできないのを修正
This commit is contained in:
parent
6df8fa8d9b
commit
3d62cbcff8
|
|
@ -7,6 +7,7 @@ using UnityEngine.UI;
|
||||||
|
|
||||||
public class BulkOrderNotifyView : MonoBehaviour
|
public class BulkOrderNotifyView : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
private static readonly string CallbackTag = "BulkOrderNotifyViewCallback";
|
||||||
private static readonly int OpenTrigger = Animator.StringToHash("OpenTrigger");
|
private static readonly int OpenTrigger = Animator.StringToHash("OpenTrigger");
|
||||||
private static readonly int CloseTrigger = Animator.StringToHash("CloseTrigger");
|
private static readonly int CloseTrigger = Animator.StringToHash("CloseTrigger");
|
||||||
[SerializeField] private Animator backgroundAnimator;
|
[SerializeField] private Animator backgroundAnimator;
|
||||||
|
|
@ -66,13 +67,20 @@ public class BulkOrderNotifyView : MonoBehaviour
|
||||||
}
|
}
|
||||||
closeButton.OnClickAsObservable().Take(1).Subscribe(_ =>
|
closeButton.OnClickAsObservable().Take(1).Subscribe(_ =>
|
||||||
{
|
{
|
||||||
|
LocalCacheManager.Load<Action>(CallbackTag, null)?.Invoke();
|
||||||
|
LocalCacheManager.Remove(CallbackTag);
|
||||||
transform.parent.SetLocalScale(0);
|
transform.parent.SetLocalScale(0);
|
||||||
backgroundAnimator.SetTrigger(CloseTrigger);
|
backgroundAnimator.SetTrigger(CloseTrigger);
|
||||||
this.CallWaitForSeconds(.25f, () =>
|
this.CallWaitForSeconds(.25f, () =>
|
||||||
{
|
{
|
||||||
TransitionManager.Instance.UnloadScene(GameScenes.BulkOrderTelephone);
|
TransitionManager.Instance.UnloadScene(GameScenes.BulkOrderTelephone);
|
||||||
TransitionManager.Instance.LoadSceneAdditive(GameScenes.BulkOrder);
|
|
||||||
});
|
});
|
||||||
}).AddTo(this);
|
}).AddTo(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void ShowDialog(Action onComplete = null)
|
||||||
|
{
|
||||||
|
LocalCacheManager.Save(CallbackTag, onComplete);
|
||||||
|
TransitionManager.Instance.LoadSceneAdditive(GameScenes.BulkOrderTelephone);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -189,13 +189,25 @@ public class KitchenManager : MonoBehaviour
|
||||||
|
|
||||||
var orderData = bulkOrderList.First(data => data.id == result.nextOrderId);
|
var orderData = bulkOrderList.First(data => data.id == result.nextOrderId);
|
||||||
LocalCacheManager.Save(BulkOrder.DataTag, orderData);
|
LocalCacheManager.Save(BulkOrder.DataTag, orderData);
|
||||||
TransitionManager.Instance.LoadSceneAdditive(GameScenes.BulkOrderTelephone);
|
BulkOrderNotifyView.ShowDialog(() =>
|
||||||
|
{
|
||||||
|
BulkOrder.ShowDialog(
|
||||||
|
onAchieved: () =>
|
||||||
|
{
|
||||||
|
orderIndicatorView.SetIndicate(false, true);
|
||||||
|
orderIndicatorView.SetBadgeActive(false);
|
||||||
|
},
|
||||||
|
onCancel: () =>
|
||||||
|
{
|
||||||
|
orderIndicatorView.SetIndicate(false, true);
|
||||||
|
orderIndicatorView.SetBadgeActive(false);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
// 通知をタップ後タップ動作を切り替える
|
// 通知をタップ後タップ動作を切り替える
|
||||||
orderIndicatorView.SetIndicate(false, false);
|
orderIndicatorView.SetIndicate(false, false);
|
||||||
orderIndicatorView.TappedPhone
|
orderIndicatorView.TappedPhone
|
||||||
.ThrottleFirst(TimeSpan.FromSeconds(1f))
|
.ThrottleFirst(TimeSpan.FromSeconds(1f))
|
||||||
.Take(1)
|
|
||||||
.Subscribe(__ =>
|
.Subscribe(__ =>
|
||||||
{
|
{
|
||||||
BulkOrder.ShowDialog(
|
BulkOrder.ShowDialog(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue