@@ -1081,12 +1081,12 @@ void hotwire_car_activity_actor::finish( player_activity &act, Character &who )
10811081 } else if ( skill > rng ( 0 , 4 ) ) {
10821082 // Soft fail
10831083 who.add_msg_if_player ( _ ( " You found a wire that looks like the right one." ) );
1084- veh.is_alarm_on = veh.has_security_working ();
1084+ veh.is_alarm_on = veh.has_security_working ( here );
10851085 veh.is_locked = false ;
10861086 } else if ( !veh.is_alarm_on ) {
10871087 // Hard fail
10881088 who.add_msg_if_player ( _ ( " The red wire always starts the engine, doesn't it?" ) );
1089- veh.is_alarm_on = veh.has_security_working ();
1089+ veh.is_alarm_on = veh.has_security_working ( here );
10901090 } else {
10911091 // Already failed
10921092 who.add_msg_if_player (
@@ -1388,7 +1388,7 @@ void bikerack_racking_activity_actor::finish( player_activity &act, Character &
13881388 vehicle &parent_veh = ovp_parent->vehicle ();
13891389 vehicle &racked_veh = ovp_racked->vehicle ();
13901390
1391- if ( !parent_veh.merge_rackable_vehicle ( &racked_veh, racks ) ) {
1391+ if ( !parent_veh.merge_rackable_vehicle ( &here, & racked_veh, racks ) ) {
13921392 debugmsg ( " racking actor failed: failed racking %s on %s, racks: [%s]." ,
13931393 racked_veh.name , parent_veh.name , enumerate_ints_to_string ( racks ) );
13941394 }
@@ -1595,7 +1595,9 @@ void bikerack_unracking_activity_actor::start( player_activity &act, Character &
15951595
15961596void bikerack_unracking_activity_actor::finish ( player_activity &act, Character & )
15971597{
1598- const optional_vpart_position ovp = get_map ().veh_at ( parent_vehicle_pos );
1598+ map &here = get_map ();
1599+
1600+ const optional_vpart_position ovp = here.veh_at ( parent_vehicle_pos );
15991601 if ( !ovp ) {
16001602 debugmsg ( " unracking actor lost vehicle." );
16011603 act.set_to_null ();
@@ -1604,7 +1606,7 @@ void bikerack_unracking_activity_actor::finish( player_activity &act, Character
16041606
16051607 vehicle &parent_vehicle = ovp->vehicle ();
16061608
1607- if ( !parent_vehicle.remove_carried_vehicle ( parts, racks ) ) {
1609+ if ( !parent_vehicle.remove_carried_vehicle ( here, parts, racks ) ) {
16081610 debugmsg ( " unracking actor failed on %s, parts: [%s], racks: [%s]" , parent_vehicle.name ,
16091611 enumerate_ints_to_string ( parts ), enumerate_ints_to_string ( racks ) );
16101612 }
@@ -7650,7 +7652,7 @@ static void move_item( Character &you, item &it, const int quantity, const tripo
76507652 if ( leftovers.charges > 0 ) {
76517653 if ( src_veh ) {
76527654 vehicle_part &vp_src = src_veh->part ( src_part );
7653- if ( !src_veh->add_item ( vp_src, leftovers ) ) {
7655+ if ( !src_veh->add_item ( here, vp_src, leftovers ) ) {
76547656 debugmsg ( " SortLoot: Source vehicle failed to receive leftover charges." );
76557657 }
76567658 } else {
@@ -7907,7 +7909,7 @@ void unload_loot_activity_actor::do_turn( player_activity &act, Character &you )
79077909 item link ( *it->first ->type ->magazine ->linkage , calendar::turn, contained->count () );
79087910 if ( this_veh != nullptr ) {
79097911 vehicle_part &vp_this = this_veh->part ( this_part );
7910- this_veh->add_item ( vp_this, link );
7912+ this_veh->add_item ( here, vp_this, link );
79117913 } else {
79127914 here.add_item_or_charges ( src_loc, link );
79137915 }
@@ -8228,9 +8230,10 @@ std::unique_ptr<activity_actor> vehicle_unfolding_activity_actor::deserialize( J
82288230
82298231int heat_activity_actor::get_available_heater ( Character &p, item_location &loc ) const
82308232{
8233+ map &here = get_map ();
82318234 int available_heater = 0 ;
82328235 if ( !loc->has_no_links () ) {
8233- available_heater = loc->link ().t_veh ->connected_battery_power_level ().first ;
8236+ available_heater = loc->link ().t_veh ->connected_battery_power_level ( here ).first ;
82348237 } else if ( !loc->has_flag ( flag_USE_UPS ) ) {
82358238 available_heater = loc->ammo_remaining ();
82368239 } else if ( loc->has_flag ( flag_USE_UPS ) ) {
@@ -8247,18 +8250,20 @@ void heat_activity_actor::start( player_activity &act, Character & )
82478250
82488251void heat_activity_actor::do_turn ( player_activity &act, Character &p )
82498252{
8253+ map &here = get_map ();
8254+
82508255 // use a hack in use_vehicle_tool vehicle_use.cpp
82518256 if ( !act.coords .empty () ) {
82528257 h.vpt = act.coords [0 ];
82538258 }
8254- std::optional<vpart_position> vp = get_map () .veh_at ( h.vpt );
8259+ std::optional<vpart_position> vp = here .veh_at ( h.vpt );
82558260 if ( h.pseudo_flag ) {
82568261 if ( !vp ) {
82578262 p.add_msg_if_player ( _ ( " You can't find the appliance any more." ) );
82588263 act.set_to_null ();
82598264 return ;
82608265 }
8261- if ( vp.value ().vehicle ().connected_battery_power_level ().first < requirements.ammo *
8266+ if ( vp.value ().vehicle ().connected_battery_power_level ( here ).first < requirements.ammo *
82628267 h.heating_effect ) {
82638268 p.add_msg_if_player ( _ ( " You need more energy to heat these items." ) );
82648269 act.set_to_null ();
@@ -8287,6 +8292,8 @@ void heat_activity_actor::do_turn( player_activity &act, Character &p )
82878292
82888293void heat_activity_actor::finish ( player_activity &act, Character &p )
82898294{
8295+ map &here = get_map ();
8296+
82908297 for ( drop_location &ait : to_heat ) {
82918298 item_location cold_item = ait.first ;
82928299 if ( cold_item->count_by_charges () ) {
@@ -8316,7 +8323,7 @@ void heat_activity_actor::finish( player_activity &act, Character &p )
83168323 }
83178324 if ( h.consume_flag ) {
83188325 if ( h.pseudo_flag ) {
8319- get_map () .veh_at ( h.vpt ).value ().vehicle ().discharge_battery ( requirements.ammo *
8326+ here .veh_at ( h.vpt ).value ().vehicle ().discharge_battery ( here, requirements.ammo *
83208327 h.heating_effect );
83218328 } else {
83228329 h.loc ->activation_consume ( requirements.ammo , h.loc .pos_bub (), &p );
0 commit comments