Ширину никак. Советую собрать и покурить демо версию имгуи. Скачать можно его с офф. репозитория. Собрать там вообще легко.Доброй ночи братцы. Подскажите как можно увеличить ширину и высоту текста, вызванной
C++:if (ImGui::BeginMenuBar()) ImGui::TextUnformatted("Load"), ImGui::EndMenuBar();
можно зарендерить на текстуру и потом растянуть ееШирину никак.
void HandleRPCPacketFunc(unsigned char id, RPCParameters *rpcParams, void(*callback) (RPCParameters *))
{
if (rpcParams != nullptr && rpcParams->numberOfBitsOfData >= 8)
{
switch (id)
{
case 93: {
pSAMP->addMessageToChat(-1, "chat msg");
break;
}
}
}
callback(rpcParams);
}
uint8_t _declspec (naked) hook_handle_rpc_packet(void)
{
static RPCParameters *pRPCParams = nullptr;
static RPCNode_ *pRPCNode = nullptr;
static DWORD dwTmp = 0;
__asm pushad;
__asm mov pRPCParams, eax;
__asm mov pRPCNode, edi;
HandleRPCPacketFunc(pRPCNode->uniqueIdentifier, pRPCParams, pRPCNode->staticFunctionPointer);
dwTmp = pSAMP->g_SAMPAddr() + 0x37443;
__asm popad;
__asm add esp, 4 // overwritten code
__asm jmp dwTmp;
}
Memory::CreateJump((BYTE*)(pSAMP->g_SAMPAddr() + 0xFF5701), (DWORD)&hook_handle_rpc_packet, 6U);
void Memory::CreateJump(BYTE* pAddress, DWORD dwJumpTo, DWORD dwLen)
{
DWORD dwOldProtect, dwBkup, dwRelAddr;
VirtualProtect(pAddress, dwLen, PAGE_EXECUTE_READWRITE, &dwOldProtect);
dwRelAddr = (DWORD)(dwJumpTo - (DWORD)pAddress) - 5;
*pAddress = 0xE9;
*((DWORD*)(pAddress + 0x1)) = dwRelAddr;
for (DWORD x = 0x5; x < dwLen; x++)*(pAddress + x) = 0x90;
VirtualProtect(pAddress, dwLen, dwOldProtect, &dwBkup);
return;
}
BYTE *bytes = (BYTE*)"\xFF\x57\x01";
Memory::memcmp_safe((uint8_t *)pSAMP->g_SAMPAddr() + 0x3743D, bytes, 3);
Memory::CreateJump((BYTE*)(pSAMP->g_SAMPAddr() + 0x3743D), (DWORD)&hook_handle_rpc_packet, 6U);
Это да, но тогда надо шрифт в текстуру конвертить. В целом, так в большинстве игр используется, но был вопрос задан о шрифте чистом.можно зарендерить на текстуру и потом растянуть ее
Неа, имгуи поддерживает рендер на текстуреЭто да, но тогда надо шрифт в текстуру конвертить.
Опана. С этого момента поподробней. Я про скейл шрифта общий знаю, но вот про такое хз. Удиви всех нас)Неа, имгуи поддерживает рендер на текстуре
CPed *ped = CPools::GetPed(pSAMP->getPlayers()->pRemotePlayer[playerID]->pPlayerData->pSAMP_Actor->ulGTAEntityHandle);
потому что самп хранит эту информациюхз, мб как-то и связан, CPed же можно по иду получить
C++:CPed *ped = CPools::GetPed(pSAMP->getPlayers()->pRemotePlayer[playerID]->pPlayerData->pSAMP_Actor->ulGTAEntityHandle);
pSAMPPed или как его там и есть CPedхз, мб как-то и связан, CPed же можно по иду получить
C++:CPed *ped = CPools::GetPed(pSAMP->getPlayers()->pRemotePlayer[playerID]->pPlayerData->pSAMP_Actor->ulGTAEntityHandle);
можешь перебрать всех педов и проверять соотвествие =Dхз, мб как-то и связан, CPed же можно по иду получить
C++:CPed *ped = CPools::GetPed(pSAMP->getPlayers()->pRemotePlayer[playerID]->pPlayerData->pSAMP_Actor->ulGTAEntityHandle);
unsigned __int16 stPlayerPool::GetPlayerIDFromCPed(CPed *pPed) {
if (pPed == FindPlayerPed())
return pSAMP->getPlayers()->sLocalPlayerID;
for (unsigned __int16 i = 0; i != SAMP_MAX_PLAYERS; i++) {
if (!pSAMP->getPlayers()->IsPlayerStreamed(i))
continue;
if (pPed == (CPed*)pSAMP->getPlayers()->pRemotePlayer[i]->pPlayerData->pSAMP_Actor->pGTA_Ped)
return i;
}
return 0xFFFF;
}