Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ivasik.rsmc;
- import com.google.common.collect.Sets;
- import cpw.mods.fml.common.Loader;
- import cpw.mods.fml.common.registry.GameData;
- import net.minecraft.block.Block;
- import net.minecraft.entity.Entity;
- import net.minecraft.entity.EntityList;
- import net.minecraft.item.Item;
- import net.minecraft.item.ItemBlock;
- import net.minecraft.item.ItemStack;
- import net.minecraftforge.common.config.Configuration;
- import java.io.File;
- import java.util.Set;
- public class EventConfig {
- private static boolean disablePrintNames = false;
- public static Set<String> items = Sets.newHashSet("minecraft:stone", "minecraft:grass:2", "minecraft:stick");
- public static Set<String> entities = Sets.newHashSet("minecraft:blaze", "minecraft:horse");
- public static boolean inEntityList(Entity entity) {
- final String registryName = EntityList.getEntityString(entity);
- return entities.contains(registryName);
- }
- public static boolean inItemList(ItemStack stack) {
- return inItemList(stack.getItem(), stack.getItemDamage());
- }
- public static boolean inItemList(Item item, int meta) {
- if (item instanceof ItemBlock)
- return inItemList(((ItemBlock) item).field_150939_a, meta);
- return inItemList(getId(item), meta);
- }
- public static boolean inItemList(Block block, int meta) {
- return inItemList(getId(block), meta);
- }
- static {
- final Configuration cfg = new Configuration(new File(Loader.instance().getConfigDir(), "rsmc-rarity.cfg"));
- disablePrintNames = cfg.getBoolean("disablePrintNames", Configuration.CATEGORY_GENERAL, disablePrintNames, "Отключить вывод имён зарегистрированных вещей и сущностей в файл");
- readStringSet("items", cfg, items, "Список вещей для назначения навыков");
- readStringSet("entities", cfg, entities, "Список сущностей для назначения навыков");
- }
- private static void readStringSet(String name, Configuration cfg, Set<String> names, String comment) {
- final Set<String> list = Sets.newHashSet(cfg.getStringList(name, Configuration.CATEGORY_GENERAL, names.toArray(new String[0]), comment));
- names.clear();
- names.addAll(list);
- }
- private static boolean inItemList(String id, int meta) {
- return id != null && (items.contains(id) || items.contains(id + ':' + meta));
- }
- private static String getId(Item item) {
- return GameData.getItemRegistry().getNameForObject(item);
- }
- private static String getId(Block block) {
- return GameData.getBlockRegistry().getNameForObject(block);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement