2011-06-11 17:36:55 +02:00
package com.Acrobot.ChestShop.Config ;
2012-05-10 16:32:25 +02:00
import java.util.LinkedHashMap ;
import java.util.Map ;
2011-06-11 17:36:55 +02:00
/ * *
* @author Acrobot
* /
public enum Property {
2012-05-10 16:32:25 +02:00
//I put \n here, so the properties are nicely spaced out
PREFERRED_ECONOMY_PLUGIN ( " " , " WHEN NOT USING VAULT. Preferred (if not found, uses any other) economy plugin (iConomy, BOSEconomy, Essentials). \ n " ) ,
2012-04-19 16:37:15 +02:00
SHOP_INTERACTION_INTERVAL ( 100 , " (In 1/1000th of a second) How often can a player use the shop sign? " ) ,
IGNORE_CREATIVE_MODE ( true , " Do you want to allow using shops to people in creative mode? " ) ,
2011-07-02 20:34:14 +02:00
REVERSE_BUTTONS ( false , " If true, people will buy with left-click and sell with right-click. " ) ,
2012-04-19 16:37:15 +02:00
ALLOW_SIGN_CHEST_OPEN ( true , " Can shop's chest be opened by owner with right-clicking a shop's sign? " ) ,
2012-05-10 16:32:25 +02:00
ALLOW_LEFT_CLICK_DESTROYING ( true , " If true, if you left-click your own shop sign you won't open chest's inventory, but instead you will start destroying the sign. \ n " ) ,
REMOVE_EMPTY_SHOPS ( false , " If true, if the shop is empty, the sign is destroyed and put into the chest, so the shop isn't usable anymore. \ n " ) ,
2012-04-19 16:37:15 +02:00
ADMIN_SHOP_NAME ( " Admin Shop " , " First line of your Admin Shop's sign should look like this " ) ,
SERVER_ECONOMY_ACCOUNT ( " " , " The economy account which Admin Shops should use and to which all taxes will go " ) ,
TAX_AMOUNT ( 0 , " Percent of the price that should go to the server's account. (100 = 100 percent) " ) ,
2012-05-10 16:32:25 +02:00
SERVER_TAX_AMOUNT ( 0 , " Percent of the price that should go to the server's account when buying from an Admin Shop \ n " ) ,
2012-04-19 16:37:15 +02:00
2011-08-13 12:08:34 +02:00
SHOP_CREATION_PRICE ( 0 , " Amount of money player must pay to create a shop " ) ,
2012-05-10 16:32:25 +02:00
SHOP_REFUND_PRICE ( 0 , " How much money do you get back when destroying a sign? \ n " ) ,
BLOCK_SHOPS_WITH_SELL_PRICE_HIGHER_THAN_BUY_PRICE ( true , " Should we block shops that sell things for more than they buy? (This prevents newbies from creating shops that would be exploited) \ n " ) ,
2012-04-19 16:37:15 +02:00
ALLOW_MULTIPLE_SHOPS_AT_ONE_BLOCK ( false , " Do you want to allow other players to build a shop on a block where there's one already? " ) ,
2012-05-10 16:32:25 +02:00
ALLOW_PARTIAL_TRANSACTIONS ( true , " Can shops be used even when the seller doesn't have enough items? (The price will be scaled adequatly to the item amount) \ n " ) ,
2012-04-19 16:37:15 +02:00
SHOW_MESSAGE_OUT_OF_STOCK ( true , " Do you want to show \" Out of stock \" messages? " ) ,
SHOW_TRANSACTION_INFORMATION_CLIENT ( true , " Do you want to show \" You bought/sold... \" messages? " ) ,
2012-05-10 16:32:25 +02:00
SHOW_TRANSACTION_INFORMATION_OWNER ( true , " Do you want to show \" Somebody bought/sold... \" messages? \ n " ) ,
2012-04-19 16:37:15 +02:00
2011-06-11 17:36:55 +02:00
LOG_TO_FILE ( false , " If true, plugin will log transactions in its own file " ) ,
LOG_TO_CONSOLE ( true , " Do you want ChestShop's messages to show up in console? " ) ,
2011-07-05 19:08:55 +02:00
LOG_TO_DATABASE ( false , " If true, plugin will log transactions in EBean database " ) ,
2012-05-10 16:32:25 +02:00
RECORD_TIME_TO_LIVE ( 600 , " How long should transaction information be stored in the database (in seconds, -1 means forever)? \ n " ) ,
2012-04-19 16:37:15 +02:00
2011-07-02 20:34:14 +02:00
USE_BUILT_IN_PROTECTION ( true , " Do you want to use built-in protection against chest destruction? " ) ,
2011-06-11 17:36:55 +02:00
PROTECT_CHEST_WITH_LWC ( false , " Do you want to protect shop chests with LWC? " ) ,
2012-05-10 16:32:25 +02:00
PROTECT_SIGN_WITH_LWC ( false , " Do you want to protect shop signs with LWC? \ n " ) ,
2012-04-19 16:37:15 +02:00
//Statistics page
GENERATE_STATISTICS_PAGE ( false , " If true, plugin will generate shop statistics webpage. " ) ,
STATISTICS_PAGE_PATH ( " plugins/ChestShop/website.html " , " Where should your generated website be saved? " ) ,
2012-05-10 16:32:25 +02:00
STATISTICS_PAGE_GENERATION_INTERVAL ( 60 , " How often should the website be generated? \ n " ) ,
2012-04-19 16:37:15 +02:00
//Towny stuff
2011-09-29 20:29:39 +02:00
TOWNY_INTEGRATION ( false , " Do you want to only let people build inside shop plots? " ) ,
2012-05-10 16:32:25 +02:00
TOWNY_SHOPS_FOR_OWNERS_ONLY ( true , " If true, only plot owners are able to build inside a shop plot. If false, every town's resident is able to build there. \ n " ) ,
2012-04-07 12:41:20 +02:00
2012-04-19 16:37:15 +02:00
//WorldGuard stuff
2012-04-07 12:41:20 +02:00
WORLDGUARD_INTEGRATION ( false , " Do you want to only let people build inside regions? " ) ,
WORLDGUARD_USE_FLAG ( true , " Do you want to only let poeple build inside region flagged by doing /region regionName flag chestshop allow? " ) ,
2012-05-10 16:32:25 +02:00
WORLDGUARD_USE_PROTECTION ( false , " Do you want ChestShop to respect WorldGuard's chest protection? \ n " ) ,
2012-04-07 12:41:20 +02:00
2012-04-19 16:37:15 +02:00
//Heroes stuff
2012-05-10 16:32:25 +02:00
HEROES_EXP ( 100 , " How much Heroes exp should people get for creating a ChestShop? \ n " ) ;
2011-06-11 17:36:55 +02:00
2011-07-02 20:34:14 +02:00
2011-07-23 21:00:47 +02:00
private final Object value ;
private final String comment ;
2011-06-11 17:36:55 +02:00
2012-06-08 15:28:36 +02:00
private static final Map < String , Value > PROPERTIES = new LinkedHashMap < String , Value > ( ) ;
2012-05-10 16:32:25 +02:00
2011-06-11 17:36:55 +02:00
private Property ( Object value , String comment ) {
this . value = value ;
this . comment = comment ;
}
2012-05-10 16:32:25 +02:00
public Value getValue ( ) {
return new Value ( value , comment ) ;
2011-06-11 17:36:55 +02:00
}
public String toString ( ) {
return name ( ) ;
}
2012-05-10 16:32:25 +02:00
public static Map < String , Value > getValues ( ) {
2012-06-08 15:28:36 +02:00
return PROPERTIES ;
2012-05-10 16:32:25 +02:00
}
static {
for ( Property property : Property . values ( ) ) {
2012-06-08 15:28:36 +02:00
PROPERTIES . put ( property . name ( ) , property . getValue ( ) ) ;
2012-05-10 16:32:25 +02:00
}
}
2011-06-11 17:36:55 +02:00
}