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