public void BeginPlacing(PlacementInformation info) { Clear(); IoCManager.Resolve <IUserInterfaceManager>().CancelTargeting(); IoCManager.Resolve <IUserInterfaceManager>().DragInfo.Reset(); CurrentPermission = info; if (!_modeDictionary.Any(pair => pair.Key.Equals(CurrentPermission.PlacementOption))) { Clear(); return; } Type modeType = _modeDictionary.First(pair => pair.Key.Equals(CurrentPermission.PlacementOption)).Value; CurrentMode = (PlacementMode)Activator.CreateInstance(modeType, this); if (info.IsTile) { PreparePlacementTile(info.TileType); } else { PreparePlacement(info.EntityType); } }
public void Clear() { CurrentBaseSprite = null; CurrentTemplate = null; CurrentPermission = null; CurrentMode = null; if (PlacementCanceled != null && IsActive && !Eraser) { PlacementCanceled(this, null); } IsActive = false; Eraser = false; }
public void Clear() { CurrentBaseSprite = null; CurrentTemplate = null; CurrentPermission = null; CurrentMode = null; if (PlacementCanceled != null && IsActive && !Eraser) PlacementCanceled(this, null); IsActive = false; Eraser = false; }
public void BeginPlacing(PlacementInformation info) { Clear(); IoCManager.Resolve<IUserInterfaceManager>().CancelTargeting(); IoCManager.Resolve<IUserInterfaceManager>().DragInfo.Reset(); CurrentPermission = info; if (!_modeDictionary.Any(pair => pair.Key.Equals(CurrentPermission.PlacementOption))) { Clear(); return; } Type modeType = _modeDictionary.First(pair => pair.Key.Equals(CurrentPermission.PlacementOption)).Value; CurrentMode = (PlacementMode) Activator.CreateInstance(modeType, this); if (info.IsTile) PreparePlacementTile(info.TileType); else PreparePlacement(info.EntityType); }