Example #1
0
    public void CheckPlaceable()
    {
        isPlaceable = true;
        foreach (GameObject thisSprite in mySprites)
        {
            if (thisSprite != null)
            {
                ItemPlacementSpriteHelper mySprite = thisSprite.GetComponentInChildren <ItemPlacementSpriteHelper>();

                int checkX = x + mySprite.x;
                int checkY = y + mySprite.y;

                //print (checkX + " - " + checkY);

                bool myVal = false;

                myVal = FactoryPlayerConnector.s.CheckPlaceable(new Position(checkX, checkY));

                if (myVal)
                {
                    mySprite.Placeable();
                }
                else
                {
                    mySprite.CantPlace();
                    isPlaceable = false;
                }
            }
        }
    }
Example #2
0
    public void Setup(BuildingData _myData)
    {
        myData = _myData;

        for (int y = 0; y < myData.shape.column.Length; y++)
        {
            for (int x = 0; x < myData.shape.column[y].row.Length; x++)
            {
                if (myData.shape.column[y].row[x])
                {
                    //print (x + " - " + y);
                    Position myPos = (new Position(x, y) - BuildingData.center);
                    //print(center);

                    mySprites[x, y] = Instantiate(ItemSpritePrefab, myPos.Vector3(Position.Type.itemPlacementHelper) - Vector3.forward, Quaternion.identity);
                    mySprites[x, y].transform.parent = transform;
                    ItemPlacementSpriteHelper mySprite = mySprites[x, y].GetComponent <ItemPlacementSpriteHelper>();
                    mySprite.x = myPos.x;
                    mySprite.y = myPos.y;
                }
            }
        }
    }