Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.43 KB | None | 0 0
  1. else if (str.substr(0, 7) == "/trade ") {
  2. bool found = false;
  3. string Name = str.substr(7, cch.length() - 7 - 1);
  4. if (((PlayerInfo*)(peer->data))->rawName == Name) {
  5. sendConsoleMsg(peer, "You can't trade yourself!");
  6. continue;
  7. }
  8. else if (((PlayerInfo*)(peer->data))->tradeSomeone) {
  9. sendConsoleMsg(peer, "Cancel current trade before trade other");
  10. continue;
  11. }
  12.  
  13. if (((PlayerInfo*)(peer->data))->trdStarter == Name) {
  14.  
  15. ENetPeer* currentPeer;
  16. for (currentPeer = server->peers;
  17. currentPeer < &server->peers[server->peerCount];
  18. ++currentPeer)
  19. {
  20. if (currentPeer->state != ENET_PEER_STATE_CONNECTED)
  21. continue;
  22. if (isHere(peer, currentPeer)) {
  23. if (((PlayerInfo*)(peer->data))->trdStarter == ((PlayerInfo*)(currentPeer->data))->rawName) {
  24. GamePacket pt1 = packetEnd(appendInt(appendString(appendString(createPacket(), "OnStartTrade"), ((PlayerInfo*)(currentPeer->data))->rawName), ((PlayerInfo*)(currentPeer->data))->netID));
  25. ENetPacket* packetw = enet_packet_create(pt1.data,
  26. pt1.len,
  27. ENET_PACKET_FLAG_RELIABLE);
  28. enet_peer_send(peer, 0, packetw);
  29. delete pt1.data;
  30. }
  31. }
  32. }
  33. continue;
  34. }
  35. ENetPeer* currentPeer;
  36. for (currentPeer = server->peers;
  37. currentPeer < &server->peers[server->peerCount];
  38. ++currentPeer)
  39. {
  40. if (currentPeer->state != ENET_PEER_STATE_CONNECTED)
  41. continue;
  42. if (isHere(peer, currentPeer)) {
  43. if (((PlayerInfo*)(currentPeer->data))->rawName == Name) {
  44. found = true;
  45. if (((PlayerInfo*)(currentPeer->data))->tradeSomeone) {
  46. sendConsoleMsg(peer, "That player already trade with someone else");
  47. continue;
  48. }
  49.  
  50.  
  51. GamePacket pt1 = packetEnd(appendInt(appendString(appendString(createPacket(), "OnStartTrade"), ((PlayerInfo*)(currentPeer->data))->rawName), ((PlayerInfo*)(currentPeer->data))->netID));
  52. ENetPacket* packetw = enet_packet_create(pt1.data,
  53. pt1.len,
  54. ENET_PACKET_FLAG_RELIABLE);
  55. enet_peer_send(peer, 0, packetw);
  56. delete pt1.data;
  57.  
  58. }
  59.  
  60. }
  61. }
  62. if (!found) {
  63. sendConsoleMsg(peer, "The player no found ");
  64. }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement