[#13] uniezależnienie modułu Movement od innych
This commit is contained in:
@@ -2,9 +2,6 @@
|
||||
using System.Collections;
|
||||
using RPGCore.Movement.ObjectModules.UnitMovement.Events;
|
||||
using RPGCore.ObjectModules.ActionObjectModule;
|
||||
using RPGCore.ObjectModules.EventObjectModule;
|
||||
using RPGCore.StatusEffect.ObjectModules.StatusObjectModule;
|
||||
using RPGCoreCommon.Settings;
|
||||
using UnityEngine;
|
||||
|
||||
namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
||||
@@ -13,8 +10,6 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
||||
{
|
||||
private readonly Func<Vector3> _directionGetter;
|
||||
|
||||
private StatusDefinitionSO _runStatusDefinitionSO;
|
||||
private StatusModule _unitStatus;
|
||||
private UnitMovementModule _unitMovement;
|
||||
|
||||
public DirectionMoveAction(Func<Vector3> directionGetter)
|
||||
@@ -25,14 +20,12 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
||||
public override void CanDoIt()
|
||||
{
|
||||
Check(
|
||||
unit.GetComponent<StatusModule>().IsControllable(),
|
||||
unit.GetComponent<ActionModule>().isControllable,
|
||||
UnitIsBusyMessage);
|
||||
}
|
||||
|
||||
protected override void OnDoIt()
|
||||
{
|
||||
_runStatusDefinitionSO = SettingsManager.Get<MovementSettings>().runStatusDefinitionSO;
|
||||
_unitStatus = unit.GetComponent<StatusModule>();
|
||||
_unitMovement = unit.GetComponent<UnitMovementModule>();
|
||||
|
||||
var moveStartEvent = new MoveStartEvent{ unit = unit };
|
||||
@@ -56,7 +49,7 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
||||
protected override void OnEndIt()
|
||||
{
|
||||
_unitMovement.moveInput = Vector2.zero;
|
||||
_unitStatus.Remove(_runStatusDefinitionSO);
|
||||
_unitMovement.isSprinting = false;
|
||||
unit.events.Invoke(new MoveEndEvent{ unit = unit });
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user