22 #ifndef GRIM_LUABASE_H 23 #define GRIM_LUABASE_H 25 #include "common/str.h" 26 #include "common/list.h" 28 #include "engines/grim/color.h" 32 typedef uint32 lua_Object;
39 class PrimitiveObject;
41 class TextObjectDefaults;
42 class TextObjectCommon;
48 #define DECLARE_LUA_OPCODE(func) \ 50 inline static void static_##func() {\ 51 static_cast<LuaClass *>(LuaBase::instance())->func();\ 58 #define LUA_OPCODE(class, func) \ 69 void add(
float number);
72 void add(
const char *str);
79 void pushObjects()
const;
108 inline static LuaBase *instance() {
return s_instance; }
110 int dofile(
const char *filename);
112 virtual bool findCostume(lua_Object costumeObj,
Actor *actor,
Costume **costume);
113 virtual Common::String parseMsgText(
const char *msg,
char *msgId);
114 virtual void parseSayLineTable(lua_Object paramObj,
bool *background,
int *vol,
int *pan,
float *x,
float *y);
115 virtual void setTextObjectParams(
TextObjectCommon *textObject, lua_Object tableObj);
117 void update(
int frameTime,
int movieTime);
118 void setFrameTime(
float frameTime);
119 void setMovieTime(
float movieTime);
120 virtual void registerLua();
121 virtual void registerOpcodes();
122 virtual void loadSystemScript();
124 virtual void postRestoreHandle() { }
127 virtual void forceDemo();
134 bool callback(
const char *name);
141 bool callback(
const char *name,
const LuaObjects &objects);
144 bool getbool(
int num);
145 void pushbool(
bool val);
147 int getobject(lua_Object obj);
148 Actor *getactor(lua_Object obj);
149 Bitmap *getbitmap(lua_Object obj);
151 Font *getfont(lua_Object obj);
152 Color getcolor(lua_Object obj);
158 int _translationMode;
160 DECLARE_LUA_OPCODE(dummyHandler);
161 DECLARE_LUA_OPCODE(typeOverride);
162 DECLARE_LUA_OPCODE(concatFallback);
165 unsigned int _frameTimeCollection;
169 int refOldConcatFallback;
172 int refTextObjectFont;
173 int refTextObjectWidth;
174 int refTextObjectHeight;
175 int refTextObjectFGColor;
176 int refTextObjectBGColor;
177 int refTextObjectFXColor;
178 int refTextObjectHIColor;
179 int refTextObjectDuration;
180 int refTextObjectCenter;
181 int refTextObjectLJustify;
182 int refTextObjectRJustify;
183 int refTextObjectVolume;
184 int refTextObjectBackground;
185 int refTextObjectPan;
186 int refTextObjectLayer;
187 int refTextObjectCoords;
A list of arguments to be passed to a Lua function.
Definition: lua.h:67
Definition: objectstate.h:34
Definition: textobject.h:84
Definition: textobject.h:35
Definition: primitives.h:34
Actor represents a 3D character on screen.
Definition: actor.h:72