private SelectionPreference CycleSelectionMode(SelectionPreference selection) { switch (selection) { case SelectionPreference.Creature: return(SelectionPreference.Structure); case SelectionPreference.Structure: return(SelectionPreference.Item); case SelectionPreference.Item: return(SelectionPreference.Zone); case SelectionPreference.Zone: return(SelectionPreference.Creature); default: throw new System.Exception("Unkown selection type!"); } }
private bool GetSelection(SelectionPreference selectionPreference, List <Cell> cells, bool selectSimilar) { _selectionStartWorld = Vector3.zero; switch (selectionPreference) { case SelectionPreference.Anything: for (int i = 0; i < 5; i++) { _lastSelection = CycleSelectionMode(_lastSelection); if (GetSelection(_lastSelection, cells, selectSimilar)) { break; } } break; case SelectionPreference.Cell: if (cells.Count > 0) { InvokeCellClickMethod(cells); return(true); } break; case SelectionPreference.Item: return(SelectItems(FindItemsInCells(cells), selectSimilar)); case SelectionPreference.Structure: return(SelectStructures(FindStructuresInCells(cells), selectSimilar)); case SelectionPreference.Creature: return(SelectCreatures(FindCreaturesInCells(cells), selectSimilar)); case SelectionPreference.Zone: return(SelectZone(FindZoneInCells(cells), selectSimilar)); } return(false); }
public void SetSelectionPreference(SelectionPreference preference) { _selectionPreference = preference; }
public LeagueSandbox.GameServer.Core.Domain.Enums.SelectionPreference TranslateSelectionPreference(SelectionPreference preference) { switch (preference) { case SelectionPreference.Invalid: return(LeagueSandbox.GameServer.Core.Domain.Enums.SelectionPreference.Invalid); case SelectionPreference.Foe: return(LeagueSandbox.GameServer.Core.Domain.Enums.SelectionPreference.Foe); case SelectionPreference.Friend: return(LeagueSandbox.GameServer.Core.Domain.Enums.SelectionPreference.Friend); case SelectionPreference.None: return(LeagueSandbox.GameServer.Core.Domain.Enums.SelectionPreference.None); default: throw new ArgumentOutOfRangeException(nameof(preference), preference, null); } }