revival/game/Assets/Scripts/Player/PlayerMovementSettings.cs

72 lines
2.1 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Serialization;
[CreateAssetMenu(fileName = "PlayerMovementSettings.asset", menuName = "KernelPanic/Player/MovementSettings")]
public class PlayerMovementSettings : ScriptableObject
{
public float UpGravity => _upGravity;
public float DownGravity => _downGravity;
public float GroundedYVelocity => _groundedYVelocity;
public float BaseMovementForce => _baseMovementForce;
public float JumpHeight => _jumpHeight;
public float CoyoteTime => _coyoteTime;
public float BoostForce => _boostForce;
public float BoostTime => _boostTime;
public float BlinkDistance => _blinkDistance;
public float BlinkVelocity => _blinkVelocity;
public float MinBoostVelocity => _minBoostVelocity;
public float DragCoefficient => _dragCoefficient;
public float BoostDragCoefficient => _boostDragCoefficient;
public float AirDragCoefficient => _airDragCoefficient;
public float StillDragCoefficient => _stillDragCoefficient;
public float LookSpeed => _lookSpeed;
[Header( "Look" )]
[SerializeField]
private float _lookSpeed;
[Header("Gravity")]
[SerializeField]
private float _upGravity;
[SerializeField]
private float _downGravity;
[SerializeField]
private float _groundedYVelocity;
[Header("Movement")]
[SerializeField]
private float _baseMovementForce;
[Header("Jump")]
[SerializeField]
private float _jumpHeight;
[SerializeField]
private float _coyoteTime;
[Header("Boost")]
[SerializeField]
private float _boostForce;
[SerializeField]
private float _boostTime;
[SerializeField]
private float _minBoostVelocity;
[Header( "Blink" )]
[SerializeField]
private float _blinkDistance;
[SerializeField]
private float _blinkVelocity;
[Header("Drag")]
[SerializeField]
private float _dragCoefficient;
[SerializeField]
private float _boostDragCoefficient;
[SerializeField]
private float _airDragCoefficient;
[SerializeField]
private float _stillDragCoefficient;
}