// Token: 0x06000172 RID: 370 RVA: 0x0000D4A8 File Offset: 0x0000B6A8 private Message readMessage2(sbyte cmd) { int num = (int)Session_ME2.readKey(Session_ME2.dis.ReadSByte()) + 128; int num2 = (int)Session_ME2.readKey(Session_ME2.dis.ReadSByte()) + 128; int num3 = (int)Session_ME2.readKey(Session_ME2.dis.ReadSByte()) + 128; int num4 = (num3 * 256 + num2) * 256 + num; Cout.LogError("SIZE = " + num4); sbyte[] array = new sbyte[num4]; byte[] src = Session_ME2.dis.ReadBytes(num4); Buffer.BlockCopy(src, 0, array, 0, num4); Session_ME2.recvByteCount += 5 + num4; int num5 = Session_ME2.recvByteCount + Session_ME2.sendByteCount; Session_ME2.strRecvByteCount = string.Concat(new object[] { num5 / 1024, ".", num5 % 1024 / 102, "Kb" }); if (Session_ME2.getKeyComplete) { for (int i = 0; i < array.Length; i++) { array[i] = Session_ME2.readKey(array[i]); } } return(new Message(cmd, array)); }
// Token: 0x0600016E RID: 366 RVA: 0x0000D1DC File Offset: 0x0000B3DC public void run() { while (Session_ME2.connected) { try { if (Session_ME2.getKeyComplete) { while (this.sendingMessage.Count > 0) { Message m = this.sendingMessage[0]; Session_ME2.doSendMessage(m); this.sendingMessage.RemoveAt(0); } } try { Thread.Sleep(5); } catch (Exception ex) { Cout.LogError(ex.ToString()); } } catch (Exception) { Res.outz("error send message! "); } } }
// Token: 0x06000170 RID: 368 RVA: 0x0000D284 File Offset: 0x0000B484 public void run() { try { while (Session_ME2.connected) { Message message = this.readMessage(); if (message == null) { break; } try { if ((int)message.command == -27) { this.getKey(message); } else { Session_ME2.onRecieveMsg(message); } } catch (Exception) { Cout.println("LOI NHAN MESS THU 1"); } try { Thread.Sleep(5); } catch (Exception) { Cout.println("LOI NHAN MESS THU 2"); } } } catch (Exception ex) { Debug.Log("error read message!"); Debug.Log(ex.Message.ToString()); } if (Session_ME2.connected) { if (Session_ME2.messageHandler != null) { if (Session_ME2.currentTimeMillis() - Session_ME2.timeConnected > 500) { Session_ME2.messageHandler.onDisconnected(Session_ME2.isMainSession); } else { Session_ME2.messageHandler.onConnectionFail(Session_ME2.isMainSession); } } if (Session_ME2.sc != null) { Session_ME2.cleanNetwork(); } } }
// Token: 0x0600012E RID: 302 RVA: 0x000040CD File Offset: 0x000022CD private void OnApplicationQuit() { Debug.LogWarning("APP QUIT"); GameCanvas.bRun = false; Session_ME.gI().close(); Session_ME2.gI().close(); if (Main.isPC) { Application.Quit(); } }
// Token: 0x06000173 RID: 371 RVA: 0x0000D5E4 File Offset: 0x0000B7E4 private Message readMessage() { try { sbyte b = Session_ME2.dis.ReadSByte(); if (Session_ME2.getKeyComplete) { b = Session_ME2.readKey(b); } if ((int)b == -32 || (int)b == -66 || (int)b == 11 || (int)b == -67 || (int)b == -74 || (int)b == -87) { return(this.readMessage2(b)); } int num; if (Session_ME2.getKeyComplete) { sbyte b2 = Session_ME2.dis.ReadSByte(); sbyte b3 = Session_ME2.dis.ReadSByte(); num = (((int)Session_ME2.readKey(b2) & 255) << 8 | ((int)Session_ME2.readKey(b3) & 255)); } else { sbyte b4 = Session_ME2.dis.ReadSByte(); sbyte b5 = Session_ME2.dis.ReadSByte(); num = (((int)b4 & 65280) | ((int)b5 & 255)); } sbyte[] array = new sbyte[num]; byte[] src = Session_ME2.dis.ReadBytes(num); Buffer.BlockCopy(src, 0, array, 0, num); Session_ME2.recvByteCount += 5 + num; int num2 = Session_ME2.recvByteCount + Session_ME2.sendByteCount; Session_ME2.strRecvByteCount = string.Concat(new object[] { num2 / 1024, ".", num2 % 1024 / 102, "Kb" }); if (Session_ME2.getKeyComplete) { for (int i = 0; i < array.Length; i++) { array[i] = Session_ME2.readKey(array[i]); } } return(new Message(b, array)); } catch (Exception ex) { Debug.Log(ex.StackTrace.ToString()); } return(null); }
// Token: 0x06000934 RID: 2356 RVA: 0x000838EC File Offset: 0x00081AEC public void initGame() { GameMidlet.instance = this; MotherCanvas.instance = new MotherCanvas(); Session_ME.gI().setHandler(Controller.gI()); Session_ME2.gI().setHandler(Controller.gI()); Session_ME2.isMainSession = false; GameMidlet.instance = this; GameMidlet.gameCanvas = new GameCanvas(); GameMidlet.gameCanvas.start(); SplashScr.loadImg(); SplashScr.loadSplashScr(); GameCanvas.currentScreen = new SplashScr(); }
// Token: 0x06000160 RID: 352 RVA: 0x0000CDA8 File Offset: 0x0000AFA8 public void doConnect(string host, int port) { Session_ME2.sc = new TcpClient(); Session_ME2.sc.Connect(host, port); Session_ME2.dataStream = Session_ME2.sc.GetStream(); Session_ME2.dis = new BinaryReader(Session_ME2.dataStream, new UTF8Encoding()); Session_ME2.dos = new BinaryWriter(Session_ME2.dataStream, new UTF8Encoding()); new Thread(new ThreadStart(Session_ME2.sender.run)).Start(); Session_ME2.MessageCollector @object = new Session_ME2.MessageCollector(); Cout.LogError("new -----"); Session_ME2.collectorThread = new Thread(new ThreadStart(@object.run)); Session_ME2.collectorThread.Start(); Session_ME2.timeConnected = Session_ME2.currentTimeMillis(); Session_ME2.connecting = false; Session_ME2.doSendMessage(new Message(-27)); }
// Token: 0x06000125 RID: 293 RVA: 0x0000BBF8 File Offset: 0x00009DF8 private void OnGUI() { if (this.count < 10) { return; } this.checkInput(); Session_ME.update(); Session_ME2.update(); if (Event.current.type.Equals(EventType.Repaint) && this.paintCount <= this.updateCount) { GameMidlet.gameCanvas.paint(Main.g); this.paintCount++; Main.g.reset(); } }
// Token: 0x06000167 RID: 359 RVA: 0x000043D3 File Offset: 0x000025D3 public void close() { Session_ME2.cleanNetwork(); }
// Token: 0x06000162 RID: 354 RVA: 0x0000CE68 File Offset: 0x0000B068 private static void doSendMessage(Message m) { sbyte[] data = m.getData(); try { if (Session_ME2.getKeyComplete) { sbyte value = Session_ME2.writeKey(m.command); Session_ME2.dos.Write(value); } else { Session_ME2.dos.Write(m.command); } if (data != null) { int num = data.Length; if (Session_ME2.getKeyComplete) { int num2 = (int)Session_ME2.writeKey((sbyte)(num >> 8)); Session_ME2.dos.Write((sbyte)num2); int num3 = (int)Session_ME2.writeKey((sbyte)(num & 255)); Session_ME2.dos.Write((sbyte)num3); } else { Session_ME2.dos.Write((ushort)num); } if (Session_ME2.getKeyComplete) { for (int i = 0; i < data.Length; i++) { sbyte value2 = Session_ME2.writeKey(data[i]); Session_ME2.dos.Write(value2); } } Session_ME2.sendByteCount += 5 + data.Length; } else { if (Session_ME2.getKeyComplete) { int num4 = 0; int num5 = (int)Session_ME2.writeKey((sbyte)(num4 >> 8)); Session_ME2.dos.Write((sbyte)num5); int num6 = (int)Session_ME2.writeKey((sbyte)(num4 & 255)); Session_ME2.dos.Write((sbyte)num6); } else { Session_ME2.dos.Write(0); } Session_ME2.sendByteCount += 5; } Session_ME2.dos.Flush(); } catch (Exception ex) { Debug.Log(ex.StackTrace); } }