// powder.c

inherit COMBINED_ITEM;

void init()
{
	add_action("do_pour", "pour");
}

int do_pour(string arg)
{
	string me, what;
	object ob;
	function f;

	if( !arg
	||	sscanf(arg, "%s in %s", me, what)!=2
	||	!id(me) )
		return notify_fail("Α: pour <媚> in <珇>\n");

	ob = present(what, this_player());
	if( !ob )
		return notify_fail("ō⊿Τ " + what + " 硂妓狥﹁\n");
	if( !ob->query("liquid/remaining") )
		return notify_fail(ob->name() + "柑ぐ或⊿Τ杆ㄇ皊坊て媚\n");
	// We let call other to call the "master copy" of the object in case the
	// powder object got destructed after used up.
	f = (: call_other, base_name(this_object()), "effect_in_liquid" :);
	ob->set("liquid/drink_func", bind(f, ob));
	message_vision("$N盢ㄇ" + name() + "秈" + ob->name() 
		+ "穘碭\n", this_player());
	add_amount(-1);
	return 1;
}



