#Page

1 messages · Page 1 of 1 (latest)

tawdry basin
#

I have a quick question how can make multiple pages for a GUI like in the config. Thanks in advance!

honest lynx
#

make multiple menus

#

use [openguimenu] <othermenu> for your "next page" and "previous page" buttons

tawdry basin
tawdry basin
#

can you add infinite pages?

high cypress
# tawdry basin can you add infinite pages?

i can think of a wacky way to make multiple pages in a single gui by using the deluxemenus meta, view requirements, and priorities but its a lil confusing n complicated if u r not very familiar with the plugin. So making multiple guis is your best option tbh

high cypress
#

something like

    left_click_commands:
    - '[openguimenu] testmenu'
#

when u click on an item

tawdry basin
#

and that opens another page?

honest lynx
#

There are no “pages” @tawdry basin

#

Each “page” is just a separate menu

high cypress
#

its very helpful cause u have a gui per file

azure bay
#

infinite page

high cypress
azure bay
#

this is buttons

open_commands:
  - '[meta] set my-infnite-page INTEGER 1'
  - '[refresh]'

items:

  'next page':
    item_flags:
        - hide_potion_effects
    material: music_disc_cat
    display_name: '&bNext page'
    slot: 50
    click_commands:
      - '[meta] add my-infnite-page INTEGER 1'
      - '[refresh]'

  'previous page':
    item_flags:
        - hide_potion_effects
    material: music_disc_blocks
    display_name: '&bPrevious page'
    slot: 48
    click_requirement:
      requirements:
        'not small than 0':
          type: '>'
          input: '%math_0_{deluxemenus_meta_my-infnite-page_INTEGER}-1%'
          output: 0
    click_commands:
      - '[meta] subtract my-infnite-page INTEGER 1'
      - '[refresh]'
high cypress
#

thats very confusing for a non advanced user 💀

#

making multiple guis is a better option

#

it uses both math and meta not rly something for starters

azure bay
#

i just show him this is possible

#

this is items

  'slot 0, page 0':
    priority: 2
    material: stone
    slot: 0
    view_requirement:
      requirements:
        'page = 0':
          type: '=='
          input: '%deluxemenus_meta_my-infnite-page_INTEGER%'
          output: 0

  'slot 0, page 1':
    priority: 1 # higher page = less priority number
    material: sand
    slot: 0
    view_requirement:
      requirements:
        'page = 1':
          type: '=='
          input: '%deluxemenus_meta_my-infnite-page_INTEGER%'
          output: 1
honest lynx
#

Yes, just might help to explain that it's a very complicated process, and definitely not for every scenario

#

When you need something that has a dynamic amount of items (like yours does, or like my deluxeshop does), it might help to do this sort of thing

#

otherwise, making multiple gui pages for things that are not dynamic, not changing, is a lot easier and more intuitive

high cypress
#

probably my whole workbench could change to this method and reduce my menus by 250 but i still prefer the menu per file OKK

azure bay
#

just use my way if you know how your menu work

high cypress
honest lynx
#

Again, it really depends on the scenario

#

I would not suggest your way for 99% of things that need pages

#

