Code:
javascript:
var bh_skill = '1';
var bh_retreat = true;
function bh_do_attack ()
{
	var hasopponent = false;
	var lostbattle = false;
	
	for ( var i in battle_data.monsters )
	{
		if ( $ ( '#monster_' + i + ' .health_bar' ).attr ( 'data_current_hp' ) > 0 )
		{
			hasopponent = true;
			break;
		}
	}
	
	if ( $ ( ".header_box" ).text ( ).indexOf ( 'lost' ) > -1 )
	{
		lostbattle = true;
	}
	
	if ( hasopponent && !lostbattle )
	{
		if ( $ ( '#energy_timer' ).width ( ) == 100 )
		{
			$ ( 'a[data_skill_id="' + bh_skill + '"]' ).click ( );
		}
		setTimeout ( 'bh_do_attack ()' , 1000 );
	}
	else if ( lostbattle )
	{
		$ ( "a.cancel_button" ).click ( );
	}
	else
	{
		if ( bh_retreat )
		{
			$ ( "#retreat_waves" ).click ( );
		}
		else
		{
			$ ( "#continue_waves" ).click ( );
		}
	}
}
bh_do_attack ();
Meh...