1
0
Fork 0
Commit graph

755 commits

Author SHA1 Message Date
mfranz
9b8f29fdfe use local hash (again) to store last messages per callsign 2009-02-15 17:50:13 +00:00
mfranz
b465bd27a8 --prop:sim/multiplay/write-message-log=1 enables logging of MP messages
to $FG_HOME/mp-messages.log
2009-02-15 17:36:47 +00:00
mfranz
efaa3d545d - simplification (multiplayer.model does a lot of the checks already)
- write to /sim/messages/mp-plane (rather than ai-plane)
- screen.nas: better color?
2009-02-15 15:48:38 +00:00
mfranz
c77af3c4b6 map /sim/messages/mp-plane to screen/voice 2009-02-15 15:10:47 +00:00
mfranz
8f5304ad90 add values() function as a counterpiece to keys() (see Perl) 2009-02-15 14:13:49 +00:00
stuart
dfc22cf009 Use initNode for safe, effective relief from code bloat. 2009-02-12 21:14:54 +00:00
stuart
72cc845a63 Remove redundant (and ugly) set1 function 2009-02-12 20:32:04 +00:00
stuart
a0a493b8ce Failure manager. Based on work by Erobo and John DENKER. 2009-02-12 20:24:06 +00:00
mfranz
824cff9192 comment out isnan()
It conflicts with Jester's debugging setup, and Andy says there should be
no NaN in the first place. This is a bug that needs to get fixed. Just
enable isnan() if you want to detect NaNs in the meantime. (The MP system
creates them ATM. The property getters shall turn them into nil.)
2009-02-12 16:59:03 +00:00
mfranz
a9afecf74b debug.error: rename to warn, reduce default caller skip, documentation 2009-02-09 14:29:43 +00:00
mfranz
747d9dcbde debug mode: fix slice 2009-02-09 00:24:23 +00:00
mfranz
6495f062d3 var++ 2009-02-08 21:58:31 +00:00
mfranz
4757d49c0c debug mode: add hint for why the write operation probably failed 2009-02-08 21:16:28 +00:00
mfranz
04511dbc8d --prop:debug=1 enables a debug mode where some functions generate warnings.
setprop(), props.Node.set{,Int,Bool,Double}Value() complain if they couldn't
write, e.g. because the target property is write protected, or doesn't have
a tied setter function.
2009-02-08 20:46:55 +00:00
mfranz
a1c1018aa2 Anders GIDENSTAM: adapt for unified tank level property (and do it right :-) 2009-02-06 23:14:49 +00:00
sydadams
22b9c908a9 Update jsb aircraft to use the changed tank/level-lbs property 2009-02-06 22:56:00 +00:00
mfranz
1d783e03bb remove debug.exit(); add debug.isnan()
- exit was only justified at times where fgcommand() needed an explicit
  node statement, which made using it a bit clumsy. Nowadays that's only
  fgcommand("exit"), which is as good as debug.exit() was.
- isnan() is really only for debugging and, thus, not in the global
  namespace. Nasal code should never generate NaNs (though it's easy:
  var nan = 1/0; There! :-), and NaNs imported from the C++ side (tied
  properties!) should get fixed there. IOW: routine checks for nan in
  Nasal can only be temporary hacks/debugging measures.
