Permalink
Browse files

Fixed the item parser not using the ItemRegistry

  • Loading branch information...
me4502 committed Dec 23, 2018
1 parent c5d9aad commit 6312bcecf699fc0fcb58dba4df9f6451c6c0df3b
@@ -23,9 +23,9 @@
import com.sk89q.worldedit.blocks.BaseItem;
import com.sk89q.worldedit.extension.input.InputParseException;
import com.sk89q.worldedit.extension.input.ParserContext;
import com.sk89q.worldedit.extension.platform.Capability;
import com.sk89q.worldedit.internal.registry.InputParser;
import com.sk89q.worldedit.world.item.ItemType;
import com.sk89q.worldedit.world.item.ItemTypes;
import com.sk89q.worldedit.world.registry.LegacyMapper;

public class DefaultItemParser extends InputParser<BaseItem> {
@@ -53,8 +53,10 @@ public BaseItem parseFromInput(String input, ParserContext context) throws Input
}

if (item == null) {
item = WorldEdit.getInstance().getPlatformManager()
.queryCapability(Capability.GAME_HOOKS).getRegistries().getItemRegistry().createFromId(input.toLowerCase());
ItemType type = ItemTypes.get(input.toLowerCase());
if (type != null) {
item = new BaseItem(type);
}
}

if (item == null) {
@@ -19,22 +19,10 @@

package com.sk89q.worldedit.world.registry;

import com.sk89q.worldedit.blocks.BaseItem;
import com.sk89q.worldedit.world.item.ItemType;
import com.sk89q.worldedit.world.item.ItemTypes;

import javax.annotation.Nullable;

/**
* A item registry that uses {@link BundledItemRegistry} to serve information
* about items.
*/
public class BundledItemRegistry implements ItemRegistry {

@Nullable
@Override
public BaseItem createFromId(String id) {
ItemType itemType = ItemTypes.get(id);
return itemType == null ? null : new BaseItem(itemType);
}
}
@@ -19,19 +19,6 @@

package com.sk89q.worldedit.world.registry;

import com.sk89q.worldedit.blocks.BaseItem;

import javax.annotation.Nullable;

public interface ItemRegistry {

/**
* Create a new item using its ID.
*
* @param id the id
* @return the item, which may be null if no item exists
*/
@Nullable
BaseItem createFromId(String id);

}
@@ -19,23 +19,8 @@

package com.sk89q.worldedit.forge;

import com.sk89q.worldedit.blocks.BaseItem;
import com.sk89q.worldedit.world.item.ItemTypes;
import com.sk89q.worldedit.world.registry.ItemRegistry;
import net.minecraft.item.Item;
import net.minecraft.util.ResourceLocation;

import javax.annotation.Nullable;

public class ForgeItemRegistry implements ItemRegistry {
@Nullable
@Override
public BaseItem createFromId(String id) {
Item match = Item.REGISTRY.getObject(new ResourceLocation(id));
if (match != null) {
return new BaseItem(ItemTypes.get(id));
} else {
return null;
}
}

}

0 comments on commit 6312bce

Please sign in to comment.