mirror of
https://github.com/moparisthebest/minetest
synced 2024-12-25 08:58:57 -05:00
Fixed a few problems in the ladder update, and changed the speed to account for gravity
This commit is contained in:
parent
1c59cff832
commit
8e67f4c4e6
@ -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++)
|
||||
{
|
||||
|
@ -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;
|
||||
|
@ -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 {
|
||||
|
Loading…
Reference in New Issue
Block a user