// _light.c // Mage ability // created 011192 by Descartes of Borg // Totally redone by Valodin, Jan 15, 1993 // Added the glowing orb part and the light_level part #include <std.h> inherit DAEMON; int cmd_light(string str) { int light_level; object orb; if(str) return 0; if(total_light(this_player()) < -1) { notify_fail("It is too dark.\n"); return 0; } if((int)this_player()->query_skill("conjuring") < 10) { notify_fail("You are not skilled enough to cast that spell.\n"); return 0; } if((int)this_player()->query_mp() < 7) { notify_fail("Too low on magic power.\n"); return 0; } if(environment(this_player())->query_property("no magic")) { notify_fail("Something seems to be blocking your concentration.\n"); return 0; } this_player()->add_skill_points("conjuring", 10); this_player()->add_mp(-7); write("Your conjure up a glowing orb of light.\n" + "You can \"extinguish orb\" if you need to.\n" "You can also \"darken\" the orb if it is too bright."); say(capitalize((string)this_player()->query_name()) + " creates a glowing orb.\n"); orb = new("/std/obj/light_orb"); orb->set_long("This is a magical, glowing orb created by " + capitalize((string)this_player()->query_name()) + ".\n"); orb->set_creator(this_player()); orb->move(this_player()); light_level = ((int)this_player()->query_skill("conjuring") / 20) + 1; if (light_level < 1) light_level = 1; orb->light(light_level, ((int)this_player()->query_skill("conjuring") * 10 / light_level)); return 1; } void help() { write("Syntax: <light>\n\n"+ "This spell creates a glowing orb.\n"); }