using System; using System.Collections.Generic; using System.Diagnostics.Contracts; using BITKit; using Unity.Mathematics; namespace Project.B.CharacterController { public interface IPlayerCharacterController { float3 MoveInput { get; } float2 InputView { get; set; } event Func OnInputViewFactor; ICharacterController CharacterController { get; } IDictionary AdditiveCameraQuaternion { get; } IDictionary ZoomFactor { get; } ValidHandle AllowTpsCamera { get; } ValidHandle AllowRun { get; } ValidHandle AllowSprint { get; } ValidHandle DisableModel { get; } ValidHandle ForceRootMotion { get; } ValidHandle DisableStateTransition { get; } ValidHandle DisableCollision { get; } ValidHandle AllowOverride { get; } void CancelRun(); void CancelSprint(); int Stamina { get; set; } event Action OnStaminaChanged; } }