diff options
Diffstat (limited to 'crawl-ref/source/l_view.cc')
-rw-r--r-- | crawl-ref/source/l_view.cc | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/crawl-ref/source/l_view.cc b/crawl-ref/source/l_view.cc new file mode 100644 index 0000000000..23175d3670 --- /dev/null +++ b/crawl-ref/source/l_view.cc @@ -0,0 +1,37 @@ +/* + * File: l_view.cc + * Summary: User interaction with env.show. + */ + +#include "AppHdr.h" + +#include "l_libs.h" + +#include "cluautil.h" +#include "env.h" +#include "l_defs.h" + +coord_def player2show(const coord_def &s) +{ + return (s + coord_def(ENV_SHOW_OFFSET, ENV_SHOW_OFFSET)); +} + +LUAFN(view_feature_at) +{ + COORDSHOW(s, 1, 2) + const coord_def p = player2show(s); + lua_pushnumber(ls, env.show(p)); + return (1); +} + +static const struct luaL_reg view_lib[] = +{ + { "feature_at", view_feature_at }, + + { NULL, NULL } +}; + +void cluaopen_view(lua_State *ls) +{ + luaL_openlib(ls, "view", view_lib, 0); +} |