MyCommand v5.6.8

Details

  • Filename
    MyCommand.jar
  • Uploaded by
  • Uploaded
    Dec 27, 2020
  • Size
    530.40 KB
  • Downloads
    3,638
  • MD5
    bd2f321ef9e22a0e6ba36bf041b2dfc6

Supported Bukkit Versions

  • 1.16
  • 1.15
  • 1.14
  • 1.13
  • 1.12
  • 1.11
  • 1.10
  • 1.9
  • 1.8

Changelog

MyCommand v5.6.8 changelog list :

IconMenu's Updates:

IconMenu's can now use $Script$ lines (like runcmd).
Now you can create iconmenue's who can differs by a statement. Check the example below to see how implement them.

Example of use (command by Kjettinge):

 

questscommand:
  command: /quests
  type: ICON_MENU
  iconmenu_size: 18
  register: true
  permission-required: false
  iconmenu_title: GlobalMining Quest
  iconmenu_commands:
 - "$Script$%if%$PlayerData%RookieHunteFinished%==true"
  - 0:1,WRITTEN_BOOK:0:/warp quest1:§aRookie Hunter
  - "$Script$%else%"
  - 0:1,WRITABLE_BOOK:0:/warp quest1:§aRookie Hunter
  - "$Script$%if%$PlayerData%StartingHunterFinished%==true"
  - 1:2,WRITTEN_BOOK:0:/warp quest2:§aStarting Hunter
  - "$Script$%else%"
  - 1:2,WRITABLE_BOOK:0:/warp quest2:§aStarting Hunter
  - "$Script$%showall%"
  - 1:STONE:0:/showall:§aShow whatever the condition is

 

 

In Dynamic IconMenu's the scripts works when created (command called), but aren't going to update dynamically (a.k.a without closing and reopening the GUI).
A workaround to make something similar can be creating something like this (But still close and re-open the GUI):

  - "$Script$%if%$PlayerData%test123%==true"
  - 10:STONE:0:%openiconmenu%/mycmd-playerdata set $player test123 false;/mymenu:§cGO to false
  - "$Script$%else%"
  - 10:COBBLESTONE:0:%openiconmenu%/mycmd-playerdata set $player test123 true;/mymenu:§aGO to true

 

%openiconmenu% is adjusted to make this works.

In the example above, we run 2 commands directly from the GUI, the first one set a value to something, the second one reopen the same gui, to allow the updated scripts to kick-in.

P.S. The line "$Script$%showall%" make possible to show other results after an IF, without creating an useless if just to do that.


iconmenu_mode: PLAYER_LIST is now personalizable.
You can now set up Title and Description.


iconmenu_playerlist:
 command: /iconmenu_list
 type: ICON_MENU
 iconmenu_title: '&3Online Player List &8(&9$online&8)'
 iconmenu_mode: PLAYER_LIST
 iconmenu_commands:
- '%stayopen%/say $playerhead:&b&lHead of $playerhead:&aPress here to run;&athe command >; ;/say $playerhead'

 


 


IconMenu's items can now use the CustomModelData value. This allow's you to use custom textured items from plugin like (ItemsAdder) into your IconMenu.
To use them place the numeric custommodeldata number right after the data id, splitted by a ;

 - 1:ITEM_NAME:0; <CUSTOM MODEL DATA ID HERE > :/test:Title:Description  ->
 - 1:ITEM_NAME:0;1:/test:Title:Description  ->

 

How to know what CustomModelData an item have? Try with "/mycmd tell $itemcustommodeldata"


PlayerData Updates:

/mycmd-playerdata has now a better tab_completer. Now show the section as they should be, and in flatfile it returns also with the list of variables of a player. (MYSQL not implemented).


Added "/mycmd-playerdata set allaccounts <variable> <content>"
-> This command allow's you to set a variable to all existing players. In MySql mode, this command will set the variable to players who already have that one set up.

Added "/mycmd-playerdata list <add | remove> <player_name> <variable> <content>"
-> Create lists of string to be saved.

Added $Script$%PlayerData%listname.addlist=stringtoadd
Added $Script$%PlayerData%listname.removelist=stringtoremove

Added $Script$%PlayerData%array1.contains=string2


The comparator ".contains=" and ".notcontains=" are updated to works on lists, and it looks only for exact results. So if you search for "hello", and in the list there is "hello hello", it return false, you need to search for the exact string line "hello hello".

 
containsexample:
  command: /containsexample
  type: RUN_COMMAND
  runcmd:
  - $Script$%if%$PlayerData%list1%.contains=$multiargs
  - $text$Correct!
  - $Script$%else%
  - $text$NOOO!  

 


PlayerData Economy :

MyCommand can now be used as a basic Economy Plugin, using a playerdata value as storage. You need Vault to make it working.
new lines in config.yml (add them manually if you want use it, or generate a new config.yml):

ECONOMY:
  USE_MYCOMMAND_AS_ECONOMY_PLUGIN: false
  PLAYERDATA_VALUE: money
  SUFFIX: "$"

 




Holograms Updates:

Added /mycmd holograms floatingitem <HoloName> <Material_name>
It spawns an Item on the top of a created hologram, no extra events needed. (maybe this one isn't working perfectly.. i forgot about it lol until this release)


Blockset Updates :

You can now run commands through ItemFrames. The item inside the itemframe must be contained in the right click enable one's of blockset.

/mycmd-blockset itemframe (Show the Help).

Added LISTENERS.ITEMFRAME_LISTENER: false in config.yml

Turn it on, to enable the feature.

Permissions : mycommand.itemframe.break

Miss features, but it is in a working state.


Misc Changes/Fixes:

Fixed "/mycmd-playerdata set" command creating playerdata/uuid.yml files also when the plugin is set to use MySql
Fixed CHAT_LISTENER custom command prefixes not working on new versions.
$player_list now doesn't return anymore with the names of non-visible players. If you are vanished to a player, for example, your name doesn't appears anymore in that list.
%PlayerOptionsFor% was not working.
Changed the order where PlaceHolderAPI replace it's placeholder. (DIDN't TESTED any scenario if anything is like before). This change will fix the problem with $PlayerData%VarIaBlE% not working if the name is Case Sensitive.
PlayerData's now will use long as a value instead of int, to allow greater numbers to be used.

TAB_COMPLETER Updates:

Added tab_completer_display_mode

by default now is "CHARACTER_BASED", that means when you start typing in the word you want, the suggestions adjust to that word accordingly.
SHOW_ALL just throw at you everything all togheter.

Example:
tab_completer_display_mode: SHOW_ALL

Do not use this option at all if you want the other type, as i said, it's default now.


Added a regex filter to avoid users to input unsafe characters. By default is set to :

config.yml :

REGEX:
  PATTERN: "^[-a-zA-Z0-9._ ]+"

 



language.yml

LANGUAGE:
  CHARACTERS_NOT_ALLOWED: "&cYour input contains not allowed characters."

 




Misc changes and bugfixes.