add support for changing the default iw4m-admin url through a config file.
This commit is contained in:
parent
69a05e00f5
commit
5ea0dd67c9
@ -167,6 +167,7 @@
|
||||
<ClInclude Include="functions.h" />
|
||||
<ClInclude Include="framework.h" />
|
||||
<ClInclude Include="pch.h" />
|
||||
<ClInclude Include="SimpleIni.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="dllmain.cpp" />
|
||||
|
@ -30,6 +30,9 @@
|
||||
<ClInclude Include="functions.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="SimpleIni.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="dllmain.cpp">
|
||||
|
3474
SimpleIni.h
Normal file
3474
SimpleIni.h
Normal file
File diff suppressed because it is too large
Load Diff
@ -14,6 +14,7 @@ void init()
|
||||
{
|
||||
|
||||
std::cout << "ClanTagRank (1.1) by INSANEMODE\n";
|
||||
std::cout << "loaded iw4m-admin url from .\\Plugins\\GetClanTag.ini: " << Game::configfile() << '\n';
|
||||
std::thread rank(Game::clanTagThread);
|
||||
rank.detach();
|
||||
}
|
||||
|
@ -8,11 +8,32 @@
|
||||
#include <thread>
|
||||
#include <algorithm>
|
||||
#include "curl\curl.h"
|
||||
#include "simpleini.h"
|
||||
#include <filesystem>
|
||||
#define GetCurrentDir _getcwd
|
||||
|
||||
namespace Game
|
||||
|
||||
{
|
||||
|
||||
std::string configfile()
|
||||
{
|
||||
|
||||
CSimpleIniA ini;
|
||||
|
||||
std::string currentpath = std::filesystem::current_path().generic_string();
|
||||
std::string configfile = currentpath + (R"(/t6r/data/plugins/GetClanTag.ini)");
|
||||
SI_Error rc = ini.LoadFile(configfile.c_str());
|
||||
//SI_Error rc = ini.LoadFile("\\t6r\\data\\plugins\\GetClanTag.ini");
|
||||
if (rc < 0)
|
||||
{
|
||||
ini.SetValue("Config", "URL", "127.0.0.1:1624");
|
||||
ini.SaveFile(configfile.c_str());
|
||||
};
|
||||
const char* pVal = ini.GetValue("Config", "URL", "http://127.0.0.1:1624");
|
||||
return pVal;
|
||||
}
|
||||
|
||||
|
||||
static size_t WriteCallback(void* contents, size_t size, size_t nmemb, void* userp)
|
||||
{
|
||||
@ -28,7 +49,7 @@ namespace Game
|
||||
std::string readBuffer;
|
||||
curl = curl_easy_init();
|
||||
if (curl) {
|
||||
curl_easy_setopt(curl, CURLOPT_URL, "http://127.0.0.1:1624/api/gsc/clientguid/" + guidstring);
|
||||
curl_easy_setopt(curl, CURLOPT_URL, configfile() + "/api/gsc/clientguid/" + guidstring);
|
||||
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
|
||||
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer);
|
||||
/* example.com is redirected, so we tell libcurl to follow redirection */
|
||||
@ -122,6 +143,7 @@ namespace Game
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
configfile();
|
||||
std::this_thread::sleep_for(std::chrono::milliseconds(10000));
|
||||
clanTagChanger();
|
||||
}
|
||||
|
@ -6,4 +6,5 @@ namespace Game
|
||||
{
|
||||
//void Testprint();
|
||||
void clanTagThread();
|
||||
std::string configfile();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user