mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-23 08:11:16 +00:00
Implement start/stop timer
This commit is contained in:
parent
5164ef1a54
commit
34dfe9a794
@ -104,7 +104,7 @@ void IsleApp::Close()
|
||||
Lego()->RemoveWorld(ds.GetAtomId(), ds.GetObjectId());
|
||||
Lego()->DeleteObject(ds);
|
||||
TransitionManager()->SetWaitIndicator(NULL);
|
||||
Lego()->vtable0x3c();
|
||||
Lego()->StopTimer();
|
||||
|
||||
MxLong lVar8;
|
||||
do {
|
||||
@ -243,7 +243,7 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
|
||||
g_reqEnableRMDevice = 0;
|
||||
VideoManager()->EnableRMDevice();
|
||||
g_rmDisabled = 0;
|
||||
Lego()->vtable0x3c();
|
||||
Lego()->StopTimer();
|
||||
}
|
||||
|
||||
if (g_closed) {
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
#include "mxbackgroundaudiomanager.h"
|
||||
#include "mxdsfile.h"
|
||||
#include "legogamestate.h"
|
||||
#include "legoutil.h"
|
||||
|
||||
// 0x100f4588
|
||||
char *g_nocdSourceName = NULL;
|
||||
@ -307,14 +308,18 @@ void LegoOmni::NotifyCurrentEntity()
|
||||
// FIXME: Stub
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x1005b640
|
||||
void LegoOmni::StartTimer()
|
||||
{
|
||||
// FIXME: Stub
|
||||
MxOmni::StartTimer();
|
||||
SetAppCursor(2);
|
||||
}
|
||||
|
||||
void LegoOmni::vtable0x3c()
|
||||
// OFFSET: LEGO1 0x1005b650
|
||||
void LegoOmni::StopTimer()
|
||||
{
|
||||
// FIXME: Stub
|
||||
MxOmni::StopTimer();
|
||||
SetAppCursor(0);
|
||||
}
|
||||
|
||||
MxBool LegoOmni::vtable40()
|
||||
|
||||
@ -61,7 +61,7 @@ class LegoOmni : public MxOmni
|
||||
virtual int vtable0x30(char*, int, MxCore*) override;
|
||||
virtual void NotifyCurrentEntity() override;
|
||||
virtual void StartTimer() override;
|
||||
virtual void vtable0x3c() override;
|
||||
virtual void StopTimer() override;
|
||||
virtual MxBool vtable40();
|
||||
|
||||
LegoVideoManager *GetVideoManager() { return (LegoVideoManager *) m_videoManager; }
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
|
||||
#include "mxatomidcounter.h"
|
||||
#include "mxeventmanager.h"
|
||||
#include "mxmusicmanager.h"
|
||||
#include "mxmusicmanager.h"
|
||||
#include "mxnotificationmanager.h"
|
||||
#include "mxobjectfactory.h"
|
||||
#include "mxomnicreateparam.h"
|
||||
@ -51,7 +51,7 @@ void MxOmni::Init()
|
||||
m_timer = NULL;
|
||||
m_streamer = NULL;
|
||||
m_atomIdCounterSet = NULL;
|
||||
m_unk64 = NULL;
|
||||
m_timerRunning = NULL;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100b0090
|
||||
@ -98,16 +98,26 @@ void MxOmni::NotifyCurrentEntity()
|
||||
// TODO
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100b09d0 STUB
|
||||
// OFFSET: LEGO1 0x100b09d0
|
||||
void MxOmni::StartTimer()
|
||||
{
|
||||
// TODO
|
||||
if (m_timerRunning == FALSE && m_timer != NULL && m_soundManager != NULL)
|
||||
{
|
||||
m_timer->Start();
|
||||
m_soundManager->vtable0x34();
|
||||
m_timerRunning = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100b0a00 STUB
|
||||
void MxOmni::vtable0x3c()
|
||||
// OFFSET: LEGO1 0x100b0a00
|
||||
void MxOmni::StopTimer()
|
||||
{
|
||||
// TODO
|
||||
if (m_timerRunning != FALSE && m_timer != NULL && m_soundManager != NULL)
|
||||
{
|
||||
m_timer->Stop();
|
||||
m_soundManager->vtable0x38();
|
||||
m_timerRunning = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100b0690
|
||||
|
||||
@ -47,7 +47,7 @@ class MxOmni : public MxCore
|
||||
virtual int vtable0x30(char*, int, MxCore*); // vtable+30
|
||||
virtual void NotifyCurrentEntity(); // vtable+34
|
||||
virtual void StartTimer(); // vtable+38
|
||||
virtual void vtable0x3c(); // vtable+3c
|
||||
virtual void StopTimer(); // vtable+3c
|
||||
static void SetInstance(MxOmni* instance);
|
||||
HWND GetWindowHandle() const { return this->m_windowHandle; }
|
||||
MxObjectFactory* GetObjectFactory() const { return this->m_objectFactory; }
|
||||
@ -81,7 +81,7 @@ class MxOmni : public MxCore
|
||||
|
||||
MxCriticalSection m_criticalsection; // 0x48
|
||||
|
||||
unsigned char m_unk64; // 0x64
|
||||
MxBool m_timerRunning; // 0x64
|
||||
};
|
||||
__declspec(dllexport) MxTickleManager * TickleManager();
|
||||
__declspec(dllexport) MxTimer * Timer();
|
||||
|
||||
@ -46,4 +46,23 @@ void MxSoundManager::Destroy(MxBool p_param)
|
||||
if (!p_param) {
|
||||
MxAudioManager::Destroy();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100ae8b0
|
||||
MxResult MxSoundManager::StartDirectSound(undefined4 p_unknown1, MxBool p_unknown2)
|
||||
{
|
||||
// TODO STUB
|
||||
return FAILURE;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100aed10 STUB
|
||||
void MxSoundManager::vtable0x34()
|
||||
{
|
||||
// TODO STUB
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100aee10 STUB
|
||||
void MxSoundManager::vtable0x38()
|
||||
{
|
||||
// TODO STUB
|
||||
}
|
||||
|
||||
@ -14,6 +14,10 @@ class MxSoundManager : public MxAudioManager
|
||||
MxSoundManager();
|
||||
virtual ~MxSoundManager() override; // vtable+0x0
|
||||
|
||||
virtual MxResult StartDirectSound(undefined4 p_unknown1, MxBool p_unknown2); //vtable+0x30
|
||||
virtual void vtable0x34(); // vtable+0x34
|
||||
virtual void vtable0x38(); // vtable+0x38
|
||||
|
||||
private:
|
||||
void Init();
|
||||
void Destroy(MxBool);
|
||||
|
||||
264
LEGO1PROGRESS.HTML
Normal file
264
LEGO1PROGRESS.HTML
Normal file
File diff suppressed because one or more lines are too long
119
LEGO1PROGRESS.SVG
Normal file
119
LEGO1PROGRESS.SVG
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 13 KiB |
Loading…
Reference in New Issue
Block a user