00001
00002
00003
00004
00005
00006
00007
00008 #ifndef FOOD_H
00009 #define FOOD_H
00010
00011 enum food_type
00012 {
00013 FOOD_MEAT_RATION,
00014 FOOD_BREAD_RATION,
00015 FOOD_PEAR,
00016 FOOD_APPLE,
00017 FOOD_CHOKO,
00018 FOOD_HONEYCOMB,
00019 FOOD_ROYAL_JELLY,
00020 FOOD_SNOZZCUMBER,
00021 FOOD_PIZZA,
00022 FOOD_APRICOT,
00023 FOOD_ORANGE,
00024 FOOD_BANANA,
00025 FOOD_STRAWBERRY,
00026 FOOD_RAMBUTAN,
00027 FOOD_LEMON,
00028 FOOD_GRAPE,
00029 FOOD_SULTANA,
00030 FOOD_LYCHEE,
00031 FOOD_BEEF_JERKY,
00032 FOOD_CHEESE,
00033 FOOD_SAUSAGE,
00034 FOOD_CHUNK,
00035 FOOD_AMBROSIA,
00036 NUM_FOODS
00037 };
00038
00039 int count_corpses_in_pack(bool blood_only = false);
00040 bool butchery(int which_corpse = -1, bool bottle_blood = false);
00041
00042 bool eat_food(int slot = -1);
00043
00044 void make_hungry(int hunger_amount, bool suppress_msg,
00045 bool allow_reducing = false);
00046
00047 void lessen_hunger(int statiated_amount, bool suppress_msg);
00048
00049 void set_hunger(int new_hunger_level, bool suppress_msg);
00050
00051 void weapon_switch(int targ);
00052
00053 bool is_bad_food(const item_def &food);
00054 bool is_poisonous(const item_def &food);
00055 bool is_mutagenic(const item_def &food);
00056 bool is_contaminated(const item_def &food);
00057 bool causes_rot(const item_def &food);
00058 bool is_inedible(const item_def &item);
00059 bool is_preferred_food(const item_def &food);
00060 bool is_forbidden_food(const item_def &food);
00061 bool check_amu_the_gourmand(bool reqid);
00062
00063 bool can_ingest(int what_isit, int kindof_thing, bool suppress_msg,
00064 bool reqid = false, bool check_hunger = true);
00065
00066 bool chunk_is_poisonous(int chunktype);
00067 void eat_floor_item(int item_link);
00068
00069 int eat_from_floor(bool skip_chunks = true);
00070 bool eat_from_inventory();
00071 int prompt_eat_chunks();
00072
00073 bool food_change(bool suppress_message = false);
00074 void eat_inventory_item(int which_inventory_slot);
00075
00076 bool prompt_eat_inventory_item(int slot = -1);
00077
00078 void chunk_nutrition_message(int nutrition);
00079
00080 void vampire_nutrition_per_turn(const item_def &corpse, int feeding = 0);
00081
00082 void finished_eating_message(int food_type);
00083
00084 int you_max_hunger();
00085 int you_min_hunger();
00086
00087 void handle_starvation();
00088
00089 #endif