Skip to content

Commit 9c6e3fc

Browse files
committed
update upload action
1 parent 9472165 commit 9c6e3fc

File tree

8 files changed

+48
-6
lines changed

8 files changed

+48
-6
lines changed

.github/workflows/msbuild.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151
.\obse_steam_loader.dll
5252
5353
- name: Artifact
54-
uses: actions/upload-artifact@v3
54+
uses: actions/upload-artifact@v4
5555
with:
5656
name: xOBSE
5757
path: |
@@ -65,4 +65,4 @@ jobs:
6565
.\obse_command_doc.html
6666
.\README.md
6767
.\Data\OBSE\obse.ini
68-
68+

obse/obse/Commands_MiscReference.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1463,8 +1463,10 @@ static bool Cmd_SetPlayerProjectile_Execute(COMMAND_ARGS)
14631463
if (mag)
14641464
{
14651465
MagicCaster* caster = (MagicCaster*)Oblivion_DynamicCast(*g_thePlayer, 0, RTTI_Actor, RTTI_MagicCaster, 0);
1466-
if (caster)
1466+
if (caster && mag->caster != caster) {
1467+
// mag->RemoveCaster(mag->caster);
14671468
mag->caster = caster;
1469+
}
14681470
}
14691471
else
14701472
{

obse/obse/Commands_Weather.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,6 @@ static bool SetClimateValue_Execute(COMMAND_ARGS, UInt32 whichVal)
219219
ExtractArgsEx(paramInfo, arg1, opcodeOffsetPtr, scriptObj, eventList, &intVal, &form);
220220
TESClimate* climate = (TESClimate*)Oblivion_DynamicCast(form, 0, RTTI_TESForm, RTTI_TESClimate, 0);
221221
if (!climate) return true;
222-
Console_Print("CLimate %08X %s", climate->refID, climate->GetEditorName());
223222
UInt8 nuVal = (UInt8)intVal;
224223

225224
switch (whichVal) {

obse/obse/GameAPI.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1427,6 +1427,11 @@ bool InterfaceManager::MenuModeHasFocus(UInt32 menuType)
14271427
return bMenuMode ? true : false;
14281428
}
14291429

1430+
UInt32 InterfaceManager::GetTopVisibleMenuID()
1431+
{
1432+
return ThisStdCall(0x0057CF60, this);
1433+
}
1434+
14301435
bool InterfaceManager::IsGameMode()
14311436
{
14321437
return !IsMenuMode();

obse/obse/GameAPI.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -489,7 +489,8 @@ class InterfaceManager
489489

490490
SceneGraph* unk000; // 000
491491
SceneGraph* unk004; // 004
492-
UInt32 unk008[(0x018 - 0x008) >> 2]; // 008
492+
UInt32 currentMode; // 008
493+
UInt32 unk00C[(0x018 - 0x00C) >> 2]; // 00C
493494
void* unk018; // 018 NiDirectionalLight *
494495
Tile * cursor; // 01C
495496
UInt32 unk020[(0x050 - 0x020) >> 2]; // 020
@@ -526,7 +527,7 @@ class InterfaceManager
526527
float GetDepth();
527528
bool MenuModeHasFocus(UInt32 menuType); // returns true if menuType is on top (has focus)
528529
bool IsGameMode();
529-
530+
UInt32 GetTopVisibleMenuID();
530531
static void ToggleDebugText();
531532

532533
};

obse/obse/GameObjects.h

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1224,6 +1224,30 @@ enum
12241224
class MagicProjectile : public MobileObject
12251225
{
12261226
public:
1227+
/*
1228+
.rdata:00A76488 dd offset nullsub_returnvVoid_1arg
1229+
.rdata:00A7648C dd offset nullsub_26
1230+
.rdata:00A76490 dd offset nullsub_returnVoid_2arg
1231+
.rdata:00A76494 dd offset MagicProjectile_NotDeleted
1232+
.rdata:00A76498 dd offset ?ClearComponentReferences@TESTexture@@UAEXXZ?
1233+
.rdata:00A7649C dd offset MagicProjectile_RemoveCaster
1234+
.rdata:00A764A0 dd offset sub_738500
1235+
.rdata:00A764A4 dd offset nullsub_returnTrue_0arg
1236+
*/
1237+
1238+
1239+
MagicProjectile();
1240+
~MagicProjectile();
1241+
virtual void __stdcall Unk81(int a1) = 0;
1242+
virtual void __stdcall Unk82(int a1, int a2, int a3, int a4, int a5, int a6) = 0;
1243+
virtual void __stdcall Unk83(int a1, int a2) = 0;
1244+
virtual void NotDeleted(void); //in Jroush IDB
1245+
virtual void Unk85(void) = 0;
1246+
virtual void RemoveCaster(MagicCaster* caster);
1247+
virtual void __stdcall Unk87(int a1, int a2) = 0;
1248+
virtual bool Unk88(void) = 0;
1249+
1250+
12271251
float speed; // 5C base speed * GMST fMagicProjectileBaseSpeed
12281252
float distanceTraveled; // 60 speed * elapsedTime while in flight
12291253
float elapsedTime; // 64 length of time projectile has existed
@@ -1232,6 +1256,9 @@ class MagicProjectile : public MobileObject
12321256
MagicItem * magicItem; // 6C can always cast to SpellItem? NO - can be EnchantmentItem for staves
12331257
UInt32 effectCode; // 70 i.e. 'SEFF'
12341258
EffectSetting * effectSetting; // 74
1259+
1260+
1261+
12351262
};
12361263

12371264
//90

obse_plugin_example/obse_plugin_example.vcxproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@
122122
<ClCompile Include="..\obse\obse\NiRTTI.cpp" />
123123
<ClCompile Include="..\obse\obse\Script.cpp" />
124124
<ClCompile Include="..\obse\obse\Utilities.cpp" />
125+
<ClCompile Include="..\obse\obse_common\SafeWrite.cpp" />
125126
<ClCompile Include="dllmain.c">
126127
<ForcedIncludeFiles Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
127128
</ForcedIncludeFiles>
@@ -147,6 +148,7 @@
147148
<ClInclude Include="..\obse\obse\PluginAPI.h" />
148149
<ClInclude Include="..\obse\obse\Script.h" />
149150
<ClInclude Include="..\obse\obse\Utilities.h" />
151+
<ClInclude Include="..\obse\obse_common\SafeWrite.h" />
150152
</ItemGroup>
151153
<ItemGroup>
152154
<None Include="..\obse\obse\GameRTTI_1_2_416.inl" />

obse_plugin_example/obse_plugin_example.vcxproj.filters

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@
5050
</ClCompile>
5151
<ClCompile Include="dllmain.c" />
5252
<ClCompile Include="main.cpp" />
53+
<ClCompile Include="..\obse\obse_common\SafeWrite.cpp">
54+
<Filter>obse</Filter>
55+
</ClCompile>
5356
</ItemGroup>
5457
<ItemGroup>
5558
<ClInclude Include="..\obse\obse\GameActorValues.h">
@@ -100,6 +103,9 @@
100103
<ClInclude Include="..\obse\obse\Utilities.h">
101104
<Filter>obse</Filter>
102105
</ClInclude>
106+
<ClInclude Include="..\obse\obse_common\SafeWrite.h">
107+
<Filter>obse</Filter>
108+
</ClInclude>
103109
</ItemGroup>
104110
<ItemGroup>
105111
<None Include="..\obse\obse\GameRTTI_1_2_416.inl">

0 commit comments

Comments
 (0)