[#13] uniezależnienie modułu Movement od innych
This commit is contained in:
@@ -1,13 +0,0 @@
|
|||||||
using RPGCore.StatusEffect.ObjectModules.StatusObjectModule;
|
|
||||||
using RPGCoreCommon.Settings;
|
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
namespace RPGCore.Movement
|
|
||||||
{
|
|
||||||
[CustomSettings("RPG Core/Movement")]
|
|
||||||
public class MovementSettings : CustomSettingsSO
|
|
||||||
{
|
|
||||||
[Header("Statuses Definitions")]
|
|
||||||
public StatusDefinitionSO runStatusDefinitionSO;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: ed5576b120bd480796129f99e38965a5
|
|
||||||
timeCreated: 1772991814
|
|
||||||
@@ -2,9 +2,6 @@
|
|||||||
using System.Collections;
|
using System.Collections;
|
||||||
using RPGCore.Movement.ObjectModules.UnitMovement.Events;
|
using RPGCore.Movement.ObjectModules.UnitMovement.Events;
|
||||||
using RPGCore.ObjectModules.ActionObjectModule;
|
using RPGCore.ObjectModules.ActionObjectModule;
|
||||||
using RPGCore.ObjectModules.EventObjectModule;
|
|
||||||
using RPGCore.StatusEffect.ObjectModules.StatusObjectModule;
|
|
||||||
using RPGCoreCommon.Settings;
|
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
||||||
@@ -13,8 +10,6 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
|||||||
{
|
{
|
||||||
private readonly Func<Vector3> _directionGetter;
|
private readonly Func<Vector3> _directionGetter;
|
||||||
|
|
||||||
private StatusDefinitionSO _runStatusDefinitionSO;
|
|
||||||
private StatusModule _unitStatus;
|
|
||||||
private UnitMovementModule _unitMovement;
|
private UnitMovementModule _unitMovement;
|
||||||
|
|
||||||
public DirectionMoveAction(Func<Vector3> directionGetter)
|
public DirectionMoveAction(Func<Vector3> directionGetter)
|
||||||
@@ -25,14 +20,12 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
|||||||
public override void CanDoIt()
|
public override void CanDoIt()
|
||||||
{
|
{
|
||||||
Check(
|
Check(
|
||||||
unit.GetComponent<StatusModule>().IsControllable(),
|
unit.GetComponent<ActionModule>().isControllable,
|
||||||
UnitIsBusyMessage);
|
UnitIsBusyMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void OnDoIt()
|
protected override void OnDoIt()
|
||||||
{
|
{
|
||||||
_runStatusDefinitionSO = SettingsManager.Get<MovementSettings>().runStatusDefinitionSO;
|
|
||||||
_unitStatus = unit.GetComponent<StatusModule>();
|
|
||||||
_unitMovement = unit.GetComponent<UnitMovementModule>();
|
_unitMovement = unit.GetComponent<UnitMovementModule>();
|
||||||
|
|
||||||
var moveStartEvent = new MoveStartEvent{ unit = unit };
|
var moveStartEvent = new MoveStartEvent{ unit = unit };
|
||||||
@@ -56,7 +49,7 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
|||||||
protected override void OnEndIt()
|
protected override void OnEndIt()
|
||||||
{
|
{
|
||||||
_unitMovement.moveInput = Vector2.zero;
|
_unitMovement.moveInput = Vector2.zero;
|
||||||
_unitStatus.Remove(_runStatusDefinitionSO);
|
_unitMovement.isSprinting = false;
|
||||||
unit.events.Invoke(new MoveEndEvent{ unit = unit });
|
unit.events.Invoke(new MoveEndEvent{ unit = unit });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
using RPGCore.Movement.ObjectModules.UnitMovement.Events;
|
using RPGCore.Movement.ObjectModules.UnitMovement.Events;
|
||||||
using RPGCore.ObjectModules.ActionObjectModule;
|
using RPGCore.ObjectModules.ActionObjectModule;
|
||||||
using RPGCore.ObjectModules.EventObjectModule;
|
|
||||||
using RPGCore.StatusEffect.ObjectModules.StatusObjectModule;
|
|
||||||
using RPGCoreCommon.Helpers;
|
using RPGCoreCommon.Helpers;
|
||||||
|
|
||||||
namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
||||||
@@ -11,7 +9,7 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
|||||||
public override void CanDoIt()
|
public override void CanDoIt()
|
||||||
{
|
{
|
||||||
Check(
|
Check(
|
||||||
unit.GetComponent<StatusModule>().IsControllable(),
|
unit.GetComponent<ActionModule>().isControllable,
|
||||||
UnitIsBusyMessage);
|
UnitIsBusyMessage);
|
||||||
Check(
|
Check(
|
||||||
unit.GetComponent<UnitMovementModule>().isOnGround,
|
unit.GetComponent<UnitMovementModule>().isOnGround,
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
using System.Collections;
|
using System.Collections;
|
||||||
using RPGCore.Movement.ObjectModules.UnitMovement.Events;
|
using RPGCore.Movement.ObjectModules.UnitMovement.Events;
|
||||||
using RPGCore.ObjectModules.ActionObjectModule;
|
using RPGCore.ObjectModules.ActionObjectModule;
|
||||||
using RPGCore.ObjectModules.EventObjectModule;
|
|
||||||
using RPGCore.StatusEffect.ObjectModules.StatusObjectModule;
|
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.AI;
|
using UnityEngine.AI;
|
||||||
|
|
||||||
@@ -22,7 +20,7 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
|||||||
public override void CanDoIt()
|
public override void CanDoIt()
|
||||||
{
|
{
|
||||||
Check(
|
Check(
|
||||||
unit.GetComponent<StatusModule>().IsControllable(),
|
unit.GetComponent<ActionModule>().isControllable,
|
||||||
UnitIsBusyMessage);
|
UnitIsBusyMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
using System.Collections;
|
using System.Collections;
|
||||||
using RPGCore.ObjectModules.ActionObjectModule;
|
using RPGCore.ObjectModules.ActionObjectModule;
|
||||||
using RPGCore.StatusEffect.ObjectModules.StatusObjectModule;
|
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
||||||
@@ -50,7 +49,7 @@ namespace RPGCore.Movement.ObjectModules.UnitMovement.Actions
|
|||||||
public override void CanDoIt()
|
public override void CanDoIt()
|
||||||
{
|
{
|
||||||
Check(
|
Check(
|
||||||
_isForced || unit.GetComponent<StatusModule>().IsControllable(),
|
_isForced || unit.GetComponent<ActionModule>().isControllable,
|
||||||
UnitIsBusyMessage);
|
UnitIsBusyMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3,10 +3,8 @@
|
|||||||
"rootNamespace": "RPGCore.Movement",
|
"rootNamespace": "RPGCore.Movement",
|
||||||
"references": [
|
"references": [
|
||||||
"RPGCore",
|
"RPGCore",
|
||||||
"RPGCore.StatusEffect",
|
|
||||||
"RPGCoreCommon.Settings",
|
"RPGCoreCommon.Settings",
|
||||||
"RPGCoreCommon.Helpers",
|
"RPGCoreCommon.Helpers",
|
||||||
"RPGCoreCommon.DynamicValues",
|
|
||||||
"Unity.InputSystem"
|
"Unity.InputSystem"
|
||||||
],
|
],
|
||||||
"includePlatforms": [],
|
"includePlatforms": [],
|
||||||
|
|||||||
Reference in New Issue
Block a user