C++ Player model changer for csgosimple

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
24 Янв 2019
Сообщения
13
Реакции
11
Visuals.cpp {

void Visuals::PlayerChanger(ClientFrameStage_t stage)
{

static int originalIdx = 0;

auto pLocal = static_cast<C_BasePlayer*>(g_EntityList->GetClientEntity(g_EngineClient->GetLocalPlayer()));
if (!pLocal) {
originalIdx = 0;
return;
}

constexpr auto getModel = [](int team) constexpr -> const char* {
constexpr std::array models{
"models/player/custom_player/legacy/ctm_fbi_variantb.mdl",
"models/player/custom_player/legacy/ctm_fbi_variantf.mdl",
"models/player/custom_player/legacy/ctm_fbi_variantg.mdl",
"models/player/custom_player/legacy/ctm_fbi_varianth.mdl",
"models/player/custom_player/legacy/ctm_sas_variantf.mdl",
"models/player/custom_player/legacy/ctm_st6_variante.mdl",
"models/player/custom_player/legacy/ctm_st6_variantg.mdl",
"models/player/custom_player/legacy/ctm_st6_varianti.mdl",
"models/player/custom_player/legacy/ctm_st6_variantk.mdl",
"models/player/custom_player/legacy/ctm_st6_variantm.mdl",
"models/player/custom_player/legacy/tm_balkan_variantf.mdl",
"models/player/custom_player/legacy/tm_balkan_variantg.mdl",
"models/player/custom_player/legacy/tm_balkan_varianth.mdl",
"models/player/custom_player/legacy/tm_balkan_varianti.mdl",
"models/player/custom_player/legacy/tm_balkan_variantj.mdl",
"models/player/custom_player/legacy/tm_leet_variantf.mdl",
"models/player/custom_player/legacy/tm_leet_variantg.mdl",
"models/player/custom_player/legacy/tm_leet_varianth.mdl",
"models/player/custom_player/legacy/tm_leet_varianti.mdl",
"models/player/custom_player/legacy/tm_phoenix_variantf.mdl",
"models/player/custom_player/legacy/tm_phoenix_variantg.mdl",
"models/player/custom_player/legacy/tm_phoenix_varianth.mdl"
};

switch (team) {
case 2: return static_cast<std::size_t>(g_Options.playerModelT - 1) < models.size() ? models[g_Options.playerModelT - 1] : nullptr;
case 3: return static_cast<std::size_t>(g_Options.playerModelCT - 1) < models.size() ? models[g_Options.playerModelCT - 1] : nullptr;
default: return nullptr;
}
};

if (const auto model = getModel(pLocal->m_iTeamNum())) {
if (stage == ClientFrameStage_t::FRAME_RENDER_START)
originalIdx = pLocal->m_nModelIndex();

const auto idx = stage == ClientFrameStage_t::FRAME_RENDER_END && originalIdx ? originalIdx : g_MdlInfo->GetModelIndex(model);

pLocal->SetModelIndex(idx);
}
}

----------------------------------------------------------------------------------------------------------------------------------------------------

Visuals.hpp {

void PlayerChanger(ClientFrameStage_t stage);

}

----------------------------------------------------------------------------------------------------------------------------------------------------

hkFrameStageNotify(hooks.cpp) {

Visuals::Get().PlayerChanger(stage);

}

----------------------------------------------------------------------------------------------------------------------------------------------------

menu.cpp {

ImGui::Combo("player t", &g_Options.playerModelT, "Default\0Special Agent Ava | FBI\0Operator | FBI SWAT\0Markus Delrow | FBI HRT\0Michael Syfers | FBI Sniper\0B Squadron Officer | SAS\0Seal Team 6 Soldier | NSWC SEAL\0Buckshot | NSWC SEAL\0Lt. Commander Ricksaw | NSWC SEAL\0Third Commando Company | KSK\0'Two Times' McCoy | USAF TACP\0Dragomir | Sabre\0Rezan The Ready | Sabre\0'The Doctor' Romanov | Sabre\0Maximus | Sabre\0Blackwolf | Sabre\0The Elite Mr. Muhlik | Elite Crew\0Ground Rebel | Elite Crew\0Osiris | Elite Crew\0Prof. Shahmat | Elite Crew\0Enforcer | Phoenix\0Slingshot | Phoenix\0Soldier | Phoenix\0");

ImGui::Combo("player ct", &g_Options.playerModelCT, "Default\0Special Agent Ava | FBI\0Operator | FBI SWAT\0Markus Delrow | FBI HRT\0Michael Syfers | FBI Sniper\0B Squadron Officer | SAS\0Seal Team 6 Soldier | NSWC SEAL\0Buckshot | NSWC SEAL\0Lt. Commander Ricksaw | NSWC SEAL\0Third Commando Company | KSK\0'Two Times' McCoy | USAF TACP\0Dragomir | Sabre\0Rezan The Ready | Sabre\0'The Doctor' Romanov | Sabre\0Maximus | Sabre\0Blackwolf | Sabre\0The Elite Mr. Muhlik | Elite Crew\0Ground Rebel | Elite Crew\0Osiris | Elite Crew\0Prof. Shahmat | Elite Crew\0Enforcer | Phoenix\0Slingshot | Phoenix\0Soldier | Phoenix\0");

}

----------------------------------------------------------------------------------------------------------------------------------------------------

SetModelIndex = (csgostructs.hpp in class C_BaseEntity : public IClientEntity)

void SetModelIndex(const int index)
{
return CallVFunction<void(__thiscall*)(C_BaseEntity*, int)>(this, 75)(this, index);
}
 
так он на рагдолле не будет работать
 
ММм, сделал всё как ты расписал добавил g_Options который ты решил не вставлять и
unknown.png
unknown.png


Well damn, then you forgot to add options.cpp fix and by the way SetModelIndex
it conflicts because there are two of them, and if you remove it, it still won’t compile ...

unknown.png
LOL

Я уже все варианты фикса данного конфликта перепробовал

unknown.png
две ошибки осталось которые по сути пфф...

Cut gloves and dick there swam nothing fixed
 
Для совсем немощных пастеров я сделал СУРС с уже СПАСЩЕННЫМ содержимым этой темы

Ссылка -
Пожалуйста, авторизуйтесь для просмотра ссылки.


Вам осталось всего лишь добавить кнопки в меню :) :) :) :)
 
А зачем на рагдолле то я не понимаю просто зачем????
может для того чтобы когда ты умираешь оно оставалось на твоем трупе
вообще в таком случае нахуя тебе агент ченджер просто я не понимаю просто зачем????
 
может для того чтобы когда ты умираешь оно оставалось на твоем трупе
вообще в таком случае нахуя тебе агент ченджер просто я не понимаю просто зачем????
да вот именно, зачем он нужен
 
Для совсем немощных пастеров я сделал СУРС с уже СПАСЩЕННЫМ содержимым этой темы

Ссылка -
Пожалуйста, авторизуйтесь для просмотра ссылки.


Вам осталось всего лишь добавить кнопки в меню :) :) :) :)
Я в алиенсэнсэ пытался пастить не своркало... Получается если я добавляю SetModelIndex он конфликтовал с модел индексом для ченжера, убирал у ченжера почему-то тоже конфликт был...(Вырезал глоувченжер)
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Я в алиенсэнсэ пытался пастить не своркало... Получается если я добавляю SetModelIndex он конфликтовал с модел индексом для ченжера, убирал у ченжера почему-то тоже конфликт был...(Вырезал глоувченжер)
Так измени setglovemodelindex на SetModelIndex и не парься, может я туплю. Па идеии у них структура адинаковая
 
Назад
Сверху Снизу