switch ( number_bits(4)) { case 0: if ( !IS_NPC(ch) ) { vnum = OVPKT1; } else { vnum = 0; } break; case 1: token2 = get_eq_char( killer,WEAR_HOLD ); token4 = create_object( get_obj_index( OVPKT4 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 ) { sprintf( buf, token4->short_descr, killer->name, ch->name ); free_string( token4->short_descr, "fight.c/death_cry #1" ); token4->short_descr = str_dup( buf ); sprintf( buf, token4->description, killer->name, ch->name ); free_string( token4->description, "fight.c/death_cry #2" ); token4->description = str_dup( buf ); sprintf( buf, token4->name, killer->name, ch->name ); free_string( token4->name, "fight.c/death_cry #3" ); token4->name = str_dup( buf ); obj_from_char( token2 ); extract_obj( token2 ); obj_to_char( token4,killer ); DAZE_STATE( killer, 17 + ( 5*PULSE_VIOLENCE ) ); } else if (!IS_NPC(ch)) { vnum = OVPKT1; } else { vnum = OBJ_VNUM_BLOOD; } break; case 2: if (!IS_NPC(ch)) { vnum = OVPKT1; } else { vnum = OBJ_VNUM_BLOOD; } break; case 3: token2 = get_eq_char( killer,WEAR_HOLD ); token4 = create_object( get_obj_index( OVPKT4 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 ) { sprintf( buf, token4->short_descr, killer->name, ch->name ); free_string( token4->short_descr, "fight.c/death_cry #4" ); token4->short_descr = str_dup( buf ); sprintf( buf, token4->description, killer->name, ch->name ); free_string( token4->description, "fight.c/death_cry #5" ); token4->description = str_dup( buf ); sprintf( buf, token4->name, killer->name, ch->name ); free_string( token4->name, "fight.c/death_cry #6" ); token4->name = str_dup( buf ); obj_from_char( token2 ); extract_obj( token2 ); obj_to_char( token4,killer ); DAZE_STATE( killer, 17 + ( 5*PULSE_VIOLENCE ) ); } else if (!IS_NPC(ch)) { vnum = OVPKT2; } else { vnum = 0; } break; case 4: token2 = get_eq_char( killer,WEAR_HOLD ); token4 = get_eq_char( killer,WEAR_NECK_1 ); token5 = create_object( get_obj_index( OVPKT5 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 && token4 != NULL && token4->pIndexData->vnum == OVPKT4 ) { obj_from_char( token2 ); extract_obj( token2 ); obj_to_char( token5,killer ); DAZE_STATE( killer, 24 + ( 5*PULSE_VIOLENCE ) ); } else if (!IS_NPC(ch)) { vnum = OVPKT1; } else { vnum = OBJ_VNUM_BLOOD; } break; case 5: if (!IS_NPC(ch)) { vnum = OVPKT1; vnum = 0; } else { vnum = 0; } break; case 6: token2 = get_eq_char( killer,WEAR_HOLD ); token4 = get_eq_char( killer,WEAR_NECK_1 ); token5 = create_object( get_obj_index( OVPKT5 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 && token4 != NULL && token4->pIndexData->vnum == OVPKT4 ) { obj_from_char( token2 ); extract_obj( token2 ); obj_to_char( token5,killer ); DAZE_STATE( killer, 24 + ( 5*PULSE_VIOLENCE ) ); } else if (!IS_NPC(ch)) { vnum = OVPKT2; } else { vnum = OBJ_VNUM_BLOOD; } break; case 7: if (!IS_NPC(ch)) { vnum = OVPKT2; } else { vnum = 0; } break; case 8: token2 = get_eq_char( killer,WEAR_HOLD ); token4 = get_eq_char( killer,WEAR_NECK_1 ); token5 = create_object( get_obj_index( OVPKT5 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 && token4 != NULL && token4->pIndexData->vnum == OVPKT4 ) { obj_from_char( token2 ); extract_obj( token2 ); obj_to_char( token5,killer ); DAZE_STATE( killer, 24 + ( 5*PULSE_VIOLENCE ) ); } else if (!IS_NPC(ch)) { vnum = OVPKT2; } else { vnum = OBJ_VNUM_BLOOD; } break; case 9: token2 = get_eq_char( killer,WEAR_HOLD ); token3 = create_object( get_obj_index( OVPKT3 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 ) { obj_from_char( token2 ); // Thanks to Belial for helping make this work extract_obj( token2 ); obj_to_char( token3,killer ); // equip_char(killer,token3,WEAR_SECONDARY); DAZE_STATE( killer, 12 + ( 5*PULSE_VIOLENCE ) ); } else { vnum = OBJ_VNUM_BLOOD; } break; case 10: token2 = get_eq_char( killer,WEAR_HOLD ); token4 = create_object( get_obj_index( OVPKT4 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 ) { sprintf( buf, token4->short_descr, killer->name, ch->name ); free_string( token4->short_descr, "fight.c/death_cry #7" ); token4->short_descr = str_dup( buf ); sprintf( buf, token4->description, killer->name, ch->name ); free_string( token4->description, "fight.c/death_cry #8" ); token4->description = str_dup( buf ); sprintf( buf, token4->name, killer->name, ch->name ); free_string( token4->name, "fight.c/death_cry #9" ); token4->name = str_dup( buf ); obj_from_char( token2 ); extract_obj( token2 ); obj_to_char( token4,killer ); DAZE_STATE( killer, 17 + ( 5*PULSE_VIOLENCE ) ); } else if (!IS_NPC(ch)) { vnum = OVPKT2; } else { vnum = OBJ_VNUM_BLOOD; } break; case 11: token2 = get_eq_char( killer,WEAR_HOLD ); token4 = get_eq_char( killer,WEAR_NECK_1 ); token5 = create_object( get_obj_index( OVPKT5 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 && token4 != NULL && token4->pIndexData->vnum == OVPKT4 ) { obj_from_char( token2 ); extract_obj( token2 ); obj_to_char( token5,killer ); DAZE_STATE( killer, 24 + ( 5*PULSE_VIOLENCE ) ); } else if (!IS_NPC(ch)) { vnum = OVPKT2; } else { vnum = OBJ_VNUM_BLOOD; } break; case 12: token2 = get_eq_char( killer,WEAR_HOLD ); token4 = get_eq_char( killer,WEAR_NECK_1 ); token5 = get_eq_char( killer,WEAR_BODY ); token6 = create_object( get_obj_index( OVPKT6 ), 0 ); if (!IS_NPC(ch) && token2 != NULL && token2->pIndexData->vnum == OVPKT2 && token4 != NULL && token4->pIndexData->vnum == OVPKT4 && token5 != NULL && token5->pIndexData->vnum == OVPKT5 ) { obj_from_char( token2 ); extract_obj( token2 ); obj_to_char( token6,killer ); DAZE_STATE( killer, 32 + ( 5*PULSE_VIOLENCE ) ); } else if (!IS_NPC(ch)) { vnum = OVPKT2; } else { vnum = OBJ_VNUM_BLOOD; } break; } } /* case 1: if (!IS_NPC(ch)) { vnum = OVPKT1; } else { vnum = OBJ_VNUM_BLOOD; } break; */ if ( vnum != 0 ) { char buf[MSL]; OBJ_DATA *obj; char *name; name = IS_NPC(ch) ? ch->short_descr : ch->name; obj = create_object( get_obj_index( vnum ), 0 ); obj->timer = number_range( 4, 7 ); if (!IS_NPC(ch)) { obj->timer = number_range( 12, 18 ); } if (vnum == OBJ_VNUM_BLOOD) { obj->timer = number_range( 1, 4 ); } if (vnum == OVPKT1) { obj->timer = number_range( 80, 84 ); } if (vnum == OVPKT2) { obj->timer = number_range( 1000000, 1000001 ); } if (vnum == OVPKT3) { obj->timer = number_range( 50, 100*PULSE_VIOLENCE ); } /* if (vnum == OVPKT) { obj->timer = number_range( 1, 4 ); } if (vnum == OVPKT) { obj->timer = number_range( 1, 4 ); } */