summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/luadgn.cc
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-11-23 12:34:08 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-11-23 12:34:08 +0000
commit7bb02de9ea841f515a3a037435c07099f5165aea (patch)
treeec617828ce633ce96ce8aac731b6dd6e9d25439f /crawl-ref/source/luadgn.cc
parentb51b5a77fc118319d78241686846b3e42b660e6c (diff)
downloadcrawl-ref-7bb02de9ea841f515a3a037435c07099f5165aea.tar.gz
crawl-ref-7bb02de9ea841f515a3a037435c07099f5165aea.zip
Lua functions for FLOORCOL and ROCKCOL are now named floorcol() and rockcol() instead of floor_colour and rock_colour, to match the convention for other .des headers (dpeg).
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7547 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/luadgn.cc')
-rw-r--r--crawl-ref/source/luadgn.cc88
1 files changed, 46 insertions, 42 deletions
diff --git a/crawl-ref/source/luadgn.cc b/crawl-ref/source/luadgn.cc
index fc5161071c..229fc9946d 100644
--- a/crawl-ref/source/luadgn.cc
+++ b/crawl-ref/source/luadgn.cc
@@ -1017,67 +1017,71 @@ static int dgn_load_des_file(lua_State *ls)
return (0);
}
-static int dgn_floor_colour(lua_State *ls)
+static int dgn_floorcol(lua_State *ls)
{
MAP(ls, 1, map);
- const char *s = luaL_checkstring(ls, 2);
- int colour = str_to_colour(s);
-
- if (colour < 0 || colour == BLACK)
+ if (!lua_isnone(ls, 2))
{
- std::string error;
+ const char *s = luaL_checkstring(ls, 2);
+ int colour = str_to_colour(s);
- if (colour == BLACK)
- {
- error = "Can't set floor to black.";
- }
- else
+ if (colour < 0 || colour == BLACK)
{
- error = "No such colour as '";
- error += s;
- error += "'";
- }
+ std::string error;
- luaL_argerror(ls, 2, error.c_str());
+ if (colour == BLACK)
+ {
+ error = "Can't set floor to black.";
+ }
+ else
+ {
+ error = "No such colour as '";
+ error += s;
+ error += "'";
+ }
- return (0);
- }
+ luaL_argerror(ls, 2, error.c_str());
- map->floor_colour = (unsigned char) colour;
- return (0);
+ return (0);
+ }
+ map->floor_colour = (unsigned char) colour;
+ }
+ PLUARET(string, colour_to_str(map->floor_colour).c_str());
}
-static int dgn_rock_colour(lua_State *ls)
+static int dgn_rockcol(lua_State *ls)
{
MAP(ls, 1, map);
- const char *s = luaL_checkstring(ls, 2);
- int colour = str_to_colour(s);
-
- if (colour < 0 || colour == BLACK)
+ if (!lua_isnone(ls, 2))
{
- std::string error;
+ const char *s = luaL_checkstring(ls, 2);
+ int colour = str_to_colour(s);
- if (colour == BLACK)
- {
- error = "Can't set rock to black.";
- }
- else
+ if (colour < 0 || colour == BLACK)
{
- error = "No such colour as '";
- error += s;
- error += "'";
- }
+ std::string error;
- luaL_argerror(ls, 2, error.c_str());
+ if (colour == BLACK)
+ {
+ error = "Can't set rock to black.";
+ }
+ else
+ {
+ error = "No such colour as '";
+ error += s;
+ error += "'";
+ }
- return (0);
- }
+ luaL_argerror(ls, 2, error.c_str());
- map->rock_colour = (unsigned char) colour;
+ return (0);
+ }
- return (0);
+ map->rock_colour = (unsigned char) colour;
+ }
+ PLUARET(string, colour_to_str(map->rock_colour).c_str());
}
static int dgn_get_floor_colour(lua_State *ls)
@@ -2099,8 +2103,8 @@ static const struct luaL_reg dgn_lib[] =
{ "subst", dgn_subst },
{ "nsubst", dgn_nsubst },
{ "colour", dgn_colour },
- { "floor_colour", dgn_floor_colour},
- { "rock_colour", dgn_rock_colour},
+ { "floorcol", dgn_floorcol},
+ { "rockcol", dgn_rockcol},
{ "subst_remove", dgn_subst_remove },
{ "map", dgn_map },
{ "mons", dgn_mons },