// Initialize is called by Inner Space when the extension should initialize. bool ISXEQHUDMove::Initialize(ISInterface *p_ISInterface) { pISInterface = p_ISInterface; // retrieve basic ISData types pStringType = pISInterface->FindLSType("string"); pIntType = pISInterface->FindLSType("int"); pBoolType = pISInterface->FindLSType("bool"); pFloatType = pISInterface->FindLSType("float"); pTimeType = pISInterface->FindLSType("time"); pByteType = pISInterface->FindLSType("byte"); pISInterface->OpenSettings(XMLFileName); LoadSettings(); ConnectServices(); RegisterCommands(); RegisterAliases(); RegisterDataTypes(); RegisterTopLevelObjects(); RegisterServices(); WriteChatf("ISXEQHUDMove Loaded"); return true; }
// Initialize is called by Inner Space when the extension should initialize. bool ISXEQLabels::Initialize(ISInterface *p_ISInterface) { pISInterface=p_ISInterface; // retrieve basic ISData types pStringType=pISInterface->FindLSType("string"); pIntType=pISInterface->FindLSType("int"); pBoolType=pISInterface->FindLSType("bool"); pFloatType=pISInterface->FindLSType("float"); pTimeType=pISInterface->FindLSType("time"); pByteType=pISInterface->FindLSType("byte"); pISInterface->OpenSettings(XMLFileName); LoadSettings(); ConnectServices(); RegisterCommands(); RegisterAliases(); RegisterDataTypes(); RegisterTopLevelObjects(); RegisterServices(); EzDetour(CLabel__Draw,&CLabelHook::Draw_Detour,&CLabelHook::Draw_Trampoline); EzDetour(CSidlManager__CreateLabel,&CSidlManagerHook::CreateLabel_Detour,&CSidlManagerHook::CreateLabel_Trampoline); // currently in testing: // EasyClassDetour(CGauge__Draw,CGaugeHook,Draw_Detour,VOID,(VOID),Draw_Trampoline); // EasyDetour(__GetGaugeValueFromEQ,GetGaugeValueFromEQ_Hook,int,(int,class CXStr *,bool *),GetGaugeValueFromEQ_Trampoline); WriteChatf("ISXEQLabels Loaded"); return true; }
// Initialize is called by Inner Space when the extension should initialize. bool ISXEQItemDisplay::Initialize(ISInterface *p_ISInterface) { pISInterface=p_ISInterface; // retrieve basic ISData types pStringType=pISInterface->FindLSType("string"); pIntType=pISInterface->FindLSType("int"); pBoolType=pISInterface->FindLSType("bool"); pFloatType=pISInterface->FindLSType("float"); pTimeType=pISInterface->FindLSType("time"); pByteType=pISInterface->FindLSType("byte"); pISInterface->OpenSettings(XMLFileName); ConnectServices(); RegisterCommands(); RegisterAliases(); RegisterDataTypes(); RegisterTopLevelObjects(); RegisterServices(); EzDetour(CItemDisplayWnd__SetSpell,&ItemDisplayHook::SetSpell_Detour,&ItemDisplayHook::SetSpell_Trampoline); EzDetour(CItemDisplayWnd__UpdateStrings, &ItemDisplayHook::UpdateStrings_Detour, &ItemDisplayHook::UpdateStrings_Trampoline); //EzDetour(CXWnd__DrawTooltipAtPoint,&XWndHook::DrawTooltipAtPoint_Detour,&XWndHook::DrawTooltipAtPoint_Trampoline); //EzDetour(CInvSlotWnd__DrawTooltip, &InvSlotWndHook::DrawTooltip_Detour, &InvSlotWndHook::DrawTooltip_Trampoline); WriteChatf("ISXEQItemDisplay Loaded"); return true; }
// Initialize is called by Inner Space when the extension should initialize. bool ISXEQMap::Initialize(ISInterface *p_ISInterface) { pISInterface = p_ISInterface; // retrieve basic ISData types pStringType = pISInterface->FindLSType("string"); pIntType = pISInterface->FindLSType("int"); pBoolType = pISInterface->FindLSType("bool"); pFloatType = pISInterface->FindLSType("float"); pTimeType = pISInterface->FindLSType("time"); pByteType = pISInterface->FindLSType("byte"); pISInterface->OpenSettings("ISXEQMap.XML"); bmMapRefresh = AddMQ2Benchmark("Map Refresh"); unsigned int i; CHAR szBuffer[MAX_STRING] = { 0 }; for (i = 0; MapFilterOptions[i].szName; i++) { sprintf(szBuffer, "%s Color", MapFilterOptions[i].szName); int Temp; if (pISInterface->GetSettingi("ISXEQMap.XML", "Map Filters", MapFilterOptions[i].szName, Temp)) MapFilterOptions[i].Enabled = Temp; else MapFilterOptions[i].Enabled = MapFilterOptions[i].Default; if (pISInterface->GetSettingi("ISXEQMap.XML", "Map Filters", szBuffer, Temp)) MapFilterOptions[i].Color = Temp | 0xFF000000; else MapFilterOptions[i].Color = MapFilterOptions[i].DefaultColor | 0xFF000000; } MapInit(); pISInterface->GetSetting("ISXEQMap.XML", "Naming Schemes", "Normal", MapNameString, sizeof(MapNameString)); pISInterface->GetSetting("ISXEQMap.XML", "Naming Schemes", "Target", MapTargetNameString, sizeof(MapTargetNameString)); for (i = 1; i<16; i++) { sprintf(szBuffer, "KeyCombo%d", i); pISInterface->GetSetting("ISXEQMap.XML", "Right Click", szBuffer, MapSpecialClickString[i], sizeof(MapSpecialClickString[i])); } // Do not use Custom, since the string isn't stored MapFilterOptions[MAPFILTER_Custom].Enabled = 0; ConnectServices(); RegisterCommands(); RegisterAliases(); RegisterDataTypes(); RegisterTopLevelObjects(); RegisterServices(); EzDetour(CMapViewWnd__CMapViewWnd, &CMyMapViewWnd::Constructor_Detour, &CMyMapViewWnd::Constructor_Trampoline); CMyMapViewWnd::StealVFTable(); printf("ISXEQMap Loaded"); return true; }
// Initialize is called by Inner Space when the extension should initialize. bool CISXEQ::Initialize(ISInterface *p_ISInterface) { pISInterface=p_ISInterface; char CurrentModule[512]={0}; GetModuleFileName(0,CurrentModule,512); char *filename; if (filename=strrchr(CurrentModule,'\\')) filename++; else filename=CurrentModule; if (stricmp(filename,"eqgame.exe")) { printf("ISXEQ is only meant to be used in eqgame.exe"); return false; } // retrieve basic ISData types pStringType=pISInterface->FindLSType("string"); pMutableStringType = pISInterface->FindLSType("mutablestring"); pWStringType = pISInterface->FindLSType("unistring"); pUniStringType = pISInterface->FindLSType("unistring"); pIntType=pISInterface->FindLSType("int"); pUIntType = pISInterface->FindLSType("uint"); pInt64Type = pISInterface->FindLSType("int64"); pInt64PtrType = pISInterface->FindLSType("int64ptr"); pBoolType=pISInterface->FindLSType("bool"); pFloatType=pISInterface->FindLSType("float"); pTimeType=pISInterface->FindLSType("time"); pByteType=pISInterface->FindLSType("byte"); pIntPtrType=pISInterface->FindLSType("intptr"); pBoolPtrType=pISInterface->FindLSType("boolptr"); pFloatPtrType=pISInterface->FindLSType("floatptr"); pFloat64PtrType = pISInterface->FindLSType("float64ptr"); pBytePtrType=pISInterface->FindLSType("byteptr"); pPoint3fType = pISInterface->FindLSType("point3f"); pIndexType = pISInterface->FindLSType("index"); pVectorType = pISInterface->FindLSType("index"); pMapType = pISInterface->FindLSType("collection"); pSetType = pISInterface->FindLSType("set"); ConnectServices(); RegisterCommands(); RegisterAliases(); RegisterDataTypes(); RegisterTopLevelObjects(); RegisterServices(); HookMemChecker(TRUE); strcpy(gszINIPath,ModulePath); MQ2Initialize(); printf("ISXEQ Loaded"); return true; }