Skip to content

Commit bfc7831

Browse files
committed
Enable pvp if player is out of money
1 parent a9d0d43 commit bfc7831

File tree

4 files changed

+16
-6
lines changed

4 files changed

+16
-6
lines changed

pvpmanager/src/main/java/me/NoChance/PvPManager/Player/EcoPlayer.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,11 @@ protected EcoPlayer(final Player player, final Economy economy) {
1818
this.economy = economy;
1919
}
2020

21-
private void withdrawMoney(final double amount) {
21+
private boolean withdrawMoney(final double amount) {
2222
final EconomyResponse response = economy.withdrawPlayer(getPlayer(), amount);
2323
Log.debug(
2424
"Withdraw money from " + getName() + " - Response: " + response.type + " " + response.amount + " " + response.balance + " " + response.errorMessage);
25+
return response.transactionSuccess() && response.balance > 0;
2526
}
2627

2728
private void depositMoney(final double amount) {
@@ -40,9 +41,9 @@ public final void applyPenalty() {
4041
message(Messages.getMoneyPenalty().replace("%m", CombatUtils.formatTo2Digits(penalty)));
4142
}
4243

43-
public final void applyPvPDisabledFee() {
44-
withdrawMoney(Settings.getPvPDisabledFee());
44+
public final boolean applyPvPDisabledFee() {
4545
message(Messages.getPvPDisabledFee().replace("%money", CombatUtils.formatTo2Digits(Settings.getPvPDisabledFee())));
46+
return withdrawMoney(Settings.getPvPDisabledFee());
4647
}
4748

4849
public final void giveReward(final EcoPlayer victim) {

pvpmanager/src/main/java/me/NoChance/PvPManager/Settings/Messages.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ public class Messages {
9797
private static String enabled;
9898
private static String disabled;
9999
private static String pvpDisabledFee;
100+
private static String pvpFeeNotEnough;
100101

101102
public static void setup(final PvPManager plugin) {
102103
Messages.plugin = plugin;
@@ -170,6 +171,7 @@ private static void getMessages() {
170171
attackDeniedYou = getString("Attack_Denied_You");
171172
attackDeniedOther = getString("Attack_Denied_Other");
172173
pvpDisabledFee = getString("PvP_Disabled_Fee");
174+
pvpFeeNotEnough = getString("PvP_Disabled_Fee_Not_Enough");
173175
taggedAttacker = getString("Tagged_Attacker");
174176
taggedAttackerActionbar = getString("Tagged_Attacker_ActionBar");
175177
taggedDefender = getString("Tagged_Defender");
@@ -557,4 +559,8 @@ public static String getDisabled() {
557559
public static String getPvPDisabledFee() {
558560
return pvpDisabledFee;
559561
}
562+
563+
public static String getPvpFeeNotEnough() {
564+
return pvpFeeNotEnough;
565+
}
560566
}

pvpmanager/src/main/java/me/NoChance/PvPManager/Tasks/PvPToggleFeeTask.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import me.NoChance.PvPManager.PvPlayer;
44
import me.NoChance.PvPManager.Managers.PlayerHandler;
5+
import me.NoChance.PvPManager.Settings.Messages;
56

67
public class PvPToggleFeeTask implements Runnable {
78

@@ -13,9 +14,10 @@ public PvPToggleFeeTask(final PlayerHandler ph) {
1314

1415
@Override
1516
public final void run() {
16-
for (final PvPlayer p : ph.getPlayers().values()) {
17-
if (!p.hasPvPEnabled()) {
18-
p.applyPvPDisabledFee();
17+
for (final PvPlayer combatPlayer : ph.getPlayers().values()) {
18+
if (!combatPlayer.hasPvPEnabled() && !combatPlayer.applyPvPDisabledFee()) {
19+
combatPlayer.setPvP(true);
20+
combatPlayer.message(Messages.getPvpFeeNotEnough());
1921
}
2022
}
2123
}

pvpmanager/src/main/resources/locale/messages.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Attack_Denied_You = &6[&8PvPManager&6] &4You have PvP protection!
1010
Attack_Denied_Other = &6[&8PvPManager&6] &4%p has PvP protection!
1111
PvP_Force_Enabled_WorldGuard = &6[&8PvPManager&6] &cPvP force enabled because you are inside a PvP region
1212
PvP_Disabled_Fee = &6[&8PvPManager&6] &3You paid a &5%money &3fee for having PvP disabled
13+
PvP_Disabled_Fee_Not_Enough = &6[&8PvPManager&6] &3PvP enabled because you don't have enough money
1314

1415
# Combat Tag
1516
Tagged_Attacker = &6[&8PvPManager&6] &7You tagged&f %p&7! Do not log out or you will be punished!

0 commit comments

Comments
 (0)