TrustedUser
2,147
edits
(→Steps: Update section on steps required for adding a new engine) |
m (Text replacement - "<source lang=" to "<syntaxhighlight lang=") |
||
(5 intermediate revisions by 4 users not shown) | |||
Line 115: | Line 115: | ||
=== Example: engines/quux/quux.h === | === Example: engines/quux/quux.h === | ||
< | <syntaxhighlight lang="cpp"> | ||
#ifndef QUUX_H | #ifndef QUUX_H | ||
#define QUUX_H | #define QUUX_H | ||
Line 159: | Line 159: | ||
#endif | #endif | ||
</ | </syntaxhighlight> | ||
=== Example: engines/quux/quux.cpp === | === Example: engines/quux/quux.cpp === | ||
< | <syntaxhighlight lang="cpp"> | ||
#include "common/scummsys.h" | #include "common/scummsys.h" | ||
Line 169: | Line 169: | ||
#include "common/debug-channels.h" | #include "common/debug-channels.h" | ||
#include "common/error.h" | #include "common/error.h" | ||
#include " | #include "gui/EventRecorder.h" | ||
#include "common/file.h" | #include "common/file.h" | ||
#include "common/fs.h" | #include "common/fs.h" | ||
Line 180: | Line 180: | ||
QuuxEngine::QuuxEngine(OSystem *syst) | QuuxEngine::QuuxEngine(OSystem *syst) | ||
: Engine(syst) { | : Engine(syst), _console(nullptr) { | ||
// Put your engine in a sane state, but do nothing big yet; | // Put your engine in a sane state, but do nothing big yet; | ||
// in particular, do not load data from files; rather, if you | // in particular, do not load data from files; rather, if you | ||
Line 250: | Line 250: | ||
} // End of namespace Quux | } // End of namespace Quux | ||
</ | </syntaxhighlight> | ||
=== Example: engines/quux/detection.cpp === | === Example: engines/quux/detection.cpp === | ||
The following example implements a custom MetaEngine instead of using the AdvancedMetaEngine. | The following example implements a custom MetaEngine instead of using the AdvancedMetaEngine. | ||
< | <syntaxhighlight lang="cpp"> | ||
#include "quux/quux.h" | #include "quux/quux.h" | ||
Line 351: | Line 351: | ||
REGISTER_PLUGIN_STATIC(QUUX, PLUGIN_TYPE_ENGINE, QuuxMetaEngine); | REGISTER_PLUGIN_STATIC(QUUX, PLUGIN_TYPE_ENGINE, QuuxMetaEngine); | ||
#endif | #endif | ||
</ | </syntaxhighlight> | ||
=== Example: engines/quux/module.mk === | === Example: engines/quux/module.mk === | ||
< | <syntaxhighlight lang="make"> | ||
MODULE := engines/quux | MODULE := engines/quux | ||
Line 371: | Line 371: | ||
# Include common rules | # Include common rules | ||
include $(srcdir)/rules.mk | include $(srcdir)/rules.mk | ||
</ | </syntaxhighlight> | ||
=== Example: engines/quux/configure.engine === | |||
<syntaxhighlight lang="bash"> | |||
# This file is included from the main "configure" script | |||
# add_engine [name] [desc] [build-by-default] [subengines] [base games] [deps] | |||
add_engine quux "Quux" no | |||
</syntaxhighlight> |