ScummVM API documentation
MTropolis Namespace Reference

Classes

class  ActionEvent
 
class  AliasModifier
 
struct  AngleMagVector
 
class  Asset
 
struct  AssetDefLoaderContext
 
class  AssetHooks
 
struct  AssetLoaderContext
 
class  AssetManagerInterface
 
class  AudioAsset
 
struct  AudioMetadata
 
class  AudioPlayer
 
class  AVIMovieAsset
 
class  BehaviorModifier
 
class  BooleanVariableModifier
 
class  BooleanVariableStorage
 
struct  BootConfiguration
 
class  BoundaryDetectionMessengerModifier
 
class  CachedAudio
 
class  CachedImage
 
class  CachedMToon
 
class  ChangeSceneModifier
 
struct  ChildLoaderContext
 
struct  ChildLoaderStack
 
class  CollisionDetectionMessengerModifier
 
struct  ColorRGB8
 
class  ColorTableAsset
 
class  ColorTableModifier
 
struct  CompiledCoroutine
 
class  CompoundVariableModifier
 
class  CompoundVarSaver
 
struct  CoroExecInstr
 
struct  CoroutineParamsBase
 
struct  CoroutineReturnValueRef
 
struct  CoroutineReturnValueRef< void >
 
struct  CoroutineReturnValueRefBase
 
struct  CoroutineRuntimeState
 
struct  CoroutineStackFrame2
 
class  CursorGraphic
 
class  CursorGraphicCollection
 
class  CursorModifierV1
 
class  Debuggable
 
class  Debugger
 
class  DebugInspector
 
class  DebugPrimaryTaskList
 
class  DragMotionModifier
 
struct  DragMotionProperties
 
struct  DynamicList
 
class  DynamicListContainer
 
class  DynamicListContainer< void >
 
class  DynamicListContainerBase
 
struct  DynamicListDefaultSetter
 
struct  DynamicListValueConverter
 
struct  DynamicListValueExporter
 
struct  DynamicListValueImporter
 
struct  DynamicValue
 
struct  DynamicValueSource
 
struct  DynamicValueWriteBoolHelper
 
struct  DynamicValueWriteDiscardHelper
 
struct  DynamicValueWriteFloatHelper
 
struct  DynamicValueWriteFuncHelper
 
struct  DynamicValueWriteIntegerHelper
 
struct  DynamicValueWriteInterface
 
class  DynamicValueWriteInterfaceGlue
 
struct  DynamicValueWriteObjectHelper
 
struct  DynamicValueWriteOrRefAttribFuncHelper
 
struct  DynamicValueWritePointHelper
 
struct  DynamicValueWriteProxy
 
struct  DynamicValueWriteProxyPOD
 
struct  DynamicValueWriteStringHelper
 
class  Element
 
class  ElementFactory
 
struct  ElementLoaderContext
 
class  ElementTransitionModifier
 
struct  Event
 
class  FloatingPointVariableModifier
 
class  FloatingPointVariableStorage
 
class  GraphicElement
 
class  GraphicModifier
 
struct  Hacks
 
struct  HighLevelSceneTransition
 
struct  IAutoSaveProvider
 
struct  IBoundaryDetector
 
struct  ICollider
 
struct  ICoroutineCompiler
 
struct  ICoroutineManager
 
struct  IDebuggable
 
struct  IDebugInspectionReport
 
class  IfMessengerModifier
 
struct  IInterfaceBase
 
struct  IKeyboardEventReceiver
 
struct  ILoadUIProvider
 
class  ImageAsset
 
class  ImageEffectModifier
 
class  ImageElement
 
struct  IMediaCueModifier
 
struct  IMessageConsumer
 
class  IMiniscriptInstructionParserFeedback
 
struct  IModifierContainer
 
class  IntegerRangeVariableModifier
 
class  IntegerRangeVariableStorage
 
class  IntegerVariableModifier
 
class  IntegerVariableStorage
 
struct  IntRange
 
struct  IPlayMediaSignalReceiver
 
struct  IPlugInModifierFactory
 
struct  IPlugInModifierFactoryAndDataFactory
 
struct  IPlugInModifierRegistrar
 
struct  IPostEffect
 
struct  ISaveReader
 
struct  ISaveUIProvider
 
struct  ISaveWriter
 
struct  ISegmentUnloadSignalReceiver
 
struct  IStructuralReferenceVisitor
 
class  KeyboardEventSignaller
 
class  KeyboardInputEvent
 
class  KeyboardMessengerModifier
 
class  KeyEventDispatch
 
struct  Label
 
struct  LowLevelSceneStateTransitionAction
 
class  MacCursorGraphic
 
struct  MacFontFormatting
 
struct  MacFormattingSpan
 
struct  MediaCueState
 
class  MessageDispatch
 
struct  MessageFlags
 
struct  MessageProperties
 
class  MessengerModifier
 
struct  MessengerSendSpec
 
class  MiniscriptInstruction
 
class  MiniscriptModifier
 
class  MiniscriptParser
 
class  MiniscriptProgram
 
class  MiniscriptReferences
 
struct  MiniscriptStackValue
 
class  MiniscriptThread
 
class  Modifier
 
struct  ModifierFlags
 
class  ModifierHooks
 
struct  ModifierLoaderContext
 
class  ModifierSaveLoad
 
class  MouseInputEvent
 
class  MovieAsset
 
class  MovieElement
 
class  MovieResizeFilter
 
struct  MToonAsset
 
class  MToonElement
 
struct  MToonMetadata
 
class  MTropolisEngine
 
struct  MTropolisGameDescription
 
class  NonVisualElement
 
class  Notification
 
class  ObjectLinkingScope
 
struct  ObjectParentChange
 
struct  ObjectReference
 
class  ObjectReferenceVariableModifierV1
 
class  ObjectReferenceVariableV1Storage
 
class  OSEvent
 
class  Palette
 
class  PathMotionModifier
 
class  PlayMediaSignaller
 
class  PlugIn
 
class  PlugInModifierFactory
 
struct  PlugInModifierLoaderContext
 
struct  Point16POD
 
class  PointVariableModifier
 
class  PointVariableStorage
 
class  Project
 
class  ProjectDescription
 
class  ProjectPersistentResource
 
class  ProjectPlugInRegistry
 
struct  ProjectPresentationSettings
 
struct  ProjectResources
 
class  ReturnModifier
 
class  Runtime
 
class  RuntimeObject
 
class  SaveAndRestoreModifier
 
class  SaveLoadHooks
 
class  SaveLoadMechanismHooks
 
struct  SceneTransitionEffect
 
class  SceneTransitionHooks
 
class  SceneTransitionModifier
 
class  ScheduledEvent
 
class  Scheduler
 
class  Section
 
struct  SegmentDescription
 
class  SegmentUnloadSignaller
 
class  SetModifier
 
class  SharedSceneModifier
 
struct  SIAssetFactory
 
struct  SIElementFactory
 
struct  SIModifierFactory
 
class  SimpleModifierContainer
 
class  SimpleMotionModifier
 
class  SoundEffectModifier
 
class  SoundElement
 
class  SoundFadeModifier
 
class  StringVariableModifier
 
class  StringVariableStorage
 
class  Structural
 
class  StructuralHooks
 
class  Subsection
 
class  SubtitleAssetMappingTable
 
class  SubtitleDisplayItem
 
class  SubtitleLineTable
 
class  SubtitleModifierMappingTable
 
class  SubtitlePlayer
 
class  SubtitleRenderer
 
class  SubtitleSpeakerTable
 
struct  SubtitleTables
 
class  SystemInterface
 
class  TextAsset
 
class  TextLabelElement
 
struct  TextStyleFlags
 
class  TextStyleModifier
 
class  TimerMessengerModifier
 
class  VariableModifier
 
class  VariableStorage
 
struct  VarReference
 
class  VectorMotionModifier
 
class  VectorVariableModifier
 
class  VectorVariableStorage
 
class  VirtualFileSystem
 
struct  VirtualFileSystemLayout
 
class  VisualElement
 
class  VisualElementRenderProperties
 
class  VisualElementTransitionProperties
 
struct  VolumeState
 
class  VThread
 
struct  VThreadFaultIdentifier
 
struct  VThreadFaultIdentifierSingleton
 
class  VThreadFunctionData
 
class  VThreadMethodData
 
class  VThreadStackChunk
 
struct  VThreadStackFrame
 
class  VThreadTaskData
 
class  WinCursorGraphic
 
class  Window
 
struct  WindowParameters
 
class  WorldManagerInterface
 

Typedefs

typedef CoroutineStackFrame2 *(* CoroutineFrameConstructor_t) (void *ptr, const CompiledCoroutine *compiledCoro, const CoroutineParamsBase &params, const CoroutineReturnValueRefBase &returnValueRef)
 
