mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-24 17:04:17 +00:00
PresenterNameDispatch (#137)
* PresenterNameDispatch * Use reference for PresenterNameDispatch param - fix or add const markers so we can use a const reference
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
#include "mxautolocker.h"
|
||||
#include "mxparam.h"
|
||||
#include "legoomni.h"
|
||||
#include "mxdsanim.h"
|
||||
#include "mxdssound.h"
|
||||
#include <string.h>
|
||||
|
||||
#include "decomp.h"
|
||||
@@ -155,6 +157,63 @@ void MxPresenter::Enable(MxBool p_enable)
|
||||
}
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100b5310
|
||||
char *PresenterNameDispatch(const MxDSAction &p_action)
|
||||
{
|
||||
char *name = p_action.GetSourceName();
|
||||
MxS32 format;
|
||||
|
||||
if (!name || strlen(name) == 0) {
|
||||
switch (p_action.GetType()) {
|
||||
case MxDSType_Anim:
|
||||
format = ((MxDSAnim&)p_action).GetMediaFormat();
|
||||
switch (format) {
|
||||
case FOURCC(' ', 'F', 'L', 'C'):
|
||||
name = !p_action.IsLooping() ?
|
||||
"MxFlcPresenter" :
|
||||
"MxLoopingFlcPresenter";
|
||||
break;
|
||||
case FOURCC(' ', 'S', 'M', 'K'):
|
||||
name = !p_action.IsLooping() ?
|
||||
"MxSmkPresenter" :
|
||||
"MxLoopingSmkPresenter";
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case MxDSType_Sound:
|
||||
format = ((MxDSSound&)p_action).GetMediaFormat();
|
||||
switch(format) {
|
||||
case FOURCC(' ', 'M', 'I', 'D'):
|
||||
name = !p_action.IsLooping() ?
|
||||
"MxMIDIPresenter" :
|
||||
"MxLoopingMIDIPresenter";
|
||||
break;
|
||||
case FOURCC(' ', 'W', 'A', 'V'):
|
||||
name = "MxWavePresenter";
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case MxDSType_SerialAction:
|
||||
case MxDSType_ParallelAction:
|
||||
case MxDSType_SelectAction:
|
||||
name = "MxCompositePresenter";
|
||||
break;
|
||||
|
||||
case MxDSType_Event:
|
||||
name = "MxEventPresenter";
|
||||
break;
|
||||
|
||||
case MxDSType_Still:
|
||||
name = "MxStillPresenter";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return name;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100b54c0
|
||||
MxBool MxPresenter::IsEnabled()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user