Changed Liquid to class, tried to keep it as similar to the enum as possible to avoid incompatibilities.

This commit is contained in:
BeefEX
2017-12-29 23:30:10 +01:00
parent 6774ea67ce
commit 8ed3b4dcf5
4 changed files with 32 additions and 17 deletions

View File

@@ -1,26 +1,41 @@
package io.anuke.mindustry.resource;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.utils.Array;
import io.anuke.ucore.util.Bundles;
public enum Liquid{
water(Color.ROYAL),
plasma(Color.CORAL),
lava(Color.valueOf("ed5334")),
oil(Color.valueOf("292929"));
public class Liquid {
public static final Array<Liquid> liquids = new Array<>();
public static final Liquid water = new Liquid("water", Color.ROYAL);
public static final Liquid plasma = new Liquid("plasma", Color.CORAL);
public static final Liquid lava = new Liquid("lava", Color.valueOf("ed5334"));
public static final Liquid oil = new Liquid("oil", Color.valueOf("292929"));
public final Color color;
public final String name;
public final int id;
private Liquid(Color color){
public Liquid(String name, Color color) {
this.name = name;
this.color = new Color(color);
this.id = liquids.size;
Liquid.liquids.add(this);
}
public String localized(){
return Bundles.get("liquid."+name() + ".name");
public String localizedName(){
return Bundles.get("liquid."+ this.name + ".name");
}
@Override
public String toString(){
return localized();
return localizedName();
}
public static Array<Liquid> getAllLiquids() {
return Liquid.liquids;
}
}