From 4c9a24e8b116686176ca3f2704d8566a5be09a13 Mon Sep 17 00:00:00 2001 From: jc_gargma Date: Mon, 18 Jan 2021 07:58:49 -0800 Subject: Add revised stop sleeping on tables patch --- jc_stop-sleeping-on-tables.patch | 53 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 jc_stop-sleeping-on-tables.patch (limited to 'jc_stop-sleeping-on-tables.patch') diff --git a/jc_stop-sleeping-on-tables.patch b/jc_stop-sleeping-on-tables.patch new file mode 100644 index 0000000..d60e950 --- /dev/null +++ b/jc_stop-sleeping-on-tables.patch @@ -0,0 +1,53 @@ +--- a/src/character.cpp ++++ b/src/character.cpp +@@ -5328,20 +5328,24 @@ + } + } + // Not in a vehicle, start checking furniture/terrain/traps at this point in decreasing order +- else if( furn_at_pos != f_null ) { ++ else if( furn_at_pos != f_null && furn_at_pos.obj().comfort >= 5 ) { + comfort += 0 + furn_at_pos.obj().comfort; + } + // Web sleepers can use their webs if better furniture isn't available + else if( websleep && web >= 3 ) { + comfort += 1 + static_cast( comfort_level::slightly_comfortable ); ++ } else if( furn_at_pos != f_null && furn_at_pos.obj().comfort >= 4 ) { ++ comfort += 0 + furn_at_pos.obj().comfort; ++ } else if( !trap_at_pos.is_null() ) { ++ comfort += 0 + trap_at_pos.comfort; + } else if( ter_at_pos == t_improvised_shelter ) { + comfort += 0 + static_cast( comfort_level::slightly_comfortable ); +- } else if( ter_at_pos == t_floor || ter_at_pos == t_floor_waxed || ++ } else if( furn_at_pos != f_null && furn_at_pos.obj().comfort >= 1 ) { ++ comfort += 0 + furn_at_pos.obj().comfort; ++ } else if( ter_at_pos == t_carpet_concrete || ter_at_pos == t_carpet_metal || + ter_at_pos == t_carpet_red || ter_at_pos == t_carpet_yellow || + ter_at_pos == t_carpet_green || ter_at_pos == t_carpet_purple ) { + comfort += 1 + static_cast( comfort_level::neutral ); +- } else if( !trap_at_pos.is_null() ) { +- comfort += 0 + trap_at_pos.comfort; + } else { + // Not a comfortable sleeping spot + comfort -= g->m.move_cost( p ); +--- a/src/mapdata.h ++++ b/src/mapdata.h +@@ -407,7 +407,7 @@ + t_thconc_floor, t_thconc_floor_olight, t_strconc_floor, + t_floor, t_floor_waxed, + t_dirtfloor,//Dirt floor(Has roof) +- t_carpet_red, t_carpet_yellow, t_carpet_purple, t_carpet_green, ++ t_carpet_red, t_carpet_yellow, t_carpet_purple, t_carpet_green, t_carpet_concrete, t_carpet_metal, + t_grate, + t_slime, + t_bridge, +--- a/src/mapdata.cpp ++++ b/src/mapdata.cpp +@@ -490,7 +490,7 @@ + t_thconc_floor, t_thconc_floor_olight, t_strconc_floor, + t_floor, t_floor_waxed, + t_dirtfloor,//Dirt floor(Has roof) +- t_carpet_red, t_carpet_yellow, t_carpet_purple, t_carpet_green, ++ t_carpet_red, t_carpet_yellow, t_carpet_purple, t_carpet_green, t_carpet_concrete, t_carpet_metal, + t_linoleum_white, t_linoleum_gray, + t_grate, + t_slime, -- cgit v1.2.1