[ EatSub; if (ObjectIsUntouchable(noun)) return; if (noun hasnt edible) return L__M(##Eat,1,noun); if (noun has worn) { L__M(##Drop,3,noun); ; if (noun has worn && noun in player) rtrue; } remove noun; if (AfterRoutines()==1) rtrue; if (keep_silent==1) rtrue; L__M(##Eat,2,noun); ];