diff --git a/src/p_setup.c b/src/p_setup.c index 31a44b6d8..96b4228ce 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -4936,7 +4936,7 @@ static void P_ConvertBinaryLinedefTypes(void) lines[i].args[2] = !!(lines[i].flags & ML_MIDSOLID); break; case 4: //Speed pad parameters - lines[i].args[0] = P_AproxDistance(lines[i].v2->x-lines[i].v1->x, lines[i].v2->y-lines[i].v1->y); + lines[i].args[0] = sides[lines[i].sidenum[0]].textureoffset >> FRACBITS; if (lines[i].flags & ML_MIDSOLID) lines[i].args[1] |= TMSP_NOTELEPORT; if (lines[i].flags & ML_WRAPMIDTEX) diff --git a/src/p_spec.c b/src/p_spec.c index 522244f45..224d24516 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -5044,7 +5044,9 @@ static void P_ProcessSpeedPad(player_t *player, sector_t *sector, sector_t *rove } lineangle = R_PointToAngle2(lines[lineindex].v1->x, lines[lineindex].v1->y, lines[lineindex].v2->x, lines[lineindex].v2->y); - linespeed = lines[lineindex].args[0]; + linespeed = mapnamespace == MNS_SRB2KART + ? P_AproxDistance(lines[lineindex].v2->x-lines[lineindex].v1->x, lines[lineindex].v2->y-lines[lineindex].v1->y) + : lines[lineindex].args[0] << FRACBITS; if (linespeed == 0) {