using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
|
[CreateAssetMenu(menuName = "Config/CreateRoleScriptableObject")]
|
public class CreateRoleScriptableObject : ScriptableObject
|
{
|
[SerializeField] CameraParams m_CameraParams;
|
public CameraParams cameraParams { get { return m_CameraParams; } }
|
|
[SerializeField] RoleShowParams m_Warrior;
|
public RoleShowParams warrior { get { return m_Warrior; } }
|
|
[SerializeField] RoleShowParams m_Magic;
|
public RoleShowParams magic { get { return m_Magic; } }
|
|
static CreateRoleScriptableObject config;
|
public static CameraParams GetCameraParams()
|
{
|
if (config == null)
|
{
|
config = BuiltInLoader.LoadScriptableObject<CreateRoleScriptableObject>("CreateRoleConfig");
|
}
|
|
return config.cameraParams;
|
}
|
|
public static RoleShowParams GetJobParams(int job)
|
{
|
if (config == null)
|
{
|
config = BuiltInLoader.LoadScriptableObject<CreateRoleScriptableObject>("CreateRoleConfig");
|
}
|
|
switch (job)
|
{
|
case 1:
|
return config.warrior;
|
case 2:
|
return config.magic;
|
default:
|
return default(RoleShowParams);
|
}
|
}
|
|
[System.Serializable]
|
public struct CameraParams
|
{
|
public string prefabName;
|
public string warriorToMagic;
|
public float warriorToMagicTime;
|
public string magicToWarrior;
|
public float magicToWarriorTime;
|
}
|
|
[System.Serializable]
|
public struct RoleShowParams
|
{
|
public int job;
|
public float scale;
|
public string platformPrefabName;
|
public Vector3 platformPosition;
|
public Vector3 platformScale;
|
public EnterPictureType enterPictureType;
|
public string animation;
|
public float animationDuration;
|
public int[] persistentEffects;
|
public int showEffect;
|
}
|
|
public enum EnterPictureType
|
{
|
Stand,
|
OutIn,
|
}
|
|
}
|