2009-02-06 14:41:13 +00:00
mfranz
1d50d3c086 dialog: show unavailable entries orange; cleanup 2009-02-06 12:03:31 +00:00
mfranz
540b9368fe multiplayer.model: more containers, more data, variable renaming,
temporarily catching error exceptions, colored missing-ac message ...
2009-02-04 21:47:19 +00:00
mfranz
158c7ea800 - check for availability of MP models (add 'available' member)
- display "??? foo" if "foo" isn't available on the system
- make sure x/y/z are never nil (I think I had such a case)
2009-02-03 16:15:37 +00:00
mfranz
7985e6e984 model_view: add some orientation parameters 2009-02-01 21:59:41 +00:00
mfranz
afe8de52ab - faster sorting
- update loop fix
2009-02-01 01:58:15 +00:00
mfranz
a644007c67 disabling the dialog in screenshots is nice in theory, but doesn't really work 2009-01-31 22:01:42 +00:00
mfranz
9fdec57110 dialog: don't start multiple loops 2009-01-31 21:53:54 +00:00
mfranz
ab1e00a81e - re-open after gui-reinit
- only update once per sec
- cosmetics
2009-01-31 21:22:18 +00:00
mfranz
3cf6667328 gahh ... s/setlistener/_setlistener/ 2009-01-31 20:29:20 +00:00
mfranz
8bb50c1871 model_view_handler: use multiplayer.model + add selection popup 2009-01-31 19:30:31 +00:00
mfranz
65e4b71406 factor the MP aircraft monitoring code out of the dialog class and let
the dialog use it. Other services need the same functionality and it
should only be done once.
2009-01-31 17:15:48 +00:00
mfranz
82d4864c24 model_view: remove stale/invalid entries 2009-01-31 10:24:08 +00:00
mfranz
9927e31504 - use "var" keywords everywhere
- bail out if there's no autopilot at all
2009-01-30 21:24:59 +00:00
mfranz
e31acedcfa model_view: make it more reliable 2009-01-30 15:22:17 +00:00
mfranz
db1fcf2949 model_view: remove experimental mouse handling; cleanup 2009-01-30 12:05:29 +00:00
mfranz
cf69b0d01b model_view: ignore AI models for now (make that configurable?) 2009-01-30 00:16:14 +00:00
mfranz
6aa74d2e7a add model-view: switch through all AI/MP models via dialog in bottom/left corner 2009-01-29 23:57:57 +00:00
mfranz
c697394b1c strip \n from own chat messages (again :-) 2009-01-27 20:12:19 +00:00
mfranz
9957c0a6e1 add eXtended isstring: isxstring(), which also applies to \n 2009-01-27 19:27:21 +00:00
mfranz
fedd64d89a optimization & cleanup & var keyword:
- use find() instead of string.match()  (way faster!)
- add a missing var keyword
- don't store old messages in a hash, but only store the respective last
  message in the model's multiplayer branch
