예제 #1
0
 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);
 }
예제 #2
0
        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);
            }
        }
예제 #3
0
 static public bool TryClickInterface(Vector3 pos, string name)
 {
     return(UserInterface.TryClickInterface(pos, SwarmOfIron.Instance.listButtonGO.Find(el => el.name == name)));
 }