X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FAircraft%2Faircraft.cxx;h=c3514e29afcc75d02f89075efce8e14a4b170c37;hb=3fbf3aa080159fb5dc41af7c4885b080013c8295;hp=e88fb83e4f2d76f9e1fa2d391b30f65d048c1a0f;hpb=0f6b618381581fae378fc7d9be567c6df77fd09f;p=flightgear.git diff --git a/src/Aircraft/aircraft.cxx b/src/Aircraft/aircraft.cxx index e88fb83e4..c3514e29a 100644 --- a/src/Aircraft/aircraft.cxx +++ b/src/Aircraft/aircraft.cxx @@ -2,7 +2,7 @@ // // Written by Curtis Olson, started May 1997. // -// Copyright (C) 1997 Curtis L. Olson - curt@infoplane.com +// Copyright (C) 1997 Curtis L. Olson - http://www.flightgear.org/~curt // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License as @@ -16,32 +16,34 @@ // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software -// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // // $Id$ +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif -#include -#include // strdup +#include +#include // strdup #include -#include #include #include #include -#include -#include +#include +#include +#include #include
+#include
#include
#include
#include #include #include #include -#include -#include
#include "aircraft.hxx" @@ -140,7 +142,7 @@ void fgReadAircraft(void) { globals->get_commands()->addCommand("load-aircraft", fgLoadAircraft); } -static bool +bool fgLoadAircraft (const SGPropertyNode * arg) { static const SGPropertyNode *master_freeze @@ -162,7 +164,7 @@ fgLoadAircraft (const SGPropertyNode * arg) globals->restoreInitialState(); fgSetString("/sim/aircraft", aircraft.c_str()); - fgSetString("/sim/panel/path", "Aircraft/c172/Panels/c172-vfr-panel.xml"); + fgSetString("/sim/panel/path", "Aircraft/c172p/Panels/c172-vfr-panel.xml"); if ( aircraft.size() > 0 ) { SGPath aircraft_path(globals->get_fg_root()); @@ -186,7 +188,7 @@ fgLoadAircraft (const SGPropertyNode * arg) // Initialize the (new) 2D panel. // string panel_path = fgGetString("/sim/panel/path", - "Aircraft/c172/Panels/c172-vfr-panel.xml"); + "Aircraft/c172p/Panels/c172-vfr-panel.xml"); FGPanel *panel = fgReadPanel(panel_path); if (panel == 0) { @@ -202,14 +204,8 @@ fgLoadAircraft (const SGPropertyNode * arg) globals->get_current_panel()->update(0); } - // Load the new 3D model - // - globals->get_aircraft_model()->unbind(); - delete globals->get_aircraft_model(); - globals->set_aircraft_model(new FGAircraftModel); - globals->get_aircraft_model()->init(); - globals->get_aircraft_model()->bind(); - + globals->get_aircraft_model()->reinit(); + // TODO: // load new electrical system // @@ -225,14 +221,7 @@ fgLoadAircraft (const SGPropertyNode * arg) t = fgInitTime(); globals->set_time_params( t ); - // Reinitialize some subsystems - // - globals->get_viewmgr()->reinit(); - globals->get_controls()->reset_all(); - globals->get_autopilot()->reset(); - globals->get_aircraft_model()->reinit(); - globals->get_subsystem("fx")->reinit(); - + globals->get_subsystem("xml-autopilot")->reinit(); fgReInitSubsystems(); if ( !freeze ) {