Files
VOIDRPG/Assets/90 - Scripts/Generic/Player/CursorOperation/AbstractCursorOperation.cs
T
2026-07-09 21:33:33 +02:00

34 lines
1.4 KiB
C#

using System;
using VOID.Generic.Player.Util;
namespace VOID.Generic.Player.CursorOperation
{
public abstract class AbstractCursorOperation
{
/// <summary>
/// <see cref="Type"/> for which this operation will work.
/// </summary>
public abstract Type ForType();
/// <summary>
/// Returns TRUE if this operation can be executed.
/// </summary>
/// <param name="select">Complex information what was selected for this operation</param>
public abstract bool Check(SelectUtilResult select);
/// <summary>
/// Instantly executes default logic. Usually, by ordering currently active unit to do something.<br/>
/// <b>On Scene:</b> single tap, no alternate available (for now)<br/>
/// <b>On UI:</b> double tap, single tap is alternate usage<br/>
/// </summary>
/// <param name="select">Complex information what was selected for this operation</param>
/// <param name="isAlternate">If operation should execute alternate logic</param>
public abstract void DoDefault(SelectUtilResult select, bool isAlternate);
/// <summary>
/// Open context menu with all available action to choose for selected target.
/// </summary>
/// <param name="select">Complex information what was selected for this operation</param>
public abstract void DoContext(SelectUtilResult select);
}
}