F0RQU1N and
Известный
- 1,307
- 498
установить другую или вызвать опкод из клео 0792: disembark_instantly_actorкак сбить анимацию?
установить другую или вызвать опкод из клео 0792: disembark_instantly_actorкак сбить анимацию?
как сбить анимацию?
То же самое что выше, но самодельное(игра также делает)как сбить анимацию?
CTaskManager* TaskManager = PEDSELF->GetPedIntelligence()->GetTaskManager();
for (int i = 0; i < TASK_PRIORITY_MAX; i++)
{
CTask* pTask = TaskManager->GetTask(i);
if (pTask)
{
pTask->MakeAbortable(PEDSELF, ABORT_PRIORITY_IMMEDIATE, NULL);
TaskManager->RemoveTask(i);
}
}
for (int i = 0; i < TASK_SECONDARY_MAX; i++)
{
CTask* pTask = TaskManager->GetTaskSecondary(i);
if (pTask)
{
pTask->MakeAbortable(PEDSELF, ABORT_PRIORITY_IMMEDIATE, NULL);
if (i != TASK_SECONDARY_FACIAL_COMPLEX)
TaskManager->RemoveTaskSecondary(i);
}
}
void ESP_Chams()
{
DWORD* dwConstant;
DWORD* dwARG0;
DWORD* dwARG2;
IDirect3DDevice9* pDevice;
pDevice = SF->getRender()->getD3DDevice();
pDevice->GetTextureStageState(0, D3DTSS_CONSTANT, dwConstant);
pDevice->GetTextureStageState(0, D3DTSS_COLORARG0, dwARG0);
pDevice->GetTextureStageState(0, D3DTSS_COLORARG2, dwARG2);
pDevice->SetTextureStageState(0, D3DTSS_CONSTANT, 0xFF00FF00);
pDevice->SetTextureStageState(0, D3DTSS_COLORARG0, 6);
pDevice->SetTextureStageState(0, D3DTSS_COLORARG2, 6);
PEDSELF->Render();
pDevice->SetTextureStageState(0, D3DTSS_CONSTANT, dwConstant[0]);
pDevice->SetTextureStageState(0, D3DTSS_COLORARG0, dwARG0[0]);
pDevice->SetTextureStageState(0, D3DTSS_COLORARG2, dwARG2[0]);
}
в WNDProcкак исправить, при закрытии имгуи окна мой персонаж начинает бить, ну как обычно нажимаешь ЛКМ, хотя не должен
if (state.bMenuOpened) {
if (ImGui_ImplWin32_WndProcHandler(hWnd, msg, wParam, lParam))
{
return true;
}
ImGuiIO& io = ImGui::GetIO();
if (io.WantCaptureMouse || io.WantCaptureKeyboard)
{
return true;
}
}
В 135 строчке ошибка и ещё в 3 замени deque на vectorВсем привет, делаю свой проект на samp mobile и заметел, что анимации которые я делаю - не видят другие игроки? если не сложно обьясните, в чем причина, где я ошибся?
а может знаешь пайплайн рендера авто?Кстати выше - не самое лучшее решение. Лучше хукать DrawIndexedPrimitive в пайплайне рендера педов(0x761142) и выставлять цвет пикселей через константы или пиксельный шейдер. Пример:
C:sampler2D tex0 : register(s0); extern float3 dy: register(c0); float4 main(float2 tc : TEXCOORD0) : COLOR { return tex2D(tex0, tc) * float4(dy[0], dy[1], dy[2], 1.0); }
C++:{ HRSRC hsrc = FindResourceW(reinterpret_cast<HMODULE>(hmdl), MAKEINTRESOURCEW(IDR_HLSL2), L"HLSL"); PVOID shader = LockResource(LoadResource(reinterpret_cast<HMODULE>(hmdl), hsrc)); pDevice->CreatePixelShader(reinterpret_cast<DWORD*>(shader), &pPixelShader); }
C++:pDevice->SetPixelShader(pPixelShader); // Rainbow lol if (bTact) { HSVtoRGB(RGB[0], RGB[1], RGB[2], color[0], color[1], color[2]); color[0] += 2.0f; if (color[0] >= 360.0f) color[0] -= 360.0f; bTact = false; } pDevice->SetPixelShaderConstantF(0, RGB, 1); fpHkDrawIndexedPrimitive(pDevice, Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount); pDevice->SetPixelShader(nullptr); return D3D_OK;
class RenderClass
{
public:
bool m_bIsEnabled{ false }; // визуалка 2019 показывает ошибку тут
std::string m_sName{ "" };
private:
std::vector<ObjectRender> m_objectsRenders;
std::vector<Text3dRender> m_text3dRenders;
std::vector<PickupRender> m_pickupRenders;
public:
RenderClass();
RenderClass(const char* szName);
void ReadWrite(READ_WRITE_PARAMS);
bool areAnyObjectRendersEnabled();
bool areAnyickupRendersEnabled();
bool areAnyText3DRendersEnabled();
void renderPickups(RenderPickup_ObjectData* pRenderPickupData);
void renderObjects(RenderPickup_ObjectData* pRenderObjectData);
void render3DTexts(Render3DTextData* p3DTextData);
void drawEditor(size_t spl);
void drawMenu(size_t i);
};
void CustomRender::ReadWrite(READ_WRITE_PARAMS)
{
using namespace std::chrono_literals;
try
{
FIELD_IV4(customRenderData.vec4Color);
FIELD(customRenderData.bDrawLine);
FIELD(customRenderData.m_fFontScale);
FIELD(m_bEnabled);
if (bRead)
{
size_t i = 0;
while (true)
{
if (data["class"][std::to_string(i).c_str()].is_null())
break;
auto&& renderClass = m_classes.emplace_back(); // вот тут ошибка
renderClass.ReadWrite(data["class"][std::to_string(i).c_str()], bRead);
i++;
}
}
else
{
for (size_t i = 0; i < m_classes.size(); i++)
m_classes[i].ReadWrite(data["class"][std::to_string(i).c_str()], bRead);
}
}
catch (...) { setDefaultSettings(); }
}
Ну как минимум emplace_back возвращает lvalue reference, а у тебя auto&&, который rvalue referenceвсем привет, я столкнулся с прикольной проблемой, она заключается в том, что ИНОГДА std::vector<someclass> при emplace_back у меня выбивает исключение this = nullptr
код класса
Код с самим emplace_back()C++:class RenderClass { public: bool m_bIsEnabled{ false }; // визуалка 2019 показывает ошибку тут std::string m_sName{ "" }; private: std::vector<ObjectRender> m_objectsRenders; std::vector<Text3dRender> m_text3dRenders; std::vector<PickupRender> m_pickupRenders; public: RenderClass(); RenderClass(const char* szName); void ReadWrite(READ_WRITE_PARAMS); bool areAnyObjectRendersEnabled(); bool areAnyickupRendersEnabled(); bool areAnyText3DRendersEnabled(); void renderPickups(RenderPickup_ObjectData* pRenderPickupData); void renderObjects(RenderPickup_ObjectData* pRenderObjectData); void render3DTexts(Render3DTextData* p3DTextData); void drawEditor(size_t spl); void drawMenu(size_t i); };
C++:void CustomRender::ReadWrite(READ_WRITE_PARAMS) { using namespace std::chrono_literals; try { FIELD_IV4(customRenderData.vec4Color); FIELD(customRenderData.bDrawLine); FIELD(customRenderData.m_fFontScale); FIELD(m_bEnabled); if (bRead) { size_t i = 0; while (true) { if (data["class"][std::to_string(i).c_str()].is_null()) break; auto&& renderClass = m_classes.emplace_back(); // вот тут ошибка renderClass.ReadWrite(data["class"][std::to_string(i).c_str()], bRead); i++; } } else { for (size_t i = 0; i < m_classes.size(); i++) m_classes[i].ReadWrite(data["class"][std::to_string(i).c_str()], bRead); } } catch (...) { setDefaultSettings(); } }