// Path: src/net/diecode/killermoney/objects/CashTransferProperties.java
// public class CashTransferProperties {
// 
//     private double percent;
//     private int maxAmount;
//     private double chance;
//     private String permission;
//     private int limit;
//     private DivisionMethod divisionMethod;
//     private boolean enabled;
//     private HashMap<UUID, BigDecimal> limitCounter = new HashMap<UUID, BigDecimal>();
// 
//     public CashTransferProperties(double percent, int maxAmount, double chance, String permission, int limit,
//                                   DivisionMethod divisionMethod, boolean enabled) {
//         this.percent = percent;
//         this.maxAmount = maxAmount;
//         this.chance = chance;
//         this.permission = permission;
//         this.limit = limit;
//         this.divisionMethod = divisionMethod;
//         this.enabled = enabled;
//     }
// 
//     public double getPercent() {
//         return percent;
//     }
// 
//     public int getMaxAmount() {
//         return maxAmount;
//     }
// 
//     public double getChance() {
//         return chance;
//     }
// 
//     public String getPermission() {
//         return permission;
//     }
// 
//     public int getLimit() {
//         return limit;
//     }
// 
//     public DivisionMethod getDivisionMethod() {
//         return divisionMethod;
//     }
// 
//     public HashMap<UUID, BigDecimal> getLimitCounter() {
//         return limitCounter;
//     }
// 
//     public boolean isEnabled() {
//         return enabled;
//     }
// 
//     public boolean chanceGen() {
//         return Utils.chanceGenerator(this.chance);
//     }
// 
//     public boolean isReachedLimit(UUID uuid) {
//         if (limit < 1) {
//             return false;
//         }
// 
//         Player player = Bukkit.getPlayer(uuid);
// 
//         if (player.hasPermission(KMPermission.BYPASS_MONEY_LIMIT.get())) {
//             return false;
//         }
// 
//         if (limitCounter.containsKey(uuid)) {
//             BigDecimal current = limitCounter.get(uuid);
// 
//             if (current.doubleValue() >= limit) {
//                 return true;
//             }
//         }
// 
//         return false;
//     }
// 
//     public void increaseLimitCounter(UUID uuid, BigDecimal money) {
//         if (limit == 0) {
//             return;
//         }
// 
//         if (limitCounter.containsKey(uuid)) {
//             BigDecimal incremented = limitCounter.get(uuid).add(money);
// 
//             limitCounter.put(uuid, incremented);
//         } else {
//             limitCounter.put(uuid, money);
//         }
//     }
// 
//     public BigDecimal getCurrentLimitValue(UUID uuid) {
//         if (limitCounter.containsKey(uuid)) {
//             return limitCounter.get(uuid);
//         }
// 
//         return BigDecimal.ZERO;
//     }
// }


import net.diecode.killermoney.objects.CashTransferProperties;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import java.math.BigDecimal;
package net.diecode.killermoney.events;



public class KMEarnMoneyCashTransferDepositEvent extends Event implements Cancellable {

    private static final HandlerList handlers = new HandlerList();

// Path: src/net/diecode/killermoney/objects/CashTransferProperties.java
// public class CashTransferProperties {
// 
//     private double percent;
//     private int maxAmount;
//     private double chance;
//     private String permission;
//     private int limit;
//     private DivisionMethod divisionMethod;
//     private boolean enabled;
//     private HashMap<UUID, BigDecimal> limitCounter = new HashMap<UUID, BigDecimal>();
// 
//     public CashTransferProperties(double percent, int maxAmount, double chance, String permission, int limit,
//                                   DivisionMethod divisionMethod, boolean enabled) {
//         this.percent = percent;
//         this.maxAmount = maxAmount;
//         this.chance = chance;
//         this.permission = permission;
//         this.limit = limit;
//         this.divisionMethod = divisionMethod;
//         this.enabled = enabled;
//     }
// 
//     public double getPercent() {
//         return percent;
//     }
// 
//     public int getMaxAmount() {
//         return maxAmount;
//     }
// 
//     public double getChance() {
//         return chance;
//     }
// 
//     public String getPermission() {
//         return permission;
//     }
// 
//     public int getLimit() {
//         return limit;
//     }
// 
//     public DivisionMethod getDivisionMethod() {
//         return divisionMethod;
//     }
// 
//     public HashMap<UUID, BigDecimal> getLimitCounter() {
//         return limitCounter;
//     }
// 
//     public boolean isEnabled() {
//         return enabled;
//     }
// 
//     public boolean chanceGen() {
//         return Utils.chanceGenerator(this.chance);
//     }
// 
//     public boolean isReachedLimit(UUID uuid) {
//         if (limit < 1) {
//             return false;
//         }
// 
//         Player player = Bukkit.getPlayer(uuid);
// 
//         if (player.hasPermission(KMPermission.BYPASS_MONEY_LIMIT.get())) {
//             return false;
//         }
// 
//         if (limitCounter.containsKey(uuid)) {
//             BigDecimal current = limitCounter.get(uuid);
// 
//             if (current.doubleValue() >= limit) {
//                 return true;
//             }
//         }
// 
//         return false;
//     }
// 
//     public void increaseLimitCounter(UUID uuid, BigDecimal money) {
//         if (limit == 0) {
//             return;
//         }
// 
//         if (limitCounter.containsKey(uuid)) {
//             BigDecimal incremented = limitCounter.get(uuid).add(money);
// 
//             limitCounter.put(uuid, incremented);
//         } else {
//             limitCounter.put(uuid, money);
//         }
//     }
// 
//     public BigDecimal getCurrentLimitValue(UUID uuid) {
//         if (limitCounter.containsKey(uuid)) {
//             return limitCounter.get(uuid);
//         }
// 
//         return BigDecimal.ZERO;
//     }
// }


// Path: src/net/diecode/killermoney/events/KMEarnMoneyCashTransferDepositEvent.java
import net.diecode.killermoney.objects.CashTransferProperties;
import org.bukkit.entity.Player;
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import java.math.BigDecimal;

package net.diecode.killermoney.events;



public class KMEarnMoneyCashTransferDepositEvent extends Event implements Cancellable {

    private static final HandlerList handlers = new HandlerList();

    private CashTransferProperties cashTransferProperties;