1
0
Fork 0
Commit graph

6178 commits

Author SHA1 Message Date
mfranz
c386f00312 I take that back. This doesn't work yet. :-) 2006-03-09 11:23:15 +00:00
mfranz
5ebd1a18f3 add <load>/<unload> support to AI models, including aircraft models. For
aircraft models this is only called if they are loaded as AI, not if they
are the model flown by the human pilot. This has technical reasons (too
soon for Nasal/fg), but is useful to distinguish AI and non-AI use, for
example to set a different livery for AI models, or to set different
animation properties.
2006-03-09 11:14:16 +00:00
mfranz
83b64b0140 remove leftover #include; changed comment 2006-03-09 11:05:32 +00:00
mfranz
2796f3f4a5 NasalSys.[ch]xx:
implement FGNasalModelData class for execution of XML <load> and <unload>
  scripts. modelLoaded() is called by the model loader, and the destructor
  on branch removal.

modelmgr.cxx:
tilemgr.cxx:
tileentry.[ch]xx:
  make scenery and custom objects run their Nasal scripts on loading
  and unloading. Let OBJECT_STATIC object not be cached.
2006-03-09 09:04:03 +00:00
mfranz
b0b5c2dda9 remove useless test 2006-03-08 20:23:31 +00:00
mfranz
6867462210 crashfix: handleCommand() is called from other modules (input callbacks,
fgcommands from C++ or GUI), so we need a separate context here. (See
also solution in FGNasalListener::valueChanged)
2006-03-08 16:06:32 +00:00
ehofman
b7ef6d8cef Add the builddir to the list of include directories to be able to include Include/version.h 2006-03-08 12:01:45 +00:00
mfranz
2de4fd5d8e add support for <nasal> blocks <open> and <close> in XML dialogs:
<nasal>
      <open>print("I'm called on dialog open")</open>
      <close>print("I'm called on dialog close")</close>
  </nasal>

All Nasal runs in a dialog namespace, so that variables and functions
defined in the <open> block can be used in <binding>s, etc. This is
especially useful for <radio> button handling. See "location-in-air.xml".
2006-03-08 10:44:46 +00:00
mfranz
77de0c8e09 add deleteModule() method 2006-03-08 10:35:20 +00:00
mfranz
ed9e16d001 Jean-Yves Lefort: fix "crash" on exit
mf:
pthread_cancel doesn't seem to work correctly on all supported platforms.
It apparently causes SGBlockingQueue::pop() to correctly leave the thread on
the cancellation point pthread_wait(), but the SGGuard() destructor isn't
called, so the queue mutex remains locked. This triggered an assert() on
pthread_join(). This patch uses an empty ICAO request as signal for the
thread to terminate itself.
2006-03-07 10:26:25 +00:00
curt
8676df6856 LFS Glass cockpit interface (allows development independent of the opengc
interface which is somewhat stagnant.)
2006-03-06 18:49:57 +00:00
daveluff
bd4072e0c7 Selecting an approach from the active waypoint page was broken - should now be fixed 2006-03-05 16:56:08 +00:00
daveluff
89bdd4fa99 Reduce console output 2006-03-05 16:53:06 +00:00
daveluff
015ead9fcc Add the MAXNI IAF to the C83 approach, and add a few guards against not finding the fixes in the data. I realise that tweaking a hard-coded approach seems daft when loading approach data from file is high on the TODO, but I'm using C83 as an example for a readme so it may as well match the published chart properly... 2006-03-05 16:49:20 +00:00
mfranz
b33d28cf4b warning-- 2006-03-04 22:05:19 +00:00
mfranz
f7e41b2e3e compile! 2006-03-04 21:16:11 +00:00
fredb
acd09b99cb Jean-Yves Lefort :
I have implemented a Honeywell MK VIII EGPWS emulation for FlightGear.
The MK VIII is an Enhanced Ground Proximity Warning System aimed at
regional turboprop and small turbofan aircrafts such as the Citation,
Citation Bravo, B1900D, Beechcraft 99 and L410.

Frederic Bouvier:
make the MSVC compilation possible. Rearrange base package directories.
2006-03-04 20:21:32 +00:00
ehofman
479d4d7484 Mathias Fröhlich:
Fix the AI-Radar code.
2006-03-04 12:49:30 +00:00
durk
b9752635a9 Improved selection of active runway (currently AI traffic only).
The original code selected the most preferable runway combination,
regardless of which combination was currently active. This patch
builds in some additional resistance against change, by keeping
track of which runways are already in use, and forces a change
in active runways only when new (wheather/time of day) conditions
force it to do so, resulting in much more consistent runway assignment.
behavior.
2006-03-04 08:49:36 +00:00
mfranz
ebc9e71916 improve error message: if festival doesn't seem to be listening, then it's
probably blocked by not being able to open a sound device (because fgfs is
using the only available device already).
2006-03-03 19:43:41 +00:00
ehofman
813c518e07 Mathias Fröhlich:
I have some bugfixes which will avoid fg just crashing if the sound device
could not be opened.
2006-03-03 15:13:42 +00:00
fredb
1051288b9d Remove a useless and harmful statement : MSVC complains std is not a valid namespace because no STL header is included 2006-03-02 22:52:05 +00:00
andy
170ed002e2 From Vivian: change default up/down angles on the Launchbar from 30 to
45 degrees and add a "holdback-length" attribute.
2006-03-02 16:49:25 +00:00
mfranz
dcffb9d335 let removelistener() return the number of remaining Nasal listeners. (We
need to return nil for errors and something else for success, so we can
as well return something (remotely) useful.)
2006-03-02 10:41:48 +00:00
andy
e4fe99ce12 Fixes a bugs in the handling of the holdback mount point (by Mathias),
and in the calculation of the launchbar angle (by Vivian).

