
McMines 1.3.3
Fully Configurable | Mine Hologram | Custom Placeholders | Developer API
McMines is a highly customizable complex prison mine generator plugin. It contains amazing and high-tech features such as Timed Resets, Percent Resets, Holograms, and more. Without a big clunky confusing GUI, this plugin gets straight to the point. With one of the most customizable configurations on the market, this plugin will be truly unique for your server. The possibilities are endless.
With a highly active plugin author, whether its new features, bug fixes, or something else, the plugin will be staying active! McMines is one of the strongest prison mine generator plugins currently on the market!
Features
- Highly Customizable Configuration File
- Reset Prisons Based on Mine Percent Left
- Reset Prisons Based on Timer
- Multiple Easy-to-Use Mine Holograms
- Add Blocks to Mine with Decimal Precision
- Custom Placeholders, Including Progress Bar
- Edit Mines via Commands
- Edit Mines via Files
- Many Permissions
- Many Commands
- Teleport Player on Reset
- Notify Player on Reset (with Radius)
- Developer API
- Support for HolographicDisplays
- Highly Active Author
Dependencies
DecentHolograms (Optional)
PlaceholderAPI (Optional)
[World Guard & World Edit] (Optional)
Commands & Permissions
- /mine - mcmine.command.mine.*
- /mine create [name] - mcmine.command.mine.create
- /mine delete [name] - mcmine.command.mine.delete
- /mine add [name] [material] [chance] - mcmine.command.mine.add
- /mine remove [name] [material] - mcmine.command.mine.remove
- /mine rename [old name] [new name] - mcmine.command.mine.rename
- /mine reset [name] - mcmine.command.mine.reset
- /mine option [name] [option] [value] - mcmine.command.mine.option
- /mine warp [name] - mcmine.command.warp.MINENAME
- /mine reload - mcmine.command.mine.reload
- /mine version - mcmine.command.mine.version
- /mine info [name] - mcmine.command.mine.info
- /mine hologram [name] [hologram] [command] [value] - mcmine.command.mine.hologram
- mcmine.interact.MINENAME
#
#
#+------------------------------+
#| |
#| Messages |
#| |
#+------------------------------+
# Message Key
# < > = Mandatory, must use at least one option
# [ ] = Mandatory, must enter some custom input
# ( ) = Optional, may or may not enter some input
# { } = Placeholder
# Description
# message: "value"
# {placeholder} - definition
messages:
#Prefix of every message
prefix: "&aMcMines &7| &r"
#When the command sender doesn't have the required permission
command-no-permission: "&cYou have no permission to do this."
#When the player doesnt permission to interact with the mine
interact-no-permission: "&cYou don't have permission to interact with Mine &4{mine_name}&c."
#Called when player tries to create duplicate mine
mine-already-exists: "&4&lERROR &cMine &4{mine_name} &calready exists."
#Called when player tries to create duplicate hologram
hologram-already-exists: "&4&lERROR &cHologram &4{holo_name} &calready exists."
#When hologram is not found
hologram-not-found: "&6&lWARNING &eCannot find hologram &c{holo_name}&e."
#When hologram is not found
hologram-line-not-found: "&6&lWARNING &eCannot find hologram line &c#{holo_line_number}&e."
#When player tries to reference a material that isnt valid or isnt a block
material-not-found: "&6&lWARNING &6{material}&e is not a valid block."
#When mine referenced was not found
mine-not-found: "&6&lWARNING &eCannot find mine &c{mine_name}&e."
#When player tries to remove a block thats not in the mine
block-in-mine-not-found: "&6&lWARNING &eMine &6{mine_name} &edoes not contain &6{material}&e."
#Sent to console if command requires player
must-be-player: "&cYou must be a player to do this."
#Sent to player if command requires console
must-be-console: "&cYou must be the console to do this."
#Sent when mine is created with a name longer than one word
name-too-long: "&4&lERROR &cThe name &4{mine_name} &cis too long."
#Sent when command is incorrectly entered
mine-command-usage: "&4&lUSAGE &c/mine [create, delete, rename, add, remove, reset, version, reload, option, warp]"
#Sent when command is finished executing
mine-create-command-completed: "&fCreated the mine &e{mine_name}&f."
#Sent when command is incorrectly entered
mine-create-command-usage: "&4&lUSAGE &c/mine create [Name]"
#Sent when command is finished executing
mine-delete-command-completed: "&fDeleted the mine &e{mine_name}&f."
#Sent when command is incorrectly entered
mine-delete-command-usage: "&4&lUSAGE &c/mine delete [Name]"
#Sent when command is finished executing
mine-rename-command-completed: "&fRenamed the mine &e{mine_old_name}&f to &e{mine_name}&f."
#Sent when command is incorrectly entered
mine-rename-command-usage: "&4&lUSAGE &c/mine rename [Old Name] [New Name]"
#Sent when command is finished executing
mine-add-command-completed: "&fAdded &e{material}&f the mine &e{mine_name}&f, with a &e{chance}%&f chance."
#Sent when command is incorrectly entered
mine-add-command-usage: "&4&lUSAGE &c/mine add [Name] [Material] [Chance]"
#Sent when command is finished executing
mine-remove-command-completed: "&fRemoved &e{material}&f from the mine &e{mine_name}&f."
#Sent when command is incorrectly entered
mine-remove-command-usage: "&4&lUSAGE &c/mine remove [Name] [Material]"
#Sent when command is finished executing
mine-reset-command-completed: "&fReset mine &e{mine_name}&f."
#Sent when command is incorrectly entered
mine-reset-command-usage: "&4&lUSAGE &c/mine reset [Name]"
#Sent when command is finished executing
mine-option-command-completed: "&fSet &e{option}&f for mine &e{mine_name}&f to &e{value}&f."
#Sent when command is incorrectly entered
mine-option-command-usage: "&4&lUSAGE &c/mine option [Name] [Option] [Value]"
#Sent when command is incorrectly entered
mine-warp-command-usage: "&4&lUSAGE &c/mine warp [Name]"
#Sent when command is finished executing
mine-warp-command-completed: "&fYou have been teleported to mine &e{mine_name}&f."
#Sent when command is incorrectly entered
mine-info-command-usage: "&4&lUSAGE &c/mine info [Name]"
#Sent when command is finished executing
mine-info-command-completed: "&b&lINFO &eMine {mine_name}&f: \n&7 - Percent Mined: &e{percent_mined} \n&7 - Next Reset: &e{next_reset} \n&7 - Last Reset: &e{last_reset} &7\n - Children: &e{children}"
#Sent when command is incorrectly entered
mine-version-command-usage: "&4&lUSAGE &c/mine version"
#Sent when command is incorrectly entered
mine-reload-command-usage: "&4&lUSAGE &c/mine reload"
#Sent when command is finished executing
mine-reload-command-completed: "&aPlugin has been reloaded."
#Sent when command is incorrectly entered
mine-hologram-command-usage: "&4&lUSAGE &c/mine hologram [Name] [Create, Delete, Teleport, Edit]"
#Sent when command is incorrectly entered
mine-hologram-create-command-usage: "&4&lUSAGE &c/mine hologram [Name] create [Name]"
#Sent when command is finished executing
mine-hologram-create-command-completed: "&fHologram &e{holo_name}&f has been added to the mine &e{mine_name}&f. Edit with: &6/mine hologram {mine_name} addline {holo_name} {line}&f."
#Sent when command is incorrectly entered
mine-hologram-delete-command-usage: "&4&lUSAGE &c/mine hologram [Name] delete [Name]"
#Sent when command is finished executing
mine-hologram-delete-command-completed: "&fHologram &e{holo_name}&f has been removed from the mine &e{mine_name}&f"
#Sent when command is incorrectly entered
mine-hologram-addline-command-usage: "&4&lUSAGE &c/mine hologram [Name] addline [Name] [Line]"
#Sent when command is finished executing
mine-hologram-addline-command-completed: "&fThe line &e{holo_line}&f has been added to the hologram &e{holo_name}&f."
#Sent when command is incorrectly entered
mine-hologram-setline-command-usage: "&4&lUSAGE &c/mine hologram [Name] setline [Name] [Line#] [Line]"
#Sent when command is finished executing
mine-hologram-setline-command-completed: "&fLine has been set to &e{holo_line}&f for hologram &e{holo_name}&f."
#Sent when command is incorrectly entered
mine-hologram-teleport-command-usage: "&4&lUSAGE &c/mine hologram [Name] teleport [Name]"
#Sent when command is finished executing
mine-hologram-teleport-command-completed: "&fTeleported the hologram &e{holo_name}&f to your location."
#Sent when player is in mine creation mode
mine-creation-mode-enabled: "&b&LINFO &fMine creation mode has been &aenabled&f."
#Sent when player leaves mine creation mode
mine-creation-mode-disabled: "&b&LINFO &fMine creation mode has been &cdisabled&f."
#Sent when player selects a mine location
mine-creation-set-location: "&b&LINFO &fMine &e{mine_name}&f's {location_type} has been set to &eX: {x}, Y: {y}, Z: {z}&f."
#Sent when player tries to save the locations set, but they didn't set them all.
mine-creation-not-enough-locations: "&4&LERROR &cYou did not set all three locations for the mine."
mine:
item: CARROT_ON_A_STICK
Developer API
Usage
To begin with the API, first declare the api object, McMinesAPI mineAPI = new McMinesAPI((McMines) getServer().getPluginManager().getPlugin("McMines"); Now you can view all the available functions by looking at the autocomplete with minesAPI.(usage).
Events
McMines throws a few custom events,
- MineBlockBreakEvent - Thrown when a block inside a mine has been broken
- MineResetEvent - Thrown when a mine has been reset
- MineCreateEvent - Thrown when a mine has been created
Begin by accessing the region wand, from World Edit by typing //wand To make it so players can't break through the walls of your mine, you will want to select the "container" of your mine. This is the exterior of your mine that will be holding all the blocks.
Figure 1 - Container of Mine
Once your region is selected, you will want to define it as such, /region define [mine_name]_exterior (e.g. "A_exterior") This creates a region around our mine that is protected from players being able to break your mine & mine container. Next, select the interior of the container, where the blocks would go, using the same wand. Once your region is selected, you will want to define it as such, /region define [min ename] (e.g. "A") This creates a region in our mind, that we can allow players to interact with. To allow players to break blocks inside our mine, we first need to add the correct flag using /region flag [mine name] block-break allow. This flag allows the player to be able to break blocks in our mine. Finally, give the player the required permission to interact with the mine mcmine.interact.[mine name] (e.g. "mcmine.interact.A"). You now have your basic mine setup!
Figure 2 - Tab Completer
If we wanted the mine to reset when 75% of the mine has been mined, when can enable this option by using the command /mine option [mine name] Reset-When-%-Empty 75, or, if you only want a timed reset, you can just disable this feature by doing the command /mine option [mine name] Reset-When-%-Empty 0.
Each mine also supports "children" or "submines". To attach a child mine to your mine, you will need to execute the command /mine option [mine name] child [child mine name]. This will then set that mine as a child. A child mine simply resets when the parent mine resets.
Hologram Placeholders
This is a little bit of a tricky area, so try to stay with me. For each hologram, you can add as my placeholders as you want. Unlike other placeholders, each hologram placeholder is unique and has its mine name attached to it.
Here are the list of placeholders
General
- {mine_name} - Mine's name
Specific
Replace MINENAME with the name of your mine (case-sensitive) You can also use {mine_name} as a nested placeholder (e.g. "%mcmines_block_count_{mine_name}%")
- %mcmines_block_count_MINENAME% - Total blocks, when full, in mine
- %mcmines_holo_name_MINENAME% - Name of mine
- %mcmines_last_reset_MINENAME% - The date of the mines last reset
- %mcmines_mine_percent_empty_MINENAME% - The percent of the mine that has been mined
- %mcmines_next_reset_date_MINENAME% - The date of the next reset
- %mcmines_next_reset_time_MINENAME% - The next reset date broken down into its components (x Weeks x Days x Hours x Minutes x Seconds)
- %mcmines_blocks_mined_MINENAME% - The amount of blocks that have been mined
- %mcmines_blocks_left_MINENAME% - The amount of blocks that have yet to be mined
- %mcmines_progress_bar_MINENAME% - A progress bar made up of 25 points, each representing ~ 4%
Figure 3 - Progress Bar
For support, please use only resource discussion
Terms of Service
By using this plugin, you agree to the following terms, which may be updated by the author at any time.
- All payments are final and non-refundable.
- Redistribution or resale of this plugin is prohibited.
- You are not permitted to modify, decompile, or extract any part of the plugin's source code.
- Support is provided exclusively to legitimate customers. We cannot offer support for plugins obtained through unauthorized or illegal means.