@@ -14,8 +14,6 @@ static int start_count = 0;
1414static int end_count = 0 ;
1515static int total_count = 0 ;
1616std::string MoreLeaderboards::data_response_moreLB = " " ;
17- static std::unordered_map<std::string, web::WebTask> RUNNING_REQUESTS {};
18- static std::mutex lock_var;
1917
2018EventListener<web::WebTask> m_listener;
2119
@@ -429,24 +427,17 @@ void MoreLeaderboards::startLoadingMods() {
429427 fadeLoadingCircle ();
430428 };
431429
432- const std::lock_guard<std::mutex> lock (lock_var);
433430 geode::utils::web::WebRequest request = web::WebRequest ();
434- RUNNING_REQUESTS.emplace (
435- " @loaderModListCheck" ,
436- request.get (" https://clarifygdps.com/gdutils/modslist.php" ).map (
437- [expect = std::move (expect), then = std::move (then)](web::WebResponse* response) {
438- const std::lock_guard<std::mutex> lock (lock_var);
439- if (response->ok ()) {
440- then (response->string ().unwrapOrDefault ());
441- } else {
442- expect (" An error occured while sending a request on our server. Please try again later." );
443- }
444-
445- RUNNING_REQUESTS.erase (" @loaderModListCheck" );
446- return *response;
431+ m_listener.bind ([expect = std::move (expect), then = std::move (then)](web::WebTask::Event* e) {
432+ if (web::WebResponse* res = e->getValue ()) {
433+ if (res->ok ()) {
434+ then (res->string ().unwrapOrDefault ());
435+ } else {
436+ expect (" An error occured while sending a request on our server. Please try again later." );
447437 }
448- )
449- );
438+ }
439+ });
440+ m_listener.setFilter (request.get (" https://clarifygdps.com/gdutils/modslist.php" ));
450441};
451442
452443void MoreLeaderboards::loadPageMods () {
@@ -580,7 +571,6 @@ void MoreLeaderboards::startLoadingMore() {
580571 const std::function<void (std::string const &)> then = [this ](std::string const & data) {
581572 loading = false ;
582573
583- const std::lock_guard<std::mutex> lock (lock_var);
584574 auto scene = CCDirector::sharedDirector ()->getRunningScene ();
585575 auto layer = scene->getChildren ()->objectAtIndex (0 );
586576 if (layer == nullptr ) return this ->release ();
@@ -625,21 +615,24 @@ void MoreLeaderboards::startLoadingMore() {
625615 this ->release ();
626616 };
627617
628- const std::lock_guard<std::mutex> lock (lock_var);
629- RUNNING_REQUESTS.emplace (
630- " @loaderMoreLeaderboardCheck" ,
631- request.param (" type" , type).param (" page" , page).param (" country" , country_id).param (" username" , username).param (" mod" , (modFilter ? " 1" : " 0" )).param (" modFilter" , modFilterType).get (" https://clarifygdps.com/gdutils/moreleaderboards.php" ).map (
632- [expect = std::move (expect), then = std::move (then)](web::WebResponse* response) {
633- if (response->ok ()) {
634- then (response->string ().unwrap ());
635- } else {
636- expect (" An error occured while sending a request on our server. Please try again later." );
637- }
638-
639- RUNNING_REQUESTS.erase (" @loaderMoreLeaderboardCheck" );
640- return *response;
618+ m_listener.bind ([expect = std::move (expect), then = std::move (then)](web::WebTask::Event* e) {
619+ if (web::WebResponse* response = e->getValue ()) {
620+ if (response->ok ()) {
621+ then (response->string ().unwrap ());
622+ } else {
623+ expect (" An error occurred while sending a request on our server. Please try again later." );
641624 }
642- )
625+ }
626+ });
627+
628+ m_listener.setFilter (
629+ request.param (" type" , type)
630+ .param (" page" , page)
631+ .param (" country" , country_id)
632+ .param (" username" , username)
633+ .param (" mod" , (modFilter ? " 1" : " 0" ))
634+ .param (" modFilter" , modFilterType)
635+ .get (" https://clarifygdps.com/gdutils/moreleaderboards.php" )
643636 );
644637 };
645638
0 commit comments