Исходник Class IRender (не рисовка)

Energy Reload
Забаненный
Статус
Оффлайн
Регистрация
20 Авг 2017
Сообщения
1,206
Реакции[?]
330
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Сам класс IRendera: Выход через адрес, получение ширины\высоты экрана и перевод (конвертация) 3D координаты на 2D экран


C++:
class IRenderer
{
public:
    static IRenderer* Singleton()
    {
        return *(IRenderer**)((DWORD64)(_IRender::_IRendererGlobalEnvironment_ru);
    }

    int GetWidth()//Высота
    {
        return *(int*)((DWORD64)this + _IRender::getWidth_offset_ru);//
    }

    int GetHeight()//Ширина
    {
        return *(int*)((DWORD64)this + (_IRender::getHeight_offset_ru);//
    }

    bool ProjectToScreen(VecToScreen* pVecToScreen)
    {
        typedef bool(__thiscall* oProjectToScreen)(PVOID, VecToScreen*);
        return vFun_Call<oProjectToScreen>(this,_IRender::v_ProjectToScreen_ru)(this, pVecToScreen);
    }
};
namespace _IRender
{
static DWORD64 _IRendererGlobalEnvironment_ru = адрес ;
static DWORD64 getWidth_offset_ru = смещение, относительно от указателя на класс;
static DWORD64 getHeight_offset_ru = смещение, относительно от указателя на класс;
static DWORD64 v_ProjectToScreen_ru = позиция в виртуальном классе;
};

C++:
template< typename cData >
cData vFun_Call(PVOID64 BaseClass, DWORD64 vIndex)
{
    PDWORD64* vPointer = (PDWORD64*)BaseClass;
    PDWORD64 vFunction = *vPointer;
    DWORD64 dwAddress = vFunction[vIndex];
    return (cData)(dwAddress);
}
 
Последнее редактирование:
купить дизайн: yougame.biz/threads/155999
Дизайнер
Статус
Оффлайн
Регистрация
19 Сен 2018
Сообщения
794
Реакции[?]
1,381
Поинты[?]
9K
почему у тебя суффикс _ru для оффсетов? ты что, поддерживаешь спецоперацию на украине?
 
Забаненный
Статус
Оффлайн
Регистрация
2 Мар 2021
Сообщения
1,083
Реакции[?]
406
Поинты[?]
1K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
почему у тебя суффикс _ru для оффсетов? ты что, поддерживаешь спецоперацию на украине?
хахахаха, забавно, однако на аватарке украинский флаг :roflanEbalo:
если по сути вопроса: потому что смещение/индекс для RU сервера игры
 
Energy Reload
Забаненный
Статус
Оффлайн
Регистрация
20 Авг 2017
Сообщения
1,206
Реакции[?]
330
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
почему у тебя суффикс _ru для оффсетов? ты что, поддерживаешь спецоперацию на украине?
Ахаха. Убрано смещение для евро.
И не надо тут приплетать межгосударственные конфликты.

C++:
    const int GetArmor()
    {
        typedef int(__thiscall* pFunc)(PVOID);
        return vFun_Call<pFunc>(this, (Check_version_game ? _IActor::idx_GetArmor_eur : _IActor::v_GetArmor_ru))(this);
    }
Check_version_game = 1 или 0,зависит от версии клиента.
почему у тебя суффикс _ru для оффсетов? ты что, поддерживаешь спецоперацию на украине?
Только истинный Z - нацик мог увидеть то, чего нету нету. )))
 
Последнее редактирование:
Сверху Снизу