summaryrefslogtreecommitdiff
path: root/jc_stop-non-faction-npc-malnourishment.patch
diff options
context:
space:
mode:
Diffstat (limited to 'jc_stop-non-faction-npc-malnourishment.patch')
-rw-r--r--jc_stop-non-faction-npc-malnourishment.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/jc_stop-non-faction-npc-malnourishment.patch b/jc_stop-non-faction-npc-malnourishment.patch
new file mode 100644
index 0000000..509b2f1
--- /dev/null
+++ b/jc_stop-non-faction-npc-malnourishment.patch
@@ -0,0 +1,39 @@
+--- a/src/npcmove.cpp
++++ b/src/npcmove.cpp
+@@ -131,6 +131,14 @@
+ static const material_id material_chem_methanol( "chem_methanol" );
+ static const material_id material_denat_alcohol( "denat_alcohol" );
+
++const vitamin_id vitamin_calcium( "calcium" );
++const vitamin_id vitamin_iron( "iron" );
++const vitamin_id vitamin_vitA( "vitA" );
++const vitamin_id vitamin_vitB( "vitB" );
++const vitamin_id vitamin_vitC( "vitC" );
++const vitamin_id vitamin_mutant_toxin( "mutant_toxin" );
++const vitamin_id vitamin_bad_food( "bad_food" );
++
+ static constexpr float NPC_DANGER_VERY_LOW = 5.0f;
+ static constexpr float NPC_DANGER_MAX = 150.0f;
+ static constexpr float MAX_FLOAT = 5000000000.0f;
+@@ -3811,6 +3819,7 @@
+ if( get_thirst() > 40 && bcp->has_water() ) {
+ complain_about( "camp_water_thanks", 1_hours, "<camp_water_thanks>", false );
+ set_thirst( 0 );
++
+ return true;
+ }
+ faction *yours = player_character.get_faction();
+@@ -3875,6 +3884,13 @@
+ if( !is_player_ally() ) {
+ // TODO: Remove this and let player "exploit" hungry NPCs
+ set_hunger( 0 );
++ vitamin_set( vitamin_calcium, 0 );
++ vitamin_set( vitamin_iron, 0 );
++ vitamin_set( vitamin_vitA, 0 );
++ vitamin_set( vitamin_vitB, 0 );
++ vitamin_set( vitamin_vitC, 0 );
++ vitamin_set( vitamin_mutant_toxin, 0 );
++ vitamin_set( vitamin_bad_food, 0 );
+ set_thirst( 0 );
+ }
+ } else {