/** * This is the effect skelton docs. This effect * has a classification of "object.stardust". * <p> * Describe the arguments in here. * @classification object.stardust * @see help::effects */ #include <effect.h> void merge_effect(object player, mixed old_arg, mixed new_arg) { int tt; tt = (int)player->expected_tt(); /* changed to 'player->submit_ee() - Manshoon */ player->submit_ee(0, new_arg * 2 / 3 + tt, EE_REMOVE); } /** @ignore yes */ void beginning( object player, int time, int id ) { if (time == 0) { /* Make up our own time... */ time = 30*60; } /* about every 7 minutes... */ player->submit_ee( "create_shimmer", ({ 2*60, 2*60 }), EE_CONTINUOUS ); player->submit_ee( 0, time, EE_REMOVE ); player->add_extra_look(this_object()); } /* beginning() */ /** @ignore yes */ void end( object player, int time, int id ) { object room; string env_string; object *ignore; room = environment(player); env_string = player->the_short(); ignore = ({ }); player->remove_extra_look(this_object()); if (room == environment(player) && living(player)) { tell_object(player, env_string+" have the last shimmering " "stardust fall off your face, sparkle for " "an instant and disappear.\n"); ignore += ({ player }); tell_room(room, env_string+" has the last shimmering stardust " "fall off "+player->query_possessive()+ " face, sparkle for an instant and disappear.\n", ignore); } else if (living(player)) { tell_room(room, env_string+" has the last shimmering stardust " " fall off "+player->query_possessive()+ " face, sparkle for an instant and disappear.\n", ignore); } else { tell_room(room, env_string+" has the last shimmering stardust " "fall off it, sparkle for an instant and disappear.\n", ignore); } } /* end() */ void create_shimmer( object player, int time, int id ) { object room; string env_string; object *ignore; room = environment(player); env_string = player->the_short(); ignore = ({ }); if (room == environment(player) && living(player)) { tell_object(player, env_string+" have some bits of shimmering " "stardust fall off your face, sparkle for " "an instant and disappear.\n"); ignore += ({ player }); tell_room(room, env_string+" has some bits of shimmering stardust " "fall off "+player->query_possessive()+ " face, sparkle for an instant and disappear.\n", ignore); } else if (living(player)) { tell_room(room, env_string+" has some bits of shimmering stardust " " fall off "+player->query_possessive()+ " face, sparkle for an instant and disappear.\n", ignore); } else { tell_room(room, env_string+" has some shimmering stardust " "fall off it, sparkle for an instant and disappear.\n", ignore); } if (living(room)) ignore += ({ room }); env_string = env_string + " in " + room->the_short(); if (!environment(room)) room = environment(room); } /* create_shimmer() */ string extra_look() { return capitalize(previous_object()->query_pronoun()+ " shimmers and sparkles beautifully.\n"); } /* extra_look() */ /** @ignore yes */ string query_classification() { return "object.stardust"; }