Skip to content

Commit e3feecd

Browse files
committed
Add Get/SetSkin functions to EditoModel and some functions to Editor
1 parent 8cc342a commit e3feecd

3 files changed

Lines changed: 27 additions & 3 deletions

File tree

Spore ModAPI/SourceCode/DLL/AddressesEditors.cpp

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,21 @@ namespace Editors
8181

8282
DefineAddress(HandleMessage, SelectAddress(0x591C80, 0x591FA0));
8383

84+
DefineAddress(GetEditorForAssetType, SelectAddress(0x433010, 0x4333e0));
85+
DefineAddress(GetNameForAssetType, SelectAddress(0x4badc0, 0x4bba50));
86+
DefineAddress(GetTypeIDForAssetType, SelectAddress(0x4bb110, 0x4bbda0));
8487

85-
DefineAddress(GetEditorForAssetType, SelectAddress(0x00433010, 0x004333e0));
86-
DefineAddress(GetNameForAssetType, SelectAddress(0x004badc0, 0x004bba50));
87-
DefineAddress(GetTypeIDForAssetType, SelectAddress(0x004bb110, 0x004bbda0));
88+
DefineAddress(ComputeCreatureVerbIcons, SelectAddress(0x4e2a50, 0x4e8860));
89+
90+
DefineAddress(LoadCreatureData, SelectAddress(0x4b5760, 0x4bb500));
91+
}
92+
93+
namespace Addresses(EditorModel)
94+
{
95+
DefineAddress(GetSkinEffect, SelectAddress(0x4a8790, 0x4ae180));
96+
DefineAddress(SetSkinEffect, SelectAddress(0x4a8820, 0x4ae210));
97+
DefineAddress(GetSkinEffectSeed, SelectAddress(0x4a87b0, 0x4ae1a0));
98+
DefineAddress(SetSkinEffectSeed, SelectAddress(0x4a8840, 0x4ae230));
8899
}
89100

90101
namespace Addresses(EditorCamera)

Spore ModAPI/SourceCode/Editors/Editor.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,5 +198,16 @@ namespace Editors
198198
auto_STATIC_METHOD(cEditor, uint32_t, GetTypeIDForAssetType, Args(uint32_t assetTypeID), Args(assetTypeID));
199199

200200
auto_STATIC_METHOD(cEditor, const char16_t*, GetNameForAssetType, Args(uint32_t assetTypeID), Args(assetTypeID));
201+
202+
auto_STATIC_METHOD_VOID(cEditor, ComputeCreatureVerbIcons, Args(cCreatureDataResource* creatureData, cSPVerbTrayCollection* VerbTrayCollection, int brainLevel, float param_4), Args(creatureData, VerbTrayCollection, brainLevel, param_4));
203+
204+
auto_STATIC_METHOD(cEditor, bool, LoadCreatureData,Args(ResourceKey* creation, cCreatureDataResource** dst), Args(creation, dst));
205+
206+
auto_METHOD(EditorModel, int, GetSkinEffect, Args(int skinLayout), Args(skinLayout));
207+
208+
auto_METHOD(EditorModel, int, GetSkinEffectSeed, Args(int skinLayout), Args(skinLayout));
209+
210+
auto_METHOD_VOID(EditorModel, SetSkinEffect, Args(int skinLayout, uint32_t effectID), Args(skinLayout, effectID));
211+
auto_METHOD_VOID(EditorModel, SetSkinEffectSeed, Args(int skinLayout, uint32_t seed), Args(skinLayout, seed));
201212
}
202213
#endif

Spore ModAPI/Spore/Editors/Editor.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -643,6 +643,8 @@ namespace Editors
643643
DeclareAddress(GetEditorForAssetType);
644644
DeclareAddress(GetNameForAssetType);
645645
DeclareAddress(GetTypeIDForAssetType);
646+
DeclareAddress(ComputeCreatureVerbIcons);
647+
DeclareAddress(LoadCreatureData);
646648
}
647649

648650
#ifdef SDK_TO_GHIDRA

0 commit comments

Comments
 (0)