typedef void(* CoroutineGetFrameParametersFunction_t) (size_t &outSize, size_t &outAlignment)
 
typedef void(* CoroutineCompileFunction_t) (ICoroutineCompiler *compiler)
 
typedef VThreadState(* CoroutineFragmentFunction_t) (CoroutineRuntimeState &coroState)
 

Enumerations

enum  RuntimeVersion {
  kRuntimeVersion100, kRuntimeVersion110, kRuntimeVersion111, kRuntimeVersion112,
  kRuntimeVersion200
}
 
enum  CoroExecOp {
  Invalid = 0, Code, Jump, JumpIfFalse,
  EnterFunction, ExitFunction, Error, CheckMiniscript
}
 
enum  CoroOps {
  Invalid = 0, BeginFunction, EndFunction, IfCond,
  IfBody, Else, ElseIfCond, ElseIfBody,
  EndIf, WhileCond, WhileBody, EndWhile,
  ForNext, ForCond, ForBody, EndFor,
  Do, DoWhile, DoWhileCond, Return,
  Error, YieldToFunction, CheckMiniscript, Code
}
 
enum  SupportStatus { kSupportStatusNone, kSupportStatusPartial, kSupportStatusDone }
 
enum  DebugSeverity { kDebugSeverityInfo, kDebugSeverityWarning, kDebugSeverityError }
 
enum  DebuggerTool { kDebuggerToolSceneTree, kDebuggerToolInspector, kDebuggerToolStepThrough, kDebuggerToolCount }
 
enum  MTropolisGameID {
  GID_OBSIDIAN = 0, GID_LEARNING_MTROPOLIS = 1, GID_MTI = 2, GID_ALBERT1 = 3,
  GID_ALBERT2 = 4, GID_ALBERT3 = 5, GID_SPQR = 6, GID_STTGS = 7,
  GID_UNIT = 8, GID_MINDGYM = 9, GID_ARCHITECTURE = 10, GID_BEATRIX = 11,
  GID_WTIMPACT = 12, GID_WORLDBROKE = 13, GID_DILBERT = 14, GID_FREEWILLY = 15,
  GID_HERCULES = 16, GID_IDINO = 17, GID_IDOCTOR = 18, GID_DRAWMARVELWAY = 19,
  GID_FTTS = 20, GID_PURPLEMOON = 21, GID_CHOMP = 22, GID_CYBER24 = 23,
  GID_IVOCLAR = 24, GID_REALWILD = 25, GID_TELEMED = 26, GID_ANGELICA = 27,
  GID_BABE = 28, GID_BIOCELLEVO = 29, GID_EASYBAKE = 30, GID_FORGOTTEN = 31,
  GID_GREVEHOLM2 = 32, GID_ITACANTE = 33, GID_KINGOFDRAGONPASS = 34, GID_KS1ENG = 35,
  GID_MAISY = 36, GID_MSB_ANIMAL = 37, GID_MSB_BUGS = 38, GID_MSB_CONCERT = 39,
  GID_MSB_FLIGHT = 40, GID_MSB_MARS = 41, GID_MSB_VOLCANO = 42, GID_MSB_WHALES = 43,
  GID_MYKROPOLIS = 44, GID_NOTEBOOK = 45, GID_PFERDPONY = 46, GID_MIRODC10 = 47,
  GID_POSER3_SAMPLER_ZYGOTE = 48, GID_POSER3_ZYGOTE = 49, GID_WTEXTREME = 50, GID_C9SAMPLER = 51,
  GID_ADOBE24 = 52, GID_BYZANTINE = 53, GID_GENERIC = 99
}
 
