Got it to compile turns out if you want to convert a String
back into a ByteArray
you just have to fill the ByteArray
like ByteArray.writeUTFBytes(String);
Here is my example I got it to compile like this.
public function processPacket(event:PacketEvent):void {
var packetType:int = event.packetType;
var packetData:String = event.packetData;
var packetDataBytes:ByteArray = new ByteArray();
packetDataBytes.writeUTFBytes(packetData);
var arguments:Array = new Array();
var size:int = 4; //4 bytes for readInt() + 1 for possible String
while(packetDataBytes.length > size) {
size = packetDataBytes.readInt();
if(size <= 0 || size > 2000000) break;
arguments.push(packetDataBytes.readUTFBytes(size));
}
switch(packetType) {
//...
}
}