r2mods/ilspy_dump/ror2_csproj/RoR2/GlobalEventMethodLibrary.cs

86 lines
1.6 KiB
C#

using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.Playables;
namespace RoR2;
[CreateAssetMenu(menuName = "RoR2/Singletons/GlobalEventMethodLibrary")]
public class GlobalEventMethodLibrary : ScriptableObject
{
public void RunAdvanceStageServer(SceneDef nextScene)
{
if (NetworkServer.active && (bool)Run.instance)
{
Run.instance.AdvanceStage(nextScene);
}
}
public void RunBeginGameOverServer(GameEndingDef endingDef)
{
if (NetworkServer.active && (bool)Run.instance)
{
Run.instance.BeginGameOver(endingDef);
}
}
public void LogMessage(string message)
{
}
public void ForcePlayableDirectorFinish(PlayableDirector playableDirector)
{
playableDirector.time = playableDirector.duration;
}
public new void DestroyObject(Object obj)
{
Object.Destroy(obj);
}
public void DisableAllSiblings(Transform transform)
{
if (!transform)
{
return;
}
Transform parent = transform.parent;
if (!parent)
{
return;
}
int i = 0;
for (int childCount = parent.childCount; i < childCount; i++)
{
Transform child = parent.GetChild(i);
if ((bool)child && child != transform)
{
child.gameObject.SetActive(value: false);
}
}
}
public void DisableAllSiblings(GameObject gameObject)
{
if ((bool)gameObject)
{
DisableAllSiblings(gameObject.transform);
}
}
public void ActivateGameObjectIfServer(GameObject gameObject)
{
if ((bool)gameObject && NetworkServer.active)
{
gameObject.SetActive(value: true);
}
}
public void DeactivateGameObjectIfServer(GameObject gameObject)
{
if ((bool)gameObject && NetworkServer.active)
{
gameObject.SetActive(value: false);
}
}
}