These belong in their managers, not in McMMOPlayer

This commit is contained in:
GJ
2013-10-28 16:14:52 -04:00
parent ccb7fc5886
commit 9b3ae5c729
5 changed files with 84 additions and 92 deletions

View File

@ -67,6 +67,7 @@ public class FishingManager extends SkillManager {
private long fishingTimestamp = 0L;
private Location fishingTarget;
private Item fishingCatch;
private Location hookLocation;
public FishingManager(McMMOPlayer mcMMOPlayer) {
super(mcMMOPlayer, SkillType.FISHING);
@ -281,7 +282,7 @@ public class FishingManager extends SkillManager {
Biome biome = location.getBlock().getBiome();
double biteChance = hook.getBiteChance();
mcMMOPlayer.setHookLocation(location);
hookLocation = location;
if (biome == Biome.RIVER || biome == Biome.OCEAN) {
biteChance = biteChance * AdvancedConfig.getInstance().getMasterAnglerBiomeModifier();
@ -362,6 +363,10 @@ public class FishingManager extends SkillManager {
return experience * getVanillaXpMultiplier();
}
public Location getHookLocation() {
return hookLocation;
}
/**
* Handle the Shake ability
*

View File

@ -25,10 +25,14 @@ import com.gmail.nossr50.util.EventUtils;
import com.gmail.nossr50.util.Misc;
import com.gmail.nossr50.util.Permissions;
import com.gmail.nossr50.util.StringUtils;
import com.gmail.nossr50.util.player.UserManager;
import com.gmail.nossr50.util.skills.SkillUtils;
public class RepairManager extends SkillManager {
private boolean placedRepairAnvil;
private int lastRepairClick;
private boolean placedSalvageAnvil;
private int lastSalvageClick;
public RepairManager(McMMOPlayer mcMMOPlayer) {
super(mcMMOPlayer, SkillType.REPAIR);
}
@ -41,14 +45,14 @@ public class RepairManager extends SkillManager {
public void placedAnvilCheck(Material anvilType) {
Player player = getPlayer();
if (mcMMOPlayer.getPlacedAnvil(anvilType)) {
if (getPlacedAnvil(anvilType)) {
return;
}
player.sendMessage(Repair.getAnvilMessage(anvilType));
player.playSound(player.getLocation(), Sound.ANVIL_LAND, Misc.ANVIL_USE_VOLUME, Misc.ANVIL_USE_PITCH);
mcMMOPlayer.togglePlacedAnvil(anvilType);
togglePlacedAnvil(anvilType);
}
public void handleRepair(ItemStack item) {
@ -176,8 +180,7 @@ public class RepairManager extends SkillManager {
*/
public boolean checkConfirmation(Material anvilType, boolean actualize) {
Player player = getPlayer();
McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
long lastUse = mcMMOPlayer.getLastAnvilUse(anvilType);
long lastUse = getLastAnvilUse(anvilType);
if (!SkillUtils.cooldownExpired(lastUse, 3) || !Config.getInstance().getRepairConfirmRequired()) {
return true;
@ -187,7 +190,7 @@ public class RepairManager extends SkillManager {
return false;
}
mcMMOPlayer.actualizeLastAnvilUse(anvilType);
actualizeLastAnvilUse(anvilType);
if (anvilType == Repair.repairAnvilMaterial) {
player.sendMessage(LocaleLoader.getString("Skills.ConfirmOrCancel", LocaleLoader.getString("Repair.Pretty.Name")));
@ -348,4 +351,66 @@ public class RepairManager extends SkillManager {
player.sendMessage(LocaleLoader.getString("Repair.Arcane.Perfect"));
}
}
/*
* Repair Anvil Placement
*/
public boolean getPlacedAnvil(Material anvilType) {
if (anvilType == Repair.repairAnvilMaterial) {
return placedRepairAnvil;
}
if (anvilType == Repair.salvageAnvilMaterial) {
return placedSalvageAnvil;
}
return true;
}
public void togglePlacedAnvil(Material anvilType) {
if (anvilType == Repair.repairAnvilMaterial) {
placedRepairAnvil = !placedRepairAnvil;
}
if (anvilType == Repair.salvageAnvilMaterial) {
placedSalvageAnvil = !placedSalvageAnvil;
}
}
/*
* Repair Anvil Usage
*/
public int getLastAnvilUse(Material anvilType) {
if (anvilType == Repair.repairAnvilMaterial) {
return lastRepairClick;
}
if (anvilType == Repair.salvageAnvilMaterial) {
return lastSalvageClick;
}
return 0;
}
public void setLastAnvilUse(Material anvilType, int value) {
if (anvilType == Repair.repairAnvilMaterial) {
lastRepairClick = value;
}
if (anvilType == Repair.salvageAnvilMaterial) {
lastSalvageClick = value;
}
}
public void actualizeLastAnvilUse(Material anvilType) {
if (anvilType == Repair.repairAnvilMaterial) {
lastRepairClick = (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR);
}
if (anvilType == Repair.salvageAnvilMaterial) {
lastSalvageClick = (int) (System.currentTimeMillis() / Misc.TIME_CONVERSION_FACTOR);
}
}
}