Guest User

Untitled

a guest
Feb 2nd, 2022
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. bool ChatMessageCallback(AShooterPlayerController* _AShooterPlayerController, FString* Message, EChatSendMode::Type Mode, bool spam_check, bool command_executed)
  2. {
  3.  
  4. try {
  5. if (spam_check || command_executed)
  6. return false;
  7.  
  8.  
  9. // process the message and relay
  10. long double lastChatMessageTime = 0;
  11. std::wstring msg;
  12. if (_AShooterPlayerController && Message && Mode == EChatSendMode::Type::GlobalTribeChat)
  13. {
  14.  
  15.  
  16. lastChatMessageTime = _AShooterPlayerController->LastChatMessageTimeField();
  17. msg = std::wstring(ArkApi::Tools::ConvertToWideStr(Message->ToString()));
  18.  
  19. auto steamId = static_cast<int64>(ArkApi::GetApiUtils().GetSteamIdFromController(_AShooterPlayerController));
  20. auto playerName = GetPlayerName(_AShooterPlayerController);
  21. auto characterName = GetPlayerCharacterName(_AShooterPlayerController);
  22. auto tribeName = GetTribeName(_AShooterPlayerController);
  23.  
  24.  
  25.  
  26. FString map;
  27. ArkApi::GetApiUtils().GetWorld()->GetMapName(&map);
  28. const std::wstring log = fmt::format(TEXT("{} - {}[{}]: {}"), map.ToString(), playerName, tribeName, msg);
  29. PostToDiscord(L"{{\"content\":\"```stylus\\n{}```\",\"username\":\"{}\",\"avatar_url\":null}}", log, discord_sender_name);
  30. }
  31.  
  32. if (_AShooterPlayerController && Message && Mode == EChatSendMode::Type::AllianceChat)
  33. {
  34. lastChatMessageTime = _AShooterPlayerController->LastChatMessageTimeField();
  35. msg = std::wstring(ArkApi::Tools::ConvertToWideStr(Message->ToString()));
  36.  
  37. auto steamId = static_cast<int64>(ArkApi::GetApiUtils().GetSteamIdFromController(_AShooterPlayerController));
  38. auto playerName = GetPlayerName(_AShooterPlayerController);
  39. auto characterName = GetPlayerCharacterName(_AShooterPlayerController);
  40. auto tribeName = GetTribeName(_AShooterPlayerController);
  41.  
  42.  
  43.  
  44. FChatMessage chat_message = FChatMessage();
  45. chat_message.SenderName = *FString(playerName);
  46. chat_message.Message = *Message;
  47.  
  48. FString map;
  49. ArkApi::GetApiUtils().GetWorld()->GetMapName(&map);
  50. const std::wstring log = fmt::format(TEXT("{} - {}[{}]: {}"), map.ToString(), playerName, tribeName, msg);
  51.  
  52.  
  53. PostToDiscord(L"{{\"content\":\"```stylus\\n{}```\",\"username\":\"{}\",\"avatar_url\":null}}", log, discord_sender_name_new);
  54. }
  55.  
  56. }
  57. catch (const std::exception& error)
  58. {
  59. Log::GetLog()->error(error.what());
  60. throw;
  61. }
  62.  
  63. return false;
  64. }
Advertisement
Add Comment
Please, Sign In to add comment