mirror of
https://github.com/yairm210/Unciv.git
synced 2025-09-28 06:16:37 -04:00
Better promotion positioning in unit overview
This commit is contained in:
parent
eda4a57244
commit
8294352fcc
@ -15,11 +15,6 @@ import com.unciv.logic.map.mapunit.MapUnit
|
|||||||
import com.unciv.logic.map.tile.Tile
|
import com.unciv.logic.map.tile.Tile
|
||||||
import com.unciv.models.UnitActionType
|
import com.unciv.models.UnitActionType
|
||||||
import com.unciv.ui.audio.SoundPlayer
|
import com.unciv.ui.audio.SoundPlayer
|
||||||
import com.unciv.ui.images.IconTextButton
|
|
||||||
import com.unciv.ui.images.ImageGetter
|
|
||||||
import com.unciv.ui.screens.pickerscreens.PromotionPickerScreen
|
|
||||||
import com.unciv.ui.screens.pickerscreens.UnitRenamePopup
|
|
||||||
import com.unciv.ui.screens.basescreen.BaseScreen
|
|
||||||
import com.unciv.ui.components.ExpanderTab
|
import com.unciv.ui.components.ExpanderTab
|
||||||
import com.unciv.ui.components.Fonts
|
import com.unciv.ui.components.Fonts
|
||||||
import com.unciv.ui.components.TabbedPager
|
import com.unciv.ui.components.TabbedPager
|
||||||
@ -32,8 +27,14 @@ import com.unciv.ui.components.extensions.onClick
|
|||||||
import com.unciv.ui.components.extensions.surroundWithCircle
|
import com.unciv.ui.components.extensions.surroundWithCircle
|
||||||
import com.unciv.ui.components.extensions.toLabel
|
import com.unciv.ui.components.extensions.toLabel
|
||||||
import com.unciv.ui.components.extensions.toPrettyString
|
import com.unciv.ui.components.extensions.toPrettyString
|
||||||
|
import com.unciv.ui.images.IconTextButton
|
||||||
|
import com.unciv.ui.images.ImageGetter
|
||||||
|
import com.unciv.ui.screens.basescreen.BaseScreen
|
||||||
|
import com.unciv.ui.screens.pickerscreens.PromotionPickerScreen
|
||||||
|
import com.unciv.ui.screens.pickerscreens.UnitRenamePopup
|
||||||
import com.unciv.ui.screens.worldscreen.unit.actions.UnitActionsUpgrade
|
import com.unciv.ui.screens.worldscreen.unit.actions.UnitActionsUpgrade
|
||||||
import kotlin.math.abs
|
import kotlin.math.abs
|
||||||
|
import kotlin.math.ceil
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Supplies the Unit sub-table for the Empire Overview
|
* Supplies the Unit sub-table for the Empire Overview
|
||||||
@ -232,8 +233,18 @@ class UnitOverviewTab(
|
|||||||
// Promotions column
|
// Promotions column
|
||||||
val promotionsTable = Table()
|
val promotionsTable = Table()
|
||||||
// getPromotions goes by json order on demand, so this is same sorting as on picker
|
// getPromotions goes by json order on demand, so this is same sorting as on picker
|
||||||
for (promotion in unit.promotions.getPromotions(true))
|
val promotions = unit.promotions.getPromotions(true)
|
||||||
promotionsTable.add(ImageGetter.getPromotionPortrait(promotion.name))
|
if (promotions.any()) {
|
||||||
|
val numberOfLines = ceil(promotions.count() / 8f).toInt()
|
||||||
|
val promotionsPerLine = promotions.count() / numberOfLines
|
||||||
|
var promotionsThisLine = 0
|
||||||
|
for (promotion in promotions) {
|
||||||
|
promotionsTable.add(ImageGetter.getPromotionPortrait(promotion.name))
|
||||||
|
promotionsThisLine++
|
||||||
|
if (promotionsThisLine == promotionsPerLine && numberOfLines>1) promotionsTable.row()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (unit.promotions.canBePromoted())
|
if (unit.promotions.canBePromoted())
|
||||||
promotionsTable.add(
|
promotionsTable.add(
|
||||||
ImageGetter.getImage("OtherIcons/Star").apply {
|
ImageGetter.getImage("OtherIcons/Star").apply {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user