። 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. 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!