Replaced static default page with variable

This commit is contained in:
bluefireoly
2020-10-25 16:02:47 +01:00
parent cf8a4b3adf
commit e77f633d40
2 changed files with 4 additions and 5 deletions

View File

@@ -12,12 +12,11 @@ import org.bukkit.inventory.ItemStack
import java.util.*
import kotlin.collections.HashSet
private const val DEFAULT_PAGE = 1
class GUIData<T : ForInventory>(
val guiType: GUIType<T>,
val title: String?,
internal val pages: Map<Int, GUIPage<T>>,
val defaultPage: Int,
val transitionTo: InventoryChangeEffect?,
val transitionFrom: InventoryChangeEffect?,
internal val generalOnClick: ((GUIClickEvent<T>) -> Unit)?
@@ -127,13 +126,13 @@ class GUIInstance<T : ForInventory>(
internal var isInMove: Boolean = false
var currentPageInt: Int = DEFAULT_PAGE; private set
var currentPageInt: Int = gui.data.defaultPage; private set
val currentPage
get() = getPage(currentPageInt)
?: throw IllegalStateException("The currentPageInt has no associated page!")
init {
loadPageUnsafe(DEFAULT_PAGE)
loadPageUnsafe(gui.data.defaultPage)
}
internal fun loadPageUnsafe(page: Int, offsetHorizontally: Int = 0, offsetVertically: Int = 0) {

View File

@@ -61,7 +61,7 @@ class GUIBuilder<T : ForInventory>(
}
internal fun build() = guiCreator.createInstance(
GUIData(type, title, guiSlots, transitionTo, transitionFrom, onClickElement)
GUIData(type, title, guiSlots, defaultPage, transitionTo, transitionFrom, onClickElement)
)
}