var vertical_change =math.sin(rocket_pitch*math.pi / 180.0)*rocket_speed;
var horizontal_change =math.cos(rocket_pitch*math.pi / 180.0)*rocket_speed;
#print ("vertical_change:" , vertical_change);
#print ("horizontal_change:" , horizontal_change);
#print ("rocket_dir:" , rocket_dir);
var latche = math.cos(rocket_dir*math.pi / 180.0)*horizontal_change;
var lonche = math.sin(rocket_dir*math.pi / 180.0)*horizontal_change;
var rocket_launch = func {
var sec = getprop("/sim/time/elapsed-sec");
var property_alt=getprop("/ai/models/tanker[0]/position/altitude-ft");
if (property_alt==nil){
var oldalt=0;
}else{
var oldalt=getprop("/ai/models/tanker[0]/position/altitude-ft");
}
var property_lat=getprop("/ai/models/tanker[0]/position/latitude-deg");
if (property_lat==nil){
var oldlat=0;
}else{
var oldlat=getprop("/ai/models/tanker[0]/position/latitude-deg");
}
var property_lon=getprop("/ai/models/tanker[0]/position/longitude-deg");
if (property_lon==nil){
var oldlon=0;
}else{
var oldlon=getprop("/ai/models/tanker[0]/position/longitude-deg");
}
if (sec <40){ ←ここの数値で発射までの間を設定している
var newalt = 0+oldalt;
var newlat = 0+oldlat;
var newlon = 0+oldlon;
}else{
var newalt = vertical_change*3.2808+oldalt;
var newlat = latche*360.0/40000000+oldlat;
var newlon = lonche*360.0/(math.cos(newlat*math.pi / 180.0)*40000000)+oldlon;
}
#print("speed:",speed," newalt:" , newalt," newlat:" , newlat," newlon:" , newlon);
interpolate("/ai/models/tanker[0]/position/altitude-ft", newalt, 1);
interpolate("/ai/models/tanker[0]/position/latitude-deg", newlat, 1);
interpolate("/ai/models/tanker[0]/position/longitude-deg", newlon, 1);
settimer(func { rocket_launch(); }, 0.1 );
}
_setlistener("/sim/signals/fdm-initialized", func { rocket_launch(); });
var vertical_change =math.sin(rocket_pitch*math.pi / 180.0)*rocket_speed;
var horizontal_change =math.cos(rocket_pitch*math.pi / 180.0)*rocket_speed;
#print ("vertical_change:" , vertical_change);
#print ("horizontal_change:" , horizontal_change);
#print ("rocket_dir:" , rocket_dir);
var latche = math.cos(rocket_dir*math.pi / 180.0)*horizontal_change;
var lonche = math.sin(rocket_dir*math.pi / 180.0)*horizontal_change;
var rocket_launch = func {
var sec = getprop("/sim/time/elapsed-sec");
var property_alt=getprop("/ai/models/tanker[0]/position/altitude-ft");
if (property_alt==nil){
var oldalt=0;
}else{
var oldalt=getprop("/ai/models/tanker[0]/position/altitude-ft");
}
var newalt = vertical_change*3.2808+oldalt;
var property_lat=getprop("/ai/models/tanker[0]/position/latitude-deg");
if (property_lat==nil){
var oldlat=0;
}else{
var oldlat=getprop("/ai/models/tanker[0]/position/latitude-deg");
}
var newlat = latche*360.0/40000000+oldlat;
var property_lon=getprop("/ai/models/tanker[0]/position/longitude-deg");
if (property_lon==nil){
var oldlon=0;
}else{
var oldlon=getprop("/ai/models/tanker[0]/position/longitude-deg");
}
var newlon = lonche*360.0/(math.cos(newlat*math.pi / 180.0)*40000000)+oldlon;
#print ("newalt:" , newalt," newlat:" , newlat," newlon:" , newlon);
interpolate("/ai/models/tanker[0]/position/altitude-ft", newalt, 1);
interpolate("/ai/models/tanker[0]/position/latitude-deg", newlat, 1);
interpolate("/ai/models/tanker[0]/position/longitude-deg", newlon, 1);
settimer(func { rocket_launch(); }, 0.1 );
}