core/player/PlayerIsoMovement.cs
public class PlayerIsoMovement : NpcMovement {
[Property] public BasePlayer Owner {get; set;}
[Property] public Vector3 Hovered {get; set;}
[Property, ReadOnly] public IsoWaypoint Waypoint {get; set;}
protected override void OnAwake() {
Waypoint = Scene.CreateObject().Components.Create<IsoWaypoint>();
Waypoint.GameObject.SetParent(Owner.GameObject);
base.OnAwake();
}
protected override void OnUpdate() {}
public void Update() {
Hovered = Grid.Snap(Owner.IsoCamera.MouseTarget());
Waypoint.WorldPosition = Hovered;
if (Input.Pressed("attack1") && Owner.Mouse.TargetLayer != PlayerMouse.Layer.Interface && Owner.Mouse.InteractMode == PlayerMouse.Mode.Move && !Input.Down("drag_camera")) {
Goal = Hovered;
Go();
}
base.OnUpdate();
}
}