minecraftsrcでいくつかの変更を試みています。クラスのメソッドをオーバーライドしようとしているので、元のクラスを編集する必要はありません。
通常のクラスでは、このメソッドを変更したいと思います。
public void sendChatMessage(String par1Str)
{
this.sendQueue.addToSendQueue(new Packet3Chat(par1Str));
}
したがって、私のサブクラスには次のコードがあります。
package cobalt.gui;
import cobalt.hacks.*;
import net.minecraft.client.Minecraft;
import net.minecraft.src.EntityClientPlayerMP;
import net.minecraft.src.NetClientHandler;
import net.minecraft.src.Session;
import net.minecraft.src.World;
public class Console extends EntityClientPlayerMP {
public Console(Minecraft par1Minecraft, World par2World,
Session par3Session, NetClientHandler par4NetClientHandler) {
super(par1Minecraft, par2World, par3Session, par4NetClientHandler);
}
@Override
public void sendChatMessage(String par1Str) {
if (par1Str.startsWith(".help")) {
//Do stuff
return;
}
}
}
私の理解では、メソッドが呼び出されるたびに、サブクラスが処理するように「リダイレクト」する必要がありますか?(私が間違っているかどうか教えてくださいha)
元のクラスを変更すると、ifステートメントは正しく機能します。
どうもありがとうございます!