enum  MTropolisGameBootID {
  MTBOOT_INVALID = 0, MTBOOT_USE_BOOT_SCRIPT, MTBOOT_OBSIDIAN_RETAIL_MAC_EN, MTBOOT_OBSIDIAN_RETAIL_MAC_JP,
  MTBOOT_OBSIDIAN_RETAIL_WIN_EN, MTBOOT_OBSIDIAN_RETAIL_WIN_DE_INSTALLED, MTBOOT_OBSIDIAN_RETAIL_WIN_DE_DISC, MTBOOT_OBSIDIAN_RETAIL_WIN_IT,
  MTBOOT_OBSIDIAN_DEMO_MAC_EN, MTBOOT_OBSIDIAN_DEMO_WIN_EN_1, MTBOOT_OBSIDIAN_DEMO_WIN_EN_2, MTBOOT_OBSIDIAN_DEMO_WIN_EN_3,
  MTBOOT_OBSIDIAN_DEMO_WIN_EN_4, MTBOOT_OBSIDIAN_DEMO_WIN_EN_5, MTBOOT_OBSIDIAN_DEMO_WIN_EN_6, MTBOOT_OBSIDIAN_DEMO_WIN_EN_7,
  MTBOOT_MTI_RETAIL_MAC, MTBOOT_MTI_RETAIL_WIN, MTBOOT_MTI_RETAIL_WIN_RU_INSTALLED, MTBOOT_MTI_RETAIL_WIN_RU_DISC,
  MTBOOT_MTI_DEMO_WIN, MTBOOT_ALBERT1_WIN_DE, MTBOOT_ALBERT2_WIN_DE, MTBOOT_ALBERT3_WIN_DE,
  MTBOOT_ALBERT1_WIN_EN, MTBOOT_ALBERT2_WIN_EN, MTBOOT_ALBERT3_WIN_EN, MTBOOT_ALBERT1_WIN_FR,
  MTBOOT_ALBERT2_WIN_FR, MTBOOT_ALBERT3_WIN_FR, MTBOOT_ALBERT1_WIN_NL, MTBOOT_ALBERT2_WIN_NL,
  MTBOOT_ALBERT3_WIN_NL, MTBOOT_ALBERT3_WIN_CA, MTBOOT_SPQR_RETAIL_WIN, MTBOOT_SPQR_RETAIL_MAC,
  MTBOOT_STTGS_RETAIL_WIN, MTBOOT_STTGS_DEMO_WIN, MTBOOT_UNIT_REBOOTED_WIN, MTBOOT_MINDGYM_WIN_EN,
  MTBOOT_MINDGYM_WIN_DE, MTBOOT_ARCHITECTURE_EN, MTBOOT_BEATRIX_EN, MTBOOT_BEATRIX_DEMO_EN,
  MTBOOT_WT_IMPACT_EN, MTBOOT_WORLDBROKE_EN, MTBOOT_IDINO_RETAIL_EN, MTBOOT_IDOCTOR_RETAIL_EN,
  MTBOOT_DILBERT_WIN_EN, MTBOOT_FREEWILLY_WIN_EN, MTBOOT_HERCULES_WIN_EN, MTBOOT_DRAWMARVELWAY_WIN_EN,
  MTBOOT_FTTS_WIN_EN, MTBOOT_PURPLEMOON_WIN_EN, MTBOOT_CHOMP_RETAIL_WIN_EN, MTBOOT_CHOMP_DEMO_WIN_EN,
  MTBOOT_CYBER24_WIN_EN, MTBOOT_IVOCLAR_WIN_EN, MTBOOT_REALWILD_WIN_EN, MTBOOT_TELEMED_WIN_EN,
  MTBOOT_ANGELICA_WIN_EN, MTBOOT_BABE_WIN_EN, MTBOOT_BIOCELLEVO_WIN_IT, MTBOOT_EASYBAKE_WIN_EN,
  MTBOOT_FORGOTTEN_WIN_EN, MTBOOT_GREVEHOLM2_WIN_SE, MTBOOT_ITACANTE_WIN_FR, MTBOOT_KINGOFDRAGONPASS_WIN_EN,
  MTBOOT_KS1ENG_WIN_EN, MTBOOT_MAISY_WIN_EN, MTBOOT_MSB_ANIMAL_WIN_EN, MTBOOT_MSB_BUGS_WIN_EN,
  MTBOOT_MSB_CONCERT_WIN_EN, MTBOOT_MSB_FLIGHT_WIN_EN, MTBOOT_MSB_MARS_WIN_EN, MTBOOT_MSB_VOLCANO_WIN_EN,
  MTBOOT_MSB_WHALES_WIN_EN, MTBOOT_MYKROPOLIS_WIN_DE, MTBOOT_NOTEBOOK_WIN_EN, MTBOOT_PFERDPONY_WIN_DE,
  MTBOOT_MIRODC10_WIN_DE, MTBOOT_MIRODC10_WIN_EN, MTBOOT_POSER3_SAMPLER_ZYGOTE_WIN_EN, MTBOOT_POSER3_ZYGOTE_WIN_EN,
  MTBOOT_WT_EXTREME_WIN_EN, MTBOOT_C9SAMPLER_WIN_EN, MTBOOT_ADOBE24_WIN_EN, MTBOOT_BYZANTINE_DEMO_WIN_EN
}
 
