Beispiel #1
0
    public void clickOK()
    {
        string texto = inputField.text;

        if (string.IsNullOrWhiteSpace(texto))
        {
            canvas.SetActive(false);
            return;
        }
        else
        {
            var go   = Instantiate(prefab, Camera.main.ScreenToWorldPoint(new Vector3(Screen.width / 2, Screen.height / 2, Camera.main.nearClipPlane + 5)), Quaternion.identity, parent);
            var text = go.GetComponent <TextMeshPro>();
            text.text       = inputField.text;
            inputField.text = "";
            text.color      = material.color;
            undoRedo.lGO.Add(go.gameObject);
            var position = this.transform.localPosition.ToString();
            position = position.Replace("(", "");
            position = position.Replace(")", "");
            undoRedo.lActionsGO.Add("crea," + position);
            script = go.GetComponent <ArrastraGOSinDuplicar>();
            Invoke("clickMouseUp", 0.01f);
            canvas.SetActive(false);
        }
    }
Beispiel #2
0
    public void btnOb_Click()
    {
        Transform go = Instantiate(prefab, Camera.main.ScreenToWorldPoint(new Vector3(Screen.width / 2, Screen.height / 2, Camera.main.nearClipPlane + 15)), Quaternion.identity, parent);

        go.gameObject.name = "ob_clone";
        var goScript = go.GetComponent <ArrastraGOSinDuplicar>();

        if (S_Util.isEnemyActive)
        {
            goScript.liineasColor = Color.red;
        }
        else
        {
            goScript.liineasColor = Color.green;
        }
        undoRedo.lGO.Add(go.gameObject);
        var position = this.transform.position.ToString();

        position = position.Replace("(", "");
        position = position.Replace(")", "");
        undoRedo.lActionsGO.Add("crea," + position);
        script = goScript;
        Invoke("clickMouseUp", 0.01f);
    }
Beispiel #3
0
    public async void Load()
    {
        panelSettings.SetActive(false);
        animPanelSemiCirculo.SetBool("up", false);
        ur.ClearAllLGO();
        for (int i = 0; i < parent.gameObject.transform.childCount; i++)
        {
            Transform t = parent.gameObject.transform.GetChild(i);
            Destroy(t.gameObject);
        }
        parent.position = parentInicio.transform.position;

        // var fileName = "map";
        var filePath = this.fileToLoad;

        this.filePath       = filePath;
        S_Util.mapaCargando = this.fileToLoad;
        // var filePath = folderPath + fileName + ".lolmap";
        var     lines          = File.ReadAllLines(filePath);
        Vector3 lastGOPosition = Vector3.zero;
        Vector3 lastGOScale    = Vector3.zero;
        string  lastGOName     = "";

        foreach (var l in lines)
        {
            if (!S_Util.mapaCargando.Equals(filePath))
            {
                return;
            }
            var        ob = JsonUtility.FromJson <Objeto>(l);
            GameObject go;
            if (l.Equals(lastGOName) && Vector3.Distance(new Vector3(ob.PositionX, ob.PositionY, -1), lastGOPosition) == 0 &&
                Vector3.Distance(new Vector3(ob.Size, ob.Size, 1), lastGOScale) == 0)
            {
                continue;
            }
            // print(l.Equals(lastGOName) + "," + Vector3.Distance(new Vector3(ob.PositionX, ob.PositionY, -1), lastGOPosition) + "," +
            // Vector3.Distance(new Vector3(ob.Size, ob.Size, 1), lastGOScale));
            lastGOName     = l;
            lastGOScale    = new Vector3(ob.Size, ob.Size, 1);
            lastGOPosition = new Vector3(ob.PositionX, ob.PositionY, -1);
            //print(ob.Tipo);

            switch (ob.Tipo)
            {
            case "ob_clone":
                go = Instantiate(prefabs[0], Vector3.zero, Quaternion.identity, parent);
                go.transform.position   = new Vector3(lastGOPosition.x, lastGOPosition.y, 0);
                go.transform.localScale = lastGOScale;
                go.gameObject.name      = "ob_clone";
                ur.lGO.Add(go.gameObject);
                ur.lGO.Add(go.gameObject);

                var position = go.transform.position.ToString();
                position = position.Replace("(", "");
                position = position.Replace(")", "");
                ur.lActionsGO.Add("crea," + position);
                ur.lActionsGO.Add("mueve," + position);
                script = go.GetComponent <ArrastraGOSinDuplicar>();
                var    sr     = this.gameObject.GetComponent <SpriteRenderer>();
                Sprite sprite = sr.sprite;
                foreach (var u in util.lSpriteChamps)
                {
                    if (u.name.Equals(ob.spriteName))
                    {
                        sprite = u;
                    }
                }
                script.image = sprite;
                if (ob.isEnemy)
                {
                    script.liineasColor = Color.red;
                }
                else
                {
                    script.liineasColor = Color.blue;
                }
                Invoke("clickMouseUp", 0.01f);
                break;

            case "DrawLine(Clone)":
                colorPicker.color = new Color(ob.Color[0], ob.Color[1], ob.Color[2], ob.Color[3]);
                await WaitOneSecondAsync();

                if (!S_Util.mapaCargando.Equals(filePath))
                {
                    return;
                }
                go = Instantiate(prefabs[1], Vector3.zero, Quaternion.identity, parent);
                go.transform.position   = lastGOPosition;
                go.transform.localScale = lastGOScale;
                print(ob.Color[0] + "," + ob.Color[1] + "," + ob.Color[2] + "," + ob.Color[3]);
                var lineRend  = go.GetComponent <LineRenderer>();
                var positions = new Vector3[ob.PointsX.Count];
                var drawLine  = go.GetComponent <DrawLine2D>();
                drawLine.isActive      = false;
                lineRend.positionCount = ob.PointsX.Count;
                for (int i = 0; i < ob.PointsX.Count; i++)
                {
                    positions[i] = new Vector3(ob.PointsX[i], ob.PointsY[i], 1);
                    lineRend.SetPosition(i, positions[i]);
                }
                var position2 = "";
                if (ur.lActionsGO.Count > 0)
                {
                    var split = ur.lActionsGO[ur.lActionsGO.Count - 1].Split(',');
                    if (split.Length > 2)
                    {
                        position2 = $"{split[1]},{split[2]},{split[3]}";
                    }
                }
                ur.lGO.Add(go.gameObject);
                ur.lActionsGO.Add("pinta," + position2);
                break;

            case "Text(Clone)":
                go = Instantiate(prefabs[2], Vector3.zero, Quaternion.identity, parent);
                go.transform.position   = lastGOPosition;
                go.transform.localScale = lastGOScale;
                var textMesh = go.GetComponent <TextMeshPro>();
                textMesh.text  = ob.Text;
                textMesh.color = new Color(ob.Color[0], ob.Color[1], ob.Color[2], ob.Color[3]);
                ur.lGO.Add(go.gameObject);
                var position3 = go.transform.position.ToString();
                position3 = position3.Replace("(", "");
                position3 = position3.Replace(")", "");
                ur.lActionsGO.Add("crea," + position3);
                script = go.GetComponent <ArrastraGOSinDuplicar>();
                Invoke("clickMouseUp", 0.01f);
                break;
            }
        }
    }