28 #include "engines/wintermute/base/base_scriptable.h" 29 #include "engines/wintermute/base/scriptables/script_value.h" 30 #include "engines/wintermute/base/scriptables/script_stack.h" 32 #ifndef WINTERMUTE_PLUGINS_H 33 #define WINTERMUTE_PLUGINS_H 38 BaseScriptable *makeSXSteamAPI(BaseGame *inGame, ScStack *stack);
39 BaseScriptable *makeSXWMEGalaxyAPI(BaseGame *inGame, ScStack *stack);
40 BaseScriptable *makeSX3fStatistics(BaseGame *inGame, ScStack *stack);
41 BaseScriptable *makeSXCommandLineHelper(BaseGame *inGame, ScStack *stack);
42 BaseScriptable *makeSXSample(BaseGame *inGame, ScStack *stack);
43 BaseScriptable *makeSXVlink(BaseGame *inGame, ScStack *stack);
44 BaseScriptable *makeSXBlackAndWhite(BaseGame *inGame, ScStack *stack);
45 BaseScriptable *makeSXShadowManager(BaseGame *inGame, ScStack *stack);
46 BaseScriptable *makeSXDisplacement(BaseGame *inGame, ScStack *stack);
48 bool EmulatePluginCall(BaseGame *inGame, ScStack *stack, ScStack *thisStack,
char *name) {
54 if (strcmp(name,
"SteamAPI") == 0) {
55 thisObj = thisStack->getTop();
57 thisObj->setNative(makeSXSteamAPI(inGame, stack));
66 else if (strcmp(name,
"WMEGalaxyAPI") == 0) {
67 thisObj = thisStack->getTop();
69 thisObj->setNative(makeSXWMEGalaxyAPI(inGame, stack));
78 else if (strcmp(name,
"Statistics") == 0) {
79 thisObj = thisStack->getTop();
81 thisObj->setNative(makeSX3fStatistics(inGame, stack));
90 else if (strcmp(name,
"CommandLineHelper") == 0) {
91 thisObj = thisStack->getTop();
93 thisObj->setNative(makeSXCommandLineHelper(inGame, stack));
102 else if (strcmp(name,
"Sample") == 0) {
103 thisObj = thisStack->getTop();
105 thisObj->setNative(makeSXSample(inGame, stack));
114 else if (strcmp(name,
"Displacement") == 0) {
115 thisObj = thisStack->getTop();
117 thisObj->setNative(makeSXDisplacement(inGame, stack));
126 else if (strcmp(name,
"BinkVideo") == 0) {
127 thisObj = thisStack->getTop();
129 thisObj->setNative(makeSXVlink(inGame, stack));
139 else if (strcmp(name,
"BlackAndWhite") == 0) {
140 thisObj = thisStack->getTop();
142 thisObj->setNative(makeSXBlackAndWhite(inGame, stack));
151 else if (strcmp(name,
"ShadowManager") == 0) {
152 thisObj = thisStack->getTop();
154 thisObj->setNative(makeSXShadowManager(inGame, stack));
161 return STATUS_FAILED;
Definition: achievements_tables.h:27