mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-24 14:16:45 +01:00
Config files will update automatically again
This commit is contained in:
parent
dc1d2540db
commit
7af0bc468a
@ -1,4 +1,7 @@
|
|||||||
Version 2.2.000
|
Version 2.2.000
|
||||||
|
TODO: Configs are not adding new keys and this needs to be fixed, this affects config.yml, experience.yml, etc
|
||||||
|
TODO: Add Xbows/Tridents to salvage/repair
|
||||||
|
TODO: Add unit test for combat XP values
|
||||||
TODO: Add unit test to determine crossbow or bow skill
|
TODO: Add unit test to determine crossbow or bow skill
|
||||||
TODO: Add unit test for trident xp processing
|
TODO: Add unit test for trident xp processing
|
||||||
TODO: Add missing entries to changelog
|
TODO: Add missing entries to changelog
|
||||||
@ -1297,7 +1300,7 @@ Version 2.1.128
|
|||||||
Fixed a bug where certain types of ore did not receive bonuses from Blast Mining
|
Fixed a bug where certain types of ore did not receive bonuses from Blast Mining
|
||||||
Fixed a few locale errors with commands
|
Fixed a few locale errors with commands
|
||||||
(API) Added ExperienceAPI::addCombatXP for adding combat XP to players, signature may change so its deprecated for now
|
(API) Added ExperienceAPI::addCombatXP for adding combat XP to players, signature may change so its deprecated for now
|
||||||
mcMMO now logs whether or not its using FlatFile or SQL database on load
|
mcMMO now logs whether its using FlatFile or SQL database on load
|
||||||
(1.16) Strider added to combat experience with a value of 1.2
|
(1.16) Strider added to combat experience with a value of 1.2
|
||||||
|
|
||||||
NOTES: A more thorough look at Unarmed balance will happen in the future, the intention of this nerf is to make Unarmed less rewarding until it is leveled quite a bit.
|
NOTES: A more thorough look at Unarmed balance will happen in the future, the intention of this nerf is to make Unarmed less rewarding until it is leveled quite a bit.
|
||||||
@ -1317,7 +1320,7 @@ Version 2.1.127
|
|||||||
Version 2.1.126
|
Version 2.1.126
|
||||||
mcMMO now relies on NMS for some of its features, if NMS cannot properly be wired up when initializing mcMMO behaviours relying on NMS will either be partially supported or disabled
|
mcMMO now relies on NMS for some of its features, if NMS cannot properly be wired up when initializing mcMMO behaviours relying on NMS will either be partially supported or disabled
|
||||||
mcMMO now has a compatibility mode, any features that require specific versions of Minecraft for full functionality will be disabled if your server is not running a compatible version, mcMMO will still function in compatibility mode, but either the feature will be modified or disabled depending on the version of the server software
|
mcMMO now has a compatibility mode, any features that require specific versions of Minecraft for full functionality will be disabled if your server is not running a compatible version, mcMMO will still function in compatibility mode, but either the feature will be modified or disabled depending on the version of the server software
|
||||||
New command /mmocompat - Shows information about whether or not mcMMO is fully functional or if some features are disabled due to the server software not being fully supported. Can be used by players or console.
|
New command /mmocompat - Shows information about whether mcMMO is fully functional or if some features are disabled due to the server software not being fully supported. Can be used by players or console.
|
||||||
New command /mmoxpbar (alias /xpbarsettings) - Players can choose to always show XP bars or to never show XP bars on a per skill basis
|
New command /mmoxpbar (alias /xpbarsettings) - Players can choose to always show XP bars or to never show XP bars on a per skill basis
|
||||||
XPBars now last for 3 seconds before hiding instead of 2 seconds
|
XPBars now last for 3 seconds before hiding instead of 2 seconds
|
||||||
Fixed an exploit involving fishing rods
|
Fixed an exploit involving fishing rods
|
||||||
@ -1953,7 +1956,7 @@ Version 2.1.68
|
|||||||
Fixed a bug where consuming food in the off hand did not trigger the Diet abilities
|
Fixed a bug where consuming food in the off hand did not trigger the Diet abilities
|
||||||
|
|
||||||
Version 2.1.67
|
Version 2.1.67
|
||||||
The XP bar now reflects whether or not the player is receiving the early game boost
|
The XP bar now reflects whether the player is receiving the early game boost
|
||||||
Players who are receiving an early game boost will be shown "Learning a skill..." as the title of the XP bar while gaining XP
|
Players who are receiving an early game boost will be shown "Learning a skill..." as the title of the XP bar while gaining XP
|
||||||
New locale string 'XPBar.Template.EarlyGameBoost'
|
New locale string 'XPBar.Template.EarlyGameBoost'
|
||||||
|
|
||||||
@ -2002,7 +2005,7 @@ Version 2.1.63
|
|||||||
Version 2.1.62
|
Version 2.1.62
|
||||||
Added a new admin notification system, sensitive commands will print chat messages to "admins" (players with either Operator status or admin chat permission)
|
Added a new admin notification system, sensitive commands will print chat messages to "admins" (players with either Operator status or admin chat permission)
|
||||||
Added a setting to disable the new admin notifications to config.yml 'General.AdminNotifications' (this will be more configurable in 2.2)
|
Added a setting to disable the new admin notifications to config.yml 'General.AdminNotifications' (this will be more configurable in 2.2)
|
||||||
OPs and players with the admin chat permission will now see details about XP rate event commands regardless of whether or not the XP rate event messages are enabled
|
OPs and players with the admin chat permission will now see details about XP rate event commands regardless of whether the XP rate event messages are enabled
|
||||||
Updated hu_HU locale (thanks andris155)
|
Updated hu_HU locale (thanks andris155)
|
||||||
Added XP for mining Magma_Block (default 30 XP - Update your config, see notes)
|
Added XP for mining Magma_Block (default 30 XP - Update your config, see notes)
|
||||||
Diamond tools & armor in the repair config now have a minimum level of 0 (Update your config, temporary hotfix, 2.2 addresses this issue, see notes)
|
Diamond tools & armor in the repair config now have a minimum level of 0 (Update your config, temporary hotfix, 2.2 addresses this issue, see notes)
|
||||||
@ -2010,9 +2013,9 @@ Version 2.1.62
|
|||||||
New locale string - 'Server.ConsoleName' the name of the server console, this will be used in place of player names when sending admin notifications out if the command was used from console
|
New locale string - 'Server.ConsoleName' the name of the server console, this will be used in place of player names when sending admin notifications out if the command was used from console
|
||||||
New locale string - 'Notifications.Admin.Format.Others' style formatting + prefix for admin notifications used in the other new strings below
|
New locale string - 'Notifications.Admin.Format.Others' style formatting + prefix for admin notifications used in the other new strings below
|
||||||
New locale string - 'Notifications.Admin.Format.Self' style formatting + prefix for admin command confirmations sent to the user who executed the command
|
New locale string - 'Notifications.Admin.Format.Self' style formatting + prefix for admin command confirmations sent to the user who executed the command
|
||||||
New locale string - 'Notifications.Admin.XPRate.Start.Self' sent to the user who modifies the XP rate regardless of whether or not messages for the event are enabled
|
New locale string - 'Notifications.Admin.XPRate.Start.Self' sent to the user who modifies the XP rate regardless of whether messages for the event are enabled
|
||||||
New locale string - 'Notifications.Admin.XPRate.Start.Others' details of who started an XP rate event are sent to players who have Operator status or admin chat permission when the command to start or modify XP of an event has been issued
|
New locale string - 'Notifications.Admin.XPRate.Start.Others' details of who started an XP rate event are sent to players who have Operator status or admin chat permission when the command to start or modify XP of an event has been issued
|
||||||
New locale string - 'Notifications.Admin.XPRate.End.Self' sent to the user who ended the XP rate event regardless of whether or not messages for the event are enabled
|
New locale string - 'Notifications.Admin.XPRate.End.Self' sent to the user who ended the XP rate event regardless of whether messages for the event are enabled
|
||||||
New locale string - 'Notifications.Admin.XPRate.End.Others' details of who ended an XP rate event are sent to players who have Operator status or admin chat permission when the command to end the event has been issued
|
New locale string - 'Notifications.Admin.XPRate.End.Others' details of who ended an XP rate event are sent to players who have Operator status or admin chat permission when the command to end the event has been issued
|
||||||
|
|
||||||
NOTES:
|
NOTES:
|
||||||
@ -3984,7 +3987,7 @@ Removed performance debugging
|
|||||||
Removed some useless settings from the config file
|
Removed some useless settings from the config file
|
||||||
|
|
||||||
Version 1.0.34
|
Version 1.0.34
|
||||||
Fixed the PVP setting determining whether or not you would hurt yourself from AoE Abilities
|
Fixed the PVP setting determining whether you would hurt yourself from AoE Abilities
|
||||||
Added Dutch (nl) language support
|
Added Dutch (nl) language support
|
||||||
Super Breaker now gives the correct XP as determined by config.yml
|
Super Breaker now gives the correct XP as determined by config.yml
|
||||||
Sand Stone XP is now configurable and no longer shares the 'stone' node
|
Sand Stone XP is now configurable and no longer shares the 'stone' node
|
||||||
@ -3994,7 +3997,7 @@ Version 1.0.33
|
|||||||
Fixed the toggle for the Excavation drop 'Cocoa Beans'
|
Fixed the toggle for the Excavation drop 'Cocoa Beans'
|
||||||
Fixed bug where Unarmed users could disarm without being bare handed
|
Fixed bug where Unarmed users could disarm without being bare handed
|
||||||
Cocoa Beans now have an XP modifier in config.yml
|
Cocoa Beans now have an XP modifier in config.yml
|
||||||
You can now toggle whether or not Mobspawners will give XP (in config.yml)
|
You can now toggle whether Mobspawners will give XP (in config.yml)
|
||||||
MySQL version now makes requests to the MySQL server less frequently (should help performance)
|
MySQL version now makes requests to the MySQL server less frequently (should help performance)
|
||||||
Fixed bug with Skull Splitter hitting the user
|
Fixed bug with Skull Splitter hitting the user
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ public final class ExperienceAPI {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Start the task that gives combat XP.
|
* Start the task that gives combat XP.
|
||||||
* Processes combat XP like mcMMO normally would, so mcMMO will check whether or not the entity should reward XP when giving out the XP
|
* Processes combat XP like mcMMO normally would, so mcMMO will check whether the entity should reward XP when giving out the XP
|
||||||
*
|
*
|
||||||
* @param mcMMOPlayer The attacking player
|
* @param mcMMOPlayer The attacking player
|
||||||
* @param target The defending entity
|
* @param target The defending entity
|
||||||
@ -56,7 +56,7 @@ public final class ExperienceAPI {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Start the task that gives combat XP.
|
* Start the task that gives combat XP.
|
||||||
* Processes combat XP like mcMMO normally would, so mcMMO will check whether or not the entity should reward XP when giving out the XP
|
* Processes combat XP like mcMMO normally would, so mcMMO will check whether the entity should reward XP when giving out the XP
|
||||||
*
|
*
|
||||||
* @param mcMMOPlayer The attacking player
|
* @param mcMMOPlayer The attacking player
|
||||||
* @param target The defending entity
|
* @param target The defending entity
|
||||||
|
@ -43,7 +43,7 @@ public class ChatManager {
|
|||||||
*
|
*
|
||||||
* @param mmoPlayer target player
|
* @param mmoPlayer target player
|
||||||
* @param rawMessage the raw message from the player as it was typed
|
* @param rawMessage the raw message from the player as it was typed
|
||||||
* @param isAsync whether or not this is getting processed via async
|
* @param isAsync whether this is getting processed via async
|
||||||
*/
|
*/
|
||||||
public void processPlayerMessage(@NotNull McMMOPlayer mmoPlayer, @NotNull String rawMessage, boolean isAsync) {
|
public void processPlayerMessage(@NotNull McMMOPlayer mmoPlayer, @NotNull String rawMessage, boolean isAsync) {
|
||||||
processPlayerMessage(mmoPlayer, mmoPlayer.getChatChannel(), rawMessage, isAsync);
|
processPlayerMessage(mmoPlayer, mmoPlayer.getChatChannel(), rawMessage, isAsync);
|
||||||
@ -69,7 +69,7 @@ public class ChatManager {
|
|||||||
* @param mmoPlayer target player
|
* @param mmoPlayer target player
|
||||||
* @param chatChannel target chat channel
|
* @param chatChannel target chat channel
|
||||||
* @param rawMessage raw chat message as it was typed
|
* @param rawMessage raw chat message as it was typed
|
||||||
* @param isAsync whether or not this is getting processed via async
|
* @param isAsync whether this is getting processed via async
|
||||||
*/
|
*/
|
||||||
private void processPlayerMessage(@NotNull McMMOPlayer mmoPlayer, @NotNull ChatChannel chatChannel, @NotNull String rawMessage, boolean isAsync) {
|
private void processPlayerMessage(@NotNull McMMOPlayer mmoPlayer, @NotNull ChatChannel chatChannel, @NotNull String rawMessage, boolean isAsync) {
|
||||||
switch (chatChannel) {
|
switch (chatChannel) {
|
||||||
@ -155,7 +155,7 @@ public class ChatManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not the player is allowed to send a message to the chat channel they are targeting
|
* Whether the player is allowed to send a message to the chat channel they are targeting
|
||||||
* @param mmoPlayer target player
|
* @param mmoPlayer target player
|
||||||
* @return true if the player can send messages to that chat channel
|
* @return true if the player can send messages to that chat channel
|
||||||
*/
|
*/
|
||||||
@ -197,7 +197,7 @@ public class ChatManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not a specific chat channel is enabled
|
* Whether a specific chat channel is enabled
|
||||||
* ChatChannels are enabled/disabled via user config
|
* ChatChannels are enabled/disabled via user config
|
||||||
*
|
*
|
||||||
* If chat is disabled, this always returns false
|
* If chat is disabled, this always returns false
|
||||||
|
@ -73,7 +73,7 @@ public abstract class AbstractPlayerAuthor implements Author {
|
|||||||
* Sanitized names are associated with a {@link ChatChannel} as different chat channels have different chat name settings
|
* Sanitized names are associated with a {@link ChatChannel} as different chat channels have different chat name settings
|
||||||
*
|
*
|
||||||
* @param chatChannel target chat channel
|
* @param chatChannel target chat channel
|
||||||
* @param useDisplayName whether or not to use this authors display name
|
* @param useDisplayName whether to use this authors display name
|
||||||
*/
|
*/
|
||||||
private void updateSanitizedNameCache(@NotNull ChatChannel chatChannel, boolean useDisplayName) {
|
private void updateSanitizedNameCache(@NotNull ChatChannel chatChannel, boolean useDisplayName) {
|
||||||
if(useDisplayName) {
|
if(useDisplayName) {
|
||||||
|
@ -17,14 +17,14 @@ public interface Author extends Identity {
|
|||||||
@NotNull String getAuthoredName(@NotNull ChatChannel chatChannel);
|
@NotNull String getAuthoredName(@NotNull ChatChannel chatChannel);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not this author is a {@link org.bukkit.command.ConsoleCommandSender}
|
* Whether this author is a {@link org.bukkit.command.ConsoleCommandSender}
|
||||||
*
|
*
|
||||||
* @return true if this author is the console
|
* @return true if this author is the console
|
||||||
*/
|
*/
|
||||||
boolean isConsole();
|
boolean isConsole();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not this author is a {@link org.bukkit.entity.Player}
|
* Whether this author is a {@link org.bukkit.entity.Player}
|
||||||
* @return true if this author is a player
|
* @return true if this author is a player
|
||||||
*/
|
*/
|
||||||
boolean isPlayer();
|
boolean isPlayer();
|
||||||
|
@ -74,8 +74,8 @@ public class AdminChatMailer extends AbstractChatMailer {
|
|||||||
*
|
*
|
||||||
* @param author the author
|
* @param author the author
|
||||||
* @param rawString the raw message as the author typed it before any styling
|
* @param rawString the raw message as the author typed it before any styling
|
||||||
* @param isAsync whether or not this is being processed asynchronously
|
* @param isAsync whether this is being processed asynchronously
|
||||||
* @param canColor whether or not the author can use colors in chat
|
* @param canColor whether the author can use colors in chat
|
||||||
*/
|
*/
|
||||||
public void processChatMessage(@NotNull Author author, @NotNull String rawString, boolean isAsync, boolean canColor) {
|
public void processChatMessage(@NotNull Author author, @NotNull String rawString, boolean isAsync, boolean canColor) {
|
||||||
AdminChatMessage chatMessage = new AdminChatMessage(pluginRef, author, constructAudience(), rawString, addStyle(author, rawString, canColor));
|
AdminChatMessage chatMessage = new AdminChatMessage(pluginRef, author, constructAudience(), rawString, addStyle(author, rawString, canColor));
|
||||||
|
@ -27,8 +27,8 @@ public class PartyChatMailer extends AbstractChatMailer {
|
|||||||
*
|
*
|
||||||
* @param author the author
|
* @param author the author
|
||||||
* @param rawString the raw message as the author typed it before any styling
|
* @param rawString the raw message as the author typed it before any styling
|
||||||
* @param isAsync whether or not this is being processed asynchronously
|
* @param isAsync whether this is being processed asynchronously
|
||||||
* @param canColor whether or not the author can use colors in chat
|
* @param canColor whether the author can use colors in chat
|
||||||
*/
|
*/
|
||||||
public void processChatMessage(@NotNull Author author, @NotNull String rawString, @NotNull Party party, boolean isAsync, boolean canColor, boolean isLeader) {
|
public void processChatMessage(@NotNull Author author, @NotNull String rawString, @NotNull Party party, boolean isAsync, boolean canColor, boolean isLeader) {
|
||||||
PartyChatMessage chatMessage = new PartyChatMessage(pluginRef, author, constructPartyAudience(party), rawString, addStyle(author, rawString, canColor, isLeader), party);
|
PartyChatMessage chatMessage = new PartyChatMessage(pluginRef, author, constructPartyAudience(party), rawString, addStyle(author, rawString, canColor, isLeader), party);
|
||||||
|
@ -17,11 +17,6 @@ public class AdvancedConfig extends BukkitConfig {
|
|||||||
validate();
|
validate();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initDefaults() {
|
|
||||||
config.addDefault("Skills.General.StartingLevel", 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected boolean validateKeys() {
|
protected boolean validateKeys() {
|
||||||
// Validate all the settings!
|
// Validate all the settings!
|
||||||
@ -427,7 +422,7 @@ public class AdvancedConfig extends BukkitConfig {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* This returns the maximum level at which superabilities will stop lengthening from scaling alongside skill level.
|
* This returns the maximum level at which superabilities will stop lengthening from scaling alongside skill level.
|
||||||
* It returns a different value depending on whether or not the server is in retro mode
|
* It returns a different value depending on whether the server is in retro mode
|
||||||
*
|
*
|
||||||
* @return the level at which abilities stop increasing in length
|
* @return the level at which abilities stop increasing in length
|
||||||
*/
|
*/
|
||||||
@ -440,7 +435,7 @@ public class AdvancedConfig extends BukkitConfig {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* This returns the frequency at which abilities will increase in length
|
* This returns the frequency at which abilities will increase in length
|
||||||
* It returns a different value depending on whether or not the server is in retro mode
|
* It returns a different value depending on whether the server is in retro mode
|
||||||
*
|
*
|
||||||
* @return the number of levels required per ability length increase
|
* @return the number of levels required per ability length increase
|
||||||
*/
|
*/
|
||||||
|
@ -7,52 +7,111 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.nio.file.Files;
|
||||||
|
import java.nio.file.Path;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public abstract class BukkitConfig {
|
public abstract class BukkitConfig {
|
||||||
public static final String CONFIG_PATCH_PREFIX = "ConfigPatchVersion:";
|
boolean copyDefaults = true;
|
||||||
public static final String CURRENT_CONFIG_PATCH_VER = "ConfigPatchVersion: 2";
|
|
||||||
public static final char COMMENT_PREFIX = '#';
|
|
||||||
protected final String fileName;
|
protected final String fileName;
|
||||||
protected final File configFile;
|
protected final File configFile;
|
||||||
|
protected YamlConfiguration defaultYamlConfig;
|
||||||
protected YamlConfiguration config;
|
protected YamlConfiguration config;
|
||||||
protected @NotNull
|
protected @NotNull final File dataFolder;
|
||||||
final File dataFolder;
|
|
||||||
|
|
||||||
public BukkitConfig(@NotNull String fileName, @NotNull File dataFolder) {
|
public BukkitConfig(@NotNull String fileName, @NotNull File dataFolder) {
|
||||||
mcMMO.p.getLogger().info("[config] Initializing config: " + fileName);
|
mcMMO.p.getLogger().info("[config] Initializing config: " + fileName);
|
||||||
this.fileName = fileName;
|
this.fileName = fileName;
|
||||||
this.dataFolder = dataFolder;
|
this.dataFolder = dataFolder;
|
||||||
configFile = new File(dataFolder, fileName);
|
configFile = new File(dataFolder, fileName);
|
||||||
// purgeComments(true);
|
this.defaultYamlConfig = copyDefaultConfig();
|
||||||
|
this.config = initConfig();
|
||||||
|
updateFile();
|
||||||
|
mcMMO.p.getLogger().info("[config] Config initialized: " + fileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public BukkitConfig(@NotNull String fileName, @NotNull File dataFolder, boolean copyDefaults) {
|
||||||
|
mcMMO.p.getLogger().info("[config] Initializing config: " + fileName);
|
||||||
|
this.copyDefaults = copyDefaults;
|
||||||
|
this.fileName = fileName;
|
||||||
|
this.dataFolder = dataFolder;
|
||||||
|
configFile = new File(dataFolder, fileName);
|
||||||
|
this.defaultYamlConfig = copyDefaultConfig();
|
||||||
this.config = initConfig();
|
this.config = initConfig();
|
||||||
initDefaults();
|
|
||||||
updateFile();
|
updateFile();
|
||||||
mcMMO.p.getLogger().info("[config] Config initialized: " + fileName);
|
mcMMO.p.getLogger().info("[config] Config initialized: " + fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Deprecated
|
|
||||||
public BukkitConfig(@NotNull String fileName) {
|
public BukkitConfig(@NotNull String fileName) {
|
||||||
this(fileName, mcMMO.p.getDataFolder());
|
this(fileName, mcMMO.p.getDataFolder());
|
||||||
}
|
}
|
||||||
|
public BukkitConfig(@NotNull String fileName, boolean copyDefaults) {
|
||||||
/**
|
this(fileName, mcMMO.p.getDataFolder(), copyDefaults);
|
||||||
* Initialize default values for the config
|
}
|
||||||
*/
|
|
||||||
public void initDefaults() {}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Update the file on the disk by copying out any new and missing defaults
|
* Update the file on the disk by copying out any new and missing defaults
|
||||||
*/
|
*/
|
||||||
public void updateFile() {
|
public void updateFile() {
|
||||||
try {
|
try {
|
||||||
|
if(copyDefaults) {
|
||||||
|
copyMissingDefaultsFromResource();
|
||||||
|
}
|
||||||
config.save(configFile);
|
config.save(configFile);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private YamlConfiguration initConfig() {
|
/**
|
||||||
|
* Copies missing keys and values from the internal resource config within the JAR
|
||||||
|
*/
|
||||||
|
private void copyMissingDefaultsFromResource() {
|
||||||
|
boolean updated = false;
|
||||||
|
for (String key : defaultYamlConfig.getKeys(true)) {
|
||||||
|
if (!config.contains(key)) {
|
||||||
|
config.set(key, defaultYamlConfig.get(key));
|
||||||
|
updated = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (updated) {
|
||||||
|
updateFile();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Copies the config from the JAR to defaults/<fileName>
|
||||||
|
*/
|
||||||
|
YamlConfiguration copyDefaultConfig() {
|
||||||
|
mcMMO.p.getLogger().info("[config] Copying default config to disk: " + fileName + " to defaults/" + fileName);
|
||||||
|
try(InputStream inputStream = mcMMO.p.getResource(fileName)) {
|
||||||
|
if(inputStream == null) {
|
||||||
|
mcMMO.p.getLogger().severe("[config] Unable to copy default config: " + fileName);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Save default file into defaults/<fileName>
|
||||||
|
File defaultsFolder = new File(dataFolder, "defaults");
|
||||||
|
if (!defaultsFolder.exists()) {
|
||||||
|
defaultsFolder.mkdir();
|
||||||
|
}
|
||||||
|
File defaultFile = new File(defaultsFolder, fileName);
|
||||||
|
Path path = defaultFile.toPath();
|
||||||
|
Files.copy(inputStream, path, java.nio.file.StandardCopyOption.REPLACE_EXISTING);
|
||||||
|
|
||||||
|
// Load file into YAML config
|
||||||
|
YamlConfiguration defaultYamlConfig = new YamlConfiguration();
|
||||||
|
defaultYamlConfig.load(defaultFile);
|
||||||
|
return defaultYamlConfig;
|
||||||
|
} catch (IOException | InvalidConfigurationException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
YamlConfiguration initConfig() {
|
||||||
if (!configFile.exists()) {
|
if (!configFile.exists()) {
|
||||||
mcMMO.p.getLogger().info("[config] User config file not found, copying a default config to disk: " + fileName);
|
mcMMO.p.getLogger().info("[config] User config file not found, copying a default config to disk: " + fileName);
|
||||||
mcMMO.p.saveResource(fileName, false);
|
mcMMO.p.saveResource(fileName, false);
|
||||||
@ -105,8 +164,8 @@ public abstract class BukkitConfig {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void backup() {
|
public void backup() {
|
||||||
mcMMO.p.getLogger().severe("You are using an old version of the " + fileName + " file.");
|
mcMMO.p.getLogger().info("You are using an old version of the " + fileName + " file.");
|
||||||
mcMMO.p.getLogger().severe("Your old file has been renamed to " + fileName + ".old and has been replaced by an updated version.");
|
mcMMO.p.getLogger().info("Your old file has been renamed to " + fileName + ".old and has been replaced by an updated version.");
|
||||||
|
|
||||||
configFile.renameTo(new File(configFile.getPath() + ".old"));
|
configFile.renameTo(new File(configFile.getPath() + ".old"));
|
||||||
|
|
||||||
@ -122,98 +181,4 @@ public abstract class BukkitConfig {
|
|||||||
public File getFile() {
|
public File getFile() {
|
||||||
return configFile;
|
return configFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
// /**
|
|
||||||
// * Somewhere between December 2021-January 2022 Spigot updated their
|
|
||||||
// * SnakeYAML dependency/API and due to our own crappy legacy code
|
|
||||||
// * this introduced a very problematic bug where comments got duplicated
|
|
||||||
// * <p>
|
|
||||||
// * This method hotfixes the problem by just deleting any existing comments
|
|
||||||
// * it's ugly, but it gets the job done
|
|
||||||
// *
|
|
||||||
// * @param silentFail when true mcMMO will report errors during the patch process or debug information
|
|
||||||
// * the option to have it fail silently is because mcMMO wants to check files before they are parsed as a file with a zillion comments will fail to even load
|
|
||||||
// */
|
|
||||||
// private void purgeComments(boolean silentFail) {
|
|
||||||
// if(!configFile.exists())
|
|
||||||
// return;
|
|
||||||
//
|
|
||||||
// int dupedLines = 0, lineCount = 0, lineCountAfter = 0;
|
|
||||||
// try (FileReader fileReader = new FileReader(configFile);
|
|
||||||
// BufferedReader bufferedReader = new BufferedReader(fileReader)) {
|
|
||||||
// StringBuilder stringBuilder = new StringBuilder();
|
|
||||||
// String line;
|
|
||||||
// Set<String> seenBefore = new HashSet<>();
|
|
||||||
//
|
|
||||||
// stringBuilder.append(CURRENT_CONFIG_PATCH_VER).append(System.lineSeparator());
|
|
||||||
// boolean noPatchNeeded = false;
|
|
||||||
//
|
|
||||||
// // While not at the end of the file
|
|
||||||
// while ((line = bufferedReader.readLine()) != null) {
|
|
||||||
// lineCount++;
|
|
||||||
//
|
|
||||||
// if(line.startsWith(CURRENT_CONFIG_PATCH_VER)) {
|
|
||||||
// noPatchNeeded = true;
|
|
||||||
// break;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// //Older version, don't append this line
|
|
||||||
// if(line.startsWith(CONFIG_PATCH_PREFIX))
|
|
||||||
// continue;
|
|
||||||
//
|
|
||||||
// if (isFirstCharAsciiCharacter(line, COMMENT_PREFIX)) {
|
|
||||||
// if(seenBefore.contains(line))
|
|
||||||
// dupedLines++;
|
|
||||||
// else
|
|
||||||
// seenBefore.add(line);
|
|
||||||
//
|
|
||||||
// continue; //Delete the line by not appending it
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// stringBuilder
|
|
||||||
// .append(line) //Convert existing files into two-spaced format
|
|
||||||
// .append(System.lineSeparator());
|
|
||||||
// lineCountAfter++;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// if(noPatchNeeded)
|
|
||||||
// return;
|
|
||||||
//
|
|
||||||
// if(lineCount == 0 && !silentFail) {
|
|
||||||
// mcMMO.p.getLogger().info("[config patcher] Config line count: " + lineCount);
|
|
||||||
// throw new InvalidConfigurationException("[config patcher] Patching of config file resulted in an empty file, this will not be saved. Contact the mcMMO devs!");
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// if(dupedLines > 0 && !silentFail) {
|
|
||||||
// mcMMO.p.getLogger().info("[config patcher] Found "+dupedLines+" duplicate comments in config file: " + configFile.getName());
|
|
||||||
// mcMMO.p.getLogger().info("[config patcher] Purging the duplicate comments... (Nothing is broken, this is just info used for debugging)");
|
|
||||||
// mcMMO.p.getLogger().info("[config patcher] Line count before: "+lineCount);
|
|
||||||
// mcMMO.p.getLogger().info("[config patcher] Line count after: "+lineCountAfter);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// // Write out the *patched* file
|
|
||||||
// // AKA the file without any comments
|
|
||||||
// try (FileWriter fileWriter = new FileWriter(configFile)) {
|
|
||||||
// fileWriter.write(stringBuilder.toString());
|
|
||||||
// }
|
|
||||||
// } catch (IOException | InvalidConfigurationException ex) {
|
|
||||||
// mcMMO.p.getLogger().severe("Failed to patch config file: " + configFile.getName());
|
|
||||||
// ex.printStackTrace();
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
private boolean isFirstCharAsciiCharacter(String line, char character) {
|
|
||||||
if(line == null || line.isEmpty()) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
for(Character c : line.toCharArray()) {
|
|
||||||
if(c.equals(' '))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
return c.equals(character);
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -40,7 +40,7 @@ public class ChatConfig extends BukkitConfig {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not to use display names for players in target {@link ChatChannel}
|
* Whether to use display names for players in target {@link ChatChannel}
|
||||||
*
|
*
|
||||||
* @param chatChannel target chat channel
|
* @param chatChannel target chat channel
|
||||||
*
|
*
|
||||||
|
@ -35,7 +35,7 @@ public class CoreSkillsConfig extends BukkitConfig {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not a skill is enabled
|
* Whether a skill is enabled
|
||||||
* Defaults true
|
* Defaults true
|
||||||
*
|
*
|
||||||
* @param abstractSubSkill SubSkill definition to check
|
* @param abstractSubSkill SubSkill definition to check
|
||||||
@ -47,7 +47,7 @@ public class CoreSkillsConfig extends BukkitConfig {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not this primary skill is enabled
|
* Whether this primary skill is enabled
|
||||||
*
|
*
|
||||||
* @param primarySkillType target primary skill
|
* @param primarySkillType target primary skill
|
||||||
*
|
*
|
||||||
|
@ -25,12 +25,6 @@ public class ExperienceConfig extends BukkitConfig {
|
|||||||
validate();
|
validate();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void initDefaults() {
|
|
||||||
config.addDefault("ExploitFix.Combat.XPCeiling.Enabled", true);
|
|
||||||
config.addDefault("ExploitFix.Combat.XPCeiling.Damage_Limit", 100);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static ExperienceConfig getInstance() {
|
public static ExperienceConfig getInstance() {
|
||||||
if (instance == null) {
|
if (instance == null) {
|
||||||
instance = new ExperienceConfig();
|
instance = new ExperienceConfig();
|
||||||
|
@ -18,7 +18,7 @@ public class RepairConfig extends BukkitConfig {
|
|||||||
private List<Repairable> repairables;
|
private List<Repairable> repairables;
|
||||||
|
|
||||||
public RepairConfig(String fileName) {
|
public RepairConfig(String fileName) {
|
||||||
super(fileName);
|
super(fileName, false);
|
||||||
notSupported = new HashSet<>();
|
notSupported = new HashSet<>();
|
||||||
loadKeys();
|
loadKeys();
|
||||||
}
|
}
|
||||||
|
@ -28,7 +28,7 @@ public class FishingTreasureConfig extends BukkitConfig {
|
|||||||
public @NotNull HashMap<EntityType, List<ShakeTreasure>> shakeMap = new HashMap<>();
|
public @NotNull HashMap<EntityType, List<ShakeTreasure>> shakeMap = new HashMap<>();
|
||||||
|
|
||||||
private FishingTreasureConfig() {
|
private FishingTreasureConfig() {
|
||||||
super(FILENAME);
|
super(FILENAME, false);
|
||||||
loadKeys();
|
loadKeys();
|
||||||
validate();
|
validate();
|
||||||
}
|
}
|
||||||
|
@ -35,7 +35,7 @@ public class TreasureConfig extends BukkitConfig {
|
|||||||
public HashMap<String, List<HylianTreasure>> hylianMap = new HashMap<>();
|
public HashMap<String, List<HylianTreasure>> hylianMap = new HashMap<>();
|
||||||
|
|
||||||
private TreasureConfig() {
|
private TreasureConfig() {
|
||||||
super(FILENAME);
|
super(FILENAME, false);
|
||||||
loadKeys();
|
loadKeys();
|
||||||
validate();
|
validate();
|
||||||
}
|
}
|
||||||
|
@ -583,7 +583,7 @@ public class McMMOPlayer implements Identified {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not a player is level capped
|
* Whether a player is level capped
|
||||||
* If they are at the power level cap, this will return true, otherwise it checks their skill level
|
* If they are at the power level cap, this will return true, otherwise it checks their skill level
|
||||||
* @param primarySkillType
|
* @param primarySkillType
|
||||||
* @return
|
* @return
|
||||||
@ -596,7 +596,7 @@ public class McMMOPlayer implements Identified {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not a player is power level capped
|
* Whether a player is power level capped
|
||||||
* Compares their power level total to the current set limit
|
* Compares their power level total to the current set limit
|
||||||
* @return true if they have reached the power level cap
|
* @return true if they have reached the power level cap
|
||||||
*/
|
*/
|
||||||
@ -918,7 +918,7 @@ public class McMMOPlayer implements Identified {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
//These values change depending on whether or not the server is in retro mode
|
//These values change depending on whether the server is in retro mode
|
||||||
int abilityLengthVar = mcMMO.p.getAdvancedConfig().getAbilityLength();
|
int abilityLengthVar = mcMMO.p.getAdvancedConfig().getAbilityLength();
|
||||||
int abilityLengthCap = mcMMO.p.getAdvancedConfig().getAbilityLengthCap();
|
int abilityLengthCap = mcMMO.p.getAdvancedConfig().getAbilityLengthCap();
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ import java.util.Collection;
|
|||||||
|
|
||||||
public interface Toolable {
|
public interface Toolable {
|
||||||
/**
|
/**
|
||||||
* Whether or not this Skill requires a tool
|
* Whether this Skill requires a tool
|
||||||
* Not all skills will require a tool
|
* Not all skills will require a tool
|
||||||
* @return true if tool is required
|
* @return true if tool is required
|
||||||
*/
|
*/
|
||||||
|
@ -35,7 +35,7 @@ public abstract class AbstractSubSkill implements SubSkill, Interaction, Rank, S
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not this subskill is enabled
|
* Whether this subskill is enabled
|
||||||
*
|
*
|
||||||
* @return true if enabled
|
* @return true if enabled
|
||||||
*/
|
*/
|
||||||
|
@ -64,7 +64,7 @@ public interface SubSkill extends Skill {
|
|||||||
void addStats(TextComponent.Builder componentBuilder, Player player);
|
void addStats(TextComponent.Builder componentBuilder, Player player);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not this subskill is enabled
|
* Whether this subskill is enabled
|
||||||
* @return true if enabled
|
* @return true if enabled
|
||||||
*/
|
*/
|
||||||
boolean isEnabled();
|
boolean isEnabled();
|
||||||
|
@ -56,7 +56,7 @@ public class MobMetadataService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not a target {@link LivingEntity} has a specific mcMMO mob flags
|
* Whether a target {@link LivingEntity} has a specific mcMMO mob flags
|
||||||
*
|
*
|
||||||
* @param flag the type of mob flag to check for
|
* @param flag the type of mob flag to check for
|
||||||
* @param livingEntity the living entity to check for metadata
|
* @param livingEntity the living entity to check for metadata
|
||||||
@ -76,7 +76,7 @@ public class MobMetadataService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not a target {@link LivingEntity} has any mcMMO mob flags
|
* Whether a target {@link LivingEntity} has any mcMMO mob flags
|
||||||
*
|
*
|
||||||
* @param livingEntity the living entity to check for metadata
|
* @param livingEntity the living entity to check for metadata
|
||||||
*
|
*
|
||||||
|
@ -463,7 +463,7 @@ public class TamingManager extends SkillManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not the itemstack is used for COTW
|
* Whether the itemstack is used for COTW
|
||||||
* @param itemStack target ItemStack
|
* @param itemStack target ItemStack
|
||||||
* @return true if it is used for any COTW
|
* @return true if it is used for any COTW
|
||||||
*/
|
*/
|
||||||
|
@ -303,7 +303,7 @@ public final class Misc {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not a player is the party leader of a party
|
* Whether a player is the party leader of a party
|
||||||
*
|
*
|
||||||
* @param mmoPlayer target player
|
* @param mmoPlayer target player
|
||||||
* @return true if the player is the party leader
|
* @return true if the player is the party leader
|
||||||
|
@ -5,7 +5,7 @@ package com.gmail.nossr50.util.compat;
|
|||||||
*/
|
*/
|
||||||
public interface CompatibilityLayer {
|
public interface CompatibilityLayer {
|
||||||
/**
|
/**
|
||||||
* Whether or not this CompatibilityLayer successfully initialized and in theory should be functional
|
* Whether this CompatibilityLayer successfully initialized and in theory should be functional
|
||||||
* @return true if this CompatibilityLayer is functional
|
* @return true if this CompatibilityLayer is functional
|
||||||
*/
|
*/
|
||||||
default boolean noErrorsOnInitialize() { return true; };
|
default boolean noErrorsOnInitialize() { return true; };
|
||||||
|
@ -151,7 +151,10 @@ public class ExperienceBarWrapper {
|
|||||||
|
|
||||||
private void createBossBar()
|
private void createBossBar()
|
||||||
{
|
{
|
||||||
bossBar = mcMMOPlayer.getPlayer().getServer().createBossBar(title, ExperienceConfig.getInstance().getExperienceBarColor(primarySkillType), ExperienceConfig.getInstance().getExperienceBarStyle(primarySkillType));
|
bossBar = mcMMOPlayer.getPlayer().getServer().createBossBar(
|
||||||
|
title,
|
||||||
|
ExperienceConfig.getInstance().getExperienceBarColor(primarySkillType),
|
||||||
|
ExperienceConfig.getInstance().getExperienceBarStyle(primarySkillType));
|
||||||
bossBar.addPlayer(mcMMOPlayer.getPlayer());
|
bossBar.addPlayer(mcMMOPlayer.getPlayer());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -84,7 +84,7 @@ public abstract class MajorMinorPatchVersion implements Versioned {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not this version of Minecraft is a patch
|
* Whether this version of Minecraft is a patch
|
||||||
* a patch version value above 0 will indicate that this is a patch
|
* a patch version value above 0 will indicate that this is a patch
|
||||||
* @return true if this version is a patch
|
* @return true if this version is a patch
|
||||||
*/
|
*/
|
||||||
|
@ -28,7 +28,7 @@ public class MinecraftGameVersion extends MajorMinorPatchVersion {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether or not the Minecraft version is at least equal to or higher than a target version
|
* Returns whether the Minecraft version is at least equal to or higher than a target version
|
||||||
* @param majorVerNumber target major version number - for example 1.16.5 , the 1 is the major version
|
* @param majorVerNumber target major version number - for example 1.16.5 , the 1 is the major version
|
||||||
* @param minorVerNumber target minor version number - for example 1.16.5, the 16 is the minor version
|
* @param minorVerNumber target minor version number - for example 1.16.5, the 16 is the minor version
|
||||||
* @param patchVerNumber target patch version number - for example 1.16.5, the 5 is the patch version number
|
* @param patchVerNumber target patch version number - for example 1.16.5, the 5 is the patch version number
|
||||||
|
@ -107,7 +107,7 @@ public class RankUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether or not the player has unlocked the first rank in target subskill
|
* Returns whether the player has unlocked the first rank in target subskill
|
||||||
* @param player the player
|
* @param player the player
|
||||||
* @param subSkillType the target subskill
|
* @param subSkillType the target subskill
|
||||||
* @return true if the player has at least one rank in the skill
|
* @return true if the player has at least one rank in the skill
|
||||||
@ -121,7 +121,7 @@ public class RankUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether or not the player has unlocked the first rank in target subskill
|
* Returns whether the player has unlocked the first rank in target subskill
|
||||||
* @param player the player
|
* @param player the player
|
||||||
* @param abstractSubSkill the target subskill
|
* @param abstractSubSkill the target subskill
|
||||||
* @return true if the player has at least one rank in the skill
|
* @return true if the player has at least one rank in the skill
|
||||||
@ -135,7 +135,7 @@ public class RankUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether or not the player has reached the specified rank in target subskill
|
* Returns whether the player has reached the specified rank in target subskill
|
||||||
* @param rank the target rank
|
* @param rank the target rank
|
||||||
* @param player the player
|
* @param player the player
|
||||||
* @param subSkillType the target subskill
|
* @param subSkillType the target subskill
|
||||||
@ -147,7 +147,7 @@ public class RankUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether or not the player has reached the specified rank in target subskill
|
* Returns whether the player has reached the specified rank in target subskill
|
||||||
* @param rank the target rank
|
* @param rank the target rank
|
||||||
* @param player the player
|
* @param player the player
|
||||||
* @param abstractSubSkill the target subskill
|
* @param abstractSubSkill the target subskill
|
||||||
|
@ -6,17 +6,17 @@ Chat:
|
|||||||
Party:
|
Party:
|
||||||
# Enable or disable party chat
|
# Enable or disable party chat
|
||||||
Enable: true
|
Enable: true
|
||||||
# Whether or not to use the current display name of a player
|
# Whether to use the current display name of a player
|
||||||
Use_Display_Names: true
|
Use_Display_Names: true
|
||||||
Send_To_Console: true
|
Send_To_Console: true
|
||||||
Spies:
|
Spies:
|
||||||
# Whether or not players with the chat spy permission join the server with chat spying toggled on
|
# Whether players with the chat spy permission join the server with chat spying toggled on
|
||||||
Automatically_Enable_Spying: false
|
Automatically_Enable_Spying: false
|
||||||
Admin:
|
Admin:
|
||||||
Send_To_Console: true
|
Send_To_Console: true
|
||||||
# Enable or disable admin chat
|
# Enable or disable admin chat
|
||||||
Enable: true
|
Enable: true
|
||||||
# Whether or not to use the current display name of a player
|
# Whether to use the current display name of a player
|
||||||
Use_Display_Names: true
|
Use_Display_Names: true
|
||||||
# CUSTOMIZATION INFORMATION
|
# CUSTOMIZATION INFORMATION
|
||||||
# If you want to customize the look and feel of chat channels, that is handled through localization which is configurable
|
# If you want to customize the look and feel of chat channels, that is handled through localization which is configurable
|
||||||
|
@ -10,9 +10,9 @@
|
|||||||
General:
|
General:
|
||||||
# When players reach certain level milestones messages will be broadcast
|
# When players reach certain level milestones messages will be broadcast
|
||||||
Level_Up_Chat_Broadcasts:
|
Level_Up_Chat_Broadcasts:
|
||||||
# Whether or not level up broadcasts are enabled
|
# Whether level up broadcasts are enabled
|
||||||
Enabled: true
|
Enabled: true
|
||||||
# Whether or not you want power level milestones to be broadcast
|
# Whether you want power level milestones to be broadcast
|
||||||
Broadcast_Powerlevels:
|
Broadcast_Powerlevels:
|
||||||
Enabled: true
|
Enabled: true
|
||||||
# How often to broadcast, you can change this to 1 to always broadcast a level up event, a setting of 100 will limit it to every 100 levels (for example level 100, level 200, etc)
|
# How often to broadcast, you can change this to 1 to always broadcast a level up event, a setting of 100 will limit it to every 100 levels (for example level 100, level 200, etc)
|
||||||
@ -20,9 +20,9 @@ General:
|
|||||||
Broadcast_Targets:
|
Broadcast_Targets:
|
||||||
# Send the message to the console as well
|
# Send the message to the console as well
|
||||||
Send_To_Console: true
|
Send_To_Console: true
|
||||||
# Whether or not to only send chat messages to party members
|
# Whether to only send chat messages to party members
|
||||||
Only_Party_Members: false
|
Only_Party_Members: false
|
||||||
# Whether or not players who recieve a level up broadcast have to be on the same world as the one who leveled up
|
# Whether players who receive a level up broadcast have to be on the same world as the one who leveled up
|
||||||
Only_Same_World: false
|
Only_Same_World: false
|
||||||
# Distance restrictions
|
# Distance restrictions
|
||||||
Distance_Restrictions:
|
Distance_Restrictions:
|
||||||
@ -34,9 +34,9 @@ General:
|
|||||||
Broadcast_Targets:
|
Broadcast_Targets:
|
||||||
# Send the message to the console as well
|
# Send the message to the console as well
|
||||||
Send_To_Console: true
|
Send_To_Console: true
|
||||||
# Whether or not to only send chat messages to party members
|
# Whether to only send chat messages to party members
|
||||||
Only_Party_Members: false
|
Only_Party_Members: false
|
||||||
# Whether or not players who recieve a level up broadcast have to be on the same world as the one who leveled up
|
# Whether players who recieve a level up broadcast have to be on the same world as the one who leveled up
|
||||||
Only_Same_World: false
|
Only_Same_World: false
|
||||||
# Distance restrictions
|
# Distance restrictions
|
||||||
Distance_Restrictions:
|
Distance_Restrictions:
|
||||||
@ -44,7 +44,7 @@ General:
|
|||||||
# When using Restrict_Distance the blow setting configures the range of the broadcast
|
# When using Restrict_Distance the blow setting configures the range of the broadcast
|
||||||
Restricted_Radius: 100
|
Restricted_Radius: 100
|
||||||
# Turning this on will scale mcMMO around 1-1000 with default scaling factor
|
# Turning this on will scale mcMMO around 1-1000 with default scaling factor
|
||||||
# Everything in your config related to skill level requirements, skill level bonuses, etc will be multiplied by 10 when this mode is on
|
# Everything in your config related to skill level requirements, skill level bonuses, etc. will be multiplied by 10 when this mode is on
|
||||||
# This change is purely cosmetic, it retains the old feel of mcMMO where you could level up thousands of times
|
# This change is purely cosmetic, it retains the old feel of mcMMO where you could level up thousands of times
|
||||||
RetroMode:
|
RetroMode:
|
||||||
Enabled: true
|
Enabled: true
|
||||||
@ -63,9 +63,6 @@ General:
|
|||||||
Save_Interval: 10
|
Save_Interval: 10
|
||||||
# Allow mcMMO to report on basic anonymous usage
|
# Allow mcMMO to report on basic anonymous usage
|
||||||
Stats_Tracking: true
|
Stats_Tracking: true
|
||||||
# Allow mcMMO to check if a new version is available
|
|
||||||
Update_Check: true
|
|
||||||
Prefer_Beta: false
|
|
||||||
Power_Level_Cap: 0
|
Power_Level_Cap: 0
|
||||||
# Should mcMMO truncate levels if you lower your max level cap for a skillname
|
# Should mcMMO truncate levels if you lower your max level cap for a skillname
|
||||||
TruncateSkills: true
|
TruncateSkills: true
|
||||||
@ -151,7 +148,7 @@ Scoreboard:
|
|||||||
LevelUp_Time: 5
|
LevelUp_Time: 5
|
||||||
|
|
||||||
Mob_Healthbar:
|
Mob_Healthbar:
|
||||||
# Enabled: Whether or not the feature is enabled at all
|
# Enabled: Whether the feature is enabled at all
|
||||||
# Display_Type: Per player Default display for mob health bars - HEARTS, BAR, or DISABLED
|
# Display_Type: Per player Default display for mob health bars - HEARTS, BAR, or DISABLED
|
||||||
Enabled: true
|
Enabled: true
|
||||||
Display_Type: HEARTS
|
Display_Type: HEARTS
|
||||||
|
@ -41,7 +41,7 @@ ExploitFix:
|
|||||||
SnowGolemExcavation: true
|
SnowGolemExcavation: true
|
||||||
# This include NPCs from stuff like Citizens, this is not a setting for Vanilla Minecraft Villagers (Which can be considered NPCs)
|
# This include NPCs from stuff like Citizens, this is not a setting for Vanilla Minecraft Villagers (Which can be considered NPCs)
|
||||||
# mcMMO normally doesn't process attacks against an Entity if it is an NPC from another plugin
|
# mcMMO normally doesn't process attacks against an Entity if it is an NPC from another plugin
|
||||||
# Of course, mcMMO doesn't know for sure whether or not something is an NPC, it checks a few known things, see our source code to see how
|
# Of course, mcMMO doesn't know for sure whether something is an NPC, it checks a few known things, see our source code to see how
|
||||||
PreventPluginNPCInteraction: true
|
PreventPluginNPCInteraction: true
|
||||||
Fishing_ExploitFix_Options:
|
Fishing_ExploitFix_Options:
|
||||||
MoveRange: 3
|
MoveRange: 3
|
||||||
|
@ -646,4 +646,4 @@ Scoreboard.Misc.RemainingXP=Zbývající XP
|
|||||||
Scoreboard.Misc.Overall=Celkově
|
Scoreboard.Misc.Overall=Celkově
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -467,4 +467,4 @@ Skills.AbilityGateRequirementFail=
|
|||||||
Smelting.SubSkill.UnderstandingTheArt.Name=
|
Smelting.SubSkill.UnderstandingTheArt.Name=
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -466,4 +466,4 @@ MOTD.Version=&6[mcMMO] Kører version &3{0}
|
|||||||
MOTD.Website=&6[mcMMO] &a{0}&e - mcMMO Hjemmeside
|
MOTD.Website=&6[mcMMO] &a{0}&e - mcMMO Hjemmeside
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -178,7 +178,7 @@ Archery.SubSkill.ArrowRetrieval.Name=Arrow Retrieval
|
|||||||
Archery.SubSkill.ArrowRetrieval.Description=Chance to retrieve arrows from corpses
|
Archery.SubSkill.ArrowRetrieval.Description=Chance to retrieve arrows from corpses
|
||||||
Archery.SubSkill.ArrowRetrieval.Stat=Arrow Recovery Chance
|
Archery.SubSkill.ArrowRetrieval.Stat=Arrow Recovery Chance
|
||||||
Archery.SubSkill.ArcheryLimitBreak.Name=Archery Limit Break
|
Archery.SubSkill.ArcheryLimitBreak.Name=Archery Limit Break
|
||||||
Archery.SubSkill.ArcheryLimitBreak.Description=Breaking your limits. Increased damage against tough opponents. Intended for PVP, up to server settings for whether or not it will boost damage in PVE.
|
Archery.SubSkill.ArcheryLimitBreak.Description=Breaking your limits. Increased damage against tough opponents. Intended for PVP, up to server settings for whether it will boost damage in PVE.
|
||||||
Archery.SubSkill.ArcheryLimitBreak.Stat=Limit Break Max DMG
|
Archery.SubSkill.ArcheryLimitBreak.Stat=Limit Break Max DMG
|
||||||
Archery.Listener=Archery:
|
Archery.Listener=Archery:
|
||||||
Archery.SkillName=ARCHERY
|
Archery.SkillName=ARCHERY
|
||||||
@ -206,7 +206,7 @@ Axes.SubSkill.CriticalStrikes.Stat=Critical Strike Chance
|
|||||||
Axes.SubSkill.AxeMastery.Name=Axe Mastery
|
Axes.SubSkill.AxeMastery.Name=Axe Mastery
|
||||||
Axes.SubSkill.AxeMastery.Description=Adds bonus DMG
|
Axes.SubSkill.AxeMastery.Description=Adds bonus DMG
|
||||||
Axes.SubSkill.AxesLimitBreak.Name=Axes Limit Break
|
Axes.SubSkill.AxesLimitBreak.Name=Axes Limit Break
|
||||||
Axes.SubSkill.AxesLimitBreak.Description=Breaking your limits. Increased damage against tough opponents. Intended for PVP, up to server settings for whether or not it will boost damage in PVE.
|
Axes.SubSkill.AxesLimitBreak.Description=Breaking your limits. Increased damage against tough opponents. Intended for PVP, up to server settings for whether it will boost damage in PVE.
|
||||||
Axes.SubSkill.AxesLimitBreak.Stat=Limit Break Max DMG
|
Axes.SubSkill.AxesLimitBreak.Stat=Limit Break Max DMG
|
||||||
Axes.SubSkill.ArmorImpact.Name=Armor Impact
|
Axes.SubSkill.ArmorImpact.Name=Armor Impact
|
||||||
Axes.SubSkill.ArmorImpact.Description=Strike with enough force to shatter armor
|
Axes.SubSkill.ArmorImpact.Description=Strike with enough force to shatter armor
|
||||||
@ -466,7 +466,7 @@ Swords.SubSkill.Stab.Name=Stab
|
|||||||
Swords.SubSkill.Stab.Description=Adds bonus damage to your attacks.
|
Swords.SubSkill.Stab.Description=Adds bonus damage to your attacks.
|
||||||
Swords.SubSkill.Stab.Stat=Stab Damage
|
Swords.SubSkill.Stab.Stat=Stab Damage
|
||||||
Swords.SubSkill.SwordsLimitBreak.Name=Swords Limit Break
|
Swords.SubSkill.SwordsLimitBreak.Name=Swords Limit Break
|
||||||
Swords.SubSkill.SwordsLimitBreak.Description=Breaking your limits. Increased damage against tough opponents. Intended for PVP, up to server settings for whether or not it will boost damage in PVE.
|
Swords.SubSkill.SwordsLimitBreak.Description=Breaking your limits. Increased damage against tough opponents. Intended for PVP, up to server settings for whether it will boost damage in PVE.
|
||||||
Swords.SubSkill.SwordsLimitBreak.Stat=Limit Break Max DMG
|
Swords.SubSkill.SwordsLimitBreak.Stat=Limit Break Max DMG
|
||||||
Swords.SubSkill.Rupture.Stat=Rupture Chance
|
Swords.SubSkill.Rupture.Stat=Rupture Chance
|
||||||
Swords.SubSkill.Rupture.Stat.Extra=[[DARK_AQUA]]Rupture Duration: &e{0}s&a vs Players, &e{1}s&a vs Mobs.
|
Swords.SubSkill.Rupture.Stat.Extra=[[DARK_AQUA]]Rupture Duration: &e{0}s&a vs Players, &e{1}s&a vs Mobs.
|
||||||
@ -548,7 +548,7 @@ Unarmed.SubSkill.Disarm.Name=Disarm
|
|||||||
Unarmed.SubSkill.Disarm.Description=Drops the foes item held in hand
|
Unarmed.SubSkill.Disarm.Description=Drops the foes item held in hand
|
||||||
Unarmed.SubSkill.Disarm.Stat=Disarm Chance
|
Unarmed.SubSkill.Disarm.Stat=Disarm Chance
|
||||||
Unarmed.SubSkill.UnarmedLimitBreak.Name=Unarmed Limit Break
|
Unarmed.SubSkill.UnarmedLimitBreak.Name=Unarmed Limit Break
|
||||||
Unarmed.SubSkill.UnarmedLimitBreak.Description=Breaking your limits. Increased damage against tough opponents. Intended for PVP, up to server settings for whether or not it will boost damage in PVE.
|
Unarmed.SubSkill.UnarmedLimitBreak.Description=Breaking your limits. Increased damage against tough opponents. Intended for PVP, up to server settings for whether it will boost damage in PVE.
|
||||||
Unarmed.SubSkill.UnarmedLimitBreak.Stat=Limit Break Max DMG
|
Unarmed.SubSkill.UnarmedLimitBreak.Stat=Limit Break Max DMG
|
||||||
Unarmed.SubSkill.SteelArmStyle.Name=Steel Arm Style
|
Unarmed.SubSkill.SteelArmStyle.Name=Steel Arm Style
|
||||||
Unarmed.SubSkill.SteelArmStyle.Description=Hardens your arm over time
|
Unarmed.SubSkill.SteelArmStyle.Description=Hardens your arm over time
|
||||||
@ -1173,7 +1173,7 @@ LevelCap.PowerLevel=&6(&amcMMO&6) &eYou have reached the power level cap of &c{0
|
|||||||
LevelCap.Skill=&6(&amcMMO&6) &eYou have reached the level cap of &c{0}&e for &6{1}&e. You will cease to level in this skill from this point on.
|
LevelCap.Skill=&6(&amcMMO&6) &eYou have reached the level cap of &c{0}&e for &6{1}&e. You will cease to level in this skill from this point on.
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
Compatibility.Layer.Unsupported=&6Compatibility for &a{0}&6 is not supported by this version of Minecraft.
|
Compatibility.Layer.Unsupported=&6Compatibility for &a{0}&6 is not supported by this version of Minecraft.
|
||||||
Compatibility.Layer.PartialSupport=&6Compatibility for &a{0}&6 is not fully supported by this version of Minecraft, but mcMMO is running a secondary system to emulate some of the missing features.
|
Compatibility.Layer.PartialSupport=&6Compatibility for &a{0}&6 is not fully supported by this version of Minecraft, but mcMMO is running a secondary system to emulate some of the missing features.
|
||||||
Commands.XPBar.DisableAll=&6 All mcMMO XP bars are now disabled, use /mmoxpbar reset to restore default settings.
|
Commands.XPBar.DisableAll=&6 All mcMMO XP bars are now disabled, use /mmoxpbar reset to restore default settings.
|
||||||
|
@ -674,4 +674,4 @@ Scoreboard.Misc.RemainingXP=XP restante
|
|||||||
Scoreboard.Misc.Overall=Total
|
Scoreboard.Misc.Overall=Total
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -199,4 +199,4 @@ Stats.Header.Misc=&6-=SEKALAISET TAIDOT=-
|
|||||||
Stats.Own.Stats=&a[mcMMO] Tilastot
|
Stats.Own.Stats=&a[mcMMO] Tilastot
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -1139,4 +1139,4 @@ LevelCap.PowerLevel=&6(&amcMMO&6) &eHai raggiunto il livello massimo di potenza
|
|||||||
LevelCap.Skill=&6(&amcMMO&6) &eHai raggiunto il livello massimo di &c{0}&e per &6{1}&e. Da questo punto in poi cesserai di salire di livello in questa abilità.
|
LevelCap.Skill=&6(&amcMMO&6) &eHai raggiunto il livello massimo di &c{0}&e per &6{1}&e. Da questo punto in poi cesserai di salire di livello in questa abilità.
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -990,7 +990,7 @@ Profile.Loading.Failure=mcMMO는 여전히 당신의 데이터를 읽을 수 없
|
|||||||
Profile.Loading.AdminFailureNotice=&4[A]&c mcMMO는 &e{0}&c 플레이어 데이터 읽기가 불가능합니다. &d당신의 데이터베이스 설치를 검사해주세요.
|
Profile.Loading.AdminFailureNotice=&4[A]&c mcMMO는 &e{0}&c 플레이어 데이터 읽기가 불가능합니다. &d당신의 데이터베이스 설치를 검사해주세요.
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
|
||||||
#OVERHAULs
|
#OVERHAULs
|
||||||
Overhaul.Levelup=&l{0} &r(이)가 레벨 &r&a&l{2}&r&f 로 성장 했습니다.
|
Overhaul.Levelup=&l{0} &r(이)가 레벨 &r&a&l{2}&r&f 로 성장 했습니다.
|
||||||
|
@ -430,4 +430,4 @@ Scoreboard.Misc.RemainingXP=Resterende XP
|
|||||||
Scoreboard.Misc.Overall=Globaal
|
Scoreboard.Misc.Overall=Globaal
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -151,4 +151,4 @@ Stats.Header.Misc=&6-=Varierande Färdogheter=-
|
|||||||
Stats.Own.Stats=&a[mcMMO] Stats
|
Stats.Own.Stats=&a[mcMMO] Stats
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -634,4 +634,4 @@ UpdateChecker.Outdated=You are using an outdated version of mcMMO!
|
|||||||
UpdateChecker.NewAvailable=There is a new version available on BukkitDev.
|
UpdateChecker.NewAvailable=There is a new version available on BukkitDev.
|
||||||
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
Commands.XPBar.Usage=Proper usage is /mmoxpbar <skillname | reset> <show | hide>
|
||||||
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
Commands.Description.mmoxpbar=Player settings for mcMMO XP bars
|
||||||
Commands.Description.mmocompat=Information about mcMMO and whether or not its in compatibility mode or fully functional.
|
Commands.Description.mmocompat=Information about mcMMO and whether its in compatibility mode or fully functional.
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
# The bare minimum of an Armor piece is that it has a Repair_Material
|
# The bare minimum of an Armor piece is that it has a Repair_Material
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# Repairable: Whether or not the item is repairable
|
# Repairable: Whether the item is repairable
|
||||||
## This defaults to true
|
## This defaults to true
|
||||||
#
|
#
|
||||||
# Repair_Material: This is the material name of the item used to repair this armor.
|
# Repair_Material: This is the material name of the item used to repair this armor.
|
||||||
|
@ -18,10 +18,10 @@
|
|||||||
## Valid values range from 1 to 4
|
## Valid values range from 1 to 4
|
||||||
## This defaults to 1
|
## This defaults to 1
|
||||||
#
|
#
|
||||||
# Ability_Enabled: Whether or not abilities are enabled with this tool
|
# Ability_Enabled: Whether abilities are enabled with this tool
|
||||||
## This defaults to true
|
## This defaults to true
|
||||||
#
|
#
|
||||||
# Repairable: Whether or not the item is repairable
|
# Repairable: Whether the item is repairable
|
||||||
## This defaults to true
|
## This defaults to true
|
||||||
#
|
#
|
||||||
# Repair_Material: This is the material name of the item used to repair this tool.
|
# Repair_Material: This is the material name of the item used to repair this tool.
|
||||||
|
@ -23,7 +23,7 @@ commands:
|
|||||||
aliases: xpbarsettings
|
aliases: xpbarsettings
|
||||||
description: Change XP bar settings
|
description: Change XP bar settings
|
||||||
mmocompat:
|
mmocompat:
|
||||||
description: Information about the server and whether or not its considered fully compatible or running in compatibility mode
|
description: Information about the server and whether its considered fully compatible or running in compatibility mode
|
||||||
mmodebug:
|
mmodebug:
|
||||||
aliases: [mcmmodebugmode]
|
aliases: [mcmmodebugmode]
|
||||||
description: Toggles a debug mode which will print useful information to chat
|
description: Toggles a debug mode which will print useful information to chat
|
||||||
@ -51,7 +51,7 @@ commands:
|
|||||||
description: Add mcMMO levels to a user
|
description: Add mcMMO levels to a user
|
||||||
permission: mcmmo.commands.addlevels
|
permission: mcmmo.commands.addlevels
|
||||||
mcability:
|
mcability:
|
||||||
description: Toggle whether or not abilities get readied on right click
|
description: Toggle whether abilities get readied on right click
|
||||||
permission: mcmmo.commands.mcability
|
permission: mcmmo.commands.mcability
|
||||||
mcrefresh:
|
mcrefresh:
|
||||||
description: Refresh all cooldowns for mcMMO
|
description: Refresh all cooldowns for mcMMO
|
||||||
|
Loading…
Reference in New Issue
Block a user