Marketクラスのポーズ中にお客さんとVIP宣伝の動きを止める処理を追加
This commit is contained in:
parent
8d267befd7
commit
073cca3c48
|
|
@ -32,6 +32,7 @@ public class CustomerAnimator : MonoBehaviour
|
||||||
[SerializeField] private TextMeshPro wantFlavorAmountText;
|
[SerializeField] private TextMeshPro wantFlavorAmountText;
|
||||||
|
|
||||||
private readonly ReactiveProperty<int> triggerName = new ReactiveProperty<int>();
|
private readonly ReactiveProperty<int> triggerName = new ReactiveProperty<int>();
|
||||||
|
public readonly ReactiveProperty<bool> IsPause = new ReactiveProperty<bool>();
|
||||||
|
|
||||||
private void Start()
|
private void Start()
|
||||||
{
|
{
|
||||||
|
|
@ -40,6 +41,11 @@ public class CustomerAnimator : MonoBehaviour
|
||||||
{
|
{
|
||||||
animator.SetTrigger(x);
|
animator.SetTrigger(x);
|
||||||
}).AddTo(this);
|
}).AddTo(this);
|
||||||
|
IsPause.DistinctUntilChanged().Subscribe(x =>
|
||||||
|
{
|
||||||
|
animator.speed = x ? 0f : 1f;
|
||||||
|
orderAnimator.speed = x ? 0f : 1f;
|
||||||
|
}).AddTo(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetTrigger(CustomerMovingType movingType, float duration)
|
public void SetTrigger(CustomerMovingType movingType, float duration)
|
||||||
|
|
|
||||||
|
|
@ -83,6 +83,7 @@ public class MarketManager : MonoBehaviour
|
||||||
|
|
||||||
market.IsPause.Subscribe(isPause =>
|
market.IsPause.Subscribe(isPause =>
|
||||||
{
|
{
|
||||||
|
vipCustomerButtonView.IsPause.Value = isPause;
|
||||||
// ポーズ中非表示
|
// ポーズ中非表示
|
||||||
blueView.SetActive(!isPause);
|
blueView.SetActive(!isPause);
|
||||||
BrotherPinkView.Instance.SetActive(!isPause);
|
BrotherPinkView.Instance.SetActive(!isPause);
|
||||||
|
|
@ -388,6 +389,8 @@ public class MarketManager : MonoBehaviour
|
||||||
}).AddTo(customerObject);
|
}).AddTo(customerObject);
|
||||||
|
|
||||||
var customerAnimator = Instantiate(controller.CustomerPrefab, customerObject.transform);
|
var customerAnimator = Instantiate(controller.CustomerPrefab, customerObject.transform);
|
||||||
|
// pause処理
|
||||||
|
market.IsPause.Subscribe(x => customerAnimator.IsPause.Value = x).AddTo(customerObject);
|
||||||
controller.CurrentMovingType.Subscribe(x =>
|
controller.CurrentMovingType.Subscribe(x =>
|
||||||
{
|
{
|
||||||
customerAnimator.SetTrigger(x, controller.DurationDelta);
|
customerAnimator.SetTrigger(x, controller.DurationDelta);
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ namespace MyGame.Scenes.marketing.Scripts
|
||||||
[SerializeField] private GameObject vipSpeechBubbleObject;
|
[SerializeField] private GameObject vipSpeechBubbleObject;
|
||||||
[SerializeField] private Transform vipStayPosTransform;
|
[SerializeField] private Transform vipStayPosTransform;
|
||||||
[SerializeField] private float vipMoveSpeed;
|
[SerializeField] private float vipMoveSpeed;
|
||||||
|
public readonly BoolReactiveProperty IsPause = new BoolReactiveProperty();
|
||||||
public IObservable<Unit> VipButton { get; private set; }
|
public IObservable<Unit> VipButton { get; private set; }
|
||||||
private IDisposable timerDisposable;
|
private IDisposable timerDisposable;
|
||||||
private IDisposable moveDisposable;
|
private IDisposable moveDisposable;
|
||||||
|
|
@ -29,6 +30,14 @@ namespace MyGame.Scenes.marketing.Scripts
|
||||||
VipButton = vipButton.OnClickAsObservable()
|
VipButton = vipButton.OnClickAsObservable()
|
||||||
.Merge(eventTrigger.OnPointerClickAsObservable().AsUnitObservable())
|
.Merge(eventTrigger.OnPointerClickAsObservable().AsUnitObservable())
|
||||||
.TakeUntilDestroy(this);
|
.TakeUntilDestroy(this);
|
||||||
|
|
||||||
|
var bubbleAnimator = vipSpeechBubbleObject.GetComponent<Animator>();
|
||||||
|
IsPause.DistinctUntilChanged().Subscribe(x =>
|
||||||
|
{
|
||||||
|
bubbleAnimator.speed = x ? 0f : 1f;
|
||||||
|
buttonAnimator.speed = x ? 0f : 1f;
|
||||||
|
vipCustomerAnimator.speed = x ? 0f : 1f;
|
||||||
|
}).AddTo(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowButton(bool animated)
|
public void ShowButton(bool animated)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue