バイト詳細ダイアログ処理追加

This commit is contained in:
kimura 2022-09-26 12:42:34 +09:00
parent 48bed803b3
commit 9781a126fb
7 changed files with 198 additions and 24 deletions

View File

@ -3397,7 +3397,6 @@ GameObject:
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 1590155517} - component: {fileID: 1590155517}
- component: {fileID: 1590155518}
m_Layer: 5 m_Layer: 5
m_Name: MeterHeart m_Name: MeterHeart
m_TagString: Untagged m_TagString: Untagged
@ -3430,23 +3429,6 @@ RectTransform:
m_AnchoredPosition: {x: -20, y: -21.999985} m_AnchoredPosition: {x: -20, y: -21.999985}
m_SizeDelta: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 1} m_Pivot: {x: 0.5, y: 1}
--- !u!114 &1590155518
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1590155516}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c08102b0ec474c8b9e6dac7813ebc803, type: 3}
m_Name:
m_EditorClassIdentifier:
slider: {fileID: 41192145}
heartLevel: {fileID: 0}
maxObject: {fileID: 864496477}
duration: 0.5
bulkOrderAchievedEffect: {fileID: 0}
--- !u!1001 &1630079009 --- !u!1001 &1630079009
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -3628,6 +3610,7 @@ GameObject:
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 1661433358} - component: {fileID: 1661433358}
- component: {fileID: 1661433359}
m_Layer: 5 m_Layer: 5
m_Name: Window m_Name: Window
m_TagString: Untagged m_TagString: Untagged
@ -3657,6 +3640,29 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 145} m_AnchoredPosition: {x: 0, y: 145}
m_SizeDelta: {x: 764, y: 830} m_SizeDelta: {x: 764, y: 830}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1661433359
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1661433357}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f735bc27fb104a4388410ef3c483c3e8, type: 3}
m_Name:
m_EditorClassIdentifier:
backgroundAnimator: {fileID: 1127567744}
closeButton: {fileID: 1676914700}
cityIconTarget: {fileID: 222764992}
cityNameText: {fileID: 813962580}
levelText: {fileID: 1463615769}
heartSlider: {fileID: 41192145}
heartMaxObject: {fileID: 864496477}
amountText: {fileID: 1367941909}
tipsText: {fileID: 907682419}
levelUpButton: {fileID: 45079309}
disableButton: {fileID: 1961680769}
--- !u!1 &1676914697 --- !u!1 &1676914697
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -1437,7 +1437,7 @@ RectTransform:
- {fileID: 445566314} - {fileID: 445566314}
- {fileID: 1967400435} - {fileID: 1967400435}
m_Father: {fileID: 3664916832445709978} m_Father: {fileID: 3664916832445709978}
m_RootOrder: 9 m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0}
@ -6784,6 +6784,7 @@ MonoBehaviour:
kitchenView: {fileID: 1870432536} kitchenView: {fileID: 1870432536}
orderIndicatorView: {fileID: 2021031102} orderIndicatorView: {fileID: 2021031102}
autoCookView: {fileID: 2088316432} autoCookView: {fileID: 2088316432}
partTimerButtonView: {fileID: 3664916832445709979}
--- !u!4 &1870432534 --- !u!4 &1870432534
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -8129,7 +8130,7 @@ PrefabInstance:
- target: {fileID: 1408184404978035950, guid: caaa748dbeed576499e8cae74d33f689, - target: {fileID: 1408184404978035950, guid: caaa748dbeed576499e8cae74d33f689,
type: 3} type: 3}
propertyPath: m_RootOrder propertyPath: m_RootOrder
value: 8 value: 9
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 1750965193008879782, guid: caaa748dbeed576499e8cae74d33f689, - target: {fileID: 1750965193008879782, guid: caaa748dbeed576499e8cae74d33f689,
type: 3} type: 3}
@ -8487,6 +8488,11 @@ PrefabInstance:
propertyPath: m_IsActive propertyPath: m_IsActive
value: 1 value: 1
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4137423837908745802, guid: caaa748dbeed576499e8cae74d33f689,
type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4348639590627783772, guid: caaa748dbeed576499e8cae74d33f689, - target: {fileID: 4348639590627783772, guid: caaa748dbeed576499e8cae74d33f689,
type: 3} type: 3}
propertyPath: m_IsActive propertyPath: m_IsActive
@ -8498,10 +8504,15 @@ PrefabInstance:
value: value:
objectReference: {fileID: 21300000, guid: 6b12d4304d8cc814988c6828d9b478e9, objectReference: {fileID: 21300000, guid: 6b12d4304d8cc814988c6828d9b478e9,
type: 3} type: 3}
- target: {fileID: 6089058964045819772, guid: caaa748dbeed576499e8cae74d33f689,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6205448659049427752, guid: caaa748dbeed576499e8cae74d33f689, - target: {fileID: 6205448659049427752, guid: caaa748dbeed576499e8cae74d33f689,
type: 3} type: 3}
propertyPath: m_RootOrder propertyPath: m_RootOrder
value: 6 value: 10
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6396292362141172708, guid: caaa748dbeed576499e8cae74d33f689, - target: {fileID: 6396292362141172708, guid: caaa748dbeed576499e8cae74d33f689,
type: 3} type: 3}
@ -8513,6 +8524,11 @@ PrefabInstance:
propertyPath: m_RootOrder propertyPath: m_RootOrder
value: 1 value: 1
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6510712418412486576, guid: caaa748dbeed576499e8cae74d33f689,
type: 3}
propertyPath: m_RootOrder
value: 8
objectReference: {fileID: 0}
- target: {fileID: 6969874152703327186, guid: caaa748dbeed576499e8cae74d33f689, - target: {fileID: 6969874152703327186, guid: caaa748dbeed576499e8cae74d33f689,
type: 3} type: 3}
propertyPath: m_AnchoredPosition.y propertyPath: m_AnchoredPosition.y
@ -8533,6 +8549,11 @@ PrefabInstance:
propertyPath: m_IsActive propertyPath: m_IsActive
value: 1 value: 1
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7803003898279553472, guid: caaa748dbeed576499e8cae74d33f689,
type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8103176713869808018, guid: caaa748dbeed576499e8cae74d33f689, - target: {fileID: 8103176713869808018, guid: caaa748dbeed576499e8cae74d33f689,
type: 3} type: 3}
propertyPath: m_RootOrder propertyPath: m_RootOrder
@ -8607,6 +8628,18 @@ RectTransform:
type: 3} type: 3}
m_PrefabInstance: {fileID: 3664916832445709976} m_PrefabInstance: {fileID: 3664916832445709976}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &3664916832445709979 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 4773758037198869108, guid: caaa748dbeed576499e8cae74d33f689,
type: 3}
m_PrefabInstance: {fileID: 3664916832445709976}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7402670efed5410e894680a6e865ce23, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &3915769149207111994 --- !u!1001 &3915769149207111994
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -2439,7 +2439,7 @@ GameObject:
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 6510712418412486576} - component: {fileID: 6510712418412486576}
- component: {fileID: 703220439106299733} - component: {fileID: 4773758037198869108}
m_Layer: 5 m_Layer: 5
m_Name: EmploymentList m_Name: EmploymentList
m_TagString: Untagged m_TagString: Untagged
@ -2469,7 +2469,7 @@ RectTransform:
m_AnchoredPosition: {x: -84, y: -340} m_AnchoredPosition: {x: -84, y: -340}
m_SizeDelta: {x: 260, y: 320} m_SizeDelta: {x: 260, y: 320}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &703220439106299733 --- !u!114 &4773758037198869108
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -2478,7 +2478,7 @@ MonoBehaviour:
m_GameObject: {fileID: 6089058964045819772} m_GameObject: {fileID: 6089058964045819772}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2bee5c60f0f643d4a47973529de9226c, type: 3} m_Script: {fileID: 11500000, guid: 7402670efed5410e894680a6e865ce23, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
button: {fileID: 7557289802969012155} button: {fileID: 7557289802969012155}

View File

@ -0,0 +1,19 @@
using System;
using UniRx;
using UnityEngine;
using UnityEngine.UI;
namespace MyGame.Scenes.Main.Scripts
{
public class PartTimerButtonView : MonoBehaviour
{
[SerializeField] private Button button;
[SerializeField] private GameObject completedBadgeObject;
public IObservable<Unit> OnClick => button.OnClickAsObservable().TakeUntilDestroy(this);
public void SetBadgeActive(bool active)
{
completedBadgeObject.SetActive(active);
}
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 7402670efed5410e894680a6e865ce23
timeCreated: 1663908744

View File

@ -0,0 +1,110 @@
using System;
using System.Collections.Generic;
using System.Linq;
using I2.Loc;
using MyGame.Scripts;
using UniRx;
using UnityEngine;
using UnityEngine.UI;
namespace MyGame.Scenes.Main.Scripts
{
public class PartTimerDialog : MonoBehaviour
{
private static readonly string CallbackTag = "UpdateDialogCallback";
private static readonly int OpenTrigger = Animator.StringToHash("OpenTrigger");
private static readonly int CloseTrigger = Animator.StringToHash("CloseTrigger");
private static readonly GameScenes SceneName = GameScenes.EmploymentList;
[SerializeField] private Animator backgroundAnimator;
[SerializeField] private Button closeButton;
[SerializeField] private Transform cityIconTarget;
[SerializeField] private Text cityNameText;
[SerializeField] private Text levelText;
[SerializeField] private Slider heartSlider;
[SerializeField] private GameObject heartMaxObject;
[SerializeField] private Text amountText;
[SerializeField] private Text tipsText;
[SerializeField] private Button levelUpButton;
[SerializeField] private GameObject disableButton;
private bool buttonActive;
private void Start()
{
var (cityData, partTimerDataList, onClose) = LocalCacheManager.Load<(CityData, List<PartTimerData>, Action)>(CallbackTag);
var cityGameData = GameDataManager.GetCurrentCityGameData();
LocalCacheManager.Remove(CallbackTag);
closeButton.OnClickAsObservable().Take(1).Subscribe(_ =>
{
onClose?.Invoke();
transform.parent.SetLocalScale(0);
backgroundAnimator.SetTrigger(CloseTrigger);
this.CallWaitForSeconds(.25f, () =>
{
TransitionManager.Instance.UnloadScene(SceneName);
});
}).AddTo(this);
cityIconTarget.DestroyAllChildrens();
Instantiate(cityData.GetIconPrefab(), cityIconTarget);
cityNameText.text = cityData.Name;
levelText.text = $"Lv.{cityGameData.PartTimerLevel}";
var nextData = partTimerDataList.FirstOrDefault(data => data.level > cityGameData.PartTimerLevel);
if (nextData is null)
{
// レベルアップ上限
SetMaxLevel();
return;
}
SetPartTimerData(cityData, nextData);
SetButtonActive(buttonActive && cityGameData.Coin >= nextData.needAmount);
levelUpButton.OnClickAsObservable().ThrottleFirst(TimeSpan.FromSeconds(.3f)).Subscribe(_ =>
{
// レベルアップを挟むと報酬がプレイヤーに有利になる件
GameDataManager.GetCurrentCityGameData().PartTimerLevel = nextData.level;
GameDataManager.SaveGameData();
levelText.text = $"Lv.{cityGameData.PartTimerLevel}";
nextData = partTimerDataList.FirstOrDefault(data => data.level > cityGameData.PartTimerLevel);
if (nextData is null)
{
// レベルアップ上限
SetMaxLevel();
return;
}
SetPartTimerData(cityData, nextData);
SetButtonActive(buttonActive && cityGameData.Coin >= nextData.needAmount);
}).AddTo(this);
}
private void SetMaxLevel()
{
SetButtonActive(false);
}
private void SetPartTimerData(CityData cityData, PartTimerData nextPartTimerData)
{
var progress = (float)GameDataUtils.GetPartTimerHeart(cityData.id) / nextPartTimerData.needHeart;
var isHeartMax = progress >= 1f;
heartSlider.value = progress;
tipsText.text = isHeartMax ? "レベルアップすることができます" : "新店舗でハートを集めよう";
heartMaxObject.SetActive(isHeartMax);
SetButtonActive(isHeartMax);
amountText.text = nextPartTimerData.needAmount.ToString();
}
private void SetButtonActive(bool active)
{
buttonActive = active;
levelUpButton.gameObject.SetActive(active);
disableButton.SetActive(!active);
}
public static void ShowDialog(CityData cityData, List<PartTimerData> dataList, Action onClose = null){
LocalCacheManager.Save(CallbackTag, (cityData, dataList, onClose));
TransitionManager.Instance.LoadSceneAdditive(SceneName);
}
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: f735bc27fb104a4388410ef3c483c3e8
timeCreated: 1663839080