/* -*- LPC -*- */ /* * $Locker: $ * $Id: ridcullian_curse.c,v 1.1 1998/01/06 04:07:14 ceres Exp $ * $Log: ridcullian_curse.c,v $ * Revision 1.1 1998/01/06 04:07:14 ceres * Initial revision * */ /** * Makes the players hair fall out. * The classification of this effect is "misc.curse.ridcullian". * <p> * The argument specifies how long the hair loss will last. * @classification misc.curse.ridcullian * @example * // Give them the curse for 5 minutes * add_effect("/std/effects/curse/ridcullian", 300); */ #include <effect.h> /** @ignore yes */ string query_classification() { return "misc.curse.ridcullian"; } /** @ignore yes */ int merge_effect( object player, int old_arg, int new_arg, int id ) { player->submit_ee( 0, player->expected_tt() + new_arg, EE_REMOVE ); tell_object(player, "You feel more concerned about your hair loss.\n"); } /** @ignore yes */ int test_remove( object player, int a, int id, int bonus) { if (bonus > 150) return 1; tell_object(player, "You feel less concerned about your hair loss.\n"); player->submit_ee(0, player->expected_tt() - bonus, EE_REMOVE); return 0; } /** @ignore yes */ int beginning( object player, int a, int id) { player->submit_ee("hair_worry", ({ 10, 20 }), EE_CONTINUOUS); player->submit_ee(0, a, EE_REMOVE); tell_object( player, "You reach up to smooth your hair, and a large "+ "chunk of hair comes out.\n"); tell_room( environment( player ), player->the_short() + " smooths " + player->query_possessive() + " hair and then stares in "+ "horror at " + player->query_possessive() + " hands.\n", ({ player }) ); } /** @ignore yes */ void end( object player, mixed a, int id ) { tell_object( player, "Ahhhh. Your hair seems to have stopped " "falling out so prematurely.\n"); } /** @ignore yes */ void hair_worry( object player, mixed a, int id ) { switch (random(5)) { case 0: player->do_say("I'm not going bald! I mean it's "+ "ridiculous! My family have never gone "+ "bald, except for one of my aunts!"); break; case 1: player->do_say("I mean it wasn't there yesterday!"); break; case 2: player->do_say("I have NOT got a bald spot!"); break; case 3: player->do_say("Something's definitely happening, "+ "I can feel it in my water."); break; case 4: /* need soul thingy here :( */ player->do_say("What about this, then?"); break; } }