Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.monsterrdebeast;
- import java.util.Iterator;
- import java.util.Set;
- import java.util.WeakHashMap;
- import org.bukkit.ChatColor;
- import org.bukkit.entity.Player;
- import org.bukkit.event.player.PlayerInteractEvent;
- public abstract class Spell
- {
- public static WeakHashMap<Integer, Spell> spells = new WeakHashMap();
- private int id;
- private String name;
- private String displayName;
- public Spell(String name, String displayName)
- {
- this.name = name.replaceAll(" ", "");
- this.displayName = (displayName != null ? displayName : this.name);
- int id = 0;
- for (Iterator localIterator = spells.keySet().iterator(); localIterator.hasNext();)
- {
- int i = ((Integer)localIterator.next()).intValue();
- if (i > id) {
- id = i;
- }
- }
- id++;
- this.id = id;
- spells.put(Integer.valueOf(id), this);
- }
- public String getName()
- {
- return ChatColor.stripColor(this.name);
- }
- public String getDisplayName()
- {
- return this.displayName;
- }
- public int getSpellID()
- {
- return this.id;
- }
- public abstract void onLeftClick(Player paramPlayer, PlayerInteractEvent paramPlayerInteractEvent);
- public abstract String onSelect();
- public static Spell getByID(int id)
- {
- for (Spell spell : spells.values()) {
- if (spell.id == id) {
- return spell;
- }
- }
- return null;
- }
- public static Spell getByName(String name)
- {
- for (Spell spell : spells.values()) {
- if (ChatColor.stripColor(spell.name).equalsIgnoreCase(ChatColor.stripColor(name))) {
- return spell;
- }
- }
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement