/*
a simplistic cattle prod
*/

#define	PRODNUM	#380

PRODNUM.dsc = "a general purpose MUD cattle prod 3.0. instructions are written on the side in fine print";
PRODNUM.txt = "instructions: zap|prod <person> on off";

func PRODNUM.prod
{
	if(#self.ison == NULL) {
		@.emote("fumbles with the cattle-prod");
		echo("it's turned off, bozo\n");
		return;
	}

        $who = match($1,#actor._loc._ply,"nam");
        if($who == NULL) {
                echo("prod who ?\n");
		@.emote("turns on ",#self.nam,"and peers around the room");
		return;
	}
	@.emote("ZAPS",$who.nam,"with ",#self.nam,"!!! Sparks fly!!");
	foreach $tmp in (#actor._loc._ply) {
		if($tmp != $who)
			echoto($tmp,$who.nam," thrashes about helplessly on the floor, screaming!!\n");
		else
			echoto($tmp,"you thrash about helplessly on the floor, screaming!!\n");
	}
}


func	PRODNUM.on
{
	if(#self.ison != NULL) {
		@.emote("fumbles with the on-switch of the cattle-prod");
		echo("it's already on\n");
	} else {
		@.emote("turns the cattle-prod on and grins");
		#self.ison = &#1.true;
	}
}


func	PRODNUM.off
{
	if(#self.ison == NULL) {
		@.emote("fumbles with the on-switch of the cattle-prod");
		echo("it's already off\n");
	} else {
		@.emote("turns the cattle-prod off");
		#self.ison = NULL;
	}
}


/* make a pointer-binding to the function */
PRODNUM.zap = &PRODNUM.prod;