IMCHandler.java 文件源码

java
阅读 24 收藏 0 点赞 0 评论 0

项目:Chisel-2 作者:
private void handle(IMCMessage message, IMC type, String value) {
    ICarvingRegistry reg = Carving.chisel;
    String[] data = value.split("\\|");
    try {
        switch (type) {
        case ADD_VARIATION:
        case REMOVE_VARIATION:
            Block block = (Block) Block.blockRegistry.getObject(data[1]);
            int meta = Short.parseShort(data[2]);
            if (type == IMC.ADD_VARIATION) {
                reg.addVariation(data[0], block, meta, order++);
            } else {
                reg.removeVariation(block, meta, data[0]);
            }
            break;
        case REGISTER_GROUP_ORE:
            reg.registerOre(data[0], data[1]);
            break;
        default:
            throw new IllegalArgumentException("Invalid IMC constant! How...what...?");
        }
    } catch (Exception e) {
        Chisel.logger.error("Could not handle data {} for IMC type {}. This was sent from mod {}.\n" + "!! This is a bug in that mod !!\nSwallowing error and continuing...", value, type.name(),
                message.getSender());
        e.printStackTrace();
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号