summaryrefslogtreecommitdiff
path: root/src/game.cpp
diff options
context:
space:
mode:
authorKahrl <kahrl@gmx.net>2012-01-21 00:11:44 +0100
committerPerttu Ahola <celeron55@gmail.com>2012-01-22 17:24:50 +0200
commit157a4cf18cb9c098f465b8baecd7d2cd5705f2dd (patch)
treea194b86e0452d1dc892aec6b3ac940327ce85e2a /src/game.cpp
parentf22c73f50169b978f13c0b6511805b9d4a1a6871 (diff)
downloadminetest-157a4cf18cb9c098f465b8baecd7d2cd5705f2dd.tar.gz
minetest-157a4cf18cb9c098f465b8baecd7d2cd5705f2dd.tar.bz2
minetest-157a4cf18cb9c098f465b8baecd7d2cd5705f2dd.zip
Node placement / mineral / serialization / iron freq / node_dig callback
- Node placement code moved to Lua - Mineral system removed (added default:stone_with_coal and default:stone_with_iron). - MapBlock and MapNode serialization updated. - Mapgen: Frequency of iron increased. - node_dig callback and related changes.
Diffstat (limited to 'src/game.cpp')
-rw-r--r--src/game.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/game.cpp b/src/game.cpp
index 7bd5d9587..055320a8e 100644
--- a/src/game.cpp
+++ b/src/game.cpp
@@ -303,6 +303,8 @@ PointedThing getPointedThing(Client *client, v3f player_position,
should_show_hilightbox = false;
selected_object = NULL;
+ INodeDefManager *nodedef = client->getNodeDefManager();
+
// First try to find a pointed at active object
if(look_for_object)
{
@@ -378,7 +380,7 @@ PointedThing getPointedThing(Client *client, v3f player_position,
v3s16(-1,0,0), // left
};
- const ContentFeatures &f = client->getNodeDefManager()->get(n);
+ const ContentFeatures &f = nodedef->get(n);
if(f.selection_box.type == NODEBOX_FIXED)
{
@@ -447,7 +449,7 @@ PointedThing getPointedThing(Client *client, v3f player_position,
}
else if(f.selection_box.type == NODEBOX_WALLMOUNTED)
{
- v3s16 dir = unpackDir(n.param2);
+ v3s16 dir = n.getWallMountedDir(nodedef);
v3f dir_f = v3f(dir.X, dir.Y, dir.Z);
dir_f *= BS/2 - BS/6 - BS/20;
v3f cpf = npf + dir_f;
@@ -1827,11 +1829,10 @@ void the_game(
MapNode n = client.getNode(nodepos);
// Get digging properties for material and tool
- content_t material = n.getContent();
+ MaterialProperties mp = nodedef->get(n.getContent()).material;
ToolDiggingProperties tp =
playeritem.getToolDiggingProperties(itemdef);
- DiggingProperties prop =
- getDiggingProperties(material, &tp, nodedef);
+ DiggingProperties prop = getDiggingProperties(&mp, &tp);
float dig_time_complete = 0.0;