considering, this is needed to fill a single slot

  'hex slot 1':
    item_flags:
      - hide_attributes
      - hide_dye
    priority: 1
    update: true
    material: leather_chestplate
    rgb: '%nested_conversion_16:10_{string_substring_0,2_{deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING}}%, %nested_conversion_16:10_{string_substring_2,4_{deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING}}%, %nested_conversion_16:10_{string_substring_4,6_{deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING}}%'
    display_name: '&eHex code&7:&f #%nested_deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING% &#%nested_deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING%&l▐'
    slot: 1
    lore:
      - ''
      - '&eRGB value&7:'
      - ' &7- &cRed&7: &f%nested_conversion_16:10_{string_substring_0,2_{deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING}}%'
      - ' &7- &aGreen&7: &f%nested_conversion_16:10_{string_substring_2,4_{deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING}}%'
      - ' &7- &bBlue&7: &f%nested_conversion_16:10_{string_substring_4,6_{deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING}}%'
      - ''
      - '&eClick actions&7:'
      - '&e&l|&7 Left-click &8[&fGet value&8]'
      - '&e&l|&7 Right-click &8[&fSet as current&8]'
      - '&e&l|&7 Shift-left-click &8[&fRemove&8]'
      - '&e&l|&7 Shift-right-click &8[&fGet stuff&8]'
    view_requirement:
      requirements:
        'title':
          type: string equals
          input: '%deluxemenus_meta_hexFav-title_STRING%'
          output: 'fav'
        'length = 6':
          type: '=='
          input: '%nested_string_length_{deluxemenus_meta_hexFav-{nested_changeoutput_equals_input:{deluxemenus_meta_hexFav-page_INTEGER}_matcher:1_ifmatch:1_else:{math_0_({deluxemenus_meta_hexFav-page_INTEGER}-1)*45+1}}_STRING}%'
          output: 6
#

that is insanely overwhelming and confusing 😂

high cypress
#

^^

honest lynx
#

learning how all of that even works would take a LOT of time

#

I understand it, but I've been with deluxemenus for 6+ years now

#

and most of that understanding probably came from the past year

#

same sort of thing for my deluxeshop item

  'item1':
    view_requirement:
      requirements:
        valid:
          type: '!string equals'
          input: '%deluxeshop_math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45),name%'
          output: ''
        error:
          type: '!string contains'
          input: '%deluxeshop_math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45),name%'
          output: 'error'
    material: 'placeholder-%deluxeshop_math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45),mat%'
    slot: 0
    display_name: '&a%deluxeshop_math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45),name,formatted%'
    lore:
    - '&2Buy: &a$%deluxeshop_math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45),buy% &6each'
    - '&cSell: &a$%deluxeshop_math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45),sell% &6each'
    - '&8Left Click to Purchase'
    - '&8Right Click to Sell'
    left_click_requirement:
      requirements:
        money:
          type: javascript
          expression: '%vault_eco_balance% >= %deluxeshop_math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45),buy%'
          deny_commands:
          - '[message] &cYou don''t have enough money!'
    left_click_commands:
    - '[player] buyMore %math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45)% shop s %deluxemenus_meta_dmshop-currentPage_INTEGER_1%'
    right_click_requirement:
      requirements:
        money:
          type: has item
          material: '%deluxeshop_math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45),name%'
          amount: '1'
          deny_commands:
          - '[message] &cYou don''t have enough items!'
    right_click_commands:
    - '[player] sellMore %math_0_1+(({deluxemenus_meta_dmshop-currentPage_INTEGER_1}-1)*45)% shop s %deluxemenus_meta_dmshop-currentPage_INTEGER_1%'
high cypress
#

felt that lool i ve been using deluxemenus since 2018 but learned about meta few months ago

honest lynx
#

obviously, I use an external plugin to store the data itself, which makes this even more complicated

#

setting up a shop requires a database of some sort

#

javascript expansion too slow and too resource intensive

#

so if you do make a shop, I would honestly just do each page manually

high cypress
#

ye thats why i ve been using another variables plugin for my menus called score

honest lynx
#

which is a lot easier

#

Yep, that's been good from what I've seen you use it for

high cypress
#

i use it for any kind of numeric value i need to store

honest lynx
#

wish it was on ecloud

#

just the expansion variable part

high cypress
#

yee u r gonna need at least one of the executable plugin series to access it 😬

honest lynx
#

(idk what else it does)

#

icic

#

ya, somebody with database knowledge will make an expansion some day, I believe

high cypress
#

well global variables is also very epic

honest lynx
#

not me

#

😂

azure bay
high cypress
#

eh thats temp data

honest lynx
#

ya, only temmp

#

F

azure bay
#

😄

high cypress
#

the score is like that

#

stores it with the uuid in the plugin itself