። SimpleGuis ። [1.8 - 1.16.x] - Forget about slots counting! (HEX support) Added API! 2.2.7-BETA

Forget about slots counting and copying buttons!

  1. XSoftware
    Tested Minecraft Versions:
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    • 1.14
    • 1.15
    • 1.16
    Contributors:
    Brian.
    Forget about slots counting and copying buttons!

    This simple GUI builder give you access to make guis less than 5 minutes, you can easily insert buttons and add rows to your gui using 'drawer'.

    FEATURES:
    ● Simple GUI builder.
    ● Economy support. (Vault, TokenEnchant)
    ● PlaceholderAPI support.
    ● Custom heads support.
    ● Per-GUI permissions.
    ● Per-Item permissions.
    ● Updatable guis
    ● HEX Support! (From 1.16.x, to use it @{hex-code})
    ● Own action builder!
    Here is drawer example work:
    upload_2020-11-5_17-2-26.png
    (You also can add custom heads or use )

    Button builder is really so simplified and you can create buttons really so fast. Example of the simpliest button:
    Code (YAML):

        '#': # < Identifier
          item
    :
            stack
    : stained glass pane # < Item name
            durability
    : 1 # < Item Durability
            count
    : 1 # < Item Count
          name
    : " " # < Item Name
     

    If you found any bug, report this on my discord server: https://discord.gg/J9t2Bu2yBa


    Default config.yml:
    Code (YAML):

    #
    # _________   ________          .__
    # /   _____/  /  _____/   __ __  |__|
    # \_____  \  /   \  ___  |  |  \ |  |
    # /        \ \    \_\  \ |  |  / |  |
    #/_______  /  \______  / |____/  |__|
    #        \/          \/
    #
    # config.yml
    #
    settings
    :
      disabled-worlds
    :
       - 'disabled-worlds'
     
    Default language.yml:
    Code (YAML):

    messages
    :
      command
    :
        footer
    : '&3&m-----------&4< &6&lSimpleGuis &4-&2 List &4>&3&m-----------&e'
        gui-list
    :
          not-found
    : '{prefix} Gui wit name &3{req}&e, not found!'
          empty
    : '{prefix} There is no any guis!'
          text
    : '  &4> &2{name}'
        header
    : |-
          &3&m-----------&4< &6&lSimpleGuis &4-&2 List &4>&3&m-----------&e
           &3#&e Available guis:
      vault
    :
        money
    : '{prefix} You doesn''t have enough money! You need: &3{need}&e, you have:
         &5{have}'
        not-found
    : '{prefix} Looks like on server not installed vault, please contact
          administrators!'
      no-perms
    :
        global
    : '{prefix} You doesn''t have enough permission to do this!'
        default-gui
    :
          open
    : '{prefix} You doesn''t have enough permissions to open this gui!'
          item
    : '{prefix} You doesn''t have enough permissions to click on this item!'
      disabled-world
    : '{prefix} This world disabled and you can''t open here guis!'
      prefix
    : '&6&lSG &9&l»&e'
     
    Default example.yml:
    Code (YAML):

    # Available action placeholders
    # [msg] <message> - send message
    # [close] <true> - close gui
    # [open] <gui-name> - open other gui
    # [connect] <server> - connect to specific server
    # [pcommand] <command> - dispatch command as player
    # [ccomand] <command> - dispatch command as console
    #
    settings
    :
     # You also can add permission to open this gui:
      #
      # permission:
      #   need: "open.example"
      #   message: "&6&l>&e You can't open this gui because you doesn't have enough permissions!"
      command
    : "example"
      # Available economy plugins:
      # Vault
      economy
    :
        type
    : Vault
    gui
    :
      title
    : "&6&lExample gui"

      # If you want to put air
      # just add '$' to this place
      drawer
    :
       - '##$$$$$$$'
        - '#$$$$$$$$'
        - '$$S$E$D$$'
        - '$$$$$$$$#'
        - '$$$$$$$##'

      #
      # List of required values in buttons builder:
      # Identifier: '1'
      #   Stack: item.stack
      #   Durability: item.durability
      #   Name: item.name
      #
      # Clear example fo required item:
      #   'I':
      #      item:
      #        stack: stone
      #        durability: 1
      #        count: 1
      #      name: " "
      #
      buttons
    :
       '#':
          item
    :
            stack
    : stained glass pane
            durability
    : 1
            count
    : 1
          name
    : " "
        'S'
    :
          item
    :
            stack
    : skull item
            durability
    : 3
            count
    : 1
            meta
    :
              glowing
    : true
              head
    : 'custom:eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjZhYzFlNjFjZmMzNWI0NzMwMmY1ZGRmMmYyMTkzMzgxMzU0OWFhNjY2YTY4ZmMzMmE0MTE2YzY4MmM4MzcifX19'
          name
    : "&6&lSpigotMC plugin page"
          lore
    :
           - ''
            - '&eClick here and get link'
            - '&eon plugin spigot-page.'
          on-click
    :
            - '[msg] &eSpigot plugin page
    : &6&nhttps://spigotmc.org/resources/'
            - '[close] true'
        'D'
    :
          item
    :
            stack
    : skull item
            durability
    : 3
            count
    : 1
            meta
    :
              glowing
    : true
              head
    : 'custom:eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGM1OWU1YzdiMDczOGI1NzlmM2I0NDRjMTNhNDdiZWQ0OTZiMzA4MzhiMmVlMmIxMjdjYzU5Y2Q3OThhZWU3NyJ9fX0='
          name
    : "&9&lDiscord support"
          lore
    :
           - ''
            - '&eClick here and get link'
            - '&ein discord server and get'
            - '&esupport'
          on-click
    :
            - '[msg] &eDiscord invite
    : &9&nhttps://discord.gg/J9t2Bu2yBa'
            - '[close] true'
        'E'
    :
          cost
    : 10
          permission
    : use.item
          messages
    :
            money
    : "&6&l>&e You doesn't have enough coins to purchase this item!"
            permission
    : "&6&l>&e You doesn't have enough permission to click on this item!"
          item
    :
            stack
    : skull item
            durability
    : 3
            count
    : 5
            meta
    :
             # Glowing automatically apply durability
              # and 'hide enchants' flag, so use it with
              # "item-flags" and "enchants", useless...
              glowing
    : false
              item-flags
    :
               - ''
              enchants
    :
                '1'
    :
                  name
    : durability
                  level
    : 10
              # You can set as:
              # - Head owner (owner:<nick name>)
              # - Custom head (custom:<code>) [To get this heads, you need to go on this site:
              # minecraft-heads.com]
              head
    : 'owner:Max_Wainer'
          name
    : "&6&lEnjoy this plugin!"
          lore
    :
           - ''
            - '&6>&e Made with love, from'
            - '&6>&e &fRu&1ss&4ia&e, on &6Kotlin&e...'
          on-click
    :
           - '[msg] &eYou have clicked on item!'
            - '[close] true'
            - '[ccommand] say {player} clicked on item!'
     
    After 2.0-BETA, you can use API.

    Usage:
    Code (Java):

    import com.maxwainer.ilya.simpleguis.helpers.actions.builder.SimpleGuiAction;

    public class ExampleAction extends SimpleGuiAction {

        public ExampleAction() {
            // In super method, you put
            // your action prefix here.
            super("example");
        }

        @Override
        public void call() {
            // Here you just need to call
            // lambda expression which allow
            // you to use main API function.
            // Also, here you can call 'getPrefix'
            // and 'getInput' (It's parts from
            // action body in gui)
            callConsumer(e -> {
                System.out.println(getPrefix() + " " + getInput());
            });
        }
    }
     
    Registrating:
    Code (Java):

    import com.maxwainer.ilya.simpleguis.helpers.actions.builder.RegisterAction;

    public class ExampleMainClass extends JavaPlugin {

        @Override
        public void onEnable() {
            RegisterAction.registerAction(new ExampleAction());
        }
    }
     
    Huge thanks to Brian. for helping in some parts such as Custom Heads support and developing some parts (Idea with drawer also his)!

    Supported plugins: Vault (With any Economy such as Essentials), PlaceholderAPI, TokenEnchant, TokenManager
    This plugin use NBTAPI, it's already include in JAR
    Why jar size so big? Kotlin.

    TOS:
    1. You cant decompile/modify/disturb the code without my permission.
    2. You cant post my work on other sites without my permission
    3. If you found bug, report this on my discord server: https://discord.gg/J9t2Bu2yBa
    4. You cant claim this plugin as yours
    5. You can enjoy this plugin.

Recent Reviews

  1. SventtReal
    SventtReal
    5/5,
    Version: 2.2.7-BETA
    It's a very cool plugin my friend and easy to use! And I would like to ask you if it is possible to add an option to put an item and give you another in exchange, it would be cool for custom machines and some things like that, Keep it going my friend
    1. XSoftware
      Author's Response
      Thank you for your review!

      Answered on your question in discord! :)
  2. IsGeo
    IsGeo
    4/5,
    Version: 1.1-BETA
    Super simple and easy to use, some things are a bit difficult to understand at first but are easy problems to work around
    1. XSoftware
      Author's Response
      Thank you for your review!