boardManager.generateHexMap C# (CSharp) Method

generateHexMap() public method

public generateHexMap ( int size ) : void
size int
return void
    void generateHexMap(int size)
    {
        board = new tile[size * 2-1, size * 2-1];
        for (int i=0; i<size * 2-1; i++) {
            for (int j=0; j<size * 2-1; j++) {
                board[i,j]=new tile();
            }
        }
        Transform boardHolder = new GameObject ("Board").transform;
        Vector3 pieceposition;
        for(int i=1;i<size*2;i++){
            for(int j=1;j<2*size-Mathf.Abs(size-i);j++){

                //crazy math formulas for the actuall positions, don't delve in if you value your life!
                pieceposition= new Vector3 (tileSize*(Mathf.Abs(size-i)*0.5f+j-size),tileSize*ratio*(i-size),0f);
                GameObject instance = Instantiate(gameTile,pieceposition,Quaternion.identity) as GameObject;
                inputTile tileInfo = instance.GetComponent<inputTile>();

                //the same craziness here
                tileInfo.tilePosition=new Vector2(j-0.5f*(size+i-Mathf.Abs(i-size)),i-size);
                instance.transform.SetParent (boardHolder);
            }
        }
    }