RuneHive-Game
Loading...
Searching...
No Matches
BoltEchantData.java
Go to the documentation of this file.
1package com.runehive.content.skill.impl.magic.enchant;
2
3import com.runehive.game.world.items.Item;
4
5import java.util.Arrays;
6import java.util.Optional;
7
8/**
9 * Holds all the bolt enchanting data.
10 *
11 * @author Daniel
12 */
13public enum BoltEchantData {
14 OPAL(879, 9236, 4, new Item(564, 1), new Item(556, 2)),
15 SAPPHIRE(9337, 9240, 7, new Item(564, 1), new Item(555, 1), new Item(558, 1)),
16 JADE(9335, 9237, 14, new Item(564, 1), new Item(557, 2)),
17 PEARL(880, 9238, 24, new Item(564, 1), new Item(555, 2)),
18 EMERALD(9338, 9241, 27, new Item(564, 1), new Item(556, 3), new Item(561, 1)),
19 RED_TOPAZ(9336, 9239, 29, new Item(564, 1), new Item(554, 2)),
20 RUBY(9339, 9242, 49, new Item(564, 1), new Item(554, 5), new Item(565, 1)),
21 DIAMOND(9340, 9243, 57, new Item(564, 1), new Item(557, 10), new Item(563, 2)),
22 DRAGONSTONE(9341, 9244, 68, new Item(564, 1), new Item(557, 15), new Item(566, 1)),
23 ONYX(9342, 9245, 87, new Item(564, 1), new Item(554, 20), new Item(560, 1));
24
25 public final int bolt;
26 public final int enchantedBolt;
27 public final int levelRequired;
28 public final Item[] runesRequired;
29 BoltEchantData(int bolt, int enchantedBolt, int levelRequired, Item...runesRequired) {
30 this.bolt = bolt;
31 this.enchantedBolt = enchantedBolt;
32 this.levelRequired = levelRequired;
33 this.runesRequired = runesRequired;
34 }
35
36 public static Optional<BoltEchantData> forItem(int item) {
37 return Arrays.stream(values()).filter(bolt -> bolt.enchantedBolt == item).findFirst();
38 }
39}
The container class that represents an item that can be interacted with.
Definition Item.java:21
BoltEchantData(int bolt, int enchantedBolt, int levelRequired, Item...runesRequired)
static Optional< BoltEchantData > forItem(int item)