nulli0n / SunLight-spigot

GNU General Public License v3.0
31 stars 11 forks source link

/ec #59

Closed MikeyReal closed 3 months ago

MikeyReal commented 5 months ago

/echest is working but /ec isent

Command config:

# Here you can create your own shortcuts for the SunLight main and module's sub-commands.
# Shortcut syntax: 'shortcut1,shortcut2,etc: command arg1 arg2 etc'
# Example #1: 'call,tpa: teleport request' will create two shortcuts: '/tpa' and '/call' for the '/teleport request' command.
# Example #2: 'gmc: gamemode creative' will create '/gmc' shortcut for '/gamemode creative' command.
Shortcuts:
  clearender: enderchest clear
  endersee,ec: enderchest open
  more: item amount 64
  rename: item name
  relore: item lore
  fix: item damage 0
  createworld: worlds create
  deleteworld: worlds delete
  loadworld: worlds load
  unloadworld: worlds unload
  tpa,tpr,call: teleport request
  clearinv: inventory clear
  invsee: inventory open
  gms: gamemode survival
  gmc: gamemode creative
  gma: gamemode adventure
  gmsp: gamemode spectator
  spawn: spawns teleport
  setspawn: spawns create
  delspawn: spawns delete
  kit: kits list
  kitlist: kits list
  warp: warps teleport
  setwarp: warps create
  delwarp: warps delete
  warplist: warps list
  hat: equip head
  rain: weather storm
  sun: weather clear
  thunder: weather thunder
  ignite: fire add 1200
  unignore: ignore remove
  addignore: ignore add
  ignorelist: ignore list
  home: homes teleport
  sethome: homes set
  delhome: homes delete
  homelist: homes list
  visithome: homes visit
  morning: time set 0
  day: time set 6000
  evening: time set 12000
  night: time set 18000
# Sets whether commands with similar names/aliases should be unregistered from the server
# if they're overlaps with the SunLight commands.
# Warning: Settings this on 'true' may result both positive and negative effects.
Unregister_Conflicts: false
# A list of SunLight (!) commands that won't be registered into the server at all.
# You can put here any command alias from the 'Aliases' section.
Disabled: []
# Here you can create custom cooldowns for ALL server commands including command arguments.
# ===== Options Description =====
# [Command] - This is command name to add cooldown for. It will auto-detect all its aliases and will work for all of them.
# [Arguments] - List of additional arguments to be checked in command line. Each line = new argument.
#         You can provide multiple arguments on the same line (split them with commas).
#         It can be useful if argument has aliases like: '/home teleport' and '/home tp', where 'teleport' and 'tp' does the same thing.
#         If arguments amount is greater than in executed command, the cooldown will be skipped.
#         If arguments amount is smaller or equals to arguments in executed command, the cooldown will be applied.
# [Cooldown] - Rank-based cooldown (in seconds) before player can use this command again.
#         If player has multiple ranks, the SMALLEST cooldown will be used.
#         You can put cooldown as '-1' to make command one-timed.
#         Set cooldown to 0 to disable it for certain rank(s).
Cooldowns:
  feed:
    Command: feed
    Arguments: []
    Cooldown:
      vip: 60
      gold: 30
  heal:
    Command: heal
    Arguments: []
    Cooldown:
      vip: 60
      gold: 30
  home_tp:
    Command: homes
    Arguments:
    - teleport,tp
    Cooldown:
      vip: 10
      default: 30
Aliases:
  anvil: anvil
  air: air
  back: back
  condense: condense
  deathback: dback,deathback
  disposal: disposal
  dimension: dim,dimension
  enchant: enchant
  enchanting: enchanting
  enchantmentseed: enchseed,xpseed,enchantmentseed
  enderchest: echest,enderchest
  exp: xp,exp
  extinguish: ext,extinguish
  equip: equip
  feed: feed
  fire: fire
  fly: fly
  flyspeed: flyspeed
  food: food
  foodgod: foodgod
  gamemode: gm,gamemode
  god: god
  grindstone: grindstone
  heal: heal
  health: health
  ignore: ignore
  inventory: inv,inventory
  item: i,item
  loom: loom
  mob: mob
  near: near
  nick: nick
  nomobtarget: nomobtarget
  nophantom: nophantom
  playerinfo: pinfo,playerinfo
  playerlist: plist,playerlist
  skull: skull
  smite: smite
  spawner: spawner
  speed: speed
  sudo: sudo
  suicide: suicide
  time: time
  teleport: tp,teleport
  vanish: vanish
  weather: weather
  workbench: workbench
  kick: kick
  ban: ban
  banip: banip
  banhistory: banhistory
  banlist: banlist
  unban: unban
  mute: mute
  mutehistory: mutehistory
  mutelist: mutelist
  unmute: unmute
  warn: warn
  warnhistory: warnhistory
  warnlist: warnlist
  unwarn: unwarn
  worlds: worldmanager,worlds
  spawns: spawns
  homes: homes
  homesadmin: homesadmin
  kits: kits
  warps: warps
  clearchat: clearchat
  chatchannel: chatchannel
  me: me
  broadcast: bc,broadcast
  tell: t,pm,whisper,w,dm,msg,tell
  reply: r,reply
  togglepm: togglepm
  chatspy: spy,chatspy
  mentions: mentions
  rtp: wild,rtp
  chairs: chairs
  sit: sit
  chestsort: chestsort
  afk: afk
  scoreboard: board,scoreboard
