/** * znamy ilość hexów i rozmiar planszy w unitach. Odpowiada to trybowi FIXED_BOARD_CAL_HEXSIZE */ private BoardHex BuildCalcHexSize() { // this.SetHexNumber (newColNumber, newRowNumber); // if (newRecommendWidth <= 0 || newRecommendHeight <= 0) { // Debug.LogError("boardUnitWidth i boardUnitHeight muszą być większe od 0"); // } // recommendSize.x = newRecommendWidth; // recommendSize.y = newRecommendHeight; float bestHexWidth = HexMath.CalculateHexWidthInRow(recommendSize.x, colNumber); float bestHexHeight = HexMath.CalculateHexHeightInColumn(recommendSize.y, rowNumber); hexWidth = HexMath.CalculateHexWidth(bestHexHeight); if (hexWidth > bestHexWidth) //szerokość obliczona z bestHexHeight jest za duża, przyjmujemy więc bestHexWidth jako referencję i obliczamy { hexWidth = bestHexWidth; recommendHexHeight = HexMath.CalculateHexHeight(hexWidth); } else //prawidłowo obliczona została szerokość { recommendHexHeight = bestHexHeight; } return(this.BuildCalc()); }