static void OnMouseEnterPointEvent(MouseEnterPointEvent e) { if (CanConstructOnElement(e.Point)) { GameCursor.Instance.Target = e.Point.Position; visual.SetAlpha(1f); } }
public static void Set(PerformerTask newTask) { if (!newTask.Enabled) { return; } task = newTask; roadTask = task is ConstructRoad; bool seedTask = task is PlantSeed; System.Type[] taskTypes; if (roadTask) { taskTypes = new [] { typeof(Road) }; } else if (seedTask) { taskTypes = new [] { typeof(Seed) }; } else { taskTypes = task.GetType().GetGenericArguments(); } if (taskTypes.Length > 0) { string renderer = UnitRenderer.GetRenderer(DataManager.GetUnitSymbol(taskTypes[0])); visual = ObjectPool.Instantiate(renderer) as UnitRenderer; visual.SetAlpha(0.33f); GameCursor.Instance.SetVisual(task, visual); } GameCursor.Instance.onClick += OnClick; if (roadTask) { Events.instance.AddListener <ClickConnectionEvent> (OnClickConnectionEvent); Events.instance.AddListener <MouseEnterConnectionEvent> (OnMouseEnterConnectionEvent); Events.instance.AddListener <MouseExitConnectionEvent> (OnMouseExitConnectionEvent); } else { Events.instance.AddListener <ClickPointEvent> (OnClickPointEvent); Events.instance.AddListener <MouseEnterPointEvent> (OnMouseEnterPointEvent); Events.instance.AddListener <MouseExitPointEvent> (OnMouseExitPointEvent); } }