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;
|