|
From: Rob <geo...@us...> - 2006-01-29 16:14:41
|
Update of /cvsroot/timewarp/source/ais In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12699/source/ais Modified Files: c_wussie.cpp Log Message: Index: c_wussie.cpp =================================================================== RCS file: /cvsroot/timewarp/source/ais/c_wussie.cpp,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** c_wussie.cpp 23 Sep 2005 13:11:12 -0000 1.27 --- c_wussie.cpp 29 Jan 2006 16:14:33 -0000 1.28 *************** *** 676,692 **** field_fire = TRUE; ! // intercept time along the ship orientation (line of sight) ! double t_intercept; ! if (weapon_vel > target_vel) ! t_intercept = distance / (weapon_vel - target_vel); // weapon_vel includes correction for weapon relativity ! else ! t_intercept = 1E6; ! // intercept distance along the line of sight ! double d_intercept; ! d_intercept = t_intercept * weapon_vel; ! //xxx this does not take relativity into account ? ! bool weapon_in_range = (option_range[state][j]+0.5*ship->size.x > 1.0 * d_intercept); --- 676,702 ---- field_fire = TRUE; ! bool weapon_in_range; ! if (fabs (angle_fire) < sweep[j])// && distance < option_range[state][j]) ! { ! // first check, if the weapon has the correct angle and distance... ! //weapon_in_range = true; ! // otherwise, make a more complex check... ! ! // intercept time along the ship orientation (line of sight) ! double t_intercept; ! if (weapon_vel > target_vel) ! t_intercept = distance / (weapon_vel - target_vel); // weapon_vel includes correction for weapon relativity ! else ! t_intercept = 1E6; ! ! // intercept distance along the line of sight ! double d_intercept; ! d_intercept = t_intercept * weapon_vel; ! //xxx this does not take relativity into account ? ! ! weapon_in_range = (option_range[state][j]+0.5*ship->size.x > 1.0 * d_intercept); ! } *************** *** 709,712 **** --- 719,725 ---- if ( rD < rV * out_of_range_multiplier ) // out of range condition dontfireoption[j] = TRUE; + + + //if (j == 0)// && weapon_in_range) *************** *** 725,730 **** if (j == 0) { ! if ((fabs (angle_fire) < sweep[j]) && ! weapon_in_range ) fireoption[0] = TRUE; } --- 738,742 ---- if (j == 0) { ! if (weapon_in_range ) fireoption[0] = TRUE; } *************** *** 773,777 **** if (distance < option_range[state][j]) dontfireoption[j] = TRUE; ! else fireoption[j] = TRUE; // added... is needed for mrmrm state-change range_fire = FALSE; --- 785,789 ---- if (distance < option_range[state][j]) dontfireoption[j] = TRUE; ! else if (weapon_in_range) fireoption[j] = TRUE; // added... is needed for mrmrm state-change range_fire = FALSE; *************** *** 782,786 **** if (distance > option_range[state][j]) dontfireoption[j] = TRUE; ! else fireoption[j] = TRUE; // added... is needed for mrmrm state-change range_fire = TRUE; --- 794,798 ---- if (distance > option_range[state][j]) dontfireoption[j] = TRUE; ! else if (weapon_in_range) fireoption[j] = TRUE; // added... is needed for mrmrm state-change range_fire = TRUE; |