Esempio n. 1
0
    private void OnMouseUp()
    {
        RaycastHit2D Feld;
        Platzhalter  platzhalter = null;

        feldPalette.isDragging       = false;
        feldPalette.gameObject.layer = 0;
        feldPalette.currentDragged.GetComponent <SpriteRenderer>().sortingOrder = 1;
        Dragable fPCurrentDragged = feldPalette.currentDragged.GetComponent <Dragable>();

        changePaletteVisibility();

        Feld = Physics2D.Raycast(Camera.main.ScreenToWorldPoint(Input.mousePosition), new Vector3(0, 0, 0), 1000f, 1024);
        if (Feld)
        {
            platzhalter = Feld.transform.GetComponent <Platzhalter>();
        }

        if (platzhalter)
        {
            string currentFieldTag;
            if (platzhalter.currentField == null)
            {
                currentFieldTag = "leer";
            }
            else
            {
                currentFieldTag = platzhalter.currentField.tag;
            }

            if (currentFieldTag == "leer" && feldPalette.currentTag != "leer")
            {
                feldPalette.increaseComplexity();
            }
            if (currentFieldTag != "leer" && feldPalette.currentTag == "leer")
            {
                feldPalette.decreaseComplexity();
            }

            if (currentFieldTag == "Ziel" && feldPalette.currentTag != "Ziel")
            {
                platzhalter.transform.parent.GetComponent <Board>().zielCount--;
            }
            if (currentFieldTag != "Ziel" && feldPalette.currentTag == "Ziel")
            {
                platzhalter.transform.parent.GetComponent <Board>().zielCount++;
            }

            Destroy(platzhalter.currentField);
            platzhalter.currentField = feldPalette.currentDragged;
            platzhalter.currentField.transform.position = platzhalter.anchorPoint;
            platzhalter.tellBoard(feldPalette.currentTag);

            fPCurrentDragged.myPlatzhalter = platzhalter;
        }
        else
        {
            Destroy(feldPalette.currentDragged);
        }
    }
    private void OnMouseUp()
    {
        anim.Play("creation_lemming_idle");
        isDragging            = false;
        this.gameObject.layer = 0;
        //GetComponent<SpriteRenderer>().color = new Color(1f, 1f, 1f, 1f);

        RaycastHit2D Feld;
        Platzhalter  platzhalter = null;

        Feld = Physics2D.Raycast(Camera.main.ScreenToWorldPoint(Input.mousePosition), new Vector3(0, 0, 0), 1000f, 1024);
        if (Feld)
        {
            platzhalter = Feld.transform.GetComponent <Platzhalter>();
        }

        if (platzhalter && (platzhalter.board.identity == board.identity))
        {
            platzhalter.getLemming(this);
            position           = platzhalter.anchorPoint;
            transform.position = position;
        }

        else
        {
            transform.position = position;
        }
    }
Esempio n. 3
0
    void setPlatzhalter(int boardNumber, int tagNumber, string tag)
    {
        Platzhalter platzhalter = boards[boardNumber].board[tagNumber];

        Destroy(platzhalter.currentField);
        platzhalter.currentField = createFromTag(currentTag, platzhalter.anchorPoint);
        platzhalter.currentField.AddComponent <Dragable>();
        platzhalter.currentField.AddComponent <BoxCollider2D>();
        platzhalter.currentField.GetComponent <Dragable>().myPlatzhalter = platzhalter;
        platzhalter.currentField.GetComponent <Dragable>().feldPalette   = GameObject.Find("Feld_Palette").GetComponent <feldPalette>();
        platzhalter.tellBoard(tag);
    }