Merge remote-tracking branch 'origin/develop'

Conflicts:
	pom.xml
This commit is contained in:
tastybento 2020-05-05 17:01:39 -07:00
commit cc0b454aee
9 changed files with 93 additions and 22 deletions

View File

@ -15,14 +15,14 @@ BSkyBlock provides a skyblock-type Minecraft game for players that supports a de
## Installation ## Installation
0. Install BentoBox and run it on the server at least once to create its data folders. 1. Install BentoBox and run it on the server at least once to create its data folders.
1. Place this jar in the addons folder of the BentoBox plugin. 2. Place this jar in the addons folder of the BentoBox plugin.
2. Restart the server. 3. Restart the server.
3. The addon will create worlds and a data folder and inside the folder will be a config.yml. 4. The addon will create worlds and a data folder and inside the folder will be a config.yml.
4. Stop the server . 5. Stop the server .
5. Edit the config.yml how you want. 6. Edit the config.yml how you want.
6. Delete any worlds that were created by default if you made changes that would affect them. 7. Delete any worlds that were created by default if you made changes that would affect them.
7. Restart the server. 8. Restart the server.
## Config.yml ## Config.yml

View File

@ -59,13 +59,13 @@
<powermock.version>2.0.2</powermock.version> <powermock.version>2.0.2</powermock.version>
<!-- More visible way how to change dependency versions --> <!-- More visible way how to change dependency versions -->
<spigot.version>1.15.2-R0.1-SNAPSHOT</spigot.version> <spigot.version>1.15.2-R0.1-SNAPSHOT</spigot.version>
<bentobox.version>1.12.0</bentobox.version> <bentobox.version>1.13.1</bentobox.version>
<!-- Revision variable removes warning about dynamic version --> <!-- Revision variable removes warning about dynamic version -->
<revision>${build.version}-SNAPSHOT</revision> <revision>${build.version}-SNAPSHOT</revision>
<!-- Do not change unless you want different name for local builds. --> <!-- Do not change unless you want different name for local builds. -->
<build.number>-LOCAL</build.number> <build.number>-LOCAL</build.number>
<!-- This allows to change between versions. --> <!-- This allows to change between versions. -->
<build.version>1.12.0</build.version> <build.version>1.13.0</build.version>
</properties> </properties>
<!-- Profiles will allow to automatically change build version. --> <!-- Profiles will allow to automatically change build version. -->

View File

