Files
NobetaSource/Cpp2IL/Assembly-CSharp/DoorSwitch.cs
2023-09-06 22:09:22 +02:00

223 lines
5.8 KiB
C#

using System;
using Cpp2IlInjected;
using UnityEngine;
// Token: 0x0200016C RID: 364
[Token(Token = "0x200016C")]
public class DoorSwitch : PassiveEvent
{
// Token: 0x060011F6 RID: 4598 RVA: 0x0002907C File Offset: 0x0002727C
[Token(Token = "0x60011F6")]
[Address(RVA = "0xA86D80", Offset = "0xA85580", VA = "0x180A86D80", Slot = "4")]
protected override void Start()
{
base..ctor();
BoxCollider bc = this.BC;
int num = 0;
if (!(bc == num))
{
this.BC.isTrigger = true;
}
Debug.LogError("找不到碰撞");
Animator ani = this.Ani;
int num2 = 0;
if (ani == num2)
{
Debug.LogError("找不到動畫");
}
GameObject seobject = this.SEObject;
Transform transform = base.transform;
SoundEffect soundEffectOfPrefabs = Common.GetSoundEffectOfPrefabs(seobject, transform);
this.g_SE = soundEffectOfPrefabs;
this.g_fReciprocal = 2f;
}
// Token: 0x060011F7 RID: 4599 RVA: 0x0002910C File Offset: 0x0002730C
[Token(Token = "0x60011F7")]
[Address(RVA = "0xA86F70", Offset = "0xA85770", VA = "0x180A86F70", Slot = "6")]
protected override void Update()
{
base.Update();
if (!this.g_bClose && !this.BC.enabled)
{
float num = this.g_fReciprocal;
int num2 = 0;
if (num > (float)num2)
{
this.g_fReciprocal = num;
SceneEvent[] openEvent = this.OpenEvent;
int num3 = 0;
if (openEvent != 0 && num3 < openEvent.Length)
{
SceneEvent sceneEvent = openEvent[num3];
int num4 = 0;
if (sceneEvent != num4)
{
this.OpenEvent[num3].OpenEvent();
}
SceneEvent[] openEvent2 = this.OpenEvent;
num3++;
}
SceneEvent[] releaseEvent = this.ReleaseEvent;
if (releaseEvent != 0 && num3 < releaseEvent.Length)
{
SceneEvent sceneEvent2 = releaseEvent[num3];
int num5 = 0;
if (sceneEvent2 != num5)
{
this.ReleaseEvent[num3].ReleaseEvent();
}
SceneEvent[] releaseEvent2 = this.ReleaseEvent;
num3++;
while (releaseEvent2 != 0)
{
}
}
OpenDoor[] door = this.Door;
if (door != 0 && num3 < door.Length)
{
OpenDoor openDoor = door[num3];
int num6 = 0;
if (openDoor != num6)
{
this.Door[num3].SwitchOnDoor();
}
OpenDoor[] door2 = this.Door;
num3++;
while (door2 != 0)
{
}
}
this.g_bClose = true;
}
}
}
// Token: 0x060011F8 RID: 4600 RVA: 0x00029250 File Offset: 0x00027450
[Token(Token = "0x60011F8")]
[Address(RVA = "0xA86F00", Offset = "0xA85700", VA = "0x180A86F00")]
public void SwitchOn()
{
BoxCollider bc = this.BC;
int num = 0;
bc.enabled = num != 0;
Animator ani = this.Ani;
int num2 = 0;
ani.CrossFade("SwitchOn", 0.025f, num2);
}
// Token: 0x060011F9 RID: 4601 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60011F9")]
[Address(RVA = "0xA86A10", Offset = "0xA85210", VA = "0x180A86A10")]
public void SaveSwitchOn()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060011FA RID: 4602 RVA: 0x00029290 File Offset: 0x00027490
[Token(Token = "0x60011FA")]
[Address(RVA = "0xA86780", Offset = "0xA84F80", VA = "0x180A86780")]
public void AniPlaySwitchOnSE()
{
SoundEffect soundEffect = this.g_SE;
int num = 0;
if (soundEffect != num)
{
this.g_SE.PlayRandom(1f, 1f);
}
}
// Token: 0x060011FB RID: 4603 RVA: 0x000292CC File Offset: 0x000274CC
[Token(Token = "0x60011FB")]
[Address(RVA = "0xA86970", Offset = "0xA85170", VA = "0x180A86970")]
public void ResetSwitch()
{
BoxCollider bc = this.BC;
this.g_fReciprocal = 2f;
bc.enabled = true;
if (base.gameObject.activeInHierarchy)
{
Animator ani = this.Ani;
int num = 0;
ani.CrossFade("Idle", 1f, num);
}
this.g_bClose = false;
}
// Token: 0x060011FC RID: 4604 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60011FC")]
[Address(RVA = "0xA86810", Offset = "0xA85010", VA = "0x180A86810")]
public void Close()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060011FD RID: 4605 RVA: 0x00029328 File Offset: 0x00027528
[Token(Token = "0x60011FD")]
[Address(RVA = "0xA86D60", Offset = "0xA85560", VA = "0x180A86D60", Slot = "7")]
public override void SetTimeScale(float fScaleTime)
{
this.Ani.speed = fScaleTime;
}
// Token: 0x060011FE RID: 4606 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x60011FE")]
[Address(RVA = "0xA868C0", Offset = "0xA850C0", VA = "0x180A868C0")]
private void OnEnable()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060011FF RID: 4607 RVA: 0x00029348 File Offset: 0x00027548
[Token(Token = "0x60011FF")]
[Address(RVA = "0x41E600", Offset = "0x41CE00", VA = "0x18041E600")]
public DoorSwitch()
{
}
// Token: 0x04001BD9 RID: 7129
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4001BD9")]
public Animator Ani;
// Token: 0x04001BDA RID: 7130
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4001BDA")]
public BoxCollider BC;
// Token: 0x04001BDB RID: 7131
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4001BDB")]
public GameObject SEObject;
// Token: 0x04001BDC RID: 7132
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4001BDC")]
public SceneEvent[] OpenEvent;
// Token: 0x04001BDD RID: 7133
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4001BDD")]
public SceneEvent[] ReleaseEvent;
// Token: 0x04001BDE RID: 7134
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4001BDE")]
public OpenDoor[] Door;
// Token: 0x04001BDF RID: 7135
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4001BDF")]
private float g_fReciprocal;
// Token: 0x04001BE0 RID: 7136
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4001BE0")]
private SoundEffect g_SE;
// Token: 0x04001BE1 RID: 7137
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4001BE1")]
private bool g_bClose;
}