摄像机区域的架构改动
This commit is contained in:
34
Assets/_Game/Scripts/Player/FormConfigSO.cs
Normal file
34
Assets/_Game/Scripts/Player/FormConfigSO.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace BaseGames.Player
|
||||
{
|
||||
/// <summary>
|
||||
/// 形态切换配置 ScriptableObject。
|
||||
/// 单一资产,forms[0..2] = Sky / Earth / Death(架构 05 §18)。
|
||||
/// ⚠️ 只有 1 个 FormConfigSO 资产;FormSO × 3 存于 forms[] 数组中,不分开建立。
|
||||
/// </summary>
|
||||
[CreateAssetMenu(menuName = "BaseGames/Player/FormConfig")]
|
||||
public class FormConfigSO : ScriptableObject
|
||||
{
|
||||
[Header("形态列表 (forms[0]=Sky, forms[1]=Earth, forms[2]=Death)")]
|
||||
public FormSO[] forms;
|
||||
|
||||
/// <summary>按形态类型查找对应 FormSO;找不到返回 null。</summary>
|
||||
public FormSO GetFormByType(FormType type)
|
||||
{
|
||||
if (forms == null) return null;
|
||||
foreach (var f in forms)
|
||||
if (f != null && f.formType == type) return f;
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <summary>返回指定 FormSO 在 forms 数组中的索引;找不到返回 -1。</summary>
|
||||
public int GetFormIndex(FormSO form)
|
||||
{
|
||||
if (forms == null || form == null) return -1;
|
||||
for (int i = 0; i < forms.Length; i++)
|
||||
if (forms[i] == form) return i;
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user