using System; using System.Collections.Generic; using UnityEngine; public static class scr_Models { #region -- Player public enum PlayerStance { Stand, Crouch } // a class containing various settings for the player [Serializable] // so it can be viewed in Unity's "Inspector" public class PlayerSettingsModel { [Header("View Settings")] public float ViewXSensitivity; public float ViewYSensitivity; public bool ViewXInverted; public bool ViewYInverted; [Header("Movement Settings")] public float WalkingForwardSpeed; public float WalkingBackwardSpeed; public float WalkingStrafeSpeed; [ReadOnly] public Vector3 CurrentMovementSpeed; public float MovementSmoothing; // smoothing that occurs to your movement when you are grounded [Header("Jumping Settings")] public float JumpingHeight; // how high you jump public float JumpingFalloff; // how long it takes for us to reach our peak and then start falling down public float FallingSmoothing; // smoothing that occurs to your movement when you aren't grounded [Header("Speed Effectors")] [ReadOnly] public float SpeedEffector = 1; // the speed effector used for basic movement public float CrouchSpeedEffector; // the speed effector used for crouching public float FallingSpeedEffector; // the speed effector used when not grounded } [Serializable] public class CharacterStance { public float CameraHeight; // creates a float variable called CameraHeight in the class public CapsuleCollider StanceCollider; // creates a CapsuleCollider variable called StanceCollider in the class } #endregion #region -- Weapons [Serializable] public class WeaponSettingsModel { [Header("Sway")] public float SwayAmount; public bool SwayYInverted; public bool SwayXInverted; public float SwaySmoothing; public float SwayResetSmoothing; public float SwayClampX; public float SwayClampY; } #endregion }