/* inherit this file anything that wants to be holdable */
inherit "/std/object";
nosave object holder;
int query_holdable() { return 1; }
int set_holder(object ob) {
holder = ob;
return 1;
}
object query_holder() { return holder; }
int drop(mixed dest) {
holder = 0;
return ::drop(dest);
}
/** @ignore yes */
/** @ignore yes */
varargs int move( mixed dest, string arrive, string leave ) {
if (holder && dest != holder) {
holder->unhold_ob(this_object());
holder = 0;
}
return ::move(dest, arrive, leave);
}