tfe-1.0/area/
tfe-1.0/files/
tfe-1.0/logs/
tfe-1.0/logs/immortal/
tfe-1.0/logs/mob/
tfe-1.0/logs/object/
tfe-1.0/logs/player/
tfe-1.0/logs/room/
tfe-1.0/notes/clans/
tfe-1.0/player/
tfe-1.0/prev/
tfe-1.0/prev/area/
tfe-1.0/prev/player/
tfe-1.0/prev/rooms/
tfe-1.0/rooms/
tfe-1.0/src-gc/
tfe-1.0/src-msvc/
tfe-1.0/src-unix/
tfe-1.0/www/
tfe-1.0/www/html/
#include "define.h"
#include "struct.h"


void do_kick( char_data* ch, char* argument )
{
  char_data* victim;

  if(  is_confused_pet( ch )
    || !is_humanoid( ch )
    || is_mounted( ch )
    || is_entangled( ch, "kick" ) )
    return;

  if( ( victim = get_victim( ch, argument, "Kick who?\r\n" ) ) == NULL )
    return;

  if( victim == ch ) {
    send( ch, "Kicking yourself is pointless.\r\n" );
    return;
    }

  if( ch->pcdata != NULL && ch->shdata->skill[ SKILL_KICK ] == UNLEARNT ) {
    send( ch, "You are untrained in the art of kicking.\r\n" );
    return;
    }

  if( victim->mount != NULL ) {
    send( ch, "You can't kick a mounted person.\r\n" );
    return;
    }

  if( !can_kill( ch, victim ) )
    return;

  check_killer( ch, victim );

  ch->improve_skill( SKILL_KICK );
  attack( ch, victim, "kick", NULL, roll_dice( 2,4 ), 0 );

  react_attack( ch, victim );
  add_queue( &ch->active, 20 );
}



void do_charge( char_data* ch, char* argument )
{
//  char_data*  victim;
//  obj_data*      obj;
//  int           roll;
//  int          skill  = ch->get_skill( SKILL_CHARGE );
  /*
  if( ch->mount != NULL ) {
    send( ch, "Charging while mounted is beyond your skill.\r\n" );
    return;
    }

  if( *argument == '\0' ) {
    send( ch, "Charge whom?\r\n" );
    return;
    }

  if( ( victim = get_char_room( ch, argument, TRUE ) ) == NULL ) 
    return;

  if( ( obj = get_eq_char( ch, WEAR_HELD_R ) ) == NULL ) {
    send( "You must wield a weapon to charge at someone.\r\n", ch );
    return;
    }

  if( opponent( ch ) != NULL ) {
    send( "You are already fighting someone.\r\n", ch );
    return;
    }

  if( victim == ch ) {
    send( "How can you charge against yourself?\r\n", ch );
    return;
    }

  if( skill == 0 ) {
    send( "Charging is not part of your repertoire.\r\n", ch );
    return;
    }

  if( opponent( ch ) != NULL ) {
    send( ch, "You are unable to charge while fighting someone.\r\n" );
    return;
    }

  if( !can_kill( ch, victim ) )
    return;


  check_killer( ch, victim );
  start_fight( ch, victim );
  set_attack( ch, victim, 20 );

  remove_bit( &ch->status, STAT_WIMPY );
  remove_bit( &ch->status, STAT_LEAPING );


  roll = number_range( 0, 20 )+ 
    +(ch->shdata->dexterity-victim->shdata->dexterity)*2+
    2*(ch->shdata->intelligence-victim->shdata->intelligence);

  if( roll < 10  ) {
      send( ch, "You attempt to charge %s, but miss and fall down.\r\n",
        victim );
      send( victim,
        "%s attempts to charge you, but %s misses and falls down.\r\n",
        ch, ch->He_She( victim ) );
      send( *ch->array,
        "%s attempts to charge %s, but %s misses and falls down.\r\n",
        ch, victim, ch->He_She( ) );
      ch->position = POS_RESTING;
    }
  else
    attack( ch, victim, "charge", obj, -1, 0 );
  */
  return;
}