summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Holmquist <marktraceur@gmail.com>2011-07-30 17:26:13 -0700
committerGiuseppe Bilotta <giuseppe.bilotta@gmail.com>2011-08-01 09:22:36 +0200
commit8e67f4c4e617a8fcbb9176de1bf0b267acfc6e2f (patch)
treec855923c5b2d76d6de7fbc5f46f29b1d60f6b1db
parent1c59cff8328bd85d6aed7df38b7eaddbeeca0aec (diff)
downloadminetest-8e67f4c4e617a8fcbb9176de1bf0b267acfc6e2f.tar.gz
minetest-8e67f4c4e617a8fcbb9176de1bf0b267acfc6e2f.tar.bz2
minetest-8e67f4c4e617a8fcbb9176de1bf0b267acfc6e2f.zip
Fixed a few problems in the ladder update, and changed the speed to account for gravity
-rw-r--r--src/content_mapblock.cpp4
-rw-r--r--src/game.cpp2
-rw-r--r--src/player.cpp6
3 files changed, 6 insertions, 6 deletions
diff --git a/src/content_mapblock.cpp b/src/content_mapblock.cpp
index ceb673606..ed2cd766a 100644
--- a/src/content_mapblock.cpp
+++ b/src/content_mapblock.cpp
@@ -1134,7 +1134,7 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
u16 indices[] = {0,1,2,2,3,0};
collector.append(material_rail, vertices, 4, indices, 6);
}
- else if (n.d == CONTENT_LADDER) {
+ else if (n.getContent() == CONTENT_LADDER) {
u8 l = decode_light(n.getLightBlend(data->m_daynight_ratio));
video::SColor c(255,l,l,l);
@@ -1149,7 +1149,7 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
video::S3DVertex(BS/2-d,BS/2,-BS/2, 0,0,0, c, 0,0),
};
- v3s16 dir = unpackDir(n.dir);
+ v3s16 dir = unpackDir(n.param2);
for(s32 i=0; i<4; i++)
{
diff --git a/src/game.cpp b/src/game.cpp
index d8ea45fb1..fb5d7cb93 100644
--- a/src/game.cpp
+++ b/src/game.cpp
@@ -541,7 +541,7 @@ void getPointedNode(Client *client, v3f player_position,
else if(n.getContent() == CONTENT_LADDER)
{
- v3s16 dir = unpackDir(n.dir);
+ v3s16 dir = unpackDir(n.param2);
v3f dir_f = v3f(dir.X, dir.Y, dir.Z);
dir_f *= BS/2 - BS/6 - BS/20;
v3f cpf = npf + dir_f;
diff --git a/src/player.cpp b/src/player.cpp
index 3846cd8f9..270f795b5 100644
--- a/src/player.cpp
+++ b/src/player.cpp
@@ -382,8 +382,8 @@ void LocalPlayer::move(f32 dtime, Map &map, f32 pos_max_d,
try {
v3s16 pp = floatToInt(position + v3f(0,0.5*BS,0), BS);
v3s16 pp2 = floatToInt(position + v3f(0,-0.2*BS,0), BS);
- is_climbing = (content_features(map.getNode(pp).d).climbable ||
- content_features(map.getNode(pp2).d).climbable);
+ is_climbing = (content_features(map.getNode(pp).getContent()).climbable ||
+ content_features(map.getNode(pp2).getContent()).climbable);
}
catch(InvalidPositionException &e)
{
@@ -832,7 +832,7 @@ void LocalPlayer::applyControl(float dtime)
if (is_climbing) {
if (control.up || control.left || control.right || control.down) {
v3f speed = getSpeed();
- speed.Y = 2*BS;
+ speed.Y = 2.5*BS;
setSpeed(speed);
}
else {