バイト君報酬のドル袋処理追加
This commit is contained in:
parent
7603bc9f38
commit
d972107529
|
@ -1,6 +1,7 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MyGame.Scenes.Main.Scripts;
|
||||
using MyGame.Scenes.marketing.Scripts;
|
||||
using MyGame.Scripts;
|
||||
using TMPro;
|
||||
|
@ -26,9 +27,10 @@ public class MarketManager : MonoBehaviour
|
|||
[SerializeField] private Transform coinPrefab;
|
||||
[SerializeField] private Transform rootTransform;
|
||||
[SerializeField] private TutorialObjectMask walkerMask;
|
||||
[SerializeField] private GameObject dollarBag;
|
||||
private Market market;
|
||||
List<ProductData> productDataList;
|
||||
private bool isPartTimer;
|
||||
private bool isPartTimerMode;
|
||||
|
||||
private readonly Subject<Unit> customerRewardTimerUpdateSubject = new Subject<Unit>();
|
||||
private readonly Subject<Unit> vipTimerUpdateSubject = new Subject<Unit>();
|
||||
|
@ -41,7 +43,7 @@ public class MarketManager : MonoBehaviour
|
|||
vipTimerUpdateSubject.AddTo(this);
|
||||
market = WorldMarketManager.Instance.GetCurrentCityMarket();
|
||||
market.CheckPartTimerMode();
|
||||
isPartTimer = market.IsPartTimer;
|
||||
isPartTimerMode = market.IsPartTimer;
|
||||
|
||||
SoundManager.Instance.PlayBGM("bgm_marketing");
|
||||
var globalGameData = GameDataManager.GameData;
|
||||
|
@ -63,12 +65,36 @@ public class MarketManager : MonoBehaviour
|
|||
// 最新の都市ではない場合、バイトが有効
|
||||
if (!market.IsLatestCity)
|
||||
{
|
||||
partTimerView.StartAnimation(isPartTimer);
|
||||
partTimerView.StartAnimation(isPartTimerMode);
|
||||
}
|
||||
if (isPartTimer)
|
||||
dollarBag.SetActive(isPartTimerMode && cityGameData.PartTimerElapsed > 10);
|
||||
if (isPartTimerMode)
|
||||
{
|
||||
rewardButtonView.gameObject.SetActive(false);
|
||||
vipCustomerButtonView.gameObject.SetActive(false);
|
||||
|
||||
var partTimersData = SpreadsheetDataManager.Instance.GetBaseDataList<PartTimerData>(Const.PartTimerDataSheet);
|
||||
dollarBag.AddComponent<ObservableEventTrigger>().OnPointerClickAsObservable().Take(1).Subscribe(_ =>
|
||||
{
|
||||
dollarBag.SetActive(false);
|
||||
// dialog表示時点の値をcache
|
||||
var partTimerElapsed = cityGameData.PartTimerElapsed;
|
||||
EarningsReportDialog.ShowDialog((coinPos, heartPos) =>
|
||||
{
|
||||
var partTimerData = partTimersData.First(data => data.level == cityGameData.PartTimerLevel);
|
||||
var (coin, heart) = PartTimerManager.CalcEarnings(partTimerData, partTimerElapsed);
|
||||
cityGameData.WaitAddHeart += heart;
|
||||
HeartMeter.Instance.AddHeartForBulkOrder(heartPos, () =>
|
||||
{
|
||||
cityGameData.MoveHeart(heart);
|
||||
});
|
||||
CoinManager.Instance.AddCoinForBulkOrder(coin, coinPos);
|
||||
cityGameData.Coin = CoinManager.Instance.OwnCoin;
|
||||
cityGameData.PartTimerElapsed -= partTimerElapsed;
|
||||
globalGameData.ShopCustomizeCoin += PartTimerManager.Instance.GetCustomizeCoin();
|
||||
GameDataManager.SaveGameData();
|
||||
});
|
||||
}).AddTo(this);
|
||||
}
|
||||
|
||||
if (!globalGameData.FinishedFlags.HasFlag(TutorialFlag.FirstPlay))
|
||||
|
@ -157,8 +183,8 @@ public class MarketManager : MonoBehaviour
|
|||
{
|
||||
vipCustomerButtonView.SetActive(isPause);
|
||||
// バイト君モードでは兄弟非表示
|
||||
blueView.SetActive(!isPartTimer && !isPause);
|
||||
BrotherPinkView.Instance.SetActive(!isPartTimer && !isPause);
|
||||
blueView.SetActive(!isPartTimerMode && !isPause);
|
||||
BrotherPinkView.Instance.SetActive(!isPartTimerMode && !isPause);
|
||||
// 最新の都市ではない場合バイト非表示
|
||||
partTimerView.SetActive(!market.IsLatestCity && !isPause);
|
||||
}).AddTo(this);
|
||||
|
@ -313,7 +339,7 @@ displayFlavors: {market.DisplayFlavors.Aggregate("", (s, data) => $"{s},{data.Fl
|
|||
.Subscribe(x =>
|
||||
{
|
||||
var (isClose, isPromotion) = x;
|
||||
if (isClose || isPartTimer)
|
||||
if (isClose || isPartTimerMode)
|
||||
{
|
||||
BrotherPinkView.Instance.StopTasting();
|
||||
rewardButtonView.gameObject.SetActive(false);
|
||||
|
@ -491,7 +517,7 @@ displayFlavors: {market.DisplayFlavors.Aggregate("", (s, data) => $"{s},{data.Fl
|
|||
}).AddTo(customerAnimator);
|
||||
var eventTrigger = customerAnimator.gameObject.AddComponent<ObservableEventTrigger>();
|
||||
eventTrigger.OnPointerClickAsObservable()
|
||||
.Where(_ => !isPartTimer)
|
||||
.Where(_ => !isPartTimerMode)
|
||||
.Take(1)
|
||||
.Subscribe(_ =>
|
||||
{
|
||||
|
|
|
@ -3473,6 +3473,7 @@ MonoBehaviour:
|
|||
type: 3}
|
||||
rootTransform: {fileID: 714437465}
|
||||
walkerMask: {fileID: 237651842}
|
||||
dollarBag: {fileID: 1217099569}
|
||||
--- !u!1 &1026166058
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -4171,6 +4172,8 @@ GameObject:
|
|||
m_Component:
|
||||
- component: {fileID: 1217099570}
|
||||
- component: {fileID: 1217099571}
|
||||
- component: {fileID: 1217099573}
|
||||
- component: {fileID: 1217099572}
|
||||
m_Layer: 5
|
||||
m_Name: DollarBag
|
||||
m_TagString: Untagged
|
||||
|
@ -4201,8 +4204,8 @@ RectTransform:
|
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 128, y: -321}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 78, y: -271}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_Pivot: {x: 0, y: 1}
|
||||
--- !u!95 &1217099571
|
||||
Animator:
|
||||
|
@ -4224,6 +4227,30 @@ Animator:
|
|||
m_HasTransformHierarchy: 1
|
||||
m_AllowConstantClipSamplingOptimization: 1
|
||||
m_KeepAnimatorControllerStateOnDisable: 0
|
||||
--- !u!114 &1217099572
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1217099569}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: ee012d4774ae943b49c2443232200135, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
--- !u!222 &1217099573
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1217099569}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1235629312
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
Loading…
Reference in New Issue