summaryrefslogtreecommitdiffstats
path: root/Essentials/src/com/earth2me/essentials/storage/EnchantmentLevel.java
blob: 2eb062ae85b281166a197211cfdc0b6528d1445f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
package com.earth2me.essentials.storage;

import java.util.Map.Entry;
import org.bukkit.enchantments.Enchantment;


public class EnchantmentLevel implements Entry<Enchantment, Integer>
{
	private Enchantment enchantment;
	private int level;

	public EnchantmentLevel(final Enchantment enchantment, final int level)
	{
		this.enchantment = enchantment;
		this.level = level;
	}

	public Enchantment getEnchantment()
	{
		return enchantment;
	}

	public void setEnchantment(final Enchantment enchantment)
	{
		this.enchantment = enchantment;
	}

	public int getLevel()
	{
		return level;
	}

	public void setLevel(final int level)
	{
		this.level = level;
	}

	@Override
	public Enchantment getKey()
	{
		return enchantment;
	}

	@Override
	public Integer getValue()
	{
		return level;
	}

	@Override
	public Integer setValue(final Integer v)
	{
		int t = level;
		level = v;
		return t;
	}

	@Override
	public int hashCode()
	{
		return enchantment.hashCode() ^ level;
	}

	@Override
	public boolean equals(final Object obj)
	{
		if (obj instanceof Entry)
		{
			final Entry entry = (Entry)obj;
			if (entry.getKey() instanceof Enchantment
				&& entry.getValue() instanceof Integer)
			{
				final Enchantment objEnchantment = (Enchantment)entry.getKey();
				final Integer objLevel = (Integer)entry.getValue();
				return enchantment.equals(objEnchantment) && level == objLevel.intValue();
			}
		}
		return false;
	}
}