diff --git a/src/activity_item_handling.cpp b/src/activity_item_handling.cpp index 2c8cfd6f2b697..6ac34ebac60c3 100644 --- a/src/activity_item_handling.cpp +++ b/src/activity_item_handling.cpp @@ -3519,9 +3519,9 @@ int get_auto_consume_moves( Character &you, const bool food ) } if( best_comestible ) { - int consume_moves = -Pickup::cost_to_move_item( you, - *best_comestible ) * std::max( rl_dist( you.pos(), - here.getlocal( best_comestible.position() ) ), 1 ); + //The moves it takes you to walk there and back. + int consume_moves = 2 * you.run_cost( 100, false ) * std::max( rl_dist( you.pos(), + here.getlocal( best_comestible.position() ) ), 1 ); consume_moves += to_moves( you.get_consume_time( *best_comestible ) ); you.consume( best_comestible ); diff --git a/src/player_activity.cpp b/src/player_activity.cpp index 5eff0d70698a7..7374f3caa39d9 100644 --- a/src/player_activity.cpp +++ b/src/player_activity.cpp @@ -246,6 +246,7 @@ void player_activity::do_turn( Character &you ) !no_food_nearby_for_auto_consume ) { int consume_moves = get_auto_consume_moves( you, true ); moves_left += consume_moves; + moves_total += consume_moves; if( consume_moves == 0 ) { no_food_nearby_for_auto_consume = true; } @@ -253,6 +254,7 @@ void player_activity::do_turn( Character &you ) if( you.get_thirst() > 130 && !no_drink_nearby_for_auto_consume ) { int consume_moves = get_auto_consume_moves( you, false ); moves_left += consume_moves; + moves_total += consume_moves; if( consume_moves == 0 ) { no_drink_nearby_for_auto_consume = true; }