BREAKING CHANGE: Toggle 0.2.0
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
using System;
|
||||
using Syntriax.Modules.ToggleState;
|
||||
using Syntriax.Modules.State;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Syntriax.Modules.Movement
|
||||
{
|
||||
public abstract class MovementBase : MonoBehaviour, IMovement
|
||||
{
|
||||
protected IToggleState toggleState = null;
|
||||
protected IStateEnable stateEnable = null;
|
||||
protected IMovementController movementController = null;
|
||||
|
||||
public float BaseSpeed { get; set; } = 1f;
|
||||
@@ -27,8 +27,6 @@ namespace Syntriax.Modules.Movement
|
||||
}
|
||||
}
|
||||
|
||||
public IToggleState ToggleState { get; protected set; } = null;
|
||||
|
||||
/// <inheritdoc/>
|
||||
public abstract void ApplyMovement();
|
||||
|
||||
@@ -46,7 +44,7 @@ namespace Syntriax.Modules.Movement
|
||||
|
||||
protected virtual void Start()
|
||||
{
|
||||
toggleState = GetComponent<IToggleState>();
|
||||
stateEnable = GetComponent<IStateEnable>();
|
||||
movementController = GetComponent<IMovementController>();
|
||||
|
||||
movementController.OnMovementActivated += OnActivated;
|
||||
|
@@ -1,15 +1,15 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Syntriax.Modules.ToggleState;
|
||||
using Syntriax.Modules.State;
|
||||
|
||||
namespace Syntriax.Modules.Movement
|
||||
{
|
||||
public interface IMovementController
|
||||
{
|
||||
/// <summary>
|
||||
/// Member <see cref="IToggleState"/> to switch on or off
|
||||
/// Member <see cref="IStateEnable"/> to switch on or off
|
||||
/// </summary>
|
||||
IToggleState ToggleStateMember { get; }
|
||||
IStateEnable StateEnableMember { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Currently active <see cref="IMovement"/>
|
||||
|
@@ -1,6 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Syntriax.Modules.ToggleState;
|
||||
using Syntriax.Modules.State;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Syntriax.Modules.Movement
|
||||
@@ -31,13 +31,13 @@ namespace Syntriax.Modules.Movement
|
||||
}
|
||||
}
|
||||
|
||||
private bool areBothToggleStatesToggled => ToggleStateMember.IsToggledNullChecked() && toggleStateOnGameObject.IsToggledNullChecked();
|
||||
private bool areBothStateEnablesToggled => StateEnableMember.IsEnabledNullChecked() && stateEnableOnGameObject.IsEnabledNullChecked();
|
||||
|
||||
public List<IMovement> Movements { get; protected set; } = new List<IMovement>(32);
|
||||
|
||||
public IToggleState ToggleStateMember { get; protected set; } = new ToggleStateMember(true);
|
||||
public IStateEnable StateEnableMember { get; protected set; } = new StateEnableMember(true);
|
||||
|
||||
protected IToggleState toggleStateOnGameObject = null;
|
||||
protected IStateEnable stateEnableOnGameObject = null;
|
||||
|
||||
protected virtual void Start()
|
||||
{
|
||||
@@ -45,16 +45,16 @@ namespace Syntriax.Modules.Movement
|
||||
gameObject.AddComponent<DefaultMovement>();
|
||||
|
||||
RecacheMovements();
|
||||
toggleStateOnGameObject = GetComponent<IToggleState>();
|
||||
stateEnableOnGameObject = GetComponent<IStateEnable>();
|
||||
|
||||
toggleStateOnGameObject.OnToggleStateChanged += (_) => InvokeOnMoveAction();
|
||||
ToggleStateMember.OnToggleStateChanged += (_) => InvokeOnMoveAction();
|
||||
stateEnableOnGameObject.OnEnabledChanged += (_) => InvokeOnMoveAction();
|
||||
StateEnableMember.OnEnabledChanged += (_) => InvokeOnMoveAction();
|
||||
OnMovementActivated += (newMovement) => newMovement.Move(lastMove);
|
||||
}
|
||||
|
||||
protected virtual void FixedUpdate()
|
||||
{
|
||||
if (!areBothToggleStatesToggled)
|
||||
if (!areBothStateEnablesToggled)
|
||||
return;
|
||||
|
||||
ActiveMovement?.ApplyMovement();
|
||||
@@ -96,7 +96,7 @@ namespace Syntriax.Modules.Movement
|
||||
|
||||
private void InvokeOnMoveAction()
|
||||
{
|
||||
if (!areBothToggleStatesToggled)
|
||||
if (!areBothStateEnablesToggled)
|
||||
return;
|
||||
|
||||
OnMoveCalled?.Invoke(lastMove.x, lastMove.y, lastMove.z);
|
||||
|
Reference in New Issue
Block a user