63 lines
2.2 KiB
C#
63 lines
2.2 KiB
C#
|
using System;
|
|||
|
using UnityEngine;
|
|||
|
|
|||
|
namespace BlueWater.Enemies.Bosses.TitanSlime
|
|||
|
{
|
|||
|
[Serializable]
|
|||
|
public class TitanSlimeState
|
|||
|
{
|
|||
|
[field: SerializeField]
|
|||
|
public int Level { get; private set; }
|
|||
|
|
|||
|
[field: SerializeField]
|
|||
|
public float Size { get; private set; }
|
|||
|
|
|||
|
[field: SerializeField]
|
|||
|
public int MaxHp { get; private set; }
|
|||
|
|
|||
|
[field: SerializeField]
|
|||
|
public float AnimationLength { get; private set; }
|
|||
|
|
|||
|
[field: SerializeField]
|
|||
|
public float ViewRange { get; private set; }
|
|||
|
|
|||
|
[field: SerializeField]
|
|||
|
public Vector2 RandomCooldown { get; private set; }
|
|||
|
|
|||
|
[field: SerializeField]
|
|||
|
public bool HasRabbit { get; private set; }
|
|||
|
|
|||
|
[field: SerializeField]
|
|||
|
public float JumpCameraShakingPower { get; private set; }
|
|||
|
|
|||
|
[field: SerializeField]
|
|||
|
public float JumpCameraShakingDuration { get; private set; }
|
|||
|
|
|||
|
public TitanSlimeState(int level, float size, int maxHp, float animationLength, float viewRange, Vector2 randomCooldown,
|
|||
|
bool hasRabbit, float jumpCameraShakingPower, float jumpCameraShakingDuration)
|
|||
|
{
|
|||
|
Level = level;
|
|||
|
Size = size;
|
|||
|
MaxHp = maxHp;
|
|||
|
AnimationLength = animationLength;
|
|||
|
RandomCooldown = randomCooldown;
|
|||
|
ViewRange = viewRange;
|
|||
|
HasRabbit = hasRabbit;
|
|||
|
JumpCameraShakingPower = JumpCameraShakingPower;
|
|||
|
JumpCameraShakingDuration = JumpCameraShakingDuration;
|
|||
|
}
|
|||
|
|
|||
|
public TitanSlimeState(TitanSlimeState titanSlimeState, bool hasRabbit = default)
|
|||
|
{
|
|||
|
Level = titanSlimeState.Level;
|
|||
|
Size = titanSlimeState.Size;
|
|||
|
MaxHp = titanSlimeState.MaxHp;
|
|||
|
AnimationLength = titanSlimeState.AnimationLength;
|
|||
|
ViewRange = titanSlimeState.ViewRange;
|
|||
|
RandomCooldown = titanSlimeState.RandomCooldown;
|
|||
|
HasRabbit = hasRabbit == default ? titanSlimeState.HasRabbit : hasRabbit;
|
|||
|
JumpCameraShakingPower = titanSlimeState.JumpCameraShakingPower;
|
|||
|
JumpCameraShakingDuration = titanSlimeState.JumpCameraShakingDuration;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|