diff --git a/src/faction_camp.cpp b/src/faction_camp.cpp index fd436428c2280..e0931dcdc04fe 100644 --- a/src/faction_camp.cpp +++ b/src/faction_camp.cpp @@ -1356,7 +1356,9 @@ bool basecamp::handle_mission( const std::string &miss_id, const std::string &mi survey_return(); } - start_crafting( miss_id, miss_dir, "BASE", "_faction_camp_crafting_", by_radio ); + if( miss_dir == base_dir ) { + start_crafting( miss_id, miss_dir, "BASE", "_faction_camp_crafting_", by_radio ); + } if( miss_id == base_dir + " (Finish) Crafting" ) { const std::string msg = _( "returns to you with something..." ); mission_return( "_faction_camp_crafting_" + miss_dir, 1_minutes, true, msg, @@ -1851,6 +1853,7 @@ void basecamp::start_crafting( const std::string &cur_id, const std::string &cur comp->companion_mission_inv.add_item( results ); } } + return; } }