f30e034e55
A big step at bringing the default aircraft into the state it actually deserves. Features: - new, accurate exterior modell, modelled with original 3-views by Cessna - textures with shadow shading - livery changing sytem over mp - immatriculation over mp - glass shader with fresnel effect - nearly complete 3d-panel Known Bugs: - Radio_Stack shines through the fuselage. New 3d radio_stack has yet to be done. To-Do: - Suction-Instrument - Interior with much more details and painting - Radio_stack - doors openable - lights - fully animation of the gear - failure system by Erobo
35 lines
1.1 KiB
Text
35 lines
1.1 KiB
Text
# ===========================
|
|
# Immatriculation by Zakharov
|
|
# ===========================
|
|
|
|
var refresh_immat = func {
|
|
var immat = props.globals.getNode("/sim/model/immat",1).getValue();
|
|
var immat_size = size(immat);
|
|
if (immat_size != 0) immat = string.uc(immat);
|
|
for (var i = 0; i < 6; i += 1) {
|
|
if (i >= immat_size)
|
|
glyph = -1;
|
|
elsif (string.isupper(immat[i]))
|
|
glyph = immat[i] - `A`;
|
|
elsif (string.isdigit(immat[i]))
|
|
glyph = immat[i] - `0` + 26;
|
|
else
|
|
glyph = 36;
|
|
props.globals.getNode("/sim/multiplay/generic/int["~i~"]", 1).setValue(glyph+1);
|
|
}
|
|
}
|
|
|
|
var immat_dialog = gui.Dialog.new("/sim/gui/dialogs/c172p/status/dialog",
|
|
"Aircraft/c172p/Dialogs/immat.xml");
|
|
|
|
setlistener("/sim/signals/fdm-initialized", func {
|
|
if (props.globals.getNode("/sim/model/immat") == nil) {
|
|
var immat = props.globals.getNode("/sim/model/immat",1);
|
|
var callsign = props.globals.getNode("/sim/multiplay/callsign").getValue();
|
|
if (callsign != "callsign") immat.setValue(callsign);
|
|
else immat.setValue("F-GHYQ");
|
|
}
|
|
refresh_immat();
|
|
setlistener("sim/model/immat", refresh_immat, 0);
|
|
},0);
|
|
|