Back:
  # Sets how long (in seconds) back location will be stored before being removed & invalid.
  Expire_Time: 3600
  # Sets minimal distance between current and new player's locations to
  # set or override current player's back location.
  Min_Distance_Difference: 10.0
  # A list of worlds, where back locations won't be saved.
  # This setting can be bypassed with 'sunlight.command.back.bypass.worlds' permission
  Disabled_Worlds:
  - my_custom_world
  # A list of teleport causes, that will be ignored for saving back location.
  # This setting can be bypassed with 'sunlight.command.back.bypass.causes' permission
  # https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/player/PlayerTeleportEvent.TeleportCause.html
  Ignored_Causes:
  - ENDER_PEARL
DeathBack:
  # Sets whether player's death location will be removed after use.
  Reset_On_Use: true
  # A list of worlds, where death back location won't be saved.
  # This setting can be bypassed with 'sunlight.command.deathback.bypass.worlds' permission.
  Disabled_Worlds:
  - my_custom_world
Disposal:
  Menu:
    # Sets the inventory title for disposal GUI.
    Title: Disposal
    # Sets the inventory size for disposal GUI. Must be multiply of 9 up to 54.
    Size: 36
God:
  Disabled_Damage:
    # A list of disabled damage sources for incoming damage.
    # Available values: PLAYER, MOB, GENERIC
    Incoming:
    - GENERIC
    - PLAYER
    - MOB
    # A list of disabled damage sources for outgoing damage.
    # Available values: PLAYER, MOB, GENERIC
    Outgoing:
    - GENERIC
    - PLAYER
    - MOB
  # A list of worlds, where GodMode will have no effect.
  Disabled_Worlds:
  - my_custom_world
Item:
  Amount:
    # Sets default amount value if not specified in command.
    Default_Value: 64
Near:
  # Sets the block radius to look for players in.
  Radius: 100
  # List format for nearby players.
  # You can use PlaceholderAPI here.
  # JSON is also supported: https://github.com/nulli0n/NexEngine-spigot/wiki/Language-Config#json-formatting
  Format:
  - '#ffeea2'
  - '#ffeea2Players in #fdba5e+%radius% #ffeea2blocks from you:'
  - '#ffeea2'
  - '#ffeea2▪ #fdba5e%player_name%: #ffeea2%amount% blocks away <? show_text:"#ddeceeClick to send teleport request." run_command:"/teleport request %player_name%" ?>#aefd5e[TPA]</>'
  - '#ffeea2'
Nick:
  # Sets minimal nick length for the '/nick changecommand.'
  Min_Length: 3
  # Sets maximal nick length for the '/nick changecommand.'
  Max_Length: 20
  # A list of words, that can not be used in custom nicks for the '/nick changecommand.'
  Banned_Words:
  - admin
  - nigga
  - dick
  - ass
  # Sets regex pattern that custom nick must match to be used.
  # By default it accepts all EN-RU characters, numbers, spaces and underscore.
  Regex: '[a-zA-Zа-яА-Я0-9_\s]*'
