Next page in gui

  • Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the community!

    Now, what are you waiting for? Join the community now!

  • LOOKING FOR A VERSION OF SKRIPT?

    You can always check out skUnity Downloads for downloads and any other information about Skript!

Status
Not open for further replies.

MateoxPL

Active Member
Jan 27, 2018
116
0
16
Hello
I have this skript
and how to make a 2 gui page if players are in {_temp} is 0
code_language.skript:
command /targ [<text>]:
    aliases: /sklep, /bazar, /rynek
    trigger:
        set {_temp} to 0
        open chest with 4 rows named "          &2&lPlayers Shop" to player
        wait 3 tick
        loop all players:
            if loop-player have permission "elite":
                if (size of {targ.itemy.%loop-player%::*}) > 0:
                    set player's current inventory's slot {_temp} to {@TargItemWeteranILegenda} named "&aTarg: &6&l%loop-player%" with lore "&8Wystawione:&7 %size of {targ.itemy.%loop-value%::*}%/27"
                    add 1 to {_temp} 
                    if {_temp} > 0:
                        set player's current inventory's slot 35 to arrow named "&6Next Page"                 
        loop all players:
            if loop-player don't have permission "elite":
                if (size of {targ.itemy.%loop-player%::*}) > 0:
                    set player's current inventory's slot {_temp} to {@TargItemGracz} named "&aTarg: &e&l%loop-player%" with lore "&8Wystawione:&7 %size of {targ.itemy.%loop-value%::*}%/27"
                    add 1 to {_temp}
                    if {_temp} > 0:
                        set player's current inventory's slot 35 to arrow named "&6Next Page"
 
I would use TuSKe and do it the following way:
code_language.skript:
function changePage(page: number, container: inventory, line-amount: number = 27) :: number:

  loop page {_page} of all players with {_line-amount} lines:
    add 1 to {_slot}
    set slot {_slot} - 1 of {_container} to {@TargItemWeteranILegends} named "<light green>Targ: <orange>%loop-value%" with lore "<grey>Wystawione: <light grey>%size of {targ::item-y::%loop-value%::*}%/27"
  set slot 30 of {_inventory} to "<light green>Current Page" with lore "<light grey>%{_page}%"
  return {_page}


# This belongs to your command's trigger
open chest with 4 rows named "          <green><bold>Players Shop" to player

set slots integers from 27 to 35 of player's current inventory to black glass plane
set {_start} to changePage(1, player's current inventory)

if size of all players is greater than 27:
  set slot 35 of player's current inventory to arrow named "<orange>Next Page"


on inventory click:

  display name of event-inventory contains "Players Shop"
  cancel event

  if event-slot is an arrow named "<orange>Next Page":
 
    set {_page} to changePage(({_page} + 1), event-inventory)
    set slot 27 of event-inventory to arrow named "<orange>Previous Page"
 
  else if event-slot is an arrow named "<orange>Previous Page":

    set {_page} to changePage(({_page} - 1), event-inventory)
 
    if {_page} is 1:
      set slot 30 of event-inventory to black glass pane
 
Status
Not open for further replies.