static public bool TryClickInterface(Vector3 pos) { for (var i = 0; i < SwarmOfIron.Instance.listButtonGO.Count; i++) { if (UserInterface.TryClickInterface(pos, SwarmOfIron.Instance.listButtonGO[i])) { return(true); } } return(false); }
private void OnLeftClickDown() { SwarmOfIron.Instance.ToggleSelectionArea(true); startPosition = UnitControlHelpers.GetMousePosition(); // World Position startPositionScreen = Input.mousePosition; // Screen Position // selection OBJ Box selectionObj = SwarmOfIron.Instance.selectionObj; selectionObj.transform.position = startPosition; Vector3 cameraVec3 = Camera.main.transform.eulerAngles; selectionObj.transform.rotation = Quaternion.Euler(0.0f, cameraVec3.y, 0.0f); if (UserInterface.TryClickInterface(startPositionScreen, "Actions")) { // On a cliqué sur le menu des boutons d'actions isUI = true; // On récupère la coordonnée local du clique Vector3 localActionCoord = SwarmOfIron.Instance.listButtonGO.Find(el => el.name == "Actions").transform.InverseTransformPoint(startPositionScreen); // On récupère l'action & on met a jour this.currentAction = ActionHelpers.GetAction(localActionCoord, this.layers); ActionHelpers.UpdateActionUI(this.hasHubSelected, this.hasWorkerSelected, this.selectedEntityCount > 0, this.currentAction, ref this.layers); if (hasHubSelected) { //Debug.Log("hello PeonIcon"); spawWorkers(); //Worker.SpawnWorker(new float3(0, 0, 0)); } } else { isUI = false; SwarmOfIron.Instance.selectionAreaTransform.position = startPositionScreen; // Zone de sélection rectangle vert (screen) SwarmOfIron.Instance.worldSelectionAreaTransform.rotation = Quaternion.Euler(0, SwarmOfIron.Instance.cameraRig.transform.eulerAngles.y, 0); } }
static public bool TryClickInterface(Vector3 pos, string name) { return(UserInterface.TryClickInterface(pos, SwarmOfIron.Instance.listButtonGO.Find(el => el.name == name))); }