/* A bunch of useful functions for use in various spells */ /* Unholds all the targets held stuff. --wf */ void force_unhold_weapons(object ob) { object* held_stuff; int i; held_stuff = (object*)ob->query_held_ob(); for (i=0;i<sizeof(held_stuff);i++) if ( held_stuff[i] ) ob->unhold_ob(held_stuff[i]); return; } /* Unwears all the targets worn stuff. --wf */ void force_unwear_armour(object ob) { object* worn_stuff; int i; worn_stuff = (object*)ob->query_worn_ob(); for (i=0;i<sizeof(worn_stuff);i++) if ( worn_stuff[i] ) ob->unwear_ob(worn_stuff[i]); return; } /* Drops everything in the target's inventory --wf */ void force_drop_everything(object ob) { object* stuff; int i; stuff = all_inventory(ob); for (i=0;i<sizeof(stuff);i++) ob->drop_ob(stuff[i]->query_name()); //Prevent it from desting in .5 seconds. environment(ob)->add_property("no_cleanup",1); return; } /* Drops everything in the target's inventory --wf */ void force_drop_one(object ob) { object* stuff; int i; stuff = all_inventory(ob); if(sizeof(stuff)) ob->drop_ob(stuff[random(sizeof(stuff))]->query_name()); return; }