@@ -75,6 +75,7 @@ Behavior that's still missing from this component that original food items had t
7575
7676/ datum / component/ edible/ RegisterWithParent()
7777 RegisterSignal (parent, COMSIG_ATOM_EXAMINE , PROC_REF (examine))
78+ RegisterSignal (parent, COMSIG_ATOM_EXAMINE_TAGS , PROC_REF (examine_tags))
7879 RegisterSignal (parent, COMSIG_ATOM_ATTACK_ANIMAL , PROC_REF (UseByAnimal))
7980 RegisterSignal (parent, COMSIG_ATOM_CHECKPARTS , PROC_REF (OnCraft))
8081 RegisterSignal (parent, COMSIG_OOZE_EAT_ATOM , PROC_REF (on_ooze_eat))
@@ -110,6 +111,7 @@ Behavior that's still missing from this component that original food items had t
110111 COMSIG_ITEM_USED_AS_INGREDIENT ,
111112 COMSIG_OOZE_EAT_ATOM ,
112113 COMSIG_ATOM_EXAMINE ,
114+ COMSIG_ATOM_EXAMINE_TAGS ,
113115 ))
114116
115117 qdel (GetComponent(/ datum / component/ connect_loc_behalf))
@@ -214,9 +216,6 @@ Behavior that's still missing from this component that original food items had t
214216 var /atom /owner = parent
215217 if (food_flags & FOOD_NO_EXAMINE )
216218 return
217- if (foodtypes)
218- var /list /types = bitfield_to_list(foodtypes, FOOD_FLAGS )
219- examine_list += span_notice(" It is [ LOWER_TEXT (english_list(types))] ." )
220219
221220 var /quality = get_perceived_food_quality(user)
222221 if (quality > 0 )
@@ -231,7 +230,7 @@ Behavior that's still missing from this component that original food items had t
231230 else
232231 examine_list += span_warning(" You find this meal inedible." )
233232
234- if (owner. reagents. total_volume > 0 )
233+ if (owner. reagents. total_volume > 0 && HAS_TRAIT (owner, TRAIT_FOOD_CHEF_MADE ) )
235234 var /purity = owner. reagents. get_average_purity(/ datum / reagent/ consumable)
236235 switch (purity)
237236 if (0 to 0.2 )
@@ -275,6 +274,14 @@ Behavior that's still missing from this component that original food items had t
275274 var /mob /living/living_user = user
276275 living_user. taste(owner. reagents)
277276
277+ / datum / component/ edible/ proc / examine_tags( datum / source, mob / user, list / examine_tags)
278+ SIGNAL_HANDLER
279+
280+ if (food_flags & FOOD_NO_EXAMINE )
281+ return
282+ for (var /foodtype in bitfield_to_list (foodtypes, FOOD_FLAGS ))
283+ examine_tags[LOWER_TEXT (foodtype)] = " It's \a [ LOWER_TEXT (foodtype)] food."
284+
278285/ datum / component/ edible/ proc / UseFromHand( obj / item/ source, mob / living/ M, mob / living/ user)
279286 SIGNAL_HANDLER
280287
0 commit comments