Files
BH3/Assets/Scripts/Assembly-CSharp/MoleMole/MainMenu/ConfigAtmosphereCommon.cs
2025-08-13 09:26:42 +08:00

101 lines
1.6 KiB
C#

using System;
using UnityEngine;
namespace MoleMole.MainMenu
{
[Serializable]
public class ConfigAtmosphereCommon
{
[Range(0f, 100f)]
public float PlaybackSpeed;
[Tooltip("The max time (in second) in which transit from a frame to next ")]
public float TransitionTime;
public ConfigCloudScene[] SceneList;
public Texture Tex;
public Texture SecondTex;
private int _sceneId;
public int SceneId
{
get
{
return _sceneId;
}
set
{
_sceneId = value;
}
}
public string ScneneName
{
get
{
if (SceneList.Length == 0)
{
return string.Empty;
}
return SceneList[_sceneId].Name;
}
}
public string[] SceneNameList
{
get
{
string[] array = new string[SceneList.Length];
for (int i = 0; i < array.Length; i++)
{
array[i] = SceneList[i].Name;
}
return array;
}
}
public void InitAfterLoad()
{
}
public void UpdateSceneRandomly()
{
if (SceneList.Length != 0)
{
int[] array = new int[SceneList.Length];
for (int i = 0; i < SceneList.Length; i++)
{
array[i] = SceneList[i].ChooseRate;
}
_sceneId = ConfigAtmosphereUtil.ChooseRandomly(array);
}
}
public int GetSceneIdRandomly()
{
if (SceneList.Length == 0)
{
return 0;
}
int[] array = new int[SceneList.Length];
for (int i = 0; i < SceneList.Length; i++)
{
array[i] = SceneList[i].ChooseRate;
}
return ConfigAtmosphereUtil.ChooseRandomly(array);
}
public void UpdateSceneNameNext()
{
_sceneId++;
if (_sceneId >= SceneList.Length)
{
_sceneId = 0;
}
}
}
}