diff --git a/CMakeLists.txt b/CMakeLists.txt index 32984fd..a77d023 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,4 +18,4 @@ target_link_libraries(sparkle PRIVATE ) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED True) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -flto -pipe") \ No newline at end of file +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -O2 -flto -pipe") \ No newline at end of file diff --git a/libs/api/Bot.hpp b/libs/api/Bot.hpp index a93ee20..7b28518 100644 --- a/libs/api/Bot.hpp +++ b/libs/api/Bot.hpp @@ -25,6 +25,9 @@ public: Bot(const json& data) : data(data) { initializeNets(data); } + auto& use(const int number) { + return *std::get(net); + } string id() { return data["d"]["user"]["id"]; } diff --git a/libs/gateway/websocket.hpp b/libs/gateway/websocket.hpp index df184b8..24cf5ab 100644 --- a/libs/gateway/websocket.hpp +++ b/libs/gateway/websocket.hpp @@ -114,12 +114,12 @@ private: {"browser", "firefox"}, {"device", "firefox"} }}, - {"compress", 1}, + //{"compress", 1}, {"presence", { {"activities", json::array({ { - {"name", "asdsadsadsadsa"}, - {"type", 2} + //{"name", "asdsadsadsadsa"}, + //{"type", 2} } })}, {"status", "idle"}, @@ -168,7 +168,7 @@ public: static WebSocket* getInstance(const std::string& token = "", const int intents = 0, bool bot = true) { if (!instance) { if (token.empty() || intents == 0) { - throw std::invalid_argument("Token and intents is empty."); + throw std::invalid_argument("Token or intents is empty."); } instance = new WebSocket(token, intents, bot); initialized = true; @@ -187,7 +187,7 @@ public: } void on(const int event, std::function handler) { eventHandlers[events[event].second] = [handler](const json& message) { - json eventData = message.get(); + const json& eventData = message.get(); handler(eventData); }; } @@ -208,9 +208,6 @@ public: } }).detach(); } - void stop() { - connected = false; - } void start() { while (1) std::this_thread::sleep_for(1ms); } diff --git a/sources/main.cpp b/sources/main.cpp index 422b041..1b36fda 100644 --- a/sources/main.cpp +++ b/sources/main.cpp @@ -14,14 +14,13 @@ using namespace std; int main(int argc, char* argv[]) { if (argc != 5) return -1; WebSocket* bot = WebSocket::getInstance(argv[2], stoi(argv[4]), true); - bot->once(GatewayEvents::READY, [](const Bot& b) { + bot->on(GatewayEvents::READY, [](const Bot& b) { cout << "started" << endl; }); bot->on(GatewayEvents::MESSAGE_CREATE, [bot](const Bot& msg) { if (g(2, msg.net)->isBot() == false) { - cout << g(1, msg.net)->send("939957962972229634", j("content", "test")) << endl; + g(1, msg.net)->send("939957962972229634", j("content", g(2, msg.net)->content())); } - //bot->sendPresenceUpdate(UserStatus::Online, "sd"); }); bot->on(GatewayEvents::MESSAGE_REACTION_REMOVE, [bot](const Bot& msg) { g(0, msg.net)->send("939957962972229634", j("content", "bye"));