summaryrefslogtreecommitdiff
path: root/src/T2DLL/T2MoverPlugin.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/T2DLL/T2MoverPlugin.cpp')
-rw-r--r--src/T2DLL/T2MoverPlugin.cpp22
1 files changed, 19 insertions, 3 deletions
diff --git a/src/T2DLL/T2MoverPlugin.cpp b/src/T2DLL/T2MoverPlugin.cpp
index a2a5a3a..0b38037 100644
--- a/src/T2DLL/T2MoverPlugin.cpp
+++ b/src/T2DLL/T2MoverPlugin.cpp
@@ -1,13 +1,29 @@
+#include "CResFile.h"
#include "T2MoverPlugin.h"
-T2MoverPlugin::T2MoverPlugin(unsigned long, T2PluginSpecifier&) {
+T2MoverPlugin::T2MoverPlugin(DWORD type, T2PluginSpecifier& specifier)
+ : T2EquipPlugin(type, specifier)
+{
}
/*virtual*/ T2MoverPlugin::~T2MoverPlugin() {
}
-int T2MoverPlugin::LoadAllTemplatePlugin(T2WorldDef*, T2TemplatePluginDB*) {
+BOOL T2MoverPlugin::LoadAllTemplatePlugin(T2WorldDef* worldDef, T2TemplatePluginDB*) {
+ LoadT2MoverDef(worldDef);
+ return true;
}
-void T2MoverPlugin::LoadT2MoverDef(T2WorldDef*) {
+typedef T2TemplatePlugin *(MSVC_STDCALL* ConstructTemplatePluginType) (T2PluginSpecifier *, CResFile *, T2WorldDef *, T2MoverPlugin *);
+
+void T2MoverPlugin::LoadT2MoverDef(T2WorldDef* worldDef) {
+ ConstructTemplatePluginType func = (ConstructTemplatePluginType) GetProcAddress((HMODULE) mModuleHandle, "ConstructTemplatePlugin");
+#line 26
+ _ASSERT(func);
+
+ CResFile resFile;
+ resFile.OpenResource(mModuleHandle, 1, 'MvDf');
+ T2TemplatePlugin *plugin = func(&mSpecifier, &resFile, worldDef, this);
+
+ mTemplatePlugin = plugin;
}