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);
}
}
}