83 lines
2.3 KiB
Java
83 lines
2.3 KiB
Java
package ley.modding.dartcraft.api.upgrades;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
public class IForceUpgrade {
|
|
private int id = getUniqueUpgradeID();
|
|
private String name;
|
|
private String description;
|
|
private int tier;
|
|
private int maxLevel;
|
|
private ArrayList materials = new ArrayList();
|
|
|
|
public IForceUpgrade(int tier, String name, int maxLevel, String description) {
|
|
this.tier = tier;
|
|
this.name = name;
|
|
this.maxLevel = maxLevel;
|
|
this.description = description;
|
|
}
|
|
|
|
public void addMat(IForceUpgradeMaterial mat) {
|
|
if (mat != null && this.materials != null) {
|
|
this.materials.add(mat);
|
|
}
|
|
}
|
|
|
|
public int getID() {
|
|
return this.id;
|
|
}
|
|
|
|
public int getTier() {
|
|
return this.tier;
|
|
}
|
|
|
|
public String getName() {
|
|
return this.name;
|
|
}
|
|
|
|
public String getDescription() {
|
|
return this.description;
|
|
}
|
|
|
|
public int getMaxLevel() {
|
|
return this.maxLevel;
|
|
}
|
|
|
|
public int getNumMats() {
|
|
return this.materials != null ? this.materials.size() : 0;
|
|
}
|
|
|
|
public static int getUniqueUpgradeID() {
|
|
try {
|
|
return 1; //((Integer)ReflectionHelper.getMethod(DartAPI.manager,
|
|
//"getFirstUniqueUpgradeID", new Class[0]).invoke(DartAPI.manager,
|
|
//new Object[0])).intValue();
|
|
} catch (Exception var1) {
|
|
var1.printStackTrace();
|
|
return -1;
|
|
}
|
|
}
|
|
|
|
public IForceUpgradeMaterial getMaterialAt(int index) {
|
|
return this.materials != null && this.materials.size() > index
|
|
? (IForceUpgradeMaterial) this.materials.get(index)
|
|
: null;
|
|
}
|
|
|
|
public int getMaterialIndex(IForceUpgradeMaterial mat) {
|
|
if (this.materials != null && this.materials.size() > 0) {
|
|
for (int i = 0; i < this.materials.size(); ++i) {
|
|
IForceUpgradeMaterial check
|
|
= (IForceUpgradeMaterial) this.materials.get(i);
|
|
if (check.getUpgradeID() == mat.getUpgradeID()
|
|
&& check.getItem() == mat.getItem()
|
|
&& check.getItemMeta() == mat.getItemMeta()) {
|
|
return i;
|
|
}
|
|
}
|
|
}
|
|
|
|
return -1;
|
|
}
|
|
}
|