public EventStartPacket(byte[] data) { using (MemoryStream mem = new MemoryStream(data)) { using (BinaryReader binReader = new BinaryReader(mem)) { try{ actorID = binReader.ReadUInt32(); scriptOwnerActorID = binReader.ReadUInt32(); val1 = binReader.ReadUInt32(); val2 = binReader.ReadUInt32(); val3 = binReader.ReadByte(); /* * //Lua Error Dump * if (val1 == 0x39800010) * { * errorIndex = actorID; * errorNum = scriptOwnerActorID; * error = ASCIIEncoding.ASCII.GetString(binReader.ReadBytes(0x80)).Replace("\0", ""); * * if (errorIndex == 0) * Program.Log.Error("LUA ERROR:"); * * return; * } */ List <byte> strList = new List <byte>(); byte curByte; while ((curByte = binReader.ReadByte()) != 0) { strList.Add(curByte); } triggerName = Encoding.ASCII.GetString(strList.ToArray()); binReader.BaseStream.Seek(0x31, SeekOrigin.Begin); if (binReader.PeekChar() == 0x1) { luaParams = new List <LuaParam>(); } else { luaParams = LuaUtils.ReadLuaParams(binReader); } } catch (Exception) { invalidPacket = true; } } } }
public EventUpdatePacket(byte[] data) { using (MemoryStream mem = new MemoryStream(data)) { using (BinaryReader binReader = new BinaryReader(mem)) { try{ actorID = binReader.ReadUInt32(); scriptOwnerActorID = binReader.ReadUInt32(); val1 = binReader.ReadUInt32(); val2 = binReader.ReadUInt32(); step = binReader.ReadByte(); luaParams = LuaUtils.ReadLuaParams(binReader); } catch (Exception) { invalidPacket = true; } } } }