From 502d5c892c92b4a71eceae1d275032100d42dd23 Mon Sep 17 00:00:00 2001 From: Philipp Sehmisch Date: Mon, 19 May 2008 15:07:45 +0000 Subject: Implemented NPC names. Implemented the theoretical possibility to have named monsters along the way. Note that the syntax of the LUA functions for creating NPCs has changed. --- src/scripting/lua.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'src/scripting/lua.cpp') diff --git a/src/scripting/lua.cpp b/src/scripting/lua.cpp index a8663f75..9f160bca 100644 --- a/src/scripting/lua.cpp +++ b/src/scripting/lua.cpp @@ -68,6 +68,8 @@ class LuaScript: public Script void push(int); + void push(const std::string &); + void push(Thing *); int execute(); @@ -180,11 +182,11 @@ static int LuaNpc_Choice(lua_State *s) /** * Callback for creating a NPC on the current map with the current script. - * tmw.npc_create(int id, int x, int y): npc + * tmw.npc_create(string name, int id, int x, int y): npc */ static int LuaNpc_Create(lua_State *s) { - if (!lua_isnumber(s, 1) || !lua_isnumber(s, 2) || !lua_isnumber(s, 3)) + if (!lua_isstring(s, 1), !lua_isnumber(s, 2) || !lua_isnumber(s, 3) || !lua_isnumber(s, 4)) { raiseScriptError(s, "npc_create called with incorrect parameters."); return 0; @@ -192,7 +194,7 @@ static int LuaNpc_Create(lua_State *s) lua_pushlightuserdata(s, (void *)®istryKey); lua_gettable(s, LUA_REGISTRYINDEX); Script *t = static_cast