enum  MTGameFlag { MTGF_WANT_MPEG_VIDEO = (1 << 0), MTGF_WANT_MPEG_AUDIO = (1 << 1) }
 
enum  MediaState { kMediaStatePlaying, kMediaStatePlayingLastFrame, kMediaStateStopped, kMediaStatePaused }
 
enum  MiniscriptInstructionOutcome { kMiniscriptInstructionOutcomeContinue, kMiniscriptInstructionOutcomeYieldToVThread, kMiniscriptInstructionOutcomeFailed }
 
enum  TextAlignment { kTextAlignmentLeft, kTextAlignmentCenter, kTextAlignmentRight }
 
enum  ColorDepthMode {
  kColorDepthMode1Bit, kColorDepthMode2Bit, kColorDepthMode4Bit, kColorDepthMode8Bit,
  kColorDepthMode16Bit, kColorDepthMode32Bit, kColorDepthModeCount, kColorDepthModeInvalid
}
 
enum  ConstraintDirection { kConstraintDirectionNone, kConstraintDirectionHorizontal, kConstraintDirectionVertical }
 
enum  MouseInteractivityTestType { kMouseInteractivityTestAnything, kMouseInteractivityTestMouseClick }
 
enum  MessageDestination {
  kMessageDestNone = 0, kMessageDestSharedScene = 0x65, kMessageDestScene = 0x66, kMessageDestSection = 0x67,
  kMessageDestProject = 0x68, kMessageDestActiveScene = 0x69, kMessageDestElementsParent = 0x6a, kMessageDestChildren = 0x6b,
  kMessageDestModifiersParent = 0x6c, kMessageDestSubsection = 0x6d, kMessageDestElement = 0xc9, kMessageDestSourcesParent = 0xcf,
  kMessageDestBehavior = 0xd4, kMessageDestNextElement = 0xd1, kMessageDestPrevElement = 0xd2, kMessageDestBehaviorsParent = 0xd3
}
 
enum  ProjectPlatform { kProjectPlatformUnknown, kProjectPlatformWindows, kProjectPlatformMacintosh }
 
enum  OSEventType {
  kOSEventTypeMouseDown, kOSEventTypeMouseUp, kOSEventTypeMouseMove, kOSEventTypeKeyboard,
  kOSEventTypeAction
}
 
enum  AssetType {
  kAssetTypeNone, kAssetTypeMovie, kAssetTypeAudio, kAssetTypeColorTable,
  kAssetTypeImage, kAssetTypeText, kAssetTypeMToon, kAssetTypeAVIMovie
}
 
enum  VThreadState { kVThreadReturn, kVThreadSuspended, kVThreadError }
 

Functions

SIAssetFactorygetAssetFactoryForDataObjectType (Data::DataObjectTypes::DataObjectType dataObjectType)
 
BootConfiguration bootProject (const MTropolisGameDescription &gameDesc)
 
void bootAddSearchPaths (const Common::FSNode &gameDataDir, const MTropolisGameDescription &gameDesc)
 
SIElementFactorygetElementFactoryForDataObjectType (Data::DataObjectTypes::DataObjectType dataObjectType)
 
bool miniscriptEvaluateTruth (const DynamicValue &value)
 
MiniscriptInstructionOutcome miniscriptIgnoreFailure (MiniscriptInstructionOutcome outcome)
 
SIModifierFactorygetModifierFactoryForDataObjectType (Data::DataObjectTypes::DataObjectType dataObjectType)
 
char invariantToLower (char c)
 
Common::String toCaseInsensitive (const Common::String &str)
 
bool caseInsensitiveEqual (const Common::String &str1, const Common::String &str2)
 
size_t caseInsensitiveFind (const Common::String &stringToSearch, const Common::String &stringToFind)
 
MiniscriptInstructionOutcome pointWriteRefAttrib (Common::Point &point, MiniscriptThread *thread, DynamicValueWriteProxy &proxy, const Common::String &attrib)
 
Common::String pointToString (const Common::Point &point)
 

Detailed Description

This is the namespace of the mTropolis engine.

Status of this engine:

Supports some games, tends to be buggy outside of those. Requires a boot list to start a game due to complex installer configurations.

Games using this engine:

  • Obsidian
  • Muppet Treasure Island