namespace Marro.PacManUdon
{
    using System;
    using UdonSharp;
    using UnityEngine;

    public abstract class GridMover : UdonSharpBehaviour
    {
        public virtual Vector2 GetPosition()
        {
            Debug.LogWarning($"{gameObject} does not implement GetPosition");
            return Vector2.zero;
        }

        public virtual void SetPosition(Vector2 position)
        {
            Debug.LogWarning($"{gameObject} does not implement SetPosition");
        }

        public virtual Vector2 GetDirection()
        {
            Debug.LogWarning($"{gameObject} does not implement GetDirection");
            return Vector2.zero;
        }
    }
}