Woofing Giraffe
Активный
- 402
- 49
void CALLBACK cmd_skills(std::string str)
{
if (Skills == false)
{
Skills = true;
SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 100.0");
}
else
{
Skills = false;
SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 0.0");
}
}
Дай полный код.Почему не выключается?
PHP:void CALLBACK cmd_skills(std::string str) { if (Skills == false) { Skills = true; SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 100.0"); } else { Skills = false; SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 0.0"); } }
Дай полный код.
#include <windows.h>
#include <string>
#include <assert.h>
#include <process.h>
#include "SAMPFUNCS_API.h"
#include "game_api\game_api.h"
SAMPFUNCS *SF = new SAMPFUNCS();
bool Skills = false;
void CALLBACK cmd_skills(std::string str)
{
if (Skills == false)
{
Skills = true;
SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 100.0");
}
else
{
Skills = false;
SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 0.0");
}
}
void CALLBACK mainloop()
{
static bool init = false;
if (!init)
{
if (!SF->getSAMP()->IsInitialized() || GAME == nullptr)
return;
SF->getSAMP()->registerChatCommand("fskills", cmd_skills);
init = true;
}
}
BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved)
{
switch (dwReasonForCall)
{
case DLL_PROCESS_ATTACH:
SF->initPlugin(mainloop, hModule);
break;
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
bool Skills =false;PHP:#include <windows.h> #include <string> #include <assert.h> #include <process.h> #include "SAMPFUNCS_API.h" #include "game_api\game_api.h" SAMPFUNCS *SF = new SAMPFUNCS(); bool Skills = false; void CALLBACK cmd_skills(std::string str) { if (Skills == false) { Skills = true; SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 100.0"); } else { Skills = false; SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 0.0"); } } void CALLBACK mainloop() { static bool init = false; if (!init) { if (!SF->getSAMP()->IsInitialized() || GAME == nullptr) return; SF->getSAMP()->registerChatCommand("fskills", cmd_skills); init = true; } } BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved) { switch (dwReasonForCall) { case DLL_PROCESS_ATTACH: SF->initPlugin(mainloop, hModule); break; case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; }
PHP:#include <windows.h> #include <string> #include <assert.h> #include <process.h> #include "SAMPFUNCS_API.h" #include "game_api\game_api.h" SAMPFUNCS *SF = new SAMPFUNCS(); bool Skills = false; void CALLBACK cmd_skills(std::string str) { if (Skills == false) { Skills = true; SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 100.0"); } else { Skills = false; SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 0.0"); } } void CALLBACK mainloop() { static bool init = false; if (!init) { if (!SF->getSAMP()->IsInitialized() || GAME == nullptr) return; SF->getSAMP()->registerChatCommand("fskills", cmd_skills); init = true; } } BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved) { switch (dwReasonForCall) { case DLL_PROCESS_ATTACH: SF->initPlugin(mainloop, hModule); break; case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; }
#include <windows.h>
#include <string>
#include <assert.h>
#include <process.h>
#include "SAMPFUNCS_API.h"
#include "game_api\game_api.h"
SAMPFUNCS *SF = new SAMPFUNCS();
bool Skills;
void CALLBACK cmd_skills(std::string str)
{
Skills ^= true;
if (Skills)
{
SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 0.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 0.0");
}
else
{
SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 100.0");
SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 100.0");
}
}
void CALLBACK mainloop()
{
static bool init = false;
if (!init)
{
if (!SF->getSAMP()->IsInitialized() || GAME == nullptr)
return;
SF->getSAMP()->registerChatCommand("fskills", cmd_skills);
init = true;
}
}
BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved)
{
switch (dwReasonForCall)
{
case DLL_PROCESS_ATTACH:
SF->initPlugin(mainloop, hModule);
break;
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
Всё по старому, не выключается.Вроде должно работать.Код:#include <windows.h> #include <string> #include <assert.h> #include <process.h> #include "SAMPFUNCS_API.h" #include "game_api\game_api.h" SAMPFUNCS *SF = new SAMPFUNCS(); bool Skills; void CALLBACK cmd_skills(std::string str) { Skills ^= true; if (Skills) { SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 0.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 0.0"); } else { SF->getCLEO()->callOpcode("0627: register_int_stat 72 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 78 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 71 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 76 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 79 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 77 value 100.0"); SF->getCLEO()->callOpcode("0627: register_int_stat 70 value 100.0"); } } void CALLBACK mainloop() { static bool init = false; if (!init) { if (!SF->getSAMP()->IsInitialized() || GAME == nullptr) return; SF->getSAMP()->registerChatCommand("fskills", cmd_skills); init = true; } } BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved) { switch (dwReasonForCall) { case DLL_PROCESS_ATTACH: SF->initPlugin(mainloop, hModule); break; case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; }
это самп. даже если тебе выдаст скиллы админ, то пока ты не умрешь у тебя их не будетВсё по старому, не выключается.
Хотя, наверно я не правильно выразился...
Я пробовал выводить текст при включении и выключении, всё хорошо прошло, соответственно всё работает.
Трабла в том, что не меняется значение "value".
Нашёл интересную вещь, оно меняется на 0, если выключить данную функцию и умереть. То бишь только после смерти "value" становится 0.
Visual Studio 2015Ребят, подскажите какой компилятор лучше выбрать, чтобы был максимально прост и удобен в использовании, либо что-то на свой вкус. Спасибо
Только 12 подойдет, нет ?Visual Studio 2015
,Ребят, подскажите какой компилятор лучше выбрать, чтобы был максимально прост и удобен в использовании, либо что-то на свой вкус. Спасибо
Советую 2013 Ultimate, желательно с обновлением 4 или выше. ИМХО. ( Могут появится глюки с обновлением 2)Только 12 подойдет, нет ?