per permission group cooldowns, prices and warmups!

This commit is contained in:
Boos 2012-01-07 18:04:51 +01:00
parent f0fc7729df
commit 893a0f7bc2
6 changed files with 239 additions and 16 deletions

View File

@ -29,12 +29,24 @@ public class boosConfigManager {
} else {
this.confFile = new File(boosCoolDown.getDataFolder(), "config.yml");
this.conf = new Configuration(confFile);
conf.setProperty("commands.cooldown./spawn", 60);
conf.setProperty("commands.cooldown./home", 30);
conf.setProperty("commands.warmup./give", 60);
conf.setProperty("commands.warmup./home", 20);
conf.setProperty("commands.price./spawn", 10);
conf.setProperty("commands.price./home", 20);
conf.setProperty("commands.cooldowns.cooldown./spawn", 60);
conf.setProperty("commands.cooldowns.cooldown./home", 30);
conf.setProperty("commands.cooldowns.cooldown2./home", 40);
conf.setProperty("commands.cooldowns.cooldown3./home", 90);
conf.setProperty("commands.cooldowns.cooldown4./home", 99);
conf.setProperty("commands.cooldowns.cooldown5./home", 542);
conf.setProperty("commands.warmups.warmup./give", 60);
conf.setProperty("commands.warmups.warmup./home", 20);
conf.setProperty("commands.warmups.warmup2./home", 40);
conf.setProperty("commands.warmups.warmup3./home", 90);
conf.setProperty("commands.warmups.warmup4./home", 99);
conf.setProperty("commands.warmups.warmup5./home", 542);
conf.setProperty("commands.prices.price./spawn", 10);
conf.setProperty("commands.prices.price./home", 20);
conf.setProperty("commands.prices.price2./home", 40);
conf.setProperty("commands.prices.price3./home", 90);
conf.setProperty("commands.prices.price4./home", 99);
conf.setProperty("commands.prices.price5./home", 542);
conf.setProperty("commands.options.cancel_warmup_on_damage", false);
conf.setProperty("commands.options.cancel_warmup_on_move", false);
conf.setProperty("commands.options.cancel_warmup_on_sneak", false);
@ -83,21 +95,105 @@ public class boosConfigManager {
static int getCoolDown(Player player, String pre) {
int coolDown = 0;
pre = pre.toLowerCase();
coolDown = conf.getInt("commands.cooldown." + pre, coolDown);
coolDown = conf.getInt("commands.cooldowns.cooldown." + pre, coolDown);
return coolDown;
}
public static int getCoolDown2(Player player, String pre) {
int coolDown = 0;
pre = pre.toLowerCase();
coolDown = conf.getInt("commands.cooldowns.cooldown2." + pre, coolDown);
return coolDown;
}
public static int getCoolDown3(Player player, String pre) {
int coolDown = 0;
pre = pre.toLowerCase();
coolDown = conf.getInt("commands.cooldowns.cooldown3." + pre, coolDown);
return coolDown;
}
public static int getCoolDown4(Player player, String pre) {
int coolDown = 0;
pre = pre.toLowerCase();
coolDown = conf.getInt("commands.cooldowns.cooldown4." + pre, coolDown);
return coolDown;
}
public static int getCoolDown5(Player player, String pre) {
int coolDown = 0;
pre = pre.toLowerCase();
coolDown = conf.getInt("commands.cooldowns.cooldown5." + pre, coolDown);
return coolDown;
}
public static int getWarmUp(Player player, String pre) {
int warmUp = 0;
pre = pre.toLowerCase();
warmUp = conf.getInt("commands.warmup." + pre, warmUp);
warmUp = conf.getInt("commands.warmups.warmup." + pre, warmUp);
return warmUp;
}
public static int getWarmUp2(Player player, String pre) {
int warmUp = 0;
pre = pre.toLowerCase();
warmUp = conf.getInt("commands.warmups.warmup2." + pre, warmUp);
return warmUp;
}
public static int getWarmUp3(Player player, String pre) {
int warmUp = 0;
pre = pre.toLowerCase();
warmUp = conf.getInt("commands.warmups.warmup3." + pre, warmUp);
return warmUp;
}
public static int getWarmUp4(Player player, String pre) {
int warmUp = 0;
pre = pre.toLowerCase();
warmUp = conf.getInt("commands.warmups.warmup4." + pre, warmUp);
return warmUp;
}
public static int getWarmUp5(Player player, String pre) {
int warmUp = 0;
pre = pre.toLowerCase();
warmUp = conf.getInt("commands.warmups.warmup5." + pre, warmUp);
return warmUp;
}
public static int getPrice(Player player, String pre) {
int price = 0;
pre = pre.toLowerCase();
price = conf.getInt("commands.price." + pre, price);
price = conf.getInt("commands.prices.price." + pre, price);
return price;
}
public static int getPrice2(Player player, String pre) {
int price = 0;
pre = pre.toLowerCase();
price = conf.getInt("commands.prices.price2." + pre, price);
return price;
}
public static int getPrice3(Player player, String pre) {
int price = 0;
pre = pre.toLowerCase();
price = conf.getInt("commands.prices.price3." + pre, price);
return price;
}
public static int getPrice4(Player player, String pre) {
int price = 0;
pre = pre.toLowerCase();
price = conf.getInt("commands.prices.price4." + pre, price);
return price;
}
public static int getPrice5(Player player, String pre) {
int price = 0;
pre = pre.toLowerCase();
price = conf.getInt("commands.prices.price5." + pre, price);
return price;
}
@ -188,6 +284,8 @@ public class boosConfigManager {
"&6Warm-ups have been cancelled due to sprinting.&f");
}
// public static String getWarmUpCancelledByDeathMessage() {
// return conf.getString(
// "commands.options.message_warmup_cancelled_by_death",

View File

@ -144,7 +144,7 @@ public class boosCoolDown extends JavaPlugin {
private void registerEvents(){
pm.registerEvent(Event.Type.PLAYER_COMMAND_PREPROCESS, playerListener,
Event.Priority.High, this);
Event.Priority.Lowest, this);
if (boosConfigManager.getCancelWarmUpOnDamage()) {
pm.registerEvent(Event.Type.ENTITY_DAMAGE, entityListener,
Event.Priority.Normal, this);

View File

@ -95,7 +95,37 @@ public class boosCoolDownManager {
static boolean coolDown(Player player, String pre, String message) {
pre = pre.toLowerCase();
int coolDownSeconds = boosConfigManager.getCoolDown(player, pre);
int coolDownSeconds = 0;
if (boosCoolDown.isUsingPermissions()) {
if (!boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown2")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown3")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown4")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown5")) {
coolDownSeconds = boosConfigManager.getCoolDown(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown2")) {
coolDownSeconds = boosConfigManager.getCoolDown2(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown3")) {
coolDownSeconds = boosConfigManager.getCoolDown3(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown4")) {
coolDownSeconds = boosConfigManager.getCoolDown4(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown5")) {
coolDownSeconds = boosConfigManager.getCoolDown5(player, pre);
}
} else {
coolDownSeconds = boosConfigManager.getCoolDown(player, pre);
}
if (boosCoolDown.isUsingPermissions()) {
if (coolDownSeconds > 0
&& !boosCoolDown.getPermissions().has(player,
@ -205,7 +235,37 @@ public class boosCoolDownManager {
static boolean checkCoolDownOK(Player player, String pre, String message) {
pre = pre.toLowerCase();
int coolDownSeconds = boosConfigManager.getCoolDown(player, pre);
int coolDownSeconds = 0;
if (boosCoolDown.isUsingPermissions()) {
if (!boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown2")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown3")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown4")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown5")) {
coolDownSeconds = boosConfigManager.getCoolDown(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown2")) {
coolDownSeconds = boosConfigManager.getCoolDown2(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown3")) {
coolDownSeconds = boosConfigManager.getCoolDown3(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown4")) {
coolDownSeconds = boosConfigManager.getCoolDown4(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.cooldown5")) {
coolDownSeconds = boosConfigManager.getCoolDown5(player, pre);
}
} else {
coolDownSeconds = boosConfigManager.getCoolDown(player, pre);
}
if (coolDownSeconds > 0) {
Date lastTime = getTime(player, pre);
if (lastTime == null) {

View File

@ -76,7 +76,37 @@ public class boosCoolDownPlayerListener extends PlayerListener {
// Returns true if the command is on cooldown, false otherwise
private boolean checkCooldown(PlayerCommandPreprocessEvent event,
Player player, String pre, String message) {
int warmUpSeconds = boosConfigManager.getWarmUp(player, pre);
int warmUpSeconds = 0;
if (boosCoolDown.isUsingPermissions()) {
if (!boosCoolDown.getPermissions().has(player,
"booscooldowns.warmup2")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.warmup3")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.warmup4")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.warmup5")) {
warmUpSeconds = boosConfigManager.getWarmUp(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.warmup2")) {
warmUpSeconds = boosConfigManager.getWarmUp2(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.warmup3")) {
warmUpSeconds = boosConfigManager.getWarmUp3(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.warmup4")) {
warmUpSeconds = boosConfigManager.getWarmUp4(player, pre);
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.warmup5")) {
warmUpSeconds = boosConfigManager.getWarmUp5(player, pre);
}
} else {
warmUpSeconds = boosConfigManager.getWarmUp(player, pre);
}
if (boosCoolDown.isUsingPermissions()) {
if (warmUpSeconds > 0
&& !boosCoolDown.getPermissions().has(player,

View File

@ -11,8 +11,43 @@ public class boosPriceManager {
private static Economy economy = boosCoolDown.getEconomy();
public static void payForCommand(Player player, String pre, String message) {
EconomyResponse r = economy.withdrawPlayer(player.getName(),
boosConfigManager.getPrice(player, pre));
EconomyResponse r = null;
if (boosCoolDown.isUsingPermissions()) {
if (!boosCoolDown.getPermissions().has(player,
"booscooldowns.price2")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.price3")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.price4")
&& !boosCoolDown.getPermissions().has(player,
"booscooldowns.price5")) {
r = economy.withdrawPlayer(player.getName(),
boosConfigManager.getPrice(player, pre));
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.price2")) {
r = economy.withdrawPlayer(player.getName(),
boosConfigManager.getPrice2(player, pre));
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.price3")) {
r = economy.withdrawPlayer(player.getName(),
boosConfigManager.getPrice3(player, pre));
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.price4")) {
r = economy.withdrawPlayer(player.getName(),
boosConfigManager.getPrice4(player, pre));
}
if (boosCoolDown.getPermissions().has(player,
"booscooldowns.price5")) {
r = economy.withdrawPlayer(player.getName(),
boosConfigManager.getPrice5(player, pre));
}
} else {
r = economy.withdrawPlayer(player.getName(),
boosConfigManager.getPrice(player, pre));
}
if (r.transactionSuccess()) {
String msg = String.format(
boosConfigManager.getPaidForCommandMessage(),

View File

@ -1,6 +1,6 @@
name: boosCooldown
main: cz.boosik.boosCooldown.boosCoolDown
version: 1.9.1
version: 2.0.0
author: boosik
softdepend: [Vault, iConomy 4 & 5 & 6, BOSEconomy 6 & 7, EssentialsEcon, 3Co, MultiCurrency, MineConomy, eWallet, EconXP]
description: >