ステージ選択対応
This commit is contained in:
parent
70ed5a22f3
commit
ca4bc0e86b
|
|
@ -659,12 +659,6 @@ RectTransform:
|
|||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 160, y: 30}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!4 &1448010325 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 2845075459559541233, guid: 417e2c534d3274ba1a973fe4284532bd,
|
||||
type: 3}
|
||||
m_PrefabInstance: {fileID: 2498033716723453584}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!20 &1673325602 stripped
|
||||
Camera:
|
||||
m_CorrespondingSourceObject: {fileID: 9117079084301130544, guid: 021717b65b165374faa3fcffaafedfc2,
|
||||
|
|
@ -821,7 +815,7 @@ MonoBehaviour:
|
|||
m_Script: {fileID: 11500000, guid: 96c2b99ef2e6c42dd998b782def0bd0e, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
timeLimit: 6
|
||||
timeLimit: 30
|
||||
headerView: {fileID: 7328251774669809638}
|
||||
player: {fileID: 787907554}
|
||||
stageSelectView: {fileID: 2071735749}
|
||||
|
|
@ -873,7 +867,13 @@ MonoBehaviour:
|
|||
m_Script: {fileID: 11500000, guid: 92d8af3e7a454c858429c462d377f112, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
stage: {fileID: 1448010325}
|
||||
stageTarget: {fileID: 1887289308}
|
||||
--- !u!4 &1887289308 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7269014383480657833, guid: 417e2c534d3274ba1a973fe4284532bd,
|
||||
type: 3}
|
||||
m_PrefabInstance: {fileID: 2498033716723453584}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &2055584752
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
|
|
|||
|
|
@ -4,12 +4,19 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
{
|
||||
public class StageManager : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private Transform stage;
|
||||
[SerializeField] private Transform stageTarget;
|
||||
private Transform[] stages;
|
||||
|
||||
public void SetBeginStages(Transform[] newStages)
|
||||
{
|
||||
stages = newStages;
|
||||
stageTarget.DestroyAllChildrens();
|
||||
stages = new Transform[newStages.Length];
|
||||
var selectIndex = UnityEngine.Random.Range(0, stages.Length);
|
||||
for (var i = 0; i < newStages.Length; i++)
|
||||
{
|
||||
stages[i] = Instantiate(newStages[i], stageTarget.position, Quaternion.identity, stageTarget);
|
||||
stages[i].gameObject.SetActive(i == selectIndex);
|
||||
}
|
||||
}
|
||||
|
||||
public void GenerateStage()
|
||||
|
|
@ -19,11 +26,16 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
|
||||
public void ResetStage()
|
||||
{
|
||||
stage.parent.FindAllChildrensComponent<Collider2D>(collider =>
|
||||
stageTarget.FindAllChildrensComponent<Collider2D>(collider =>
|
||||
{
|
||||
transform.SetLocalScale(1f);
|
||||
collider.enabled = true;
|
||||
});
|
||||
var selectIndex = UnityEngine.Random.Range(0, stages.Length);
|
||||
for (var i = 0; i < stages.Length; i++)
|
||||
{
|
||||
stages[i].gameObject.SetActive(i == selectIndex);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -556,4 +556,17 @@ public sealed class ScrollGameStageData
|
|||
public string beginPrefabName;
|
||||
public string randomPrefabName;
|
||||
public ScrollGameDifficulty Difficulty => (ScrollGameDifficulty)difficulty;
|
||||
|
||||
private string[] BeginPrefabName => beginPrefabName.Split(',');
|
||||
private string[] RandomPrefabName => randomPrefabName.Split(',');
|
||||
public Transform[] GetBeginStagePrefabs()
|
||||
{
|
||||
Debug.Log($"{beginPrefabName}, {String.Join("x", BeginPrefabName)}");
|
||||
return BeginPrefabName.Select(x => Resources.Load<Transform>($"ScrollGame/Stages/Stage{x}")).ToArray();
|
||||
}
|
||||
|
||||
public Transform[] GetRandomStagePrefabs()
|
||||
{
|
||||
return BeginPrefabName.Select(x => Resources.Load<Transform>($"ScrollGame/Stages/Stage{x}")).ToArray();
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue