--- deliantra/server/common/object.c 2006/02/03 07:11:38 1.1 +++ deliantra/server/common/object.c 2006/02/07 23:29:55 1.2 @@ -54,6 +54,7 @@ object *free_objects; /* Pointer to the list of unused objects */ object *active_objects; /* List of active objects that need to be processed */ +void (*object_free_callback)(object *ob); short freearr_x[SIZEOFFREE]= {0,0,1,1,1,0,-1,-1,-1,0,1,2,2,2,2,2,1,0,-1,-2,-2,-2,-2,-2,-1, @@ -1063,6 +1064,9 @@ void free_object2(object *ob, int free_inventory) { object *tmp,*op; + if (object_free_callback) + object_free_callback (ob); + if (!QUERY_FLAG(ob,FLAG_REMOVED)) { LOG(llevDebug,"Free object called with non removed object\n"); dump_object(ob);