Inventory UI: items page button

This commit is contained in:
minjaesong
2017-07-17 14:37:10 +09:00
parent 31b7203d01
commit 58205e5eb5
4 changed files with 15 additions and 7 deletions

View File

@@ -9,7 +9,7 @@ uniform vec3 bottomColor;
// "steps" of R, G and B. Must be integer && equal or greater than 2
uniform float rcount = 64.0; // it even works on 256.0!
uniform float gcount = 64.0; // using 128: has less banding and most monitors are internally 6-bit
uniform float gcount = 64.0; // using 64: has less banding and most monitors are internally 6-bit
uniform float bcount = 64.0;

View File

@@ -80,11 +80,12 @@ class Ingame(val batch: SpriteBatch) : Screen {
private val worldFBOformat = if (Terrarum.environment == RunningEnvironment.MOBILE) Pixmap.Format.RGBA4444 else Pixmap.Format.RGBA8888
private val worldBlendFBOFormat = if (Terrarum.environment == RunningEnvironment.MOBILE) Pixmap.Format.RGBA4444 else Pixmap.Format.RGBA8888
private val lightFBOformat = Pixmap.Format.RGB888
var worldDrawFrameBuffer = FrameBuffer(worldFBOformat, Terrarum.WIDTH, Terrarum.HEIGHT, false)
var worldGlowFrameBuffer = FrameBuffer(worldFBOformat, Terrarum.WIDTH, Terrarum.HEIGHT, false)
var worldBlendFrameBuffer = FrameBuffer(Pixmap.Format.RGB888, Terrarum.WIDTH, Terrarum.HEIGHT, false)
var worldBlendFrameBuffer = FrameBuffer(worldBlendFBOFormat, Terrarum.WIDTH, Terrarum.HEIGHT, false)
// RGB elements of Lightmap for Color Vec4(R, G, B, 1.0) 24-bit
var lightmapFboA = FrameBuffer(lightFBOformat, Terrarum.WIDTH.div(lightmapDownsample.toInt()), Terrarum.HEIGHT.div(lightmapDownsample.toInt()), false)
var lightmapFboB = FrameBuffer(lightFBOformat, Terrarum.WIDTH.div(lightmapDownsample.toInt()), Terrarum.HEIGHT.div(lightmapDownsample.toInt()), false)
@@ -1516,7 +1517,7 @@ class Ingame(val batch: SpriteBatch) : Screen {
worldGlowFrameBuffer.dispose()
worldGlowFrameBuffer = FrameBuffer(worldFBOformat, Terrarum.WIDTH, Terrarum.HEIGHT, false)
worldBlendFrameBuffer.dispose()
worldBlendFrameBuffer = FrameBuffer(worldFBOformat, Terrarum.WIDTH, Terrarum.HEIGHT, false)
worldBlendFrameBuffer = FrameBuffer(worldBlendFBOFormat, Terrarum.WIDTH, Terrarum.HEIGHT, false)
lightmapFboA.dispose()
lightmapFboA = FrameBuffer(lightFBOformat, Terrarum.WIDTH.div(lightmapDownsample.toInt()), Terrarum.HEIGHT.div(lightmapDownsample.toInt()), false)
lightmapFboB.dispose()

View File

@@ -132,7 +132,7 @@ class UIInventory(
posY = (height - controlHelpHeight - scrollImageButtonAtlas.tileH) / 2
)
var itemPage = 0
var maxItemPage = 1 // TODO total size of current category / items.size
var itemPageCount = 1 // TODO total size of current category / items.size
@@ -172,13 +172,13 @@ class UIInventory(
scrollLeftButton.clickOnceAction = { mouseX, mouseY, button -> // click once action doesn't work ?!
if (button == Input.Buttons.LEFT) {
println("prevpage")
itemPage = (itemPage - 1) fmod maxItemPage
itemPage = (itemPage - 1) fmod itemPageCount
}
}
scrollRightButton.clickOnceAction = { mouseX, mouseY, button ->
if (button == Input.Buttons.LEFT) {
println("nextpage")
itemPage = (itemPage + 1) fmod maxItemPage
itemPage = (itemPage + 1) fmod itemPageCount
}
}
@@ -206,6 +206,10 @@ class UIInventory(
rebuildList = true
}
// reset item page to start
if (oldCatSelect != catButtons.selectedIndex) {
itemPage = 0
}
if (rebuildList) {
shutUpAndRebuild()
@@ -349,6 +353,9 @@ class UIInventory(
items[k].quickslot = null
}
}
itemPageCount = maxOf(1, 1 + (inventorySortList.size.minus(1) / items.size))
}