@ -40,6 +40,10 @@ public class Settings implements WorldSettings {
@ConfigEntry(path = "bskyblock.command.admin", since = "1.3.0") @ConfigEntry(path = "bskyblock.command.admin", since = "1.3.0")
private String adminCommand = "bsbadmin bsb skyblockadmin sbadmin sba"; private String adminCommand = "bsbadmin bsb skyblockadmin sbadmin sba";
@ConfigComment("Use control panel if it exists (ControlPanel addon must be in addons)")
@ConfigEntry(path = "bskyblock.use-control-panel", since = "1.13.0")
private boolean useControlPanel = false;
/* WORLD */ /* WORLD */
@ConfigComment("Friendly name for this world. Used in admin commands. Must be a single word") @ConfigComment("Friendly name for this world. Used in admin commands. Must be a single word")
@ConfigEntry(path = "world.friendly-name") @ConfigEntry(path = "world.friendly-name")
@ -225,6 +229,18 @@ public class Settings implements WorldSettings {
@ConfigEntry(path = "island.max-team-size") @ConfigEntry(path = "island.max-team-size")
private int maxTeamSize = 4; private int maxTeamSize = 4;
@ConfigComment("Default maximum number of coop rank members per island")
@ConfigComment("Players can have the bskyblock.coop.maxsize.<number> permission to be bigger but")
@ConfigComment("permission size cannot be less than the default below. ")
@ConfigEntry(path = "island.max-coop-size", since = "1.13.0")
private int maxCoopSize = 4;
@ConfigComment("Default maximum number of trusted rank members per island")
@ConfigComment("Players can have the bskyblock.trust.maxsize.<number> permission to be bigger but")
@ConfigComment("permission size cannot be less than the default below. ")
@ConfigEntry(path = "island.max-trusted-size", since = "1.13.0")
private int maxTrustSize = 4;
@ConfigComment("Default maximum number of homes a player can have. Min = 1") @ConfigComment("Default maximum number of homes a player can have. Min = 1")
@ConfigComment("Accessed via /is sethome <number> or /is go <number>") @ConfigComment("Accessed via /is sethome <number> or /is go <number>")
@ConfigEntry(path = "island.max-homes") @ConfigEntry(path = "island.max-homes")
@ -1566,4 +1582,48 @@ public class Settings implements WorldSettings {
public void setTicksPerMonsterSpawns(int ticksPerMonsterSpawns) { public void setTicksPerMonsterSpawns(int ticksPerMonsterSpawns) {
this.ticksPerMonsterSpawns = ticksPerMonsterSpawns; this.ticksPerMonsterSpawns = ticksPerMonsterSpawns;
} }
/**
* @return the maxCoopSize
*/
@Override
public int getMaxCoopSize() {
return maxCoopSize;
}
/**
* @param maxCoopSize the maxCoopSize to set
*/
public void setMaxCoopSize(int maxCoopSize) {
this.maxCoopSize = maxCoopSize;
}
/**
* @return the maxTrustSize
*/
@Override
public int getMaxTrustSize() {
return maxTrustSize;
}
/**
* @param maxTrustSize the maxTrustSize to set
*/
public void setMaxTrustSize(int maxTrustSize) {
this.maxTrustSize = maxTrustSize;
}
/**
* @return the useControlPanel
*/
public boolean isUseControlPanel() {
return useControlPanel;
}
/**
* @param useControlPanel the useControlPanel to set
*/
public void setUseControlPanel(boolean useControlPanel) {
this.useControlPanel = useControlPanel;
}
} }

View File

@ -4,7 +4,6 @@ import java.util.List;
import world.bentobox.bentobox.api.commands.CompositeCommand; import world.bentobox.bentobox.api.commands.CompositeCommand;
import world.bentobox.bentobox.api.commands.admin.AdminDeleteCommand; import world.bentobox.bentobox.api.commands.admin.AdminDeleteCommand;
import world.bentobox.bentobox.api.commands.admin.AdminEmptyTrashCommand;
import world.bentobox.bentobox.api.commands.admin.AdminGetrankCommand; import world.bentobox.bentobox.api.commands.admin.AdminGetrankCommand;
import world.bentobox.bentobox.api.commands.admin.AdminInfoCommand; import world.bentobox.bentobox.api.commands.admin.AdminInfoCommand;
import world.bentobox.bentobox.api.commands.admin.AdminRegisterCommand; import world.bentobox.bentobox.api.commands.admin.AdminRegisterCommand;
@ -14,9 +13,7 @@ import world.bentobox.bentobox.api.commands.admin.AdminSetrankCommand;
import world.bentobox.bentobox.api.commands.admin.AdminSetspawnCommand; import world.bentobox.bentobox.api.commands.admin.AdminSetspawnCommand;
import world.bentobox.bentobox.api.commands.admin.AdminSettingsCommand; import world.bentobox.bentobox.api.commands.admin.AdminSettingsCommand;
import world.bentobox.bentobox.api.commands.admin.AdminSwitchCommand; import world.bentobox.bentobox.api.commands.admin.AdminSwitchCommand;
import world.bentobox.bentobox.api.commands.admin.AdminSwitchtoCommand;
import world.bentobox.bentobox.api.commands.admin.AdminTeleportCommand; import world.bentobox.bentobox.api.commands.admin.AdminTeleportCommand;
import world.bentobox.bentobox.api.commands.admin.AdminTrashCommand;
import world.bentobox.bentobox.api.commands.admin.AdminUnregisterCommand; import world.bentobox.bentobox.api.commands.admin.AdminUnregisterCommand;
import world.bentobox.bentobox.api.commands.admin.AdminVersionCommand; import world.bentobox.bentobox.api.commands.admin.AdminVersionCommand;
import world.bentobox.bentobox.api.commands.admin.AdminWhyCommand; import world.bentobox.bentobox.api.commands.admin.AdminWhyCommand;
@ -81,9 +78,9 @@ public class AdminCommand extends CompositeCommand {
// Reset flags // Reset flags
new AdminResetFlagsCommand(this); new AdminResetFlagsCommand(this);
// Trash // Trash
new AdminTrashCommand(this); //new AdminTrashCommand(this);
new AdminEmptyTrashCommand(this); //new AdminEmptyTrashCommand(this);
new AdminSwitchtoCommand(this); //new AdminSwitchtoCommand(this);
// Switch // Switch
new AdminSwitchCommand(this); new AdminSwitchCommand(this);
// Purge // Purge

View File

@ -23,7 +23,7 @@ public class IslandAboutCommand extends CompositeCommand {
@Override @Override
public boolean execute(User user, String label, List<String> args) { public boolean execute(User user, String label, List<String> args) {
user.sendRawMessage("About " + getAddon().getDescription().getName() + " " + getAddon().getDescription().getVersion() + ":"); user.sendRawMessage("About " + getAddon().getDescription().getName() + " " + getAddon().getDescription().getVersion() + ":");
user.sendRawMessage("Copyright (c) 2017 - 2019 tastybento, Poslovitch"); user.sendRawMessage("Copyright (c) 2017 - 2020 tastybento, Poslovitch");
user.sendRawMessage("See https://www.eclipse.org/legal/epl-2.0/"); user.sendRawMessage("See https://www.eclipse.org/legal/epl-2.0/");
user.sendRawMessage("for license information."); user.sendRawMessage("for license information.");
return true; return true;

View File

@ -73,6 +73,10 @@ public class IslandCommand extends CompositeCommand {
if (args.isEmpty()) { if (args.isEmpty()) {
// If user has an island, go // If user has an island, go
if (getPlugin().getIslands().getIsland(getWorld(), user.getUniqueId()) != null) { if (getPlugin().getIslands().getIsland(getWorld(), user.getUniqueId()) != null) {
if (((BSkyBlock)getAddon()).getSettings().isUseControlPanel()
&& getSubCommand("controlpanel").isPresent()) {
return getSubCommand("controlpanel").get().call(user, label, new ArrayList<>());
}
return getSubCommand("go").map(goCmd -> goCmd.call(user, goCmd.getLabel(), new ArrayList<>())).orElse(false); return getSubCommand("go").map(goCmd -> goCmd.call(user, goCmd.getLabel(), new ArrayList<>())).orElse(false);
} }
// No islands currently // No islands currently

View File

@ -9,6 +9,8 @@ bskyblock:
# To define alias, just separate commands with white space. # To define alias, just separate commands with white space.
# Added since 1.3.0. # Added since 1.3.0.
admin: bsbadmin bsb skyblockadmin sbadmin sba admin: bsbadmin bsb skyblockadmin sbadmin sba
# Use control panel if it exists (ControlPanel addon must be in addons)
use-control-panel: false
world: world:
# Friendly name for this world. Used in admin commands. Must be a single word # Friendly name for this world. Used in admin commands. Must be a single word
friendly-name: BSkyBlock friendly-name: BSkyBlock
@ -222,6 +224,17 @@ island:
# Default max team size # Default max team size
# Permission size cannot be less than the default below. # Permission size cannot be less than the default below.
max-team-size: 4 max-team-size: 4
# Default maximum number of coop rank members per island
# Players can have the bskyblock.coop.maxsize.<number> permission to be bigger but
# permission size cannot be less than the default below.
# Added since 1.13.0.
max-coop-size: 4
# Default maximum number of trusted rank members per island
# Players can have the bskyblock.trust.maxsize.<number> permission to be bigger but
# permission size cannot be less than the default below.
# Added since 1.13.0.
max-trusted-size: 4
# Default maximum number of homes a player can have. Min = 1 # Default maximum number of homes a player can have. Min = 1
# Accessed via /is sethome <number> or /is go <number> # Accessed via /is sethome <number> or /is go <number>
max-homes: 1 max-homes: 1

View File

@ -1,6 +1,3 @@
/**
*
*/
package world.bentobox.bskyblock.commands; package world.bentobox.bskyblock.commands;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals;
@ -40,7 +37,7 @@ import world.bentobox.bskyblock.Settings;
@PrepareForTest({Bukkit.class, BentoBox.class, User.class }) @PrepareForTest({Bukkit.class, BentoBox.class, User.class })
public class AdminCommandTest { public class AdminCommandTest {
private static final int NUM_COMMANDS = 29; private static final int NUM_COMMANDS = 26;
@Mock @Mock
private User user; private User user;
@Mock @Mock

View File

@ -33,7 +33,7 @@ public class IslandAboutCommandTest {
User user = mock(User.class); User user = mock(User.class);
c.execute(user, "", Collections.emptyList()); c.execute(user, "", Collections.emptyList());
// Verify // Verify
Mockito.verify(user).sendRawMessage(Mockito.eq("Copyright (c) 2017 - 2019 tastybento, Poslovitch")); Mockito.verify(user).sendRawMessage(Mockito.eq("Copyright (c) 2017 - 2020 tastybento, Poslovitch"));
Mockito.verify(user).sendRawMessage(Mockito.eq("About BSkyBlock 1.2.3:")); Mockito.verify(user).sendRawMessage(Mockito.eq("About BSkyBlock 1.2.3:"));
} }