The full list of valid activator types may be found below: (Click to expand)
```
-STONE_BUTTON
+Any kind of button (automatically updated):
+
OAK_BUTTON
SPRUCE_BUTTON
BIRCH_BUTTON
JUNGLE_BUTTON
ACACIA_BUTTON
DARK_OAK_BUTTON
+MANGROVE_BUTTON
+CHERRY_BUTTON
+PALE_OAK_BUTTON
+BAMBOO_BUTTON
CRIMSON_BUTTON
WARPED_BUTTON
+STONE_BUTTON
POLISHED_BLACKSTONE_BUTTON
-BAMBOO_BUTTON
-CHERRY_BUTTON
CHEST
TRAPPED_CHEST
@@ -378,7 +396,7 @@ In this case, a simple 5x5 square has been used as a gate.
Gates are also not limited to [materials](https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html) (such
as `OBSIDIAN`); they may also use [tags](https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Tag.html) (such
-as `#WOOL`).
+as `#WOOL`), or a comma-separated list (such as `OBSIDIAN,#WOOL`).
Note that all tags must be prefaced with a hashtag (`#`), as in `#WOOL`.
```
@@ -414,50 +432,54 @@ X.*.X
# Configuration
-```
-language - The language to use (Included languages: en, de, es, fr, hu, it, ja, nb-no, nl, nn-no, pt-br, ru, zh_cn)
-adminUpdateAlert - Whether to alert admins about an available update when joining the server
-folders:
- portalFolder - The folder your portal databases are saved in
- gateFolder - The folder containing your .gate files
-gates:
- maxGatesEachNetwork - If non-zero, will define the maximum amount of gates allowed on any network.
- defaultGateNetwork - The default gate network
- exitVelocity - The velocity to give players exiting stargates, relative to the entry velocity (1 = same as entry velocity)
- cosmetic:
- rememberDestination - Whether to set the first destination as the last used destination for all gates
- sortNetworkDestinations - If true, network lists will be sorted alphabetically.
- mainSignColor - This allows you to specify the color of the gate signs. Use a color code such as WHITE,BLACK,YELLOW or a hex color code such as '#ed76d9'. You need quotes around hex color codes.
- highlightSignColor - This allows you to specify the color of the sign markings. Use a color code such as WHITE,BLACK,YELLOW or a hex color code such as '#ed76d9'. You need quotes around hex color codes.
- perSignColors: - A list of per-sign color specifications. Format: "SIGN_TYPE:mainColor,highlight_color". The SIGN_TYPE is OAK for an oak sign, DARK_OAK for a dark oak sign and so on. The colors can be "default" to use the color specified in "mainSignColor" or "highlightSignColor", "inverted" to use the inverse color of the default color, a normal color such as BLACK,WHITE,YELLOW or a hex color code such as #ed76d9.
- integrity:
- destroyedByExplosion - Whether to destroy a stargate with explosions, or stop an explosion if it contains a gates controls.
- verifyPortals - Whether or not all the non-sign blocks are checked to match the gate layout when an old stargate is loaded at startup.
- protectEntrance - If true, will protect from users breaking gate entrance blocks (This is more resource intensive than the usual check, and should only be enabled for servers that use solid open/close blocks)
- controlUpdateDelay - The amount of ticks to wait between each Stargate control block update after startup. Increase this if Stargate loads too many chunks during startup.
- functionality:
- enableBungee - Enable this for BungeeCord support. This allows portals across Bungee servers.
- handleVehicles - Whether or not to handle vehicles going through gates. Set to false to disallow vehicles (Manned or not) going through gates.
- handleEmptyVehicles - Whether or not to handle empty vehicles going through gates (chest/hopper/tnt/furnace minecarts included).
- handleCreatureTransportation - Whether or not to handle players that transport creatures by sending vehicles (minecarts, boats) through gates.
- handleNonPlayerVehicles - Whether or not to handle vehicles with a passenger which is not a player going through gates (pigs, horses, villagers, creepers, etc.). handleCreatureTransportation must be enabled.
- handleLeashedCreatures - Whether or not to handle creatures leashed by a player going through gates. Set to false to disallow leashed creatures going through gates.
- enableCraftBookRemoveOnEjectFix - Whether to enable a fix that causes loss of NBT data, but allows vehicle teleportation to work when CraftBook's remove minecart/boat on eject setting is enabled
-economy:
- useEconomy - Whether or not to enable Economy using Vault (must have the Vault plugin)
- createCost - The cost to create a stargate
- destroyCost - The cost to destroy a stargate (Can be negative for a "refund"
- useCost - The cost to use a stargate
- toOwner - Whether the money from gate-use goes to the owner or nobody
- chargeFreeDestination - Enable to make players pay for teleportation even if the destination is free
- freeGatesColored - Enable to make gates that won't cost the player money show up as green
- freeGatesColor - This allows you to specify the color of the markings and name of free stargates
-debugging:
- debug - Whether to show massive debug output
- permissionDebug - Whether to show massive permission debug output
-advanced:
- waitForPlayerAfterTeleportDelay - The amount of ticks to wait before adding a player as passenger of a vehicle. On slow servers, a value of 6 is required to avoid client glitches after teleporting on a vehicle.
-```
+| Node | Default | Description |
+|----------------------------------|---------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| language | en | The language to use (Included languages: cs, de, en, es, fr, hu, it, ja, nb, nl, nn, pt, ru, uk, zh). |
+| adminUpdateAlert | true | Whether to alert admins about an available update when joining the server. |
+| dynmap | | |
+| .enableDynmap | true | Should StarGate enable integration with Dynmap? This will show StarGates on your map. |
+| .dynmapIconsHiddenByDefault | false | Should StarGate icons be hidden by default? (must users manually enable their checkbox?) |
+| gates | | |
+| .maxGatesEachNetwork | 0 | If non-zero, will define the maximum amount of gates allowed on any network. |
+| .defaultGateNetwork | central | The default network for any non-personal Stargate without an explicitly defined network. |
+| .exitVelocity | 0.1 | The velocity to give players exiting stargates, relative to the entry velocity (1 = same as entry velocity) |
+| gates.functionality | | |
+| .enableCraftBookRemoveOnEjectFix | false | Should the plugin sacrifice vehicle integrity in order to fix a CraftBook destroy on exit incompatibility? |
+| .enableBungee | false | Enable this for BungeeCord support. This allows portals across Bungee servers. |
+| .handleVehicles | true | Whether or not to handle vehicles going through gates. Set to false to disallow vehicles (Manned or not) going through gates. |
+| .handleEmptyVehicles | true | Whether or not to handle empty vehicles going through gates (chest/hopper/tnt/furnace minecarts included). |
+| .handleCreatureTransportation | true | Whether to handle players that transport creatures by sending vehicles (minecarts, boats) through gates. |
+| .handleNonPlayerVehicles | true | Whether or not to handle vehicles with a passenger which is not a player going through gates (pigs, horses, villagers, creepers, etc.). handleCreatureTransportation must be enabled. |
+| .handleLeashedCreatures | true | Whether or not to handle creatures leashed by a player going through gates. Set to false to disallow leashed creatures going through gates. |
+| gates.integrity | | |
+| .destroyedByExplosion | false | Whether to destroy a stargate with explosions, or stop an explosion if it contains a gates controls. |
+| .verifyPortals | false | Whether or not all the non-sign blocks are checked to match the gate layout when an old stargate is loaded at startup. |
+| .protectEntrance | false | If true, will protect from users breaking gate entrance blocks (This is more resource intensive than the usual check, and should only be enabled for servers that use solid open/close blocks) |
+| .controlUpdateDelay | 3 | The amount of ticks to wait between each Stargate control block update after startup. Increase this if Stargate loads too many chunks during startup. |
+| gates.cosmetic | | |
+| .rememberDestination | false | Whether the topmost name on a sign's destinations should be the most recently used destination. |
+| .sortNetworkDestinations | false | If true, network lists will be sorted alphabetically. |
+| .mainSignColor | BLACK | This allows you to specify the color of the gate signs. Use a color code such as WHITE,BLACK,YELLOW or a hex color code such as '#ed76d9'. You need quotes around hex color codes. |
+| .highlightSignColor | WHITE | This allows you to specify the color of the sign markings. Use a color code such as WHITE,BLACK,YELLOW or a hex color code such as '#ed76d9'. You need quotes around hex color codes. |
+| .perSignColors | \[List] | A list of per-sign color specifications. Format: "SIGN_TYPE:mainColor,highlight_color". The SIGN_TYPE is OAK for an oak sign, DARK_OAK for a dark oak sign and so on. The colors can be "default" to use the color specified in "mainSignColor" or "highlightSignColor", "inverted" to use the inverse color of the default color, a normal color such as BLACK,WHITE,YELLOW or a hex color code such as #ed76d9. |
+| economy | | |
+| .freeGatesColored | false | Enable to make gates that won't cost the player money show up as green |
+| .freeGatesColor | DARK_GREEN | This allows you to specify the color of the markings and name of free stargates |
+| .useEconomy | false | Whether or not to enable Economy using Vault (must have the Vault plugin) |
+| .createCost | 0 | The cost to create a stargate |
+| .destroyCost | 0 | The cost to destroy a stargate (Can be negative for a "refund") |
+| .useCost | 0 | The cost to use a stargate |
+| .toOwner | false | Whether the money from gate-use goes to the owner or nobody |
+| .chargeFreeDestination | true | Enable to make players pay for teleportation even if the destination is free |
+| .taxAccount | '' | The tax account to use if the server uses a closed economy. |
+| folders | | |
+| .portalFolder | plugins/Stargate/portals/ | The folder your portal databases are saved in |
+| .gateFolder | plugins/Stargate/gates/ | The folder containing your .gate files |
+| debugging | | |
+| .debug | false | Whether to show massive debug output |
+| .permissionDebug | false | Whether to show massive permission debug output |
+| advanced | | |
+| .waitForPlayerAfterTeleportDelay | 6 | The amount of ticks to wait before adding a player as passenger of a vehicle. On slow servers, a value of 6 is required to avoid client glitches after teleporting on a vehicle. |
# Message Customization
@@ -470,51 +492,51 @@ Please note that %variableName% should be kept, as it will be replaced with a re
The full list of strings may be found below: (Click to expand)
-```
-prefix=[Stargate]
-teleportMsg=Teleported
-destroyMsg=Gate Destroyed
-invalidMsg=Invalid Destination
-blockMsg=Destination Blocked
-destEmpty=Destination List Empty
-denyMsg=Access Denied
-reloaded=Stargate Reloaded
-
-ecoDeduct=Deducted %cost%
-ecoRefund=Refunded %cost%
-ecoObtain=Obtained %cost% from Stargate %portal%
-ecoInFunds=Insufficient Funds
-ecoLoadError=Vault was loaded, but no economy plugin could be hooked into
-vaultLoadError=Economy is enabled but Vault could not be loaded. Economy disabled
-vaultLoaded=Vault v%version% found
-
-createMsg=Gate Created
-createNetDeny=You do not have access to that network
-createGateDeny=You do not have access to that gate layout
-createPersonal=Creating gate on personal network
-createNameLength=Name too short or too long.
-createExists=A gate by that name already exists
-createFull=This network is full
-createWorldDeny=You do not have access to that world
-createConflict=Gate conflicts with existing gate
-
-signRightClick=Right click
-signToUse=to use gate
-signRandom=Random
-signDisconnected=Disconnected
-signInvalidGate=Invalid gate
-
-bungeeDisabled=BungeeCord support is disabled.
-bungeeDeny=You do not have permission to create BungeeCord gates.
-bungeeEmpty=BungeeCord gates require both a destination and network.
-bungeeSign=Teleport to
-
-portalInfoTitle=[STARGATE INFO]
-portalInfoName=Name: %name%
-portalInfoDestination=Destination: %destination%
-portalInfoNetwork=Network: %network%
-portalInfoServer=Server: %server%
-```
+| Path | Text |
+|-----------------------|--------------------------------------------------------------------|
+| prefix | \[Stargate] |
+| teleportMsg | Teleported |
+| destroyMsg | Gate Destroyed |
+| invalidMsg | Invalid Destination |
+| blockMsg | Destination Blocked |
+| destEmpty | Destination List Empty |
+| denyMsg | Access Denied |
+| reloaded | Stargate Reloaded |
+| | |
+| ecoDeduct | Deducted %cost% |
+| ecoRefund | Refunded %cost% |
+| ecoObtain | Obtained %cost% from Stargate %portal% |
+| ecoInFunds | Insufficient Funds |
+| ecoLoadError | Vault was loaded, but no economy plugin could be hooked into |
+| vaultLoadError | Economy is enabled but Vault could not be loaded. Economy disabled |
+| vaultLoaded | Vault v%version% found |
+| | |
+| createMsg | Gate Created |
+| createNetDeny | You do not have access to that network |
+| createGateDeny | You do not have access to that gate layout |
+| createPersonal | Creating gate on personal network |
+| createNameLength | Name too short or too long. |
+| createExists | A gate by that name already exists |
+| createFull | This network is full |
+| createWorldDeny | You do not have access to that world |
+| createConflict | Gate conflicts with existing gate |
+| | |
+| signRightClick | Right click |
+| signToUse | to use gate |
+| signRandom | Random |
+| signDisconnected | Disconnected |
+| signInvalidGate | Invalid gate |
+| | |
+| bungeeDisabled | BungeeCord support is disabled. |
+| bungeeDeny | You do not have permission to create BungeeCord gates. |
+| bungeeEmpty | BungeeCord gates require both a destination and network. |
+| bungeeSign | Teleport to |
+| | |
+| portalInfoTitle | \[STARGATE INFO] |
+| portalInfoName | Name: %name% |
+| portalInfoDestination | Destination: %destination% |
+| portalInfoNetwork | Network: %network% |
+| portalInfoServer | Server: %server% |
@@ -523,7 +545,14 @@ portalInfoServer=Server: %server%
# Changes
-#### \[Version 0.11.5.9] Unified Legacy Fork
+#### \[Version 0.11.5.11] Unified Legacy Fork
+
+- Removes legacy sign drawing code, as the check for whether a server supported the sign sides kept failing for some
+ users.
+- Fixes some problems regarding the startup validation of Stargates, which caused valid Stargates to be disabled when
+ the verification option was enabled.
+
+#### \[Version 0.11.5.10] Unified Legacy Fork
- Fixed a problem with material tag support
- Made serveral optimisations to significantly improve performance on servers with high playercounts.
diff --git a/src/main/java/net/knarcraft/stargate/listener/PlayerEventListener.java b/src/main/java/net/knarcraft/stargate/listener/PlayerEventListener.java
index fe57541..570930b 100644
--- a/src/main/java/net/knarcraft/stargate/listener/PlayerEventListener.java
+++ b/src/main/java/net/knarcraft/stargate/listener/PlayerEventListener.java
@@ -161,7 +161,7 @@ public class PlayerEventListener implements Listener {
//Just teleport the player like normal
new PlayerTeleporter(destination, player).teleportPlayer(entrancePortal, event);
}
- if (!entrancePortal.getOptions().isSilent()) {
+ if (!entrancePortal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendSuccessMessage(player, Stargate.getString(Message.TELEPORTED));
}
entrancePortal.getPortalOpener().closePortal(false);
@@ -203,7 +203,7 @@ public class PlayerEventListener implements Listener {
//Decide if the user should be teleported to another bungee server
if (entrancePortal.getOptions().isBungee()) {
- if (BungeeHelper.bungeeTeleport(player, entrancePortal, event) && !entrancePortal.getOptions().isSilent()) {
+ if (BungeeHelper.bungeeTeleport(player, entrancePortal, event) && !entrancePortal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendSuccessMessage(player, Stargate.getString(Message.TELEPORTED));
}
return false;
@@ -404,7 +404,7 @@ public class PlayerEventListener implements Listener {
boolean deny = PermissionHelper.cannotAccessNetwork(player, portal.getCleanNetwork());
if (PermissionHelper.portalAccessDenied(player, portal, deny)) {
- if (!portal.getOptions().isSilent()) {
+ if (!portal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.ACCESS_DENIED));
}
return true;
@@ -463,7 +463,7 @@ public class PlayerEventListener implements Listener {
/**
* Displays information about a clicked portal
*
- * This will only display portal info if the portal has no sign and is not silent.
+ * This will only display portal info if the portal has no sign and is not quiet.
*
* @param block The clicked block
* @param player The player that clicked the block
@@ -475,7 +475,7 @@ public class PlayerEventListener implements Listener {
}
//Display portal information as a portal without a sign does not display any
- if (portal.getOptions().hasNoSign() && (!portal.getOptions().isSilent() || player.isSneaking())) {
+ if (portal.getOptions().hasNoSign() && (!portal.getOptions().isQuiet() || player.isSneaking())) {
MessageSender sender = Stargate.getMessageSender();
sender.sendSuccessMessage(player, ChatColor.GOLD + Stargate.getString(Message.PORTAL_INFO_TITLE));
sender.sendSuccessMessage(player, Stargate.replacePlaceholders(Stargate.getString(Message.PORTAL_INFO_NAME),
diff --git a/src/main/java/net/knarcraft/stargate/listener/VehicleEventListener.java b/src/main/java/net/knarcraft/stargate/listener/VehicleEventListener.java
index 5de125a..c68ba43 100644
--- a/src/main/java/net/knarcraft/stargate/listener/VehicleEventListener.java
+++ b/src/main/java/net/knarcraft/stargate/listener/VehicleEventListener.java
@@ -100,7 +100,7 @@ public class VehicleEventListener implements Listener {
for (Player player : players) {
if (destinationPortal == null) {
cancelTeleportation = true;
- if (!entrancePortal.getOptions().isSilent()) {
+ if (!entrancePortal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.INVALID_DESTINATION));
}
} else if (!TeleportHelper.playerCanTeleport(player, entrancePortal, destinationPortal)) {
@@ -136,7 +136,7 @@ public class VehicleEventListener implements Listener {
return;
}
- if (!entrancePortal.getOptions().isSilent()) {
+ if (!entrancePortal.getOptions().isQuiet()) {
for (Player player : players) {
Stargate.getMessageSender().sendSuccessMessage(player, Stargate.getString(Message.TELEPORTED));
}
diff --git a/src/main/java/net/knarcraft/stargate/portal/PortalActivator.java b/src/main/java/net/knarcraft/stargate/portal/PortalActivator.java
index 9514fdb..5c44a49 100644
--- a/src/main/java/net/knarcraft/stargate/portal/PortalActivator.java
+++ b/src/main/java/net/knarcraft/stargate/portal/PortalActivator.java
@@ -258,7 +258,7 @@ public class PortalActivator {
//If no destinations are available, just tell the player and quit
if (destinations.isEmpty()) {
- if (!portal.getOptions().isSilent()) {
+ if (!portal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.NO_DESTINATION));
}
return;
diff --git a/src/main/java/net/knarcraft/stargate/portal/property/PortalOption.java b/src/main/java/net/knarcraft/stargate/portal/property/PortalOption.java
index 46c1649..c3fe5cf 100644
--- a/src/main/java/net/knarcraft/stargate/portal/property/PortalOption.java
+++ b/src/main/java/net/knarcraft/stargate/portal/property/PortalOption.java
@@ -55,7 +55,7 @@ public enum PortalOption {
/**
* This option allows a portal which does not display a teleportation message, for better immersion
*/
- SILENT('q', "silent", 21),
+ QUIET('q', "quiet", 21),
/**
* This option causes a fixed portal's sign to be removed after creation
diff --git a/src/main/java/net/knarcraft/stargate/portal/property/PortalOptions.java b/src/main/java/net/knarcraft/stargate/portal/property/PortalOptions.java
index 776d588..570b74d 100644
--- a/src/main/java/net/knarcraft/stargate/portal/property/PortalOptions.java
+++ b/src/main/java/net/knarcraft/stargate/portal/property/PortalOptions.java
@@ -172,15 +172,15 @@ public class PortalOptions {
}
/**
- * Gets whether this portal is silent
+ * Gets whether this portal is QUIET
*
- * A silent portal does not output anything to the chat when teleporting. This option is mainly useful to keep
+ *
A quiet portal does not output anything to the chat when teleporting. This option is mainly useful to keep
* the immersion during teleportation (for role-playing servers or similar).
*
- * @return Whether this portal is silent
+ * @return Whether this portal is quiet
*/
- public boolean isSilent() {
- return this.options.get(PortalOption.SILENT);
+ public boolean isQuiet() {
+ return this.options.get(PortalOption.QUIET);
}
/**
diff --git a/src/main/java/net/knarcraft/stargate/utility/BungeeHelper.java b/src/main/java/net/knarcraft/stargate/utility/BungeeHelper.java
index 891c797..0ccbeb1 100644
--- a/src/main/java/net/knarcraft/stargate/utility/BungeeHelper.java
+++ b/src/main/java/net/knarcraft/stargate/utility/BungeeHelper.java
@@ -185,7 +185,7 @@ public final class BungeeHelper {
@NotNull PlayerMoveEvent event) {
//Check if bungee is actually enabled
if (!Stargate.getGateConfig().enableBungee()) {
- if (!entrancePortal.getOptions().isSilent()) {
+ if (!entrancePortal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.BUNGEE_DISABLED));
}
entrancePortal.getPortalOpener().closePortal(false);
diff --git a/src/main/java/net/knarcraft/stargate/utility/PermissionHelper.java b/src/main/java/net/knarcraft/stargate/utility/PermissionHelper.java
index 93c0862..93d1693 100644
--- a/src/main/java/net/knarcraft/stargate/utility/PermissionHelper.java
+++ b/src/main/java/net/knarcraft/stargate/utility/PermissionHelper.java
@@ -38,7 +38,7 @@ public final class PermissionHelper {
//Destination is invalid or the same portal. Send an error message
if (destination == null || destination == portal) {
- if (!portal.getOptions().isSilent()) {
+ if (!portal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.INVALID_DESTINATION));
}
return;
@@ -74,7 +74,7 @@ public final class PermissionHelper {
//Deny access if another player has activated the portal, and it's still in use
if (!portal.getOptions().isFixed() && portal.getPortalActivator().isActive() &&
portal.getActivePlayer() != player) {
- if (!portal.getOptions().isSilent()) {
+ if (!portal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.ACCESS_DENIED));
}
return true;
@@ -82,7 +82,7 @@ public final class PermissionHelper {
//Check if the player can use the private gate
if (portal.getOptions().isPrivate() && !PermissionHelper.canUsePrivatePortal(player, portal)) {
- if (!portal.getOptions().isSilent()) {
+ if (!portal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.ACCESS_DENIED));
}
return true;
@@ -90,7 +90,7 @@ public final class PermissionHelper {
//Destination is currently in use by another player, blocking teleportation
if (destination.isOpen() && !destination.getOptions().isAlwaysOn()) {
- if (!portal.getOptions().isSilent()) {
+ if (!portal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.DESTINATION_BLOCKED));
}
return true;
@@ -414,7 +414,7 @@ public final class PermissionHelper {
//Not open for this player
if (!entrancePortal.getPortalOpener().isOpenFor(player)) {
- if (!entrancePortal.getOptions().isSilent()) {
+ if (!entrancePortal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.ACCESS_DENIED));
}
new PlayerTeleporter(entrancePortal, player).teleportPlayer(entrancePortal, event);
@@ -429,7 +429,7 @@ public final class PermissionHelper {
//Player cannot access portal
if (PermissionHelper.cannotAccessPortal(player, entrancePortal, destination)) {
- if (!entrancePortal.getOptions().isSilent()) {
+ if (!entrancePortal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.ACCESS_DENIED));
}
new PlayerTeleporter(entrancePortal, player).teleportPlayer(entrancePortal, event);
diff --git a/src/main/java/net/knarcraft/stargate/utility/PortalFileHelper.java b/src/main/java/net/knarcraft/stargate/utility/PortalFileHelper.java
index 09dfd6b..4e4f14b 100644
--- a/src/main/java/net/knarcraft/stargate/utility/PortalFileHelper.java
+++ b/src/main/java/net/knarcraft/stargate/utility/PortalFileHelper.java
@@ -138,7 +138,7 @@ public final class PortalFileHelper {
builder.append(options.isNoNetwork()).append(':');
builder.append(options.isRandom()).append(':');
builder.append(options.isBungee()).append(':');
- builder.append(options.isSilent()).append(':');
+ builder.append(options.isQuiet()).append(':');
builder.append(options.hasNoSign());
}
diff --git a/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java b/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java
index 9c7b34b..ffc758f 100644
--- a/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java
+++ b/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java
@@ -229,7 +229,7 @@ public final class TeleportHelper {
@NotNull Portal destinationPortal) {
//Make sure the user can access the portal
if (PermissionHelper.cannotAccessPortal(player, entrancePortal, destinationPortal)) {
- if (!entrancePortal.getOptions().isSilent()) {
+ if (!entrancePortal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.ACCESS_DENIED));
}
entrancePortal.getPortalOpener().closePortal(false);
@@ -240,7 +240,7 @@ public final class TeleportHelper {
int cost = EconomyHelper.getUseCost(player, entrancePortal, destinationPortal);
boolean canAffordFee = cost <= 0 || Stargate.getEconomyConfig().canAffordFee(player, cost);
if (!canAffordFee) {
- if (!entrancePortal.getOptions().isSilent()) {
+ if (!entrancePortal.getOptions().isQuiet()) {
Stargate.getMessageSender().sendErrorMessage(player, Stargate.getString(Message.ECONOMY_INSUFFICIENT));
}
return false;
diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml
index 513648a..78884bd 100644
--- a/src/main/resources/config.yml
+++ b/src/main/resources/config.yml
@@ -40,16 +40,28 @@ dynmap:
# Should StarGate icons be hidden by default? (must users manually enable their checkbox?)
dynmapIconsHiddenByDefault: true
+# +----------------------------------------------------------------------------------------------+ #
+# | Gate Behaviour | #
+# +----------------------------------------------------------------------------------------------+ #
gates:
+ # What is the maximum number of gates a single network may contain? (0 for unlimited)
+ maxGatesEachNetwork: 0
+
+ # What network will be used when none has been specified? (Max length 12 characters)
+ #
+ # Note that this primarily applies to users with the stargate.create.network node.
+ # Generally, that node is given to staff (we recommend stargate.create.personal for users).
+ defaultGateNetwork: central
+
+ # At what speed should players be sent out of portals?
+ # When exiting a gate, players retain their original movement velocity, multiplied by this value.
+ exitVelocity: 0.1
+
functionality:
# Should an alternative (and less effective) teleportation script be used to teleport vehicles?
# This will fix an incompatibility with CraftBook, but will cause vehicles' data to be wiped on teleportation.
enableCraftBookRemoveOnEjectFix: false
- # +----------------------------------------------------------------------------------------------+ #
- # | Gate Behaviour | #
- # +----------------------------------------------------------------------------------------------+ #
-
# Are you connected to a BungeeCord-compatible proxy?
# Set this value to true if you intend on building gates with the bUngee flag.
enableBungee: false
@@ -72,19 +84,6 @@ gates:
# Should StarGate also handle creatures attached to a player via a lead?
handleLeashedCreatures: true
- # What is the maximum number of gates a single network may contain? (0 for unlimited)
- maxGatesEachNetwork: 0
-
- # What network will be used when none has been specified? (Max length 12 characters)
- #
- # Note that this primarily applies to users with the stargate.create.network node.
- # Generally, that node is given to staff (we recommend stargate.create.personal for users).
- defaultGateNetwork: central
-
- # At what speed should players be sent out of portals?
- # When exiting a gate, players retain their original movement velocity, multiplied by this value.
- exitVelocity: 0.1
-
integrity:
# Can StarGates be broken via an explosion?
@@ -144,6 +143,8 @@ gates:
- 'WARPED:inverted,inverted'
- 'BAMBOO:default,default'
- 'CHERRY:default,default'
+ - 'PALE_OAK:default,default'
+ - 'MANGROVE:default,default'
economy:
# When scrolling through a networked portal's destination list, should SG color free gates?
@@ -151,7 +152,7 @@ economy:
# If freeGatesColored is true, which color should SG use?
#
- # All color names should follow this format:
+ # All color names should be a hex RGB color (#ffffff) or follow this format:
# https://hub.spigotmc.org/javadocs/spigot/org/bukkit/ChatColor.html
freeGatesColor: DARK_GREEN
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index ac87012..cdf03ff 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -30,7 +30,7 @@ permissions:
default: false
stargate.use:
description: Allow use of all stargates linking to any world in any network
- default: true
+ default: false
children:
stargate.world: true
stargate.network: true
@@ -43,7 +43,7 @@ permissions:
default: false
stargate.create:
description: Allow creating stargates on any network using any gate type
- default: op
+ default: false
children:
stargate.create.personal: true
stargate.create.network: true
@@ -59,7 +59,7 @@ permissions:
default: false
stargate.destroy:
description: Allows the destruction of all stargates
- default: op
+ default: false
children:
stargate.destroy.network: true
stargate.destroy.personal: true
@@ -71,7 +71,7 @@ permissions:
default: false
stargate.free:
description: Allow free use/creation/destruction of stargates
- default: op
+ default: false
children:
stargate.free.use: true
stargate.free.create: true
@@ -87,7 +87,7 @@ permissions:
default: false
stargate.option:
description: Allows use of all options
- default: op
+ default: false
children:
stargate.option.hidden: true
stargate.option.alwayson: true
@@ -97,7 +97,7 @@ permissions:
stargate.option.show: true
stargate.option.nonetwork: true
stargate.option.random: true
- stargate.option.silent: true
+ stargate.option.quiet: true
stargate.option.nosign: true
stargate.option.hidden:
description: Allows the creation of a hidden stargate
@@ -123,7 +123,7 @@ permissions:
stargate.option.random:
description: Allows the creation of a stargate with a random destination
default: false
- stargate.option.silent:
+ stargate.option.quiet:
description: Allows the creation of a stargate which does not output anything to the chat
default: false
stargate.option.nosign:
@@ -149,11 +149,35 @@ permissions:
default: false
stargate.admin:
description: Allow all admin features and commands (Hidden/Private bypass, BungeeCord, Reload, Config)
- default: op
+ default: false
children:
stargate.admin.reload: true
stargate.admin.hidden: true
stargate.admin.private: true
stargate.admin.bungee: true
stargate.admin.config: true
- stargate.admin.dye: true
\ No newline at end of file
+ stargate.admin.dye: true
+ stargate.group.admin:
+ description: Allow everything except stargate.free
+ default: op
+ children:
+ stargate.admin: true
+ stargate.server: true
+ stargate.group.builder: true
+ stargate.group.builder:
+ description: Allows unrestricted building and destruction of Stargates with any option
+ default: false
+ children:
+ stargate.group.player: true
+ stargate.option: true
+ stargate.network: true
+ stargate.create: true
+ stargate.destroy: true
+ stargate.group.player:
+ description: Gives normal players limited use of Stargates
+ default: true
+ children:
+ stargate.use: true
+ stargate.create.gate.nethergate: true
+ stargate.create.personal: true
+ stargate.destroy.personal: true
\ No newline at end of file