Update paths & readme
This commit is contained in:
parent
1802b17029
commit
6aca1cb99e
20
README.md
20
README.md
@ -40,7 +40,7 @@ If you have those mentioned versions installed follow the steps below,
|
||||
Let me know if you mind more.
|
||||
|
||||
## Things to do on crash
|
||||
1. Delete the `CheatMenu/json/config.json` file and try again.
|
||||
1. Delete the `CheatMenuXX.toml` config file and try again.
|
||||
2. If it's happening after installing a recent mod try removing it.
|
||||
3. Try on a fresh installation of the game.
|
||||
4. If still doesn't fix your issue, go ahead and report it.
|
||||
@ -80,7 +80,7 @@ You can either open a issue here or directly contact me on discord (Recommended)
|
||||
## Submit Translations
|
||||
*How to translate Cheat Menu to another language*
|
||||
|
||||
The translations are loaded from `CheatMenu/locale/*.json` files. Make a copy of the `English.json` file and translate the texts there to your language. Rename the file to `your_language.json` and make a pull request.
|
||||
The translations are loaded from `CheatMenuXX/locale/*.toml` files. Make a copy of the `English.toml` file and translate the texts there to your language. Rename the file to `your_language.toml` and make a pull request.
|
||||
|
||||
|
||||
## Required to build
|
||||
@ -99,7 +99,7 @@ All credits are given in Menu/About tab.
|
||||
|
||||
## How to add ___ to CheatMenu (SA Only)
|
||||
|
||||
*Be careful about editing 'json' files, especially commas! Check [here](https://en.wikipedia.org/wiki/JSON). Use [Magic TXD](https://gtaforums.com/topic/851436-relopensrc-magictxd/) to open **.txd** files*
|
||||
*Use [Magic TXD](https://gtaforums.com/topic/851436-relopensrc-magictxd/) to open **.txd** files*
|
||||
|
||||
### Player Skins (Recommended)
|
||||
*If you just want more player skins without much hassel use this*
|
||||
@ -113,27 +113,27 @@ All credits are given in Menu/About tab.
|
||||
*If you want to add both peds & skin then follow this*
|
||||
|
||||
1. Add peds to your game following a tutorial.
|
||||
2. Then create a image of your ped and put it in *CheatMenu\peds.txd*.
|
||||
2. Then create a image of your ped and put it in *CheatMenuXX\peds.txd*.
|
||||
3. The image name should be the model name of the ped.
|
||||
4. Open this file *CheatMenu\json\ped.json* and add an entry for your ped there. <br/>
|
||||
4. Open this file *CheatMenuXX\data\peds.toml* and add an entry for your ped there. <br/>
|
||||
**Format: "PedModel" : "PedName"**
|
||||
|
||||
### Vehicles
|
||||
1. Add vehicles to your game following [this](https://www.mixmods.com.br/2015/12/tutorial-adicionar-carros-sem-substituir.html) tutorial first. (Use translator)
|
||||
2. Then create an image of your vehicle in and put it in *CheatMenu\vehicles.txd*.
|
||||
2. Then create an image of your vehicle in and put it in *CheatMenuXX\vehicles.txd*.
|
||||
3. The image name should be the model id of the vehicle.
|
||||
|
||||
### Vehicle Tunes
|
||||
1. Add tunes to your game following a [tutorial](https://gtaforums.com/topic/481926-tutorial-how-to-add-tuning-parts/).
|
||||
2. Then create a image of your tune part and put it in *CheatMenu\components.txd*.
|
||||
2. Then create a image of your tune part and put it in *CheatMenuXX\components.txd*.
|
||||
|
||||
### Vehicle Paintjobs
|
||||
1. Put your paintjob images *CheatMenu\textures.txd.
|
||||
1. Put your paintjob images *CheatMenuXX\textures.txd.
|
||||
2. You can use any name for these images.
|
||||
|
||||
### Weapons
|
||||
1. Add weapons to your game following [this](https://www.mixmods.com.br/2016/05/tutorial-adicionar-armas-sem-substituir.html) tutorial first. (Use translator)
|
||||
2. Then create an image of your vehicle and put it *CheatMenu\weapons.txd*.
|
||||
2. Then create an image of your vehicle and put it *CheatMenuXX\weapons.txd*.
|
||||
3. The image name should be the weapon id (not model!) of the weapon.
|
||||
4. Open this file *CheatMenu\json\weapon.json* and add an entry for your weapon there.<br/>
|
||||
4. Open this file *CheatMenuXX\data\weapons.toml* and add an entry for your weapon there.<br/>
|
||||
**Format: "WeaponID" : "WeaponName"**
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -178,7 +178,7 @@ void Animation::_PlayAnimation(RpClump* pClump, int animGroup, int animID, float
|
||||
#endif
|
||||
|
||||
|
||||
void Animation::PlayAnimation(std::string& root, std::string& anim, std::string& ifp)
|
||||
void Animation::PlayAnimation(std::string& ifp, std::string& anim, std::string& _)
|
||||
{
|
||||
CPed *pPed = m_PedAnim ? m_pTarget : FindPlayerPed();
|
||||
|
||||
|
@ -198,7 +198,7 @@ void CheatMenu::GenHeaderList()
|
||||
|
||||
void CheatMenu::Init()
|
||||
{
|
||||
if (!std::filesystem::exists(PLUGIN_PATH((char*)"CheatMenu")))
|
||||
if (!std::filesystem::exists(PLUGIN_PATH((char*)FILE_NAME)))
|
||||
{
|
||||
Log::Print<eLogLevel::Error>(TEXT("Menu.CheatMenuNoDir"));
|
||||
return;
|
||||
@ -216,7 +216,7 @@ void CheatMenu::Init()
|
||||
srand(CTimer::m_snTimeInMilliseconds);
|
||||
|
||||
ApplyStyle();
|
||||
Locale::Init("CheatMenu/locale/", "English", "English");
|
||||
Locale::Init(FILE_NAME "/locale/", "English", "English");
|
||||
GenHeaderList();
|
||||
|
||||
// Init menu parts
|
||||
|
@ -9,7 +9,7 @@ DataStore::DataStore(const char* fileName, bool isPathPredefined) noexcept
|
||||
}
|
||||
else
|
||||
{
|
||||
path = PLUGIN_PATH((char*)"/CheatMenu/data/") + std::string(fileName) + fileExt;
|
||||
path = PLUGIN_PATH((char*)FILE_NAME "/data/") + std::string(fileName) + fileExt;
|
||||
}
|
||||
|
||||
if (std::filesystem::exists(path))
|
||||
|
@ -25,10 +25,11 @@ void MenuThread(void* param)
|
||||
Had to put this in place since some people put the folder in root
|
||||
directory and the asi in modloader. Why??
|
||||
*/
|
||||
if (!std::filesystem::is_directory(PLUGIN_PATH((char*)"CheatMenu")))
|
||||
if (!std::filesystem::is_directory(PLUGIN_PATH((char*)FILE_NAME)))
|
||||
{
|
||||
Log::Print<eLogLevel::Error>("CheatMenu folder not found. You need to put both \"CheatMenu.asi\" & \"CheatMenu\" folder in the same directory");
|
||||
MessageBox(NULL, "CheatMenu folder not found. You need to put both \"CheatMenu.asi\" & \"CheatMenu\" folder in the same directory", "CheatMenu", MB_ICONERROR);
|
||||
std::string msg = std::format("{} folder not found. You need to put both '{}.asi' & '{}' folder in the same directory", FILE_NAME, FILE_NAME, FILE_NAME);
|
||||
Log::Print<eLogLevel::Error>(msg.c_str());
|
||||
MessageBox(NULL, msg.c_str(), FILE_NAME, MB_ICONERROR);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -39,7 +40,7 @@ void MenuThread(void* param)
|
||||
if (!GetModuleHandle(BY_GAME("SilentPatchSA.asi","SilentPatchVC.asi","SilentPatchIII.asi")))
|
||||
{
|
||||
Log::Print<eLogLevel::Error>("SilentPatch not found. Please install it from here https://gtaforums.com/topic/669045-silentpatch/");
|
||||
int msgID = MessageBox(NULL, "SilentPatch not found. Do you want to install Silent Patch? (Game restart required)", "CheatMenu", MB_OKCANCEL | MB_DEFBUTTON1);
|
||||
int msgID = MessageBox(NULL, "SilentPatch not found. Do you want to install Silent Patch? (Game restart required)", FILE_NAME, MB_OKCANCEL | MB_DEFBUTTON1);
|
||||
|
||||
if (msgID == IDOK)
|
||||
{
|
||||
@ -55,16 +56,16 @@ void MenuThread(void* param)
|
||||
#ifdef GTASA
|
||||
if (GetModuleHandle("SAMP.dll") || GetModuleHandle("SAMP.asi"))
|
||||
{
|
||||
Log::Print<eLogLevel::Error>("CheatMenu doesn't support SAMP");
|
||||
MessageBox(NULL, "SAMP detected. Exiting CheatMenu.", "CheatMenu", MB_ICONERROR);
|
||||
Log::Print<eLogLevel::Error>(FILE_NAME " doesn't support SAMP");
|
||||
MessageBox(NULL, "SAMP detected. Exiting " FILE_NAME, FILE_NAME, MB_ICONERROR);
|
||||
return;
|
||||
}
|
||||
CFastman92limitAdjuster::Init();
|
||||
#elif GTAVC
|
||||
if (GetModuleHandle("vcmp-proxy.dll") || GetModuleHandle("vcmp-proxy.asi"))
|
||||
{
|
||||
Log::Print<eLogLevel::Error>("CheatMenu doesn't support VCMP");
|
||||
MessageBox(NULL, "VCMP detected. Exiting CheatMenu.", "CheatMenu", MB_ICONERROR);
|
||||
Log::Print<eLogLevel::Error>(FILE_NAME " doesn't support VCMP");
|
||||
MessageBox(NULL, "VCMP detected. Exiting " FILE_NAME, FILE_NAME, MB_ICONERROR);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
@ -108,7 +109,7 @@ BOOL WINAPI DllMain(HINSTANCE hDllHandle, DWORD nReason, LPVOID Reserved)
|
||||
else
|
||||
{
|
||||
Log::Print<eLogLevel::Error>("Unknown game version. GTA " BY_GAME("SA v1.0 US Hoodlum or Compact", "VC v1.0 EN", "III v1.0 EN") " is required.");
|
||||
MessageBox(HWND_DESKTOP, "Unknown game version. GTA " BY_GAME("SA v1.0 US Hoodlum or Compact", "VC v1.0 EN", "III v1.0 EN") " is required.", "CheatMenu", MB_ICONERROR);
|
||||
MessageBox(HWND_DESKTOP, "Unknown game version. GTA " BY_GAME("SA v1.0 US Hoodlum or Compact", "VC v1.0 EN", "III v1.0 EN") " is required.", FILE_NAME, MB_ICONERROR);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -18,7 +18,7 @@ ImFont* FontMgr::Load(const char* fontName, float fontMul)
|
||||
{
|
||||
ImGuiIO& io = ImGui::GetIO();
|
||||
size_t fontSize = static_cast<int>(screen::GetScreenHeight() / 54.85f) * fontMul;
|
||||
std::string fullPath = std::format("{}{}.ttf", PLUGIN_PATH((char*)"CheatMenu/fonts/"), fontName);
|
||||
std::string fullPath = std::format("{}{}.ttf", PLUGIN_PATH((char*)FILE_NAME "/fonts/"), fontName);
|
||||
ImFont *pFont = io.Fonts->AddFontFromFileTTF(fullPath.c_str(), fontSize);
|
||||
|
||||
m_vecFonts.push_back({pFont, fontSize, fontMul, std::string(fontName)});
|
||||
@ -40,7 +40,7 @@ void FontMgr::ReloadAll()
|
||||
for (auto &data : m_vecFonts)
|
||||
{
|
||||
size_t fontSize = static_cast<int>(screen::GetScreenHeight() / 54.85f) * data.m_fMul;
|
||||
std::string fullPath = PLUGIN_PATH((char*)"CheatMenu/fonts/") + data.m_path + ".ttf";
|
||||
std::string fullPath = PLUGIN_PATH((char*)FILE_NAME "/fonts/") + data.m_path + ".ttf";
|
||||
data.m_pFont = io.Fonts->AddFontFromFileTTF(fullPath.c_str(), data.m_nSize);
|
||||
}
|
||||
io.FontDefault = Get("text");
|
||||
|
@ -52,7 +52,7 @@ RwTexDictionary* LoadTexDictionary(char const* filename) {
|
||||
|
||||
void ResourceStore::LoadTextureResource(std::string&& name)
|
||||
{
|
||||
std::string fullPath = PLUGIN_PATH((char*)"CheatMenu\\") + name + ".txd";
|
||||
std::string fullPath = PLUGIN_PATH((char*)FILE_NAME "\\") + name + ".txd";
|
||||
|
||||
if (!std::filesystem::exists(fullPath))
|
||||
{
|
||||
|
@ -28,7 +28,7 @@ void RPC::Shutdown()
|
||||
|
||||
void RPC::Init()
|
||||
{
|
||||
const char* dllPath = PLUGIN_PATH((char*)"CheatMenu/dlls/discord-rpc.dll");
|
||||
const char* dllPath = PLUGIN_PATH((char*)FILE_NAME "/dlls/discord-rpc.dll");
|
||||
|
||||
// check if the dll exits
|
||||
if (!std::filesystem::exists(dllPath))
|
||||
|
@ -37,7 +37,7 @@ void Updater::Process()
|
||||
}
|
||||
|
||||
const char* link = "https://api.github.com/repos/user-grinch/Cheat-Menu/tags";
|
||||
char* path = PLUGIN_PATH((char*)"CheatMenu/data/versioninfo.json");
|
||||
char* path = PLUGIN_PATH((char*)FILE_NAME "/data/versioninfo.json");
|
||||
HRESULT res = URLDownloadToFile(NULL, link, path, 0, NULL);
|
||||
|
||||
if (res == E_OUTOFMEMORY || res == INET_E_DOWNLOAD_FAILURE)
|
||||
|
@ -34,13 +34,9 @@ rd /S /Q %archivePath% /Q
|
||||
|
||||
@REM Copy the files to a temp folder
|
||||
@REM straight xcopy doesn't seem to work on my system, broken registry?
|
||||
%systemroot%\System32\xcopy /s %asiPath% "pack\" /K /D /H /Y
|
||||
%systemroot%\System32\xcopy /s %folderpath% "pack\CheatMenu\" /K /D /H /Y
|
||||
%systemroot%\System32\xcopy /s "..\resource\common\" "pack\CheatMenu\" /K /D /H /Y
|
||||
|
||||
@REM Remove the config and versioninfo files since we don't want to distribute them
|
||||
del "pack\CheatMenu\json\config.json" /Q
|
||||
del "pack\CheatMenu\json\versioninfo.json" /Q
|
||||
xcopy /s %asiPath% "pack\" /K /D /H /Y
|
||||
xcopy /s %folderpath% "pack\%~1\" /K /D /H /Y
|
||||
xcopy /s "..\resource\common\" "pack\%~1\" /K /D /H /Y
|
||||
|
||||
@REM Guessing we have 7zip installed already, well I have
|
||||
"C:\Program Files\7-Zip\7z.exe" a -t7z %archivePath% ".\pack\*"
|
||||
|
Loading…
Reference in New Issue
Block a user