# include <config.h>
#endif
-#include <simgear/math/point3d.hxx>
#include <Main/fg_props.hxx>
#include <Main/globals.hxx>
#include <Scenery/scenery.hxx>
#include <cstdlib>
#include <time.h>
-SG_USING_STD(string);
+using std::string;
#include "AIStorm.hxx"
-FGAIStorm::FGAIStorm() : FGAIBase(otStorm) {
+FGAIStorm::FGAIStorm() :
+ FGAIBase(otStorm, false)
+{
delay = 3.6;
subflashes = 1;
timer = 0.0;
setStrengthNorm(scFileNode->getDoubleValue("strength-norm", 1.0));
}
-bool FGAIStorm::init() {
- return FGAIBase::init();
+bool FGAIStorm::init(bool search_in_AI_path) {
+ return FGAIBase::init(search_in_AI_path);
}
void FGAIStorm::bind() {
* speed * 1.686 / ft_per_deg_lon;
// set new position
- pos.setlat( pos.lat() + speed_north_deg_sec * dt);
- pos.setlon( pos.lon() + speed_east_deg_sec * dt);
+ pos.setLatitudeDeg( pos.getLatitudeDeg() + speed_north_deg_sec * dt);
+ pos.setLongitudeDeg( pos.getLongitudeDeg() + speed_east_deg_sec * dt);
// do calculations for weather radar display
UpdateRadar(manager);
double user_altitude = manager->get_user_altitude();
// calculate range to target in feet and nautical miles
- double lat_range = fabs(pos.lat() - user_latitude) * ft_per_deg_lat;
- double lon_range = fabs(pos.lon() - user_longitude) * ft_per_deg_lon;
+ double lat_range = fabs(pos.getLatitudeDeg() - user_latitude) * ft_per_deg_lat;
+ double lon_range = fabs(pos.getLongitudeDeg() - user_longitude) * ft_per_deg_lon;
double range_ft = sqrt(lat_range*lat_range + lon_range*lon_range);
range = range_ft / 6076.11549;
if (range < (diameter * 0.5) &&
- user_altitude > (altitude - 1000.0) &&
+ user_altitude > (altitude_ft - 1000.0) &&
user_altitude < height) {
turb_mag_node->setDoubleValue(strength_norm);
turb_rate_node->setDoubleValue(0.5);