# █▀▀ █░█ █▀▀▄ █▀▀█ █▀▄▀█ █▀▀ █▀▀ # ▀▀█ █▀▄ █░░█ █▄▄█ █░▀░█ █▀▀ ▀▀█ # ▀▀▀ ▀░▀ ▀░░▀ ▀░░▀ ▀░░░▀ ▀▀▀ ▀▀▀ # # author: HiiqhFive # version: 1.0.000 # Dependencies: Skript 2.2, Skellett, skUtilities # ----------------- SETTINGS ----------------- # options: prefix: &8[&cskNames&8] admin_permission: * yaml_groups: plugins/skNames/config.yml yaml_users: plugins/skNames/users.yml # not interesting version: 1.0.000 # ----------------- FUNCTIONS ----------------- # function initiateGroups(~: int = 1): set {_groups::*} to yaml nodes "skNames" of file "{@yaml_groups}" set {_total} to 0 loop {_groups::*}: set {_prefix} to yaml value "skNames.%loop-value%.prefix" of file "{@yaml_groups}" set {_suffix} to yaml value "skNames.%loop-value%.suffix" of file "{@yaml_groups}" create nametag "%loop-value%" set prefix of nametag "%loop-value%" to "%{_prefix}%" set suffix of nametag "%loop-value%" to "%{_suffix}%" add 1 to {_total} send "{@prefix} &fLoaded %{_total}% nametag groups from yaml file at {@yaml_groups}!" to console function createNametag(group: text): set yaml value "skNames.%{_group}%.prefix" of file "{@yaml_groups}" to "%{_group}%" set yaml value "skNames.%{_group}%.suffix" of file "{@yaml_groups}" to "" create nametag "%{_group}%" function setPrefix(group: text, prefix: text): set yaml value "skNames.%{_group}%.prefix" of file "{@yaml_groups}" to "%uncolored {_prefix}%" set prefix of nametag "%{_group}%" to "%colored {_prefix}%" function setSuffix(group: text, prefix: text): set yaml value "skNames.%{_group}%.suffix" of file "{@yaml_groups}" to " %uncolored {_prefix}%" set suffix of nametag "%{_group}%" to " %colored {_prefix}%" function setGroup(target: player, group: text): yaml value "skNames.%{_group}%" of file "{@yaml_groups}" exists: add {_target} to nametag "%{_group}%" set yaml value "skNames.%{_target}%" of file "{@yaml_users}" to "%{_group}%" else: send "{@prefix} &4An Error occurred while setting a nametag. (GROUP NOT EXIST)" to console function getNametag(target: player) :: text: set {_group} to yaml value "skNames.%{_target}%" of file "{@yaml_users}" {_group} is not "": return "%{_group}%" else: return "false" # ----------------- OTHER SHIT ----------------- # command /nametags [] [] []: aliases: /nm, /nametag, /ntag permission: * permission message: {@prefix} &cYou're not allowed to run this command. trigger: arg 1 is not set: send "%newline%&7~~~~~~~~~~ &6{@prefix} &av{@version} &7~~~~~~~~~~" send "{@prefix} &7/&cntag &elist &8- &7Show existing groups" send "{@prefix} &7/&cntag &ecreate &6 &8- &7creates group" send "{@prefix} &7/&cntag &edelete &6 &8- &7deletes group" send "{@prefix} &7/&cntag &eprefix &6 &a &8- &7sets prefix" send "{@prefix} &7/&cntag &esuffix &6 &a &8- &7sets suffix" send "{@prefix} &7/&cntag &eadd &6 &a &8- &7adds player" send "{@prefix} &7/&cntag &eremove &6 &a &8- &7removes player" send "{@prefix} &7/&cntag &4reload &8- &7reloads groups" send "{@prefix} &8Thanks using skNames by HiiqhFive (v{@version})." else: arg 1 is "list": set {_groups::*} to skutil yaml nodes "skNames" from file "{@yaml_groups}" size of {_groups::*} is 0: send "{@prefix} &cNo groups existing." else: loop {_groups::*}: set {_prefix} to yaml value "skNames.%loop-value%.prefix" of file "{@yaml_groups}" set {_suffix} to yaml value "skNames.%loop-value%.suffix" of file "{@yaml_groups}" send "{@prefix} &6group: ""%loop-value%"" &7prefix: ""%colored {_prefix}%&7"" &esuffix: ""%colored {_suffix}%&e""" arg 1 is "create": arg 2 is set: yaml value "skNames.%arg 2%" of file "{@yaml_groups}" does not exist: createNametag(arg 2) send "{@prefix} &aNametag group &6%arg 2% &asuccessfully created!" else: send "{@prefix} &cThis group already exists." else: send "{@prefix} &cPlease specify your group name." arg 1 is "delete": arg 2 is set: yaml value "skNames.%arg 2%" of file "{@yaml_groups}" exists: delete yaml value "skNames.%arg 2%" of file "{@yaml_groups}" delete nametag "%arg 2%" send "{@prefix} &aNametag group &6%arg 2% &asuccessfully deleted!" else: send "{@prefix} &cThis group does not exist." arg 1 is "prefix": arg 2 is set: arg 3 is set: setPrefix(arg 2, arg 3) send "{@prefix} &aChanged prefix of group %arg 2% to ""%arg 3%""" else: send "{@prefix} &cPlease specify your prefix for group %arg 2%" else: send "{@prefix} &cPlease specify your group." arg 1 is "suffix": arg 2 is set: arg 3 is set: setSuffix(arg 2, arg 3) send "{@prefix} &aChanged suffix of group %arg 2% to ""%arg 3%""" else: send "{@prefix} &cPlease specify your suffix for group %arg 2%" else: send "{@prefix} &cPlease specify your group." arg 1 is "add": arg 2 is set: arg 3 is set: set {_target} to arg 2 parsed as player {_target} is not "": setGroup({_target}, arg 3) send "{@prefix} &cPlayer was added to group %arg 3%!" else: send "{@prefix} &cPlayer %arg 2% is not online." else: send "{@prefix} &cPlease specify your target group." else: send "{@prefix} &cPlease specify the player." arg 1 is "remove": arg 2 is set: arg 3 is set: yaml value "skNames.%arg 3%" of file "{@yaml_groups}" exists: set {_target} to arg 2 parsed as player {_target} is not "": remove {_target} from nametag "%arg 3%" delete yaml value "skNames.%{_target}%" of file "{@yaml_users}" send "{@prefix} &cPlayer was removed from group %arg 3%!" else: send "{@prefix} &cPlayer %arg 2% is not online." else: send "{@prefix} &cThis group doesn't exist." else: send "{@prefix} &cPlease specify your target group." else: send "{@prefix} &cPlease specify the player." arg 1 is "reload": $ thread initiateGroups() send "{@prefix} &aSuccessfully reloaded all groups." loop all players: $ thread set {_group} to getNametag(loop-player) {_group} is not "false" add loop-player to nametag "%{_group}%" on load: $ thread initiateGroups() on join: $ thread set {_group} to getNametag(player) {_group} is not "false" add player to nametag "%{_group}%"