Minecraft Forge 1.13.2修改后的部分函数名

本文最后更新于 2024年5月8日 中午

前言

跟大中一起修mod过程中记录一下这样子。

缓更。

开始记录

1
Minecraft.getMinecraft() 改为 Minecraft.getInstance()
1
2
3
GlStateManager.color(float colorRed, float colorGreen, float colorBlue, float colorAlpha)
改为
GlStateManager.color4f(float colorRed, float colorGreen, float colorBlue, float colorAlpha)

本来的color方法的两个构造器(即仅传入RGB三个参数和传入RGBa四个参数)现在被分别改为了color3f和color4f。

1
GlStateManager.disableDepth() 改为 GlStateManager.disableDepthTest()
1
GlStateManager.enableDepth() 改为 GlStateManager.enableDepthTest()
1
GlStateManager.enableAlphaTest() 改为 GlStateManager.enableAlphaTest()
1
2
3
GlStateManager.translate(float x, float y, float z)
改为
GlStateManager.translatef(float x, float y, float z)

本来的translate方法的两个构造器(即传入三个float参数和传入三个double参数)现在分别改为了translatef和translated。

1
ItemStack.getTagCompound() 改为 ItemStack.getTag()
1
ItemStack.getRarity().rarityColor 改为 ItemStack.getRarity().color
1
NBTTagCompound.getCompoundTag(String key) 改为 NBTTagCompound.getCompound(String key)
1
NBTTagCompound.hasKey(String key, int type) 改为 NBTTagCompound.contains(String key, int type)
1
NBTTagCompound.getKeySet() 改为 NBTTagCompound.keySet()
1
2
3
4
5
6
7
8
9
GuiButton
@Override
public void drawButton(Minecraft mc, int mouseX, int mouseY, float partialTicks) {
}
改为
@Override
public void render(int mouseX, int mouseY, float partialTicks) {
Minecraft mc = Minecraft.getInstance();//mc对象在内部声明
}
1
NBTBase 改为 INBTBase
1
net.minecraft.client.resources.IResource 移至 net.minecraft.resources.IResource
1
net.minecraft.client.resources.IResourceManager 移至 net.minecraft.resources.IResourceManager

存疑改动

getItemDamage

原ItemStack.getItemDamage()方法删除,但原来的此方法返回的是:

1
2
3
public int getItemDamage(){
return getItem().getDamage(this);
}

考虑直接换为

1
2
3
ItemStack stackA
stackA.getItemDamage() 改为
stackA.getItem().getDamage(stackA)

获取键盘输入:

弃用了 org.lwjgl.input.Keyboard

用 net.minecraft.client.util.InputMappings 进行了替换

1
2
3
KeyLoader.key_F4 = new KeyBinding("FastTrading ON-OFF", Keyboard.KEY_F4, "FastTrading");
改为
KeyLoader.key_F4 = new KeyBinding("FastTrading ON-OFF", InputMappings.getInputByName("key.keyboard.f4").getKeyCode(), "FastTrading");

net.minecraft.client.renderer.texture.TextureUtil.readBufferedImage:

似乎是删除了这个方法,但是此方法原来的返回是:

1
2
3
4
5
6
7
8
9
10
11
public static BufferedImage readBufferedImage(InputStream imageStream) throws IOException{
BufferedImage bufferedimage;

try{
bufferedimage = ImageIO.read(imageStream);
}finally{
IOUtils.closeQuietly(imageStream);
}

return bufferedimage;
}

因此考虑直接依此进行修改:

1
2
3
BufferedImage bufferedimage = readBufferedImage(iresource.getInputStream());
改为:
BufferedImage bufferedimage = ImageIO.read(iresource.getInputStream());

播放声音:

playSound(ISound sound) 方法改为了 play(ISound sound):

但是在改变名称之后传参类型报错了,所以做了个强制转型如下:

1
mc.getSoundHandler().play((ISound) FakeSubtitleSound.getRecord(SoundEvents.ENTITY_ITEM_PICKUP, 0.5f, 0.05F, "fasttrading.subtitles.buttonswitching"));

Minecraft Forge 1.13.2修改后的部分函数名
https://www.aye10032.com/2019/03/31/2019-03-31-forgeupdate/
作者
Aye10032
发布于
2019年3月31日
更新于
2024年5月8日
许可协议