Use MiniClientPlugin for gem tracking

This commit is contained in:
Sam 2017-02-18 10:36:05 +00:00
parent 14f33ba494
commit 30d2059e9a
1 changed files with 10 additions and 25 deletions

View File

@ -1,16 +1,13 @@
package mineplex.gemhunters.economy;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import mineplex.core.MiniPlugin;
import mineplex.core.MiniClientPlugin;
import mineplex.core.ReflectivelyCreateMiniPlugin;
import mineplex.core.common.currency.GlobalCurrency;
import mineplex.core.common.util.F;
@ -18,18 +15,14 @@ import mineplex.gemhunters.death.event.PlayerCustomRespawnEvent;
import mineplex.gemhunters.economy.command.GiveGemsCommand;
@ReflectivelyCreateMiniPlugin
public class EconomyModule extends MiniPlugin
public class EconomyModule extends MiniClientPlugin<Integer>
{
private static final float GEM_KILL_FACTOR = 0.5F;
private Map<UUID, Integer> _storedGems;
public EconomyModule()
{
super("Economy");
_storedGems = new HashMap<>();
}
@Override
@ -58,7 +51,6 @@ public class EconomyModule extends MiniPlugin
int newGems = (int) (oldGems * GEM_KILL_FACTOR);
addToStore(killerPlayer, "Killing " + F.name(player.getName()), newGems);
return;
}
removeFromStore(player, oldGems);
@ -70,22 +62,9 @@ public class EconomyModule extends MiniPlugin
event.incrementGems(getGems(event.getPlayer()));
}
@EventHandler
public void quit(PlayerQuitEvent event)
{
_storedGems.remove(event.getPlayer().getUniqueId());
}
public void addToStore(Player player, String reason, int gems)
{
UUID key = player.getUniqueId();
if (!_storedGems.containsKey(key))
{
_storedGems.put(key, 0);
}
_storedGems.put(key, _storedGems.get(key) + gems);
Set(player, Get(player) + gems);
if (reason != null)
{
@ -100,6 +79,12 @@ public class EconomyModule extends MiniPlugin
public int getGems(Player player)
{
return _storedGems.get(player.getUniqueId());
return Get(player);
}
@Override
protected Integer addPlayer(UUID uuid)
{
return 0;
}
}