public void OnPacketReceived(RotMGClient client, ServerPacket pkt) { switch (pkt.ID) { case PacketID.TRADEREQUESTED: if ((pkt as TradeRequestedPacket).Name == playerOwner.Text) { client.SendPacket(new RequestTradePacket { Name = playerOwner.Text }); } break; case PacketID.TRADEACCEPTED: client.SendPacket(new AcceptTradePacket { MyOffers = SelectedItems.Values.ToArray(), YourOffers = (pkt as TradeAcceptedPacket).YourOffers }); break; case PacketID.TRADEDONE: for (int i = 0; i < 12; i++) { SelectedItems[i] = false; } break; } }
public TradeMenu(RotMGClient client) { InitializeComponent(); this.client = client; client.OnPacketReceive += OnPacketReceived; this.SelectedItems = new Dictionary <int, bool>(12); for (int i = 0; i < 12; i++) { SelectedItems.Add(i, false); } this.Text = String.Format("Logged in as {0}", client.Player.Name); timer1.Start(); }
private void button1_Click(object sender, EventArgs e) { //Console.Clear(); for (int i = 1; i < NumberOfBots.Value; i++) { client = new RotMGClient(server, EmailPrefix.Text + i + EmailDomain.Text, Password.Text); client.OnLoginError += new OnLoginErrorHandler(client_OnLoginError); client.Init(buildversion.Text, null, false); if (client.Player.IsLoggedIn) { client.Connect(); bots.Add(client); } } timer1.Start(); }
private void spamBtn_Click(object sender, EventArgs e) { if (String.IsNullOrWhiteSpace(email.Text)) { MessageBox.Show("Email can not be null"); return; } if (String.IsNullOrWhiteSpace(password.Text)) { MessageBox.Show("Password can not be null"); return; } if (spamBtn.Text == "Start") { Server server = Servers.EUNorth; if (Server.GetServerByName.ContainsKey(serverBox.SelectedItem.ToString())) { server = Server.GetServerByName[serverBox.SelectedItem.ToString()]; } client = new RotMGClient(server, email.Text, password.Text); client.OnLoginError += new OnLoginErrorHandler(client_OnLoginError); client.Init(buildversion.Text, null, false); if (rememberAcc.Checked) { using (StreamWriter wtr = new StreamWriter("lastlogin")) { wtr.Write(Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(email.Text)) + ":" + Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(password.Text))); wtr.Close(); } } if (client.Player.IsLoggedIn) { client.Connect(); } spamBtn.Text = "Stop"; ticker.Enabled = true; ticker.Start(); } else if (spamBtn.Text == "Stop") { ticker.Stop(); client.Disconnect(); spamBtn.Text = "Start"; } }
public static void client_OnPacketReceive(RotMGClient client, ServerPacket pkt) { switch (pkt.ID) { case PacketID.TEXT: break; case PacketID.TRADEREQUESTED: TradeRequestedPacket tp = pkt as TradeRequestedPacket; name = tp.Name; client.SendPacket(new PlayerTextPacket { Text = "/tell " + tp.Name + " Hai " + tp.Name + ", have a nice cheesy day c:" }); client.SendPacket(new RequestTradePacket { Name = tp.Name }); break; //case PacketID.TRADEACCEPTED: // client.SendPacket(new AcceptTradePacket // { // MyOffers = new bool[12], // YourOffers = new bool[12] // }); // client.SendPacket(new PlayerTextPacket // { // Text = ("/tell " + name + " Thank u m8 c:") // }); // break; //case PacketID.SHOOT2: // client.SendPacket(new PlayerTextPacket // { // Text = pkt.ToString()//"Shoot ur spell again to receive some more random numbers like this: " + new Random().Next(100000, 100000000) + " c:" // }); // break; default: //Console.WriteLine("Unhandled packet {0}", pkt.GetType().Name); break; } }
private void Login_Click(object sender, EventArgs e) { Console.Clear(); if (Server.GetServerByName.ContainsKey(selectedServer.SelectedItem.ToString())) { server = Server.GetServerByName[selectedServer.SelectedItem.ToString()]; } client = new RotMGClient(server, email.Text, password.Text); client.OnLoginError += new OnLoginErrorHandler(client_OnLoginError); client.Init(buildversion.Text, null, false); if (rememberAcc.Checked) { using (StreamWriter wtr = new StreamWriter("lastlogin")) { wtr.Write(Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(email.Text)) + ":" + Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(password.Text))); wtr.Close(); } } if (client.Player.IsLoggedIn) { client.Connect(); } }
public TradeMenu(RotMGClient client) { InitializeComponent(); this.client = client; client.OnPacketReceive += OnPacketReceived; this.SelectedItems = new Dictionary <int, bool>(12); for (int i = 0; i < 12; i++) { SelectedItems.Add(i, false); } this.Text = String.Format("Logged in as {0}", client.Player.Name); invUpdater.Start(); AutoCompleteStringCollection col = new AutoCompleteStringCollection(); for (int i = 0; i < RotMGData.Items.Keys.Count; i++) { string item = RotMGData.Items.Values.ToArray()[i]; short itemId = RotMGData.Items.Keys.ToArray()[i]; if (item.StartsWith("T") && isNumber(item, 1)) { item = item.Remove(0, 3); } if (item.StartsWith(" ")) { item = item.Remove(0, 1); } buyBox.Items.Add(item + ", " + itemId); sellBox.Items.Add(item + ", " + itemId); col.Add(item + ", " + itemId); } buyBox.AutoCompleteCustomSource = sellBox.AutoCompleteCustomSource = col; buyBox.Sorted = sellBox.Sorted = true; buyBox.SelectedItem = sellBox.SelectedItem = buyBox.Items[1]; tradeSpamTextBox.Text = "%%%%Buying {buyAmount} {buyItem} for {sellAmount} {sellItem} @{playerName}%%%%"; }
public void OnPacketReceived(RotMGClient client, ServerPacket pkt) { if (!botStarted) { switch (pkt.ID) { case PacketID.TRADEREQUESTED: if ((pkt as TradeRequestedPacket).Name == playerOwner.Text) { client.SendPacket(new RequestTradePacket { Name = playerOwner.Text }); trading = true; } break; case PacketID.TRADESTART: if ((pkt as TradeStartPacket).YourName != playerOwner.Text) { client.SendPacket(new CancelTradePacket()); trading = false; } else { trading = true; } break; case PacketID.TRADEACCEPTED: client.SendPacket(new AcceptTradePacket { MyOffers = SelectedItems.Values.ToArray(), YourOffers = (pkt as TradeAcceptedPacket).YourOffers }); break; case PacketID.TRADEDONE: for (int i = 0; i < 12; i++) { SelectedItems[i] = false; } trading = false; break; } } else { switch (pkt.ID) { case PacketID.TRADEREQUESTED: if (requestedItemsInInventory((pkt as TradeRequestedPacket).Name, reqItemName, (int)buyAmount.Value)) { client.SendPacket(new RequestTradePacket { Name = (pkt as TradeRequestedPacket).Name }); } else { currentTradePlayer = -1; } break; case PacketID.TRADESTART: client.SendPacket(new PlayerTextPacket { Text = String.Format("/tell {0} Please select {1} {2}.", (pkt as TradeStartPacket).YourName, buyAmount.Value, reqItemName) }); break; case PacketID.TRADECHANGED: if (IsSelectValid(currentTradePlayer, reqItemName, (int)buyAmount.Value, (pkt as TradeChangedPacket))) { client.SendPacket(new ChangeTradePacket { Offers = myoffers() }); client.SendPacket(new AcceptTradePacket { MyOffers = myoffers(), YourOffers = (pkt as TradeChangedPacket).Offers }); } break; case PacketID.TRADEDONE: if ((pkt as TradeDonePacket).Result == 0) { notifyIcon1.BalloonTipText = String.Format("Successfuly sold {0} {1} for {2} {3}", sellAmount.Value, sellItemName, buyAmount.Value, reqItemName); notifyIcon1.BalloonTipTitle = "TradeBot"; notifyIcon1.ShowBalloonTip(4000); } break; } } }