Add DLL-side minimap NPC tracking with blip rendering
Hook ObjectEnumProc, RenderObjectBlips, and EnumVisibleObjects to classify visible objects by NPC flags / GO type and render custom blip icons. Includes Lua API (SetObjectTypeBlip), texture caching, WMO indoor/outdoor filtering, and coordinate projection. Consolidate vendor subcategories into single entry since vanilla only has one NPC_FLAG_VENDOR. Spell tracking entries now toggle off when clicked while active. Fix: queryMapObjIDs was __fastcall (not __thiscall) — pushing 3 stack args but RET 0x8 only cleaned 2, corrupting ESP and crashing.
This commit is contained in:
@@ -96,6 +96,9 @@ fn registerLuaFunctions() void {
|
||||
registerFunction("SetCursorScale", @intFromPtr(&bigcursor.luaSetCursorScale));
|
||||
registerFunction("GetCursorScale", @intFromPtr(&bigcursor.luaGetCursorScale));
|
||||
}
|
||||
if (build_opts.minimapicons and minimapicons.isActive()) {
|
||||
registerFunction("SetObjectTypeBlip", @intFromPtr(&minimapicons.luaSetObjectTypeBlip));
|
||||
}
|
||||
if (build_opts.worldmarkers and markers.isActive()) {
|
||||
// User-facing functions stay global
|
||||
registerFunction("WorldMarker", @intFromPtr(&markers.luaWorldMarker));
|
||||
|
||||
Reference in New Issue
Block a user