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

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


C++:
Expand Collapse Copy
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++:
Expand Collapse Copy
template< typename cData >
cData vFun_Call(PVOID64 BaseClass, DWORD64 vIndex)
{
    PDWORD64* vPointer = (PDWORD64*)BaseClass;
    PDWORD64 vFunction = *vPointer;
    DWORD64 dwAddress = vFunction[vIndex];
    return (cData)(dwAddress);
}
 
Последнее редактирование:
почему у тебя суффикс _ru для оффсетов? ты что, поддерживаешь спецоперацию на украине?
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
почему у тебя суффикс _ru для оффсетов? ты что, поддерживаешь спецоперацию на украине?
хахахаха, забавно, однако на аватарке украинский флаг :roflanEbalo:
если по сути вопроса: потому что смещение/индекс для RU сервера игры
 
  • Вау!
Реакции: sove
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
почему у тебя суффикс _ru для оффсетов? ты что, поддерживаешь спецоперацию на украине?
Ахаха. Убрано смещение для евро.
И не надо тут приплетать межгосударственные конфликты.

C++:
Expand Collapse Copy
    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 - нацик мог увидеть то, чего нету нету. )))
 
Последнее редактирование:
Назад
Сверху Снизу