== Fullness ==
/*work in progress*/<br>
Every character that can eat has a fullness value, measured as '''NP''' (Nutrition Points). This is initially set at default to 50,000 for the state midway between NOT_HUNGRY and SATIATED.<br>Eating food directly increases a character's NP by the value found during the "NOT_HUNGRYReceiveNutrition(...)"process detailed above.<br>A character's nutrition level changes once it crosses the threshold into the next fullness level, or drops below its current one. When a character's NP hits zero, the character will die. The NP thresholds are detailed below as found within ivandef.h:<pre>#define OVER_FED_LEVEL 175000#define BLOATED_LEVEL 150000#define SATIATED_LEVEL 100000#define NOT_HUNGER_LEVEL 30000#define HUNGER_LEVEL 20000#define VERY_HUNGER_LEVEL 10000</pre> A character's fullness also influences its experience gains, with hunger states abusing ASTR and LSTR, and full states abusing AGI.<pre> switch(GetHungerState()) { case STARVING: EditExperience(ARM_STRENGTH, -75, 1 << 3); EditExperience(LEG_STRENGTH, -75, 1 << 3); break; case VERY_HUNGRY: EditExperience(ARM_STRENGTH, -50, 1 << 2); EditExperience(LEG_STRENGTH, -50, 1 << 2); break; case HUNGRY: EditExperience(ARM_STRENGTH, -25, 1 << 1); EditExperience(LEG_STRENGTH, -25, 1 << 1); break; case SATIATED: EditExperience(AGILITY, -25, 1 << 1); break; case BLOATED: EditExperience(AGILITY, -50, 1 << 2); break; case OVER_FED: EditExperience(AGILITY, -75, 1 << 3); break; }</pre>
== Spoiling ==