mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-20 23:01:16 +00:00
Clean up, document, add BETA10 references
This commit is contained in:
parent
e8ee468f00
commit
f9b14f0fbc
@ -35,7 +35,7 @@ class Jetski : public IslePathActor {
|
||||
|
||||
void ActivateSceneActions();
|
||||
|
||||
MxS16 GetUnknown0x160() { return m_unk0x160; }
|
||||
MxS16 GetUnknown0x160() { return m_jetskiDashboardStreamId; }
|
||||
|
||||
// SYNTHETIC: LEGO1 0x1007e5c0
|
||||
// Jetski::`scalar deleting destructor'
|
||||
@ -43,7 +43,7 @@ class Jetski : public IslePathActor {
|
||||
private:
|
||||
void RemoveFromWorld();
|
||||
|
||||
MxS16 m_unk0x160; // 0x160
|
||||
MxS16 m_jetskiDashboardStreamId; // 0x160
|
||||
};
|
||||
|
||||
#endif // JETSKI_H
|
||||
|
||||
@ -58,6 +58,7 @@ class LegoActor : public LegoEntity {
|
||||
virtual MxFloat VTable0x5c() { return m_unk0x70; } // vtable+0x5c
|
||||
|
||||
// FUNCTION: LEGO1 0x10002d00
|
||||
// FUNCTION: BETA10 0x1000f4a0
|
||||
virtual MxU8 GetActorId() { return m_actorId; } // vtable+0x60
|
||||
|
||||
// FUNCTION: LEGO1 0x10002d10
|
||||
|
||||
@ -199,6 +199,7 @@ class LegoGameState {
|
||||
void SwitchArea(Area p_area);
|
||||
void Init();
|
||||
|
||||
// FUNCTION: BETA10 0x10083ff5
|
||||
MxU8 GetActorId() { return m_actorId; }
|
||||
|
||||
// FUNCTION: BETA10 0x1004a2d0
|
||||
|
||||
@ -71,6 +71,7 @@ MxLong IslePathActor::Notify(MxParam& p_param)
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1001a350
|
||||
// FUNCTION: BETA10 0x100365ad
|
||||
void IslePathActor::Enter()
|
||||
{
|
||||
m_roi->SetVisibility(FALSE);
|
||||
|
||||
@ -80,6 +80,7 @@ void Jetski::Exit()
|
||||
// FUNCTION: BETA10 0x10037621
|
||||
MxLong Jetski::HandleClick()
|
||||
{
|
||||
#ifndef BETA10
|
||||
if (!FUN_1003ef60()) {
|
||||
return 1;
|
||||
}
|
||||
@ -92,27 +93,41 @@ MxLong Jetski::HandleClick()
|
||||
if (GameState()->GetActorId() != UserActor()->GetActorId()) {
|
||||
((IslePathActor*) UserActor())->Exit();
|
||||
}
|
||||
#endif
|
||||
|
||||
MxS32 local8 = DuneBuggy::GetColorOffset(g_varJSWNSHY5);
|
||||
m_unk0x160 = 10 * (local8 + 3);
|
||||
MxS32 local1c = DuneBuggy::GetColorOffset(g_varJSFRNTY5);
|
||||
m_unk0x160 += local1c;
|
||||
// Selects the windshield from `IsleScript::c_JetskiDashboard11_Bitmap` (=41)
|
||||
// to `IsleScript::c_JetskiDashboard66_Bitmap` based on the user's color selection
|
||||
MxS32 colorOffset = DuneBuggy::GetColorOffset(g_varJSWNSHY5);
|
||||
m_jetskiDashboardStreamId = 10 * (colorOffset + 3);
|
||||
colorOffset = DuneBuggy::GetColorOffset(g_varJSFRNTY5);
|
||||
m_jetskiDashboardStreamId += colorOffset;
|
||||
|
||||
InvokeAction(Extra::ActionType::e_start, *g_isleScript, m_unk0x160, NULL);
|
||||
InvokeAction(Extra::ActionType::e_start, *g_isleScript, m_jetskiDashboardStreamId, NULL);
|
||||
InvokeAction(Extra::ActionType::e_start, *g_isleScript, IsleScript::c_JetskiDashboard, NULL);
|
||||
|
||||
#ifdef BETA10
|
||||
if (UserActor()->GetActorId() != GameState()->GetActorId()) {
|
||||
((IslePathActor*)UserActor())->Exit();
|
||||
}
|
||||
Enter();
|
||||
ControlManager()->Register(this);
|
||||
PlayCamAnim(this, FALSE, 0x44, TRUE);
|
||||
#else
|
||||
GetCurrentAction().SetObjectId(-1);
|
||||
|
||||
AnimationManager()->FUN_1005f6d0(FALSE);
|
||||
AnimationManager()->FUN_10064670(NULL);
|
||||
Enter();
|
||||
ControlManager()->Register(this);
|
||||
#endif
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1007e880
|
||||
void Jetski::RemoveFromWorld()
|
||||
{
|
||||
RemoveFromCurrentWorld(*g_isleScript, m_unk0x160);
|
||||
RemoveFromCurrentWorld(*g_isleScript, m_jetskiDashboardStreamId);
|
||||
RemoveFromCurrentWorld(*g_isleScript, IsleScript::c_JetskiArms_Ctl);
|
||||
RemoveFromCurrentWorld(*g_isleScript, IsleScript::c_JetskiInfo_Ctl);
|
||||
RemoveFromCurrentWorld(*g_isleScript, IsleScript::c_JetskiSpeedMeter);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user