public virtual void LoadActorScript(Socket sender) { byte[] data = new byte[0x108]; Buffer.BlockCopy(BitConverter.GetBytes(LuaParameters.ClassCode), 0, data, 0, sizeof(uint)); Buffer.BlockCopy(Encoding.ASCII.GetBytes(LuaParameters.ActorName), 0, data, 0x04, LuaParameters.ActorName.Length); Buffer.BlockCopy(Encoding.ASCII.GetBytes(LuaParameters.ClassName), 0, data, 0x24, LuaParameters.ClassName.Length); LuaParameters.WriteParameters(ref data, LuaParameters); SendPacket(sender, ServerOpcode.LoadClassScript, data); }
public void StartClientOrderEvent(Socket sender) { byte[] data = new byte[0x70]; uint characterId = User.Instance.Character.Id; Buffer.BlockCopy(BitConverter.GetBytes(characterId), 0, data, 0, 4); Buffer.BlockCopy(BitConverter.GetBytes(Id), 0, data, 0x04, 4); Buffer.BlockCopy(BitConverter.GetBytes(0x75dc1705), 0, data, 0x08, 4); //the last byte is the event type (05). the other bytes are unknown. Buffer.BlockCopy(BitConverter.GetBytes(ClassCode), 0, data, 0x0c, 4); LuaParameters parameters = new LuaParameters(); parameters.Add(Encoding.ASCII.GetBytes("noticeEvent")); parameters.Add(true); LuaParameters.WriteParameters(ref data, parameters, 0x10); SendPacket(sender, ServerOpcode.StartEvent, data, sourceId: characterId); }
private void NoticeEvent(Socket sender, ClientEventRequest eventRequest) { byte[] data = new byte[0x298]; Buffer.BlockCopy(BitConverter.GetBytes(User.Instance.Character.Id), 0, data, 0, 4); Buffer.BlockCopy(BitConverter.GetBytes(Id), 0, data, 0x04, 4); data[0x08] = eventRequest.Code; LuaParameters parameters = new LuaParameters(); parameters.Add(Encoding.ASCII.GetBytes("noticeEvent")); parameters.Add(Encoding.ASCII.GetBytes("delegateEvent")); parameters.Add((Command)eventRequest.CallerId); parameters.Add(unchecked ((Command)0xa0f1adb1)); parameters.Add("processTtrNomal001withHQ"); parameters.Add(null); parameters.Add(null); parameters.Add(null); LuaParameters.WriteParameters(ref data, parameters, 0x09); SendPacket(sender, ServerOpcode.StartEventRequest, data); }
public virtual void RequestResponsePacket(Socket sender, Command command, List <object> additionalparameters) { byte[] data = new byte[0x90]; uint parsedCommand = (0xA0F00000 | (ushort)command); Buffer.BlockCopy(BitConverter.GetBytes(User.Instance.Character.Id), 0, data, 0, 4); Buffer.BlockCopy(BitConverter.GetBytes(parsedCommand), 0, data, 0x04, 4); LuaParameters parameters = new LuaParameters(); parameters.Add(Encoding.ASCII.GetBytes("commandContent")); parameters.Add(Encoding.ASCII.GetBytes("delegateCommand")); parameters.Add((Command)parsedCommand); foreach (object i in additionalparameters) { parameters.Add(i); } LuaParameters.WriteParameters(ref data, parameters, 0x08); Buffer.BlockCopy(BitConverter.GetBytes(0x0000004053b47a00), 0, data, 0x88, 8); SendPacket(sender, ServerOpcode.StartEventRequest, data); }