The purpose of this snippet is to make objects that end up in rooms set to the air sector fall to the ground. I wrote this snippet because the other falling object snippets I saw were inadequate. This one should work in all cases, whether you are battling in the air and want to see the corpse fall from the sky, disarming someone in the sky, or just dropping objects from the sky for fun. Please report bugs to: gph2076@crosswinds.net If you use this on your mud, please give credit somewhere that players can see. Falling items snippet coded by Thales, co-imp of Islands of Exile mud: funcity.org 9999 1. Add the following before the obj_to_room function in handler.c: int crash_protect = 0; 2. Add the following before the return keyword in the obj_to_room function in handler.c: if ((pRoomIndex->sector_type == SECT_AIR) && (pRoomIndex->exit[DIR_DOWN] != NULL)) { crash_protect++; if (crash_protect == 10) return; act( "$t falls from the sky above.\n\r", pRoomIndex->exit[DIR_DOWN]->u1.to_room->people, obj->short_descr, NULL, TO_ROOM); act( "$t falls from the sky above.\n\r", pRoomIndex->exit[DIR_DOWN]->u1.to_room->people, obj->short_descr, NULL, TO_CHAR); act( "$t falls through the air below you.\n\r", pRoomIndex->people, obj->short_descr, NULL, TO_ROOM); act( "$t falls through the air below you.\n\r", pRoomIndex->people, obj->short_descr, NULL, TO_CHAR); obj_from_room( obj ); obj_to_room( obj, pRoomIndex->exit[DIR_DOWN]->u1.to_room); } crash_protect = 0; 3. The number that now is 10 can be set to whatever is appropriate for your mud; it means the maximum number of rooms in a row that an object may fall. This limit was added to prevent infinite loops that crash the mud.