/* Modified from Healing Tea effect for Healing Vials
by Lemming on 19/4/1999.
Changes made:
- Instant healing.
- Change to heal strength.
*/
/**
* This effect has a classification of "healing.vial".
* It is the effect used by liquids in the TOSG healing vials
* <p>
* @classification healing.vial
* @see help::effects
*/
#include <effect.h>
/** @ignore yes */
void beginning( object player, int amount ) {
int heal, old_hp;
string desc;
player->submit_ee( 0, 0, EE_REMOVE );
heal = amount + ( 2 * random( amount ) );
old_hp = (int)player->query_hp();
if( heal > 2400 )
heal = 2400;
heal = (int)player->adjust_hp( heal ) - old_hp;
if( creatorp(player) )
tell_object( player, "You have been healed " + heal + " hp (" +
amount + ").\n" );
if( heal < 1 )
return;
switch( heal ) {
case 1 .. 20 :
desc = "a touch more whole";
break;
case 21 .. 50 :
desc = "very slightly less damaged";
break;
case 51 .. 90 :
desc = "slightly less damaged";
break;
case 91 .. 140 :
desc = "ever so slightly better";
break;
case 141 .. 200 :
desc = "slightly better";
break;
case 201 .. 270 :
desc = "a bit better";
break;
case 271 .. 350 :
desc = "quite a bit better";
break;
case 351 .. 440 :
desc = "a lot better";
break;
case 441 .. 540 :
desc = "a whole lot better";
break;
case 541 .. 650 :
desc = "much better";
break;
default:
desc = "very much better";
break;
}
tell_object( player, "You feel " + desc + ".\n" );
} /* beginning() */
/** @ignore yes */
int merge_effect( object player, int amount1, int amount2 ) {
return amount1 + amount2;
} /* merge_effect() */
/** @ignore yes */
string query_classification() { return "healing.vial"; }
string query_apothecarial_effect() {
return "will aid the healing of general injuries";
} /* query_apothecarial_effect() */