/* -*- LPC -*- */
/*
* $Locker: $
* $Id: hp.c,v 1.1 1998/01/06 04:21:18 ceres Exp $
* $Log: hp.c,v $
* Revision 1.1 1998/01/06 04:21:18 ceres
* Initial revision
*
*/
/**
* This is the effect skelton docs. This effect
* has a classification of "poison.constitution".
* <p>
* Describe the arguments in here.
* @classification poison.constitution
* @see help::effects
*/
inherit "/std/effects/basic";
/* Hit point reducing poison */
void create() {
set_boundaries( ({ 0, -60 }), ({ 30, -20 }) );
}
int backdrop() { return 1; }
mixed *query_attrs( int *coord ) {
int total, intens;
total = distance_within_region(coord);
intens = total * 2;
if (intens > 100) intens = 100;
return ({ 5, 95, ({ }), ({ ({ "sparkling purple", intens }) }),
({ ({ "wax", intens / 2 }) }),
({ ({ "sugar", intens }),
({ "wax", intens/2 }) })
});
}
void action_drunk( object ob, int *coord, int quantity ) {
int total, dam;
string obmess, roommess;
total = distance_within_region(coord);
dam = ((total * quantity) * 13) / ob->query_con();
switch (dam) {
case 0..200:
obmess = "You feel a bit sick.\n";
roommess = ob->one_short() + " looks a little ill.\n";
break;
case 201..300:
obmess = "You feel a sharp pain, and clench your teeth.\n";
roommess=ob->one_short() +" clenches "+ob->query_possessive()+" teeth in agony.\n";
"teeth in agony.\n";
break;
case 301..400:
obmess = "You feel like someone has punched you visciously in the stomach.\n";
roommess = ob->one_short() + " nearly collapses.\n";
break;
case 401..1000:
obmess = "You collapse and go very pale.\n";
roommess = ob->one_short() + " collapses and goes very pale.\n";
break;
default:
obmess = "You reel and collapse with all your health fleeing your body.\n";
roommess = ob->one_short() + " collapses with a face palid as the "+
"face death would have if death had a face.\n";
break;
}
tell_object(ob, obmess);
tell_room(environment(ob), roommess, ob);
ob->adjust_hp(-dam);
ob->reset_all();
return;
}
void action_taste( object ob, int *coord, int quantity) {
if (quantity >= 1) tell_object(ob, "Your tongue feels numb.\n");
}