summaryrefslogtreecommitdiff
path: root/src/map.h
diff options
context:
space:
mode:
authorPerttu Ahola <celeron55@gmail.com>2011-02-21 16:10:36 +0200
committerPerttu Ahola <celeron55@gmail.com>2011-02-21 16:10:36 +0200
commit69dbc046eb5a82b38c6d5c3302e9b3b0b3c1bcf1 (patch)
treee892b50187ba7343cb75f359ccbb55bdde19afd5 /src/map.h
parentc57637b4c39319e0c0d5d80d0ae2884aec66d691 (diff)
downloadminetest-69dbc046eb5a82b38c6d5c3302e9b3b0b3c1bcf1.tar.gz
minetest-69dbc046eb5a82b38c6d5c3302e9b3b0b3c1bcf1.tar.bz2
minetest-69dbc046eb5a82b38c6d5c3302e9b3b0b3c1bcf1.zip
preliminary lua scripting framework for objects
Diffstat (limited to 'src/map.h')
-rw-r--r--src/map.h29
1 files changed, 14 insertions, 15 deletions
diff --git a/src/map.h b/src/map.h
index adff82db0..d39ede26f 100644
--- a/src/map.h
+++ b/src/map.h
@@ -157,23 +157,22 @@ public:
v3s16 relpos = p - blockpos*MAP_BLOCKSIZE;
blockref->setNodeNoCheck(relpos, n);
}
-
- /*MapNode getNodeGenerate(v3s16 p)
+
+ // Returns a CONTENT_IGNORE node if not found
+ MapNode getNodeNoEx(v3s16 p)
{
- v3s16 blockpos = getNodeBlockPos(p);
- MapBlock * blockref = getBlock(blockpos);
- v3s16 relpos = p - blockpos*MAP_BLOCKSIZE;
-
- return blockref->getNode(relpos);
- }*/
+ try{
+ v3s16 blockpos = getNodeBlockPos(p);
+ MapBlock * blockref = getBlockNoCreate(blockpos);
+ v3s16 relpos = p - blockpos*MAP_BLOCKSIZE;
- /*void setNodeGenerate(v3s16 p, MapNode & n)
- {
- v3s16 blockpos = getNodeBlockPos(p);
- MapBlock * blockref = getBlock(blockpos);
- v3s16 relpos = p - blockpos*MAP_BLOCKSIZE;
- blockref->setNode(relpos, n);
- }*/
+ return blockref->getNodeNoCheck(relpos);
+ }
+ catch(InvalidPositionException &e)
+ {
+ return MapNode(CONTENT_IGNORE);
+ }
+ }
void unspreadLight(enum LightBank bank,
core::map<v3s16, u8> & from_nodes,