It also calculates the holdback angle, and sets a Boolean value which
can be used to initiate the release of the catapult strop submodel at
the appropriate moment (new code by Vivian).
2006-03-01 22:59:58 +00:00
mfranz
47f6b67365 work better with interpolated brakes 2006-03-01 21:04:52 +00:00
andy
bdec9f1bba Uninitialized member variable. Default to "turbocharged", not "supercharged" 2006-03-01 17:45:26 +00:00
andy
45e76b357e Forgot to hook up the WASTEGATE control. Also, fix a cut-n-paste
constant that got incorrectly copied from Jet.cpp, and some cosmetics.
2006-03-01 17:38:54 +00:00
mfranz
ef70c9cf41 backspace accelerator 2006-03-01 14:26:17 +00:00
andy
ef8bac3b2f Oops, forgot the hooks to the configuration. 2006-02-28 19:27:33 +00:00
mfranz
55cde5f160 - assign unique id to listeners
- let setlistener return id
- add removelistener(id) command
2006-02-28 14:55:37 +00:00
andy
97b75a79bf Inspired by a patch from Vivian, this adds a settable "WASTEGATE"
control to piston engines that allows external scripts to control the
turbo/supercharger boost programatically by setting this axis to
values in the range [0:1].  It also adds a "turbo-lag" attribute (a
time in seconds) to engines implementing turbocharger spooling delays.

This isn't terribly well tested, but doesn't seem to have broken
anything.
2006-02-27 23:35:02 +00:00
ehofman
9b33107551 Syn.c w. JSBSim. 2006-02-27 08:41:24 +00:00
david
e89194b42a Change from Dave Perry:
I am attaching a trivial patch that changes the normalization from 24 to
12 in turn_indicator.cxx.  With this change, the pa24 tc has a turn
indicator spin value in the property tree of 0.9996 and the same value
for the pa28-161 is 1.0, so there is no harm to a 24 volt electrical
system in this change.  Should the battery or alternator put out a lower
voltage than 12 volts, the spin value goes down and the tc shows a
negative turn that increases as the voltage gets less.  This file shows
you as the author.  If you are comfortable with this change, commit it
to cvs and the tc will be correct even for 12 volt systems.
2006-02-27 02:24:14 +00:00
david
86c3a3b5c4 Allow YASim flight models to override the hard-coded fine and coarse
propeller pitch stops for constant speed propellers.  The default
values are the same as the previous hard-coded values.  The new
attributes, "fine-stop" and "coarse-stop", are documented in the base
package, Docs/README.yasim.
2006-02-26 16:46:51 +00:00
durk
395ea07252 Bugfix: variable fp was deleted in both AIBase::~AIBase() and AIAircraft::AIAircraft(), resulting in a segmentation fault.
Here the delete fp; statement is removed from the AIAircraft() destructor.
2006-02-23 21:42:11 +00:00
mfranz
1ece476355 make abortion more efficient ;-) 2006-02-23 12:55:57 +00:00
mfranz
d33b6da077 catch string exceptions 2006-02-23 08:32:27 +00:00
daveluff
00ba5a853e Recent SimGear changes seem to require more additions of config.h to FG in order to compile on Cygwin 2006-02-22 21:04:47 +00:00
daveluff
8bfd913e0c Oops - I think I introduced some dos line endings - this should fix it 2006-02-22 20:27:00 +00:00
daveluff
44a375520a A couple of hacks to fix cygwin compilation. These may not be the correct fix, but they prevent new cygwin users getting an almost instant compile error following make 2006-02-22 19:21:29 +00:00
mfranz
3407419c4e Stuart BUCHANAN:
Nasal/XML based tutorial system
2006-02-22 17:09:06 +00:00
mfranz
4b23e2b131 disable old ATC display. This is now done via screen.log.write() messages.
(Decide after 0.9.10 if it should be replaced with a new C++ implementation,
or if the Nasal one is good enough.)
2006-02-21 21:29:19 +00:00
mfranz
f38f3aabcc new FSF address (see http://www.gnu.org/licenses/gpl.html) 2006-02-21 17:45:03 +00:00
mfranz
146298ad89 set new FSF address (the whole paragraph is taken from
http://www.gnu.org/licenses/gpl.html, so it drops the link)
2006-02-21 17:37:31 +00:00
mfranz
1fe9cce53b - remove unused pthread mutex and condition
- remove cleanup handler that unlocks unused mutex
- make the result_queue a locking queue (blocking is only done in the
  pop() anyway, and this isn't used in the thread at all)
- don't disallow thread cancelling in the request_queue's pop(), which
  is the only cancellation point in this thread
2006-02-21 13:19:33 +00:00
mfranz
c9813d1b5d new FSF address 2006-02-21 01:16:04 +00:00
daveluff
8765d770f8 The current_fixlist pointer is depreciated now that it is set in globals 2006-02-20 22:34:15 +00:00
fredb
c0f6257c18 Suppress a recurrent "no error" message, at least with MSVC 2006-02-19 19:04:21 +00:00
ehofman
5fe860750e Mathias Fröhlich:
This patch makes use of the vectors now available in simgear with that past
patch. And using that it simplyfies the carrier code somehow.

- Small additional factory's to the quaternion code are done in the simgear
  part. Also more explicit unit names in the factory functions.
- The flightgear part makes use of them and simplyfies some computations
  especially in the carrier code.
- The data part fixes the coordinate frames I used for the park positions in
  the carrier to match the usual ones. I believed that I had done so, but it
  was definitly different. Also there are more parking positions avaliable now.
2006-02-19 17:28:31 +00:00