X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_em%2Flogic.c;h=61f3237c98727d3faf59b09a032954befe854406;hb=0233176c2bf3c560162948ef0b3b4d2306b3a788;hp=a56547b14a462365e830a8cdfbdb59ac0adead0b;hpb=d72ae21e98cef0a0c6e5adefa34153cf0bc149af;p=rocksndiamonds.git diff --git a/src/game_em/logic.c b/src/game_em/logic.c index a56547b1..61f3237c 100644 --- a/src/game_em/logic.c +++ b/src/game_em/logic.c @@ -293,7 +293,7 @@ static boolean player_killed(struct PLAYER *ply) if (!ply->alive) return FALSE; - if (lev.killed_out_of_time && setup.time_limit) + if (lev.killed_out_of_time && game.time_limit) return TRUE; switch (cave[x][y-1]) @@ -7768,6 +7768,18 @@ static void logic_players(void) next[ply[i].x][ply[i].y] = add_player[element]; } } + + /* check for wheel at wrap-around position */ + if (lev.wheel_x < lev.left || + lev.wheel_x > lev.right - 1) + { + int direction = (lev.wheel_x < lev.left ? -1 : 1); + + lev.wheel_x += -direction * lev.width; + + if (!lev.infinite_true) + lev.wheel_y += direction; + } } static void logic_objects(void)