fix: some UIs won't fade in/out on open/close

This commit is contained in:
minjaesong
2023-07-03 21:35:46 +09:00
parent bad72dd353
commit 453459e3b6
6 changed files with 36 additions and 13 deletions

View File

@@ -195,17 +195,10 @@ internal class UIHomeComputer : UICanvas(
} }
override fun doOpening(delta: Float) { override fun doOpening(delta: Float) {
super.doOpening(delta)
fixture.startVM() fixture.startVM()
} }
override fun doClosing(delta: Float) {
}
override fun endOpening(delta: Float) {
}
override fun endClosing(delta: Float) {
}
override fun dispose() { override fun dispose() {
fbo.dispose() fbo.dispose()

View File

@@ -85,6 +85,8 @@ class UIInventoryFull(
private val gsta = Color(gradStartCol) private val gsta = Color(gradStartCol)
private val gend = Color(gradEndCol) private val gend = Color(gradEndCol)
private val drawBackgroundColourBuffer = Color(1f,1f,1f,1f)
fun drawBackground(batch: SpriteBatch, opacity: Float) { fun drawBackground(batch: SpriteBatch, opacity: Float) {
gdxBlendNormalStraightAlpha() gdxBlendNormalStraightAlpha()
/*batch.end() /*batch.end()
@@ -118,7 +120,8 @@ class UIInventoryFull(
} }
batch.begin()*/ batch.begin()*/
batch.color = Color.WHITE // drawBackgroundColourBuffer.a = opacity
batch.color = drawBackgroundColourBuffer
val w = App.scr.wf val w = App.scr.wf
val h = App.scr.hf val h = App.scr.hf
val gradTopStart = (-YPOS_CORRECTION + (App.scr.height - internalHeight).div(2).toFloat()) * App.scr.magn val gradTopStart = (-YPOS_CORRECTION + (App.scr.height - internalHeight).div(2).toFloat()) * App.scr.magn
@@ -312,7 +315,7 @@ class UIInventoryFull(
override fun renderUI(batch: SpriteBatch, camera: Camera) { override fun renderUI(batch: SpriteBatch, camera: Camera) {
drawBackground(batch, handler.opacity) drawBackground(batch, 1f)
// UI items // UI items
catBar.render(batch, camera) catBar.render(batch, camera)

View File

@@ -179,7 +179,7 @@ internal class UIStorageChest : UICanvas(
override fun renderUI(batch: SpriteBatch, camera: Camera) { override fun renderUI(batch: SpriteBatch, camera: Camera) {
// background fill // background fill
UIInventoryFull.drawBackground(batch, handler.opacity) UIInventoryFull.drawBackground(batch, 1f)
// UI items // UI items
batch.color = Color.WHITE batch.color = Color.WHITE
@@ -237,19 +237,23 @@ internal class UIStorageChest : UICanvas(
} }
override fun doOpening(delta: Float) { override fun doOpening(delta: Float) {
super.doOpening(delta)
INGAME.pause() INGAME.pause()
INGAME.setTooltipMessage(null) INGAME.setTooltipMessage(null)
} }
override fun doClosing(delta: Float) { override fun doClosing(delta: Float) {
super.doClosing(delta)
INGAME.resume() INGAME.resume()
INGAME.setTooltipMessage(null) INGAME.setTooltipMessage(null)
} }
override fun endOpening(delta: Float) { override fun endOpening(delta: Float) {
super.endOpening(delta)
} }
override fun endClosing(delta: Float) { override fun endClosing(delta: Float) {
super.endClosing(delta)
UIItemInventoryItemGrid.tooltipShowing.clear() UIItemInventoryItemGrid.tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required! INGAME.setTooltipMessage(null) // required!
} }

View File

@@ -92,7 +92,7 @@ class UIWorldPortal : UICanvas(
} }
override fun renderUI(batch: SpriteBatch, camera: Camera) { override fun renderUI(batch: SpriteBatch, camera: Camera) {
drawBackground(batch, handler.opacity) drawBackground(batch, 1f)
// UI items // UI items
transitionPanel.render(batch, camera) transitionPanel.render(batch, camera)

View File

@@ -171,7 +171,7 @@ class UIWorldPortalCargo(val full: UIWorldPortal) : UICanvas(), HasInventory {
override fun renderUI(batch: SpriteBatch, camera: Camera) { override fun renderUI(batch: SpriteBatch, camera: Camera) {
// background fill // background fill
UIInventoryFull.drawBackground(batch, handler.opacity) UIInventoryFull.drawBackground(batch, 1f)
// UI items // UI items
batch.color = Color.WHITE batch.color = Color.WHITE

View File

@@ -448,6 +448,29 @@ class UIWorldPortalListing(val full: UIWorldPortal) : UICanvas() {
} }
else return false else return false
} }
override fun doOpening(delta: Float) {
super.doOpening(delta)
INGAME.pause()
INGAME.setTooltipMessage(null)
}
override fun doClosing(delta: Float) {
super.doClosing(delta)
INGAME.resume()
INGAME.setTooltipMessage(null)
}
override fun endOpening(delta: Float) {
super.endOpening(delta)
}
override fun endClosing(delta: Float) {
super.endClosing(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}
} }