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

260 lines
7.2 KiB
C#

using System;
using Cpp2IlInjected;
using UnityEngine;
// Token: 0x02000180 RID: 384
[Token(Token = "0x2000180")]
public class AttackableObject : MonoBehaviour
{
// Token: 0x0600124D RID: 4685 RVA: 0x00029E94 File Offset: 0x00028094
[Token(Token = "0x600124D")]
[Address(RVA = "0xB68000", Offset = "0xB66800", VA = "0x180B68000", Slot = "4")]
public virtual void Init()
{
SoundEffect component = base.GetComponent<SoundEffect>();
this.soundEffect = component;
SoundEffect soundEffect = this.soundEffect;
int num = 0;
if (soundEffect != num)
{
this.soundEffect.InitData("SoundEffect");
Game.BindStageTimeScale(this.soundEffect);
}
if (this.Type <= AttackableObject.ObjectType.ReplyMana)
{
Shake shake = this.g_Shake;
Transform transform = base.transform;
int num2 = 0;
shake.Start(transform, num2 != 0);
}
Transform hpbarPoint = this.HPBarPoint;
int num3 = 0;
if (!(hpbarPoint != num3))
{
}
GameObject enemyHpPrefab = Game.GetUIEnemyHp().enemyHpPrefab;
Transform transform2 = Game.GetUIEnemyHp().transform;
GameObject gameObject = UnityEngine.Object.Instantiate<GameObject>(enemyHpPrefab, transform2);
this.uiHPBar = gameObject;
GameObject gameObject2 = this.uiHPBar;
int num4 = 0;
if (gameObject2 == num4)
{
Debug.LogError("破壞物件UI錯誤");
}
EnemyHpHandler component2 = this.uiHPBar.GetComponent<EnemyHpHandler>();
this.hpBarInstance = component2;
GameObject gameObject3 = this.uiHPBar;
int num5 = 0;
gameObject3.SetActive(num5 != 0);
float hp = this.HP;
this.g_fHPMax = hp;
this.Id = (int)((ulong)0L);
}
// Token: 0x0600124E RID: 4686 RVA: 0x00029FB4 File Offset: 0x000281B4
[Token(Token = "0x600124E")]
[Address(RVA = "0xB68430", Offset = "0xB66C30", VA = "0x180B68430", Slot = "5")]
protected virtual void OnEnable()
{
if (base.CompareTag("AttackableObject"))
{
Game.sceneManager.AddAttackable(this);
}
SoundEffect soundEffect = this.soundEffect;
int num = 0;
if (soundEffect != num)
{
SoundEffect soundEffect2 = this.soundEffect;
if (soundEffect2.Loop)
{
int num2 = 0;
soundEffect2.Play(num2, 1f, 1f);
}
}
}
// Token: 0x0600124F RID: 4687 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600124F")]
[Address(RVA = "0xB68590", Offset = "0xB66D90", VA = "0x180B68590", Slot = "6")]
protected virtual void Update()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06001250 RID: 4688 RVA: 0x0002A018 File Offset: 0x00028218
[Token(Token = "0x6001250")]
[Address(RVA = "0xB682E0", Offset = "0xB66AE0", VA = "0x180B682E0", Slot = "7")]
protected virtual void OnDisable()
{
if (base.CompareTag("AttackableObject"))
{
Game.sceneManager.RemoveAttackable(this);
}
SoundEffect soundEffect = this.soundEffect;
int num = 0;
if (soundEffect != num && this.soundEffect.GetIsPlaying())
{
this.soundEffect.Stop();
return;
}
}
// Token: 0x06001251 RID: 4689 RVA: 0x0002A074 File Offset: 0x00028274
[Token(Token = "0x6001251")]
[Address(RVA = "0xB682C0", Offset = "0xB66AC0", VA = "0x180B682C0", Slot = "8")]
protected virtual void LateUpdate()
{
this.g_Shake.Update();
}
// Token: 0x06001252 RID: 4690 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6001252")]
[Address(RVA = "0xB67B30", Offset = "0xB66330", VA = "0x180B67B30", Slot = "9")]
public virtual void HitPhysical(AttackData AD)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06001253 RID: 4691 RVA: 0x0002A094 File Offset: 0x00028294
[Token(Token = "0x6001253")]
[Address(RVA = "0xB67A30", Offset = "0xB66230", VA = "0x180B67A30", Slot = "10")]
public virtual void HitMagic(AttackData AD)
{
Shake shake = this.g_Shake;
int num = 0;
ulong num2;
shake.SetRandomShake(0.2f, 6f, 0.6f, (float)num, num2 != 0UL);
AttackableObject.ObjectType type = this.Type;
if (type == AttackableObject.ObjectType.DamageObject || type == AttackableObject.ObjectType.TreasureBox)
{
float hp = this.HP;
this.HP = hp;
}
GameObject gameObject = this.uiHPBar;
int num3 = 0;
if (gameObject != num3)
{
this.uiHPBar.SetActive(true);
this.g_fHPAlpha = 1f;
this.g_fHPShowTime = 10f;
}
}
// Token: 0x06001254 RID: 4692 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6001254")]
[Address(RVA = "0x29E8B0", Offset = "0x29D0B0", VA = "0x18029E8B0", Slot = "11")]
public virtual void SetTimeScale(float fTimeScale)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06001255 RID: 4693 RVA: 0x0002A124 File Offset: 0x00028324
[Token(Token = "0x6001255")]
[Address(RVA = "0xB679E0", Offset = "0xB661E0", VA = "0x180B679E0")]
protected float GetWorldDeltaTime()
{
return Game.GetStageDeltaTime();
}
// Token: 0x06001256 RID: 4694 RVA: 0x0002A138 File Offset: 0x00028338
[Token(Token = "0x6001256")]
[Address(RVA = "0xB67970", Offset = "0xB66170", VA = "0x180B67970")]
public AttackableObject()
{
Shake shake = new Shake();
this.g_Shake = shake;
base..ctor();
}
// Token: 0x04001C66 RID: 7270
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4001C66")]
public AttackableObject.ObjectType Type;
// Token: 0x04001C67 RID: 7271
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4001C67")]
public float HP;
// Token: 0x04001C68 RID: 7272
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4001C68")]
protected float g_fHPMax;
// Token: 0x04001C69 RID: 7273
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x4001C69")]
protected float g_fHPUnderScale = 1f;
// Token: 0x04001C6A RID: 7274
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4001C6A")]
protected float g_fHPAlpha;
// Token: 0x04001C6B RID: 7275
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x4001C6B")]
protected float g_fHPShowTime;
// Token: 0x04001C6C RID: 7276
[Token(Token = "0x4001C6C")]
protected const float g_fHPShowTimeMax = 10f;
// Token: 0x04001C6D RID: 7277
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4001C6D")]
public Transform HPBarPoint;
// Token: 0x04001C6E RID: 7278
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4001C6E")]
protected GameObject uiHPBar;
// Token: 0x04001C6F RID: 7279
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4001C6F")]
protected Shake g_Shake;
// Token: 0x04001C70 RID: 7280
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4001C70")]
protected SoundEffect soundEffect;
// Token: 0x04001C71 RID: 7281
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4001C71")]
protected float g_fDeltaTime;
// Token: 0x04001C72 RID: 7282
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4001C72")]
protected EnemyHpHandler hpBarInstance;
// Token: 0x04001C73 RID: 7283
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4001C73")]
public int Id;
// Token: 0x02000181 RID: 385
[Token(Token = "0x2000181")]
public enum ObjectType
{
// Token: 0x04001C75 RID: 7285
[Token(Token = "0x4001C75")]
Null,
// Token: 0x04001C76 RID: 7286
[Token(Token = "0x4001C76")]
ReplyMana,
// Token: 0x04001C77 RID: 7287
[Token(Token = "0x4001C77")]
SwitchDevice,
// Token: 0x04001C78 RID: 7288
[Token(Token = "0x4001C78")]
DamageObject,
// Token: 0x04001C79 RID: 7289
[Token(Token = "0x4001C79")]
TreasureBox
}
}