summaryrefslogtreecommitdiff
path: root/jc_stop-non-faction-npc-malnourishment.patch
blob: 509b2f1ff758b8114ccb795ba51aa52a373aec2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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 {