/* *** DaleMUD *** PSI skills */ #include <stdio.h> #include "protos.h" extern char *dirs[]; void mind_use_burn( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_burn(level, ch, 0, 0); break; default : log_string("Serious screw-up in mind_burn"); break; } } void mind_use_teleport( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_teleport(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_teleport"); break; } } void mind_use_probability_travel( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_probability_travel(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_probability_travel"); break; } } void mind_use_danger_sense( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_danger_sense(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_danger_sense"); break; } } void mind_use_clairvoyance( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_clairvoyance(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_clairvoyance"); break; } } void mind_use_disintergrate( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_disintergrate(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_disintergrate"); break; } } void mind_use_telekinesis( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { char *p; int i=-1; switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: if (!ch->specials.fighting) { /* get the argument, parse it into a direction */ for (;*arg==' ';arg++); if (!*arg) { send_to_char("You must supply a direction!\n\r", ch); return; } p = fname(arg); for (i=0;i<6;i++) { if (strncmp(p,dirs[i],strlen(p))==0) { i++; break; } if (i == 6) { send_to_char("You must supply a direction!\n\r", ch); return; } } } /* end ! fighting */ mind_telekinesis(level, ch, victim, i); break; default : log_string("Serious screw-up in mind_telekinesis"); break; } } void mind_use_levitation( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_levitation(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_levitation"); break; } } void mind_use_cell_adjustment( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_cell_adjustment(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_cell_adjustment"); break; } } void mind_use_chameleon( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_chameleon(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_chameleon"); break; } } void mind_use_psi_strength( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_psi_strength(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_psi_strength"); break; } } void mind_use_mind_over_body( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_mind_over_body(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_mind_over_body"); break; } } void mind_use_domination( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_domination(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_domination"); break; } } void mind_use_mind_wipe( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_mind_wipe(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_wipe"); break; } } void mind_use_psychic_crush( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_psychic_crush(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_psyic_crush"); break; } } void mind_use_tower_iron_will( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_tower_iron_will(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_tower_iron_will"); break; } } void mind_use_mindblank( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_mindblank(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_mindblank"); break; } } void mind_use_psychic_impersonation( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_psychic_impersonation(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_psychic_impersonation"); break; } } void mind_use_ultra_blast( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_ultra_blast(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_ultra_blast"); break; } } void mind_use_intensify( byte level, struct char_data *ch, char *arg, int type, struct char_data *victim, struct obj_data *tar_obj ) { switch (type) { case SPELL_TYPE_WAND: case SPELL_TYPE_SPELL: case SPELL_TYPE_STAFF: case SPELL_TYPE_SCROLL: mind_intensify(level, ch, victim, 0); break; default : log_string("Serious screw-up in mind_intensify"); break; } }