Dear Rune-Server,
I am using Hyperion as my base and i am trying to setup the sendFrame126 method. In winterLove based servers the format is:
Code:
public void sendFrame126(String s, int id) {
outStream.createFrameVarSizeWord(126);
outStream.writeString(s);
outStream.writeWordA(id);
outStream.endFrameVarSizeWord();
flushOutStream();
}
I understand that Hyperion is coded differently and that it uses the following format:
Code:
public ActionSender sendMessage(String message) {
player.write(new PacketBuilder(253, Type.VARIABLE).putRS2String(message).toPacket());
return this;
}
My question is, how would i translate the delta-based sendFrame126 into a method compatible with Hyperion?
I've tried:
Code:
public ActionSender sendFrame126(String s, int id) {
player.write(new PacketBuilder(126).putRS2String(s).putWordA(id).toPacket());
return this;
}
But i just get the following error:
symbol : method putWordA(int)
location: class org.hyperion.rs2.net.PacketBuilder
player.write(new PacketBuilder(126).putRS2String(s).putWordA(id).to Packet());
^
1 error
I will REP anyone who can offer a 100% solution.
EDIT: OK, I HAVE GOT THE METHOD WORKING, NOW I HAVE THE PROBLEM OF CALLING IT, I WANT TO CALL IT FROM AN EXTERNAL CLASS LIKE:
package org.hyperion;
public class TextHandler {
ActionSender actionsender = new ActionSender();
actionSender.sendFrame126("It worked!", 640);
}
BUT WHEN I LOGON THE SERVER THE TEXT IS NOT CHANGED, WHY IS THIS????