diff options
author | Jude Brown <bookofjude@users.sourceforge.net> | 2010-01-17 15:29:52 +1000 |
---|---|---|
committer | Jude Brown <bookofjude@users.sourceforge.net> | 2010-01-17 15:38:52 +1000 |
commit | c4246fc216beca0282bf281274a3756a10086f87 (patch) | |
tree | 768ca84ef7c18324a23319797f2a0716cbf634a2 /crawl-ref/source/fprop.cc | |
parent | 34d58cf8983364cfc3dc71d14a552e33ff087b5f (diff) | |
download | crawl-ref-c4246fc216beca0282bf281274a3756a10086f87.tar.gz crawl-ref-c4246fc216beca0282bf281274a3756a10086f87.zip |
Code to alter/check feature properties in Lua.
This commit moves str_to_fprop from initfile.cc to fprop.cc. It also
introduces two new dungeon Lua wrappers: fprop_changed(x, y, fprop),
and fprop_at(x, y, fprop).
fprop_at(x, y, fprop) will return testbits(coord_def(x, y), fprop).
fprop_changed will either add the fprop to that location, or if it
already exists there, it will remove it from that location. It will
returrn a boolean value of true if it altered the location, and false if
it did nothing.
Diffstat (limited to 'crawl-ref/source/fprop.cc')
-rw-r--r-- | crawl-ref/source/fprop.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/crawl-ref/source/fprop.cc b/crawl-ref/source/fprop.cc index 50023409d0..5ab09c5279 100644 --- a/crawl-ref/source/fprop.cc +++ b/crawl-ref/source/fprop.cc @@ -23,3 +23,21 @@ bool is_bloodcovered(const coord_def& p) { return (testbits(env.pgrid(p), FPROP_BLOODY)); } + +int str_to_fprop ( const std::string &str) +{ + if (str == "bloody") + return (FPROP_BLOODY); + if (str == "no_cloud_gen") + return (FPROP_NO_CLOUD_GEN); + if (str == "no_rtele_into") + return (FPROP_NO_RTELE_INTO); + if (str == "no_ctele_into") + return (FPROP_NO_CTELE_INTO); + if (str == "no_tele_into") + return (FPROP_NO_TELE_INTO); + + return (FPROP_NONE); +} + + |