PlayerInfo:
  # Sets player info format.
  # You can use PlaceholderAPI here.
  # JSON is supported: https://github.com/nulli0n/NexEngine-spigot/wiki/Language-Config#json-formatting
  Format:
  - '#ffeea2'
  - '#ffeea2&lPlayer Info:'
  - '#ffeea2'
  - '#ffeea2▪ #fdba5eReal Name: #ffeea2%player_name%'
  - '#ffeea2▪ #fdba5eDisplay Name: #ffeea2%player_display_name%'
  - '#ffeea2▪ #fdba5eOnline: #ffeea2%is_online%'
  - '#ffeea2▪ #fdba5eLast Join: #ffeea2%last_join%'
  - '#ffeea2▪ #fdba5eLast IP: #ffeea2%ip%'
  - '#ffeea2'
  - '#ffeea2▪ #fdba5eLocation: #ffeea2%location_x%, %location_y%, %location_z% in %location_world%'
  - '#ffeea2▪ #fdba5eGame Mode: #ffeea2%game_mode%'
  - '#ffeea2▪ #fdba5eCan Fly: #ffeea2%can_fly%'
  - '#ffeea2▪ #fdba5eFood Level: #ffeea2%food_level%'
  - '#ffeea2▪ #fdba5eSaturation: #ffeea2%saturation%'
  - '#ffeea2▪ #fdba5eHealth: #ffeea2%health%/%max_health%'
  - '#ffeea2'
PlayerList:
  # Place your ranks in order from highest -> lowest for best results.
  RankNames:
    admins: '#fd5e5eAdmins'
    vip: '#aefd5eVIPs'
    default: '#6c6c62Members'
  # Sets the format for player list.
  # JSON is supported here: https://github.com/nulli0n/NexEngine-spigot/wiki/Language-Config#json-formatting
  Format:
  - '#ffeea2'
  - '#ffeea2&lOnline Players:'
  - '#ffeea2'
  - '%rank% (%amount%): #d4d9d8%players%'
  - '#ffeea2'
  - '#ffeea2Total #fdba5e%total%#ffeea2 players online.'
  - '#ffeea2'
Teleport:
  Request:
    # Sets how long (in seconds) teleport request will be valid to accept/decline it.
    Timeout: 60
Me:
  # Sets the format for action message.
  # Use %message% placeholder for the action text.
  # You can use 'Player' placeholders: https://github.com/nulli0n/NexEngine-spigot/wiki/Internal-Placeholders
  # JSON Formatting is allowed: https://github.com/nulli0n/NexEngine-spigot/wiki/Language-Config#json-formatting
  Format: '&e&o* &6&o%player_display_name% &e&o%message%'
04:02:16 INFO]: 1__Mikey__1 issued server command: /echest
[04:02:19 INFO]: 1__Mikey__1 issued server command: /ec
[04:02:19 ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing 'ec' in su.nexmedia.engine.command.CommandRegister(endersee)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:178) ~[purpur-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_20_R1.CraftServer.dispatchCommand(CraftServer.java:1001) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at org.bukkit.craftbukkit.v1_20_R1.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:265) ~[purpur-1.20.1.jar:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:332) ~[?:?]
        at net.minecraft.commands.Commands.performCommand(Commands.java:316) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2447) ~[?:?]
        at net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$22(ServerGamePacketListenerImpl.java:2407) ~[?:?]
        at net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:59) ~[?:?]
        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
        at net.minecraft.server.TickTask.run(TickTask.java:18) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153) ~[?:?]
        at net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24) ~[?:?]
        at net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1365) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at net.minecraft.server.MinecraftServer.d(MinecraftServer.java:197) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126) ~[?:?]
        at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1342) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1335) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:136) ~[?:?]
        at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1313) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1201) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:322) ~[purpur-1.20.1.jar:git-Purpur-2062]
        at java.lang.Thread.run(Thread.java:840) ~[?:?]
Caused by: java.lang.NullPointerException: Cannot invoke "org.bukkit.command.Command.getLabel()" because the return value of "su.nexmedia.engine.api.command.GeneralCommand.getFallback()" is null
        at su.nightexpress.sunlight.command.CommandShortcut.onExecute(CommandShortcut.java:59) ~[67733 - SunLight - Best EssentialsCMI Alternative.jar:?]
        at su.nexmedia.engine.api.command.AbstractCommand.execute(AbstractCommand.java:105) ~[NexEngine (1).jar:?]
        at su.nexmedia.engine.api.command.GeneralCommand.onCommand(GeneralCommand.java:95) ~[NexEngine (1).jar:?]
        at su.nexmedia.engine.command.CommandRegister.execute(CommandRegister.java:98) ~[NexEngine (1).jar:?]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:168) ~[purpur-api-1.20.1-R0.1-SNAPSHOT.jar:?]
        ... 22 more
nulli0n commented 3 months ago

Fixed in v3.12.0 (dev build is available in the discord)