2021-03-17 19:04:31 +01:00
|
|
|
using System;
|
|
|
|
using System.Collections;
|
|
|
|
using System.Collections.Generic;
|
2021-03-17 19:37:56 +01:00
|
|
|
using DG.Tweening;
|
2021-03-17 19:04:31 +01:00
|
|
|
using Ktyl.Util;
|
2021-03-24 17:54:34 +01:00
|
|
|
using TMPro;
|
2021-03-17 19:04:31 +01:00
|
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
[CreateAssetMenu(menuName = "KernelPanic/Traps/Settings")]
|
|
|
|
public class TrapSettings : ScriptableObject
|
|
|
|
{
|
2021-03-24 17:54:34 +01:00
|
|
|
public float ObjectTimeScale => _objectTimeScale;
|
|
|
|
[SerializeField] private SerialFloat _objectTimeScale;
|
|
|
|
|
2021-03-17 19:04:31 +01:00
|
|
|
[Serializable]
|
|
|
|
public struct FallawayFloorSettings
|
|
|
|
{
|
2021-03-17 19:31:33 +01:00
|
|
|
public string FMODEvent => _fmodEvent;
|
|
|
|
[SerializeField] private string _fmodEvent;
|
|
|
|
|
|
|
|
[Header("Platform respawning")]
|
2021-03-17 19:04:31 +01:00
|
|
|
// how long it takes for falling platforms to respawn while the player is safe
|
|
|
|
[SerializeField] private SerialFloat _respawnTime;
|
|
|
|
// how long the player has currently been safe for. -1 while the player is not
|
|
|
|
// in a safe zone
|
|
|
|
[SerializeField] private SerialFloat _safeTime;
|
|
|
|
public bool CanRespawn => _safeTime > _respawnTime;
|
2021-03-17 19:31:33 +01:00
|
|
|
|
|
|
|
public float ShakeStrength => _shakeStrength;
|
|
|
|
[Header("Animation")]
|
|
|
|
[SerializeField] private float _shakeStrength;
|
2021-03-17 19:37:56 +01:00
|
|
|
|
|
|
|
public Ease PopInEase => _popInEase;
|
|
|
|
[SerializeField] private Ease _popInEase;
|
2021-03-17 19:04:31 +01:00
|
|
|
}
|
|
|
|
public FallawayFloorSettings FallawayFloor => _fallawayFloor;
|
|
|
|
[SerializeField] private FallawayFloorSettings _fallawayFloor;
|
2021-03-24 17:54:34 +01:00
|
|
|
|
2021-03-18 18:25:34 +01:00
|
|
|
[Serializable]
|
|
|
|
public struct ArrowWallSettings
|
|
|
|
{
|
|
|
|
public float delay;
|
|
|
|
}
|
|
|
|
|
|
|
|
public ArrowWallSettings ArrowWall => _arrowWall;
|
|
|
|
[SerializeField] private ArrowWallSettings _arrowWall;
|
2021-03-17 19:04:31 +01:00
|
|
|
}
|