Since then...
- All messages have been polished and look a lot more aesthetically pleasing.
- You can now change the mine border material through the give command.
/sma give [player] {LxHxW} {amount} {material} (skymines.admin.give)
Gives the player the specified amount of skymine tokens.
Example: /skymines give Notch 10x10x10 5 BEDROCK
/sma lookup [player] (skymines.admin.lookup)
Lists the IDs of the player's skymines.
/sma pickup [player] [id] (skymines.admin.pickup)
Pick up the specified player's skymine.
/sma remove [player] [id] (skymines.admin.remove)
Remove the specified player's skymine.
/sma reload (skymines.admin.reload)
Reloads all configuration files.
PERMISSIONS
skymines.admin - Access to the /sma command.
skymines.admin.give - Access to the /sma give command.
skymines.admin.lookup - Access to the /sma lookup command.
skymines.admin.panel - All skymine panels are accessible via right-click on mine wall.
skymines.admin.pickup - Access to the /sma pickup command.
skymines.admin.remove - Access to the /sma remove command.
skymines.admin.reload - Access to the /sma reload command.
skymines.home - Teleport to your mine's home.
skymines.sethome - Set your mine's home.
FILE SHOWCASE
Code (Text):
# Save your skymines:
save:
# Options: SQLite, MySql (preferred), YAML (not recommended)
type: SQLite
host: 'localhost'
port: 3306
database: 'minecraft'
username: 'root'
password: ''
# Various options for skymines:
options:
# Maximum amount of skymines per player.
max-per-player: 10
# Should a mine reset replace blocks (inside the mine)? If false, only replaces AIR.
replace-blocks: false
# Should the owner of the mine be teleported to the mine's home on reset?
teleport-home-on-reset: true
# Should the mine be reset when you upgrade it?
reset-on-upgrade: true
# Should the owner of the mine be notified when it can be reset again?
notify-on-reset-cooldown-finish: true
# Should a player be notified when they can place skymines again? (see pickup-cooldown below)
notify-on-pickup-cooldown-finish: true
# Cooldown (in seconds) players have to wait if they picked up a skymine.
pickup-cooldown: 300
# Cooldown (in seconds) players have to wait to attempt skymine placement again (for performance reasons).
placement-cooldown: 10
# If true, players can no longer drop their skymine token.
prevent-token-drop: true
# Physical form of a skymine:
token:
type: TRIPWIRE_HOOK
name: '&e&lSkyMine &7[&a%length%&7x&a%height%&7x&a%width%&7]'
lore:
- '&7Right Click → &ePlaces Structure'
# Options for mine upgrades...
#
# Upgrade types: block-varity, reset-cooldown
# By default, all upgrades are available to players.
#
# Want to require permission to upgrade a mine? Simply negative the permission.
# -> ex. the whole type: "-skymines.upgrades.block-varity"
# -> ex. a specific level: "-skymines.upgrades.block-varity.2"
#
# ^ After negating permission, the player can no longer upgrade the mine until
# you remove the negation or add the "skymines.upgrades.block-varity.2" permission.
upgrades:
# Alter the composition of a mine.
block-variety:
# Level of the upgrade.
1:
# Format: %type% %percentage%
# No, it doesn't have to add up to 100%.
upgrade:
- STONE 90%
- IRON_ORE 10%
- GOLD_ORE 5%
2:
# Cost to buy the upgrade, or -1 for free.
cost: 100000
upgrade:
- STONE 70%
- IRON_ORE 15%
- GOLD_ORE 10%
- REDSTONE_ORE 5%
- LAPIS_ORE 5%
3:
cost: 250000
upgrade:
- STONE 50%
- IRON_ORE 20%
- GOLD_ORE 15%
- REDSTONE_ORE 7.5%
- LAPIS_ORE 7.5%
- DIAMOND_ORE 2%
4:
cost: 750000
upgrade:
- STONE 30%
- IRON_ORE 25%
- GOLD_ORE 25%
- REDSOTNE_ORE 10%
- LAPIS_ORE 10%
- DIAMOND_ORE 5%
- EMERALD_ORE 5%
# Alter the cooldown until a mine can be reset.
reset-cooldown:
1:
# You can put [seconds/minutes] if you want. Default: seconds
upgrade: 5 minutes
2:
cost: 50000
upgrade: 2 minutes
3:
cost: 100000
upgrade: 1 minute
4:
cost: 150000
upgrade: 30 seconds
Code (Text):
# General messages:
general:
list-skymines:
top-message: "&7&m----------------&7 &e&lSkyMine &aList &7&m----------------"
repeating-message: "&7→ [#{id}] &eClick to teleport home. &7(&a{x}x&7, &a{y}y&7, &a{z}z&7)"
bottom-message: "&7&m---------------------------------------------"
reset-cooldown-finish: "&aThe &eSkyMine &awith the ID &e{id} &ahas just finished cooling down."
pickup-cooldown-finish: "&aYou are free to place &eSkyMines &aagain."
# Success messages:
success:
receive: "&2&l✓ &aYou have received &e{amount}x {token}&a."
upgrade: "&2&l✓ &aYou have upgraded &e{upgrade} &ato level &e{level}&a."
home: "&2&l✓ &aYou have been teleported to your &eSkyMine&a."
sethome: "&2&l✓ &aYou have changed your &eSkyMine's &ahome location."
reset: "&2&l✓ &aThe &eSkyMine &ahas been reset."
pickup: "&2&l✓ &aYou have picked up your &eSkyMine&a."
place: "&2&l✓ &aYou have placed your &eSkyMine&a."
# Failure messages:
failure:
max-amount: "&4&l❌ &cMaximum amount of mines reached."
too-far-away: "&4&l❌ &cYou are too far away from this &eSkyMine&c."
no-space: "&4&l❌ &cThere is no space here to place a &eSkyMine&c."
no-inventory-space: "&4&l❌ &cYou do not have enough inventory space."
no-funds: "&4&l❌ &cYou do not have enough money to purchase this upgrade."
no-skymine: "&4&l❌ &cNo mine &cexists with the ID '&e{id}&c'."
no-skymines: "&4&l❌ &cYou currently do not own any mines."
no-permission: "&4&l❌ You lack the required permission for this action."
no-drop: "&4&l❌ &cYou are not allowed to drop your &eSkyMine Token&c."
on-reset-cooldown: "&4&l❌ &cThe cooldown on this &eSkyMine &cis &e{time}&c."
on-pickup-cooldown: "&4&l❌ &cDue to picking up a &eSkyMine&c, you must wait another &e{time}&c."
on-placement-cooldown: "&4&l❌ &cThe cooldown to attempt &eSkyMine &cplacement is &e{time}&c."
already-maxed: "&4&l❌ &cThis &eSkyMine's &cupgrade is already maxed out."
invalid-placement: "&4&l❌ &cYou are forbidden from placing down your &eSkyMine Token&c."
# Usage messages (for commands):
usage:
skymines-command:
- "&7&m--------------&r &e&lSkyMine &aCommands &7&m--------------"
- "&7- &a/sm list &e: &7Lists all mines."
- "&7- &a/sm panel <id> &e: &7Opens the mine's main panel."
- "&7- &a/sm upgrades <id> &e: &7Opens the mine's upgrade panel."
- "&7- &a/sm home <id> &e: &7Teleports to the mine's home."
- "&7- &a/sm sethome <id> &e: &7Sets the mine's home."
- "&7- &a/sm reset <id> &e: &7Resets the mine."
- "&7- &a/sm pickup <id> &e: &7Picks up the mine."
- "&7&m---------------------------------------------"
skymines-panel:
- "&eUsage: &a/sm panel <id>"
- "&a► &7Opens up the specified mine's main panel."
skymines-upgrades:
- "&eUsage: &a/sm upgrades <id>"
- "&a► &7Opens up the specified mine's upgrade panel."
skymines-home:
- "&eUsage: &a/sm home <id>"
- "&a► &7Teleports to the specified mine's home."
skymines-sethome:
- "&eUsage: &a/sm sethome <id>"
- "&a► &7Sets the specified mine's home."
skymines-reset:
- "&eUsage: &a/sm reset <id>"
- "&a► &7Resets the specified mine."
skymines-pickup:
- "&eUsage: &a/sm pickup <id>"
- "&a► &7Picks up the specified mine."
# Only Admins should have access...
admin:
general:
lookup-skymines:
top-message: "&7&m----------------&7 &e&lSkyMine &aList &7&m----------------"
repeating-message: "&7→ [#{id}] &eLocated in '&a{world}&e' &eworld. &7(&a{x}x&7, &a{y}y&7, &a{z}z&7)"
bottom-message: "&7&m---------------------------------------------"
success:
panel: "&2&l✓ &aYou have accessed another player's &eSkyMine&a."
give: "&2&l✓ &aYou have given &e{amount}x {token} &ato &e{player}&a."
pickup: "&2&l✓ &aYou have picked up &e{player}&a's &eSkyMine&a."
remove: "&2&l✓ &aYou have removed &e{player}&a's &eSkyMine&a."
reloaded: "&2&l✓ &eSkyMines &ahas been reloaded."
failure:
too-small: "&4&l❌ &cThe &eSkyMine &cyou are trying to create is too small."
too-big: "&4&l❌ &cSides are not permitted to exceed 100 blocks."
no-player-found: "&4&l❌ &cThe player &e{player} &cdoes not exist."
no-skymine-found: "&4&l❌ &e{player} &cdoes not have a &eSkyMine &cwith ID '&e{id}&c'."
no-skymines-found: "&4&l❌ &e{player} &cdoes not have any &eSkyMines&c."
invalid-amount: "&4&l❌ &cThe amount '&e{amount}&c' is an invalid amount."
invalid-material: "&4&l❌ &cThe material '&e{material}&c' is an invalid border type."
usage:
skymines-admin-command:
- "&7&m-----------&r &e&lSkyMine &cAdmin Commands &7&m-----------"
- "&7- &c/sma give <player> <LxHxW> <amount> <material>"
- "&7- &c/sma lookup <player> &e: &7Lookup a player's mines."
- "&7- &c/sma pickup <player> &e: &7Pickup a player's mines."
- "&7- &c/sma remove <player> &e: &7Remove a player's mines."
- "&7- &c/sma reload &e: &7Reloads config files."
- "&7&m---------------------------------------------"
skymines-give:
- "&eUsage: &c/sma give <player> <LxHxW> <amount> <material>"
- "&c► &7Gives the player mine tokens with the size and border."
skymines-lookup:
- "&eUsage: &c/sma lookup <player>"
- "&c► &7Lookup the specified player's list of mines."
skymines-pickup:
- "&eUsage: &c/sma pickup <player> <id>"
- "&c► &7Pickup the specified player's mine."
skymines-remove:
- "&eUsage: &c/sma remove <player> <id>"
- "&c► &7Remove the specified player's mine."
Code (Text):
# Main menu for the skymines.
main-panel:
# Name of the menu.
name: '&8Main Menu'
# Amount of rows in the GUI.
rows: 3
# Optionally fill the GUI after all other items are placed.
fill: GRAY_STAINED_GLASS_PANE
slots:
# Slot number:
11:
type: BLUE_BED
name: '&aSkymine Home'
lore:
- "&7On Click → &eteleport to this mine's home."
- ""
- "&7&o(use /skymine sethome [id] to set its home)"
# Command to run, use %id% for the ID of the skymine.
command: '/skymines home %id%'
13:
type: RESPAWN_ANCHOR
name: '&aSkymine Reset &7(%time% left)'
lore:
- "&7On Click → &ereset the current mine."
command: '/skymines reset %id%'
15:
type: BUDDING_AMETHYST
name: '&aSkymine Upgrades'
lore:
- "&7On Click → &eopen the mine's upgrades."
command: '/skymines upgrades %id%'
17:
type: BARRIER
name: '&cSkymine Pickup'
lore:
- "&7On Click → &epick up the current mine."
command: '/skymines pickup %id%'
# Upgrade panel for the skymines.
upgrade-panel:
name: '&8Upgrade Menu'
rows: 3
fill: GRAY_STAINED_GLASS_PANE
slots:
13:
# Instead of type/name/lore, you can refer to an entire upgrade below.
upgrade: block-variety
15:
upgrade: reset-cooldown