- keep history \n-trimmed (instead of removing \n only when concatenating)
2009-01-27 16:55:46 +00:00
mfranz
14a928f391 trim: allow to specify alternative trim class function 2009-01-27 01:42:46 +00:00
mfranz
9d4d61e2e8 don't close the dialog on Esc (Jester was right: that's annoying :-) 2009-01-25 15:18:51 +00:00
mfranz
2541ad8e30 All elements of a --prop:display expression containing a percent sign are
interpreted as number format. (They couldn't be valid property paths anyway.)
If there's more than one such element, then the last one counts.

  --prop:display=%.2g,velocities/airspeed-kt,position/altitude-ft
2009-01-25 00:27:12 +00:00
mfranz
8d62bc2b0f Anders GIDENSTAM: center dialog and print report only when there was a fire 2009-01-18 16:15:02 +00:00
mfranz
1fe5ace8b5 Anders GIDENSTAM: wildfire (read $FG_ROOT/Models/Effects/Wildfire/README) 2009-01-18 15:43:08 +00:00
mfranz
e8484502da s/set_lonlat/set_latlon/ 2009-01-15 00:39:51 +00:00
mfranz
64a22469ab s/hdg/brg/ 2009-01-12 21:50:43 +00:00
mfranz
c31ab0ea96 showHelpDialog(): leave some margin for resizing 2009-01-12 12:27:41 +00:00
mfranz
1fc7581f77 add symbols for new cursors 2009-01-11 15:04:55 +00:00
mfranz
e96322b351 OverlaySelector: don't choke if there are no options 2009-01-11 02:42:33 +00:00
mfranz
198d1cb60f make dialog resizable with Ctrl-dragging 2009-01-10 22:31:30 +00:00
curt
278b0a7262 This should never really have been in the central nasal area. 2009-01-03 01:23:47 +00:00
mfranz
aff4cacf70 ... and allow to specify several paths separated with comma. Of course,
multiple usage of --prop:display[*]=... is also supported.
2008-12-23 10:15:12 +00:00
mfranz
087494abf5 add some documentation about the property display 2008-12-23 10:03:26 +00:00
mfranz
bab238d58b string(): make zero padding work if arg is 0 2008-12-22 01:50:48 +00:00
mfranz
58897fb5f4 revert init signal change -- better fix the real problem 2008-12-19 20:52:22 +00:00
mfranz
305cac01f3 use a more reliable property to detect real-weather-fetch 2008-12-19 13:50:44 +00:00
mfranz
8fc95fdde1 - add geo.viewer_position()
- make geo.{aircraft,click}_position() a bit faster
- no longer import the math functions (wasn't worth it)
2008-12-19 13:41:25 +00:00
mfranz
2d37f6c60b - remove menu greying out (there's no such entry any more)
- start dynamic view at fdm-initialized to avoid nasal errors (math.cos)
2008-12-18 13:05:56 +00:00
mfranz
5df46f3e5c - add controls.wingsDown() wrapper
- carrier-bindings.xml: remove trailing spaces & add some blanks
2008-12-17 18:42:41 +00:00
mfranz
06cb820759 add KT2MPS/MPS2KT conversion constants 2008-12-17 01:03:32 +00:00
mfranz
821c3bd31c rain: read some properties only if they are actually needed 2008-12-15 16:16:08 +00:00
mfranz
cb76be5383 rain: add units to the output properties and explain them 2008-12-15 08:01:33 +00:00
mfranz
d8131d6944 only turn osg precipitation off for internal views 2008-12-15 00:18:26 +00:00
mfranz
e8a666c8e4 globals: cosmetics
props: initNode(): allow nil as first arg
2008-12-14 23:45:33 +00:00
mfranz
2abb0516b5 Vivian MEAZZA: support for handling rain flow on canopies
/me: some modifications + cosmetics in the light class
2008-12-14 23:43:46 +00:00
mfranz
2be64792e1 add NM2M and M2NM constants 2008-12-13 12:55:47 +00:00
mfranz
117dac8b4f removelistener() must not remove path validation listeners 2008-12-12 14:57:38 +00:00
mfranz
e5656fedc9 store 30 history entries by default (settable via property
/sim/gui/prop-key-handler/history-max-size)
2008-12-09 00:20:29 +00:00
mfranz
59ff8c6129 also search value 2008-12-08 14:03:18 +00:00
mfranz
db4c98d63e add constants GAL2L and LB2KG 2008-12-07 14:44:52 +00:00
mfranz
291ba987d3 fuel dialog: add tank checkbox only if the "selected" property is actually
writable. This omits the box: <selected type="bool" write="n">1</selected>
2008-12-04 11:34:05 +00:00
mfranz
71f80dff34 initNode: add fourth optional parameter: "force", which enforces a type,
so n.initNode("whatever", 1 "BOOL", 1);  will make node n a BOOL even
if it was "DOUBLE" before. Default: 0. An existing value will be retained,
though.
2008-12-04 11:30:44 +00:00
mfranz
8bf823c4fb initNode: make path optional and let it default to "". This is allowed:
props.globals.getNode("sim/foo", 1).initNode();  and equivalent to
    props.globals.getNode("sim").initNode("foo");
2008-12-03 20:53:00 +00:00
mfranz
5c88cdf6f1 dump: no space after [ and before ] 2008-12-03 20:49:33 +00:00
mfranz
bcc043a368 security wrappers: move original func var into wrapper closure 2008-11-26 16:17:55 +00:00
mfranz
1e5cf9ff0a more use of initNode & some consistency improvements (method format) 2008-11-26 16:09:16 +00:00
mfranz
f7e246905b tree(): show which nodes are aliased to which nodes 2008-11-26 16:07:32 +00:00
mfranz
acff4f55ab add getAliasTarget() wrapper 2008-11-26 11:35:48 +00:00
mfranz
8b62c82b38 fix another forgotten geo.FT2M -> globals.FT2M 2008-11-23 22:22:49 +00:00
mfranz
521954116c only enable precipitation if it's enabled in the gui
(/sim/rendering/precipitation-gui-enabled) *and* if the aircraft wants it
(/sim/rendering/precipitation-aircraft-enabled). Some aircraft model rain
on the windshield and want to turn rain off for interior views.
2008-11-23 09:53:46 +00:00
mfranz
31162ce78b more initNode() (Alzheimer?) 2008-11-22 21:02:04 +00:00
mfranz
75470bf31d Rename Node.clear() to Node.clearValue(), because that's the name that we
use on the C++ side.
2008-11-22 12:05:01 +00:00
mfranz
b3032f63c7 Add Node.clear() method, which resets a node to type "NONE" and value 'nil'.
This can be used to invalidate nodes and may be interesting for debugging
purposes. Use carefully!
2008-11-22 11:20:44 +00:00
mfranz
2b77665c22 setCursor: complain and show options if wrong cursor name was given 2008-11-20 23:03:24 +00:00
mfranz
8d7545252f convert more initNode to the method version (sorry, had forgotten these) 2008-11-20 22:06:54 +00:00
mfranz
f263e693f2 remove deprecated (wrapper) function props.initNode() 2008-11-20 20:41:19 +00:00
mfranz
55b7e3d8e0 dynamic_view.nas: use D2R/R2D constants
globals.nas: move constants to top
geo.nas: fix comments & make bucket_span "private"
2008-11-20 20:18:39 +00:00
mfranz
c74d6ee75e - make props.initNode a props.Node method
- props.nas: some minor improvements
2008-11-20 19:45:40 +00:00
mfranz
55c34a0748 calculate M2FT from FT2M (of course :-) 2008-11-20 11:33:42 +00:00
mfranz
eebfdf218c - make constants D2R, R2D, M2FT, FT2M global
- geo.put_model: use 'add-model' fgcommand
2008-11-20 11:24:46 +00:00
mfranz
dcb1321923 make constants D2R, R2D, M2FT, FT2M global 2008-11-20 11:24:45 +00:00
mfranz
9976b71472 init: make sure /sim/tutorials actually exists 2008-11-15 19:40:28 +00:00
mfranz
81e967a609 nasal now returns constant and readable ghosttypes, so we do no longer
need the symbol table and comparison with the ghosttype of props._globals()
2008-11-13 12:00:23 +00:00
mfranz
c6cd898f64 - update comment to reflect alias()/unalias() addition
- minor improvements & cosmetics
2008-11-13 11:57:07 +00:00
mfranz
2aba6e7d80 Node: only wrap() functions that actually return property ghosts 2008-11-12 17:06:53 +00:00
mfranz
547770e30b add alias()/unalias() wrapper methods 2008-11-12 14:43:41 +00:00
mfranz
78d1a6e631 OverlaySelector: check callback function explicitly for nil 2008-11-12 11:43:26 +00:00
mfranz
d1fd61c728 gui.nas: use nasal-dir-initialized signal for INIT func, so that it's
earlier available. (The settimer/1 was a workaround for another
    problem that should be fixed by now.)
globals.nas: load $FG_HOME/Nasal/ files as first settimer(0) function,
    so that it always comes after all nasal-dir-initialized callbacks

This should fix the glide_slope_tunnel/popupTip bug and makes the
startup order clearer and cleaner.
2008-11-11 14:54:51 +00:00
mfranz
05cc0f3fda add complementary function to bits.string(): bits.value() This is rather
pointless for running fgfs, but can be useful for development and debugging,
and it's just a few lines.
2008-10-25 15:03:32 +00:00
mfranz
6384588444 I said "correctly". 2008-10-25 14:24:26 +00:00
mfranz
f7bd13fed3 debug.dump(): print empty strings as hash key correctly 2008-10-25 14:20:47 +00:00
mfranz
6371627424 bits.string: add optional zero-padding 2008-10-23 22:16:32 +00:00