WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Designer Forum (http://www.wcm.at/forum/forumdisplay.php?f=61)
-   -   XLM-Gauge (http://www.wcm.at/forum/showthread.php?t=145673)

EduHir 24.09.2004 18:47

XLM-Gauge
 
Ich habe aus dem Internet folgendes XLM-Gau.

<Gauge Name="DHC2 Beaver EngineSmokeEffectControl" Version="1.0">
<Update Frequency="6"/>
<Element>
<Select>
<Value>
(A:GENERAL ENG1 THROTTLE LEVER POSITION,part) 0.80 &gt;
if{ (A:LIGHT WING,bool) ! if{ (&gt;K:TOGGLE_WING_LIGHTS) } }
els{ (A:LIGHT WING,bool) if{ (&gt;K:TOGGLE_WING_LIGHTS) } }
</Value>
</Select>
</Element>
<Element>
<Select>
<Value>
(A:GENERAL ENG1 THROTTLE LEVER POSITION,part) 0.80 &gt;
if{ (A:SMOKE ENABLE,bool) ! if{ (&gt;K:SMOKE_ON) } }
els{ (A:SMOKE ENABLE,bool) if{ (&gt;K:SMOKE_OFF) } }
</Value>
</Select>
</Element>
</Gauge>

Laut Read-me soll ein Smoke-Effect über das "Light Wing" eingeschaltet werden. Das funktioniert nicht.
Den Smoke-Teil habe ich dazu gemacht. Der funktioniert.
Kontrolliert habe ich das Schalten mit einem Lichteffekt.

Gibt's da eine Lösung??
Ja, sicher. Nur ich bin überfordert!!

edi

EduHir 24.09.2004 18:49

So ein Schmarrn..
Ich werde da noch ein ZIP-dazu hängen

EduHir 24.09.2004 18:52

So, da wäre das ZIP-File...

edi

harry3 24.09.2004 21:04

PHP-Code:

         <Value>
               (
A:GENERAL ENG1 THROTTLE LEVER POSITION,part0.80 &gt;
               if{ (
A:LIGHT WING,bool) ! if{ (&gt;K:TOGGLE_WING_LIGHTS) } }
               
els{ (A:LIGHT WING,bool) if{ (&gt;K:TOGGLE_WING_LIGHTS) } }
         </
Value

Du schaltest das Licht hier aus/ein, je nach dem, wie der Throttel gesetzt ist.
Das willst du aber gar nicht!? Also weg damit!

Wenn du nur das folgende machen willst, dann hab ich einen einfacheren Code dazu:
*Smoke ein, wenn Light ein
*Smoke aus wenn Light aus

Hier der Code dazu:
PHP-Code:

<Element>
<
Select>
<
Value>
(
A:LIGHT WING,bool)  if{ (A:SMOKE,bool) ! if{ (&gt;K:SMOKE_ON) } } els{  (A:SMOKE,bool) if{ (&gt;K:SMOKE_OFF) } }
</
Value>
</
Select>
</
Element

So, ich hoffe nur dass ich keine Fehler drinnen habe, hab's nämlich nicht überprüft.


Grüße,
Harri

EduHir 24.09.2004 23:07

Harry,
danke.!

Aber der Smoke funktioniert eh!! Das passt.

Dass ich das Licht schalten will, das stimmt schon!!
Auf dem Winglight hängt dann ein anderer Raucheffekt.
Und da komme ich einfach nicht z'sammen. Ich habe schon von anderen
XLM-Gauges die Logik verwendet.
Aber scheinbar funktioniert beim Light die Gashebelabfrage nicht:confused:

Und beim Smoke schon:(

Vielleicht fällt dir etwas ein? :)
Ev. mit einer Drehzahlabfrage??

edi

harry3 25.09.2004 00:21

Naja du schaltest doch das Licht manuell aus und ein um damit den Smoke zu steuern dachte ich?:confused:
Eine genaue Beschreibung, was denn das Gauge nun machen soll, wäre hilfreich.
Dann kann ich dir hoffentlich weiterhelfen.


Grüße,
Harri

EduHir 25.09.2004 11:17

Harry,
das Gau ist für eine Freeware-Beaver aus dem 2002.
Wenn die mit über 80% Schubhebel(Leistung) geflogen wird,
soll ein Rauch aus dem Auspuff kommen.
Der Smoke lässt sich scheinbar vertikal nicht positioniern:confused:
Jetzt hat der GAU-Programmier das Wing-Light dafür verwendet,
welches sich genau am Auspuffrohr positionieren lässt.

Der Smokeabschnitt funktioniert. Habe ich auch jetzt in Verwendung
und der Effekt muss nicht so genau positioniert sein.

Aber warum funktioniert der Winglightabschnitt???!!
Programmtechnisch schaut der doch ganz gleich aus:confused:
Das möchte ich jetzt wissen!! Ärgert mich.

Kennst du eine Variabel(Motordrehzahl..), mit der ich die
Schubhebelabfrage ersetzen könnte??

edi

harry3 25.09.2004 12:16

Ich hab das xml Gauge jetzt einmal in meine Extra300 eingebaut.
Ich hab mir die 2 Variablen(Wing light und Gashebelposition) ausgeben lassen. Und es funktioniert. Sobald ich mehr als 80% Schub gesetzt habe, schaltet sich sowohl der Smoke als auch das Winglight ein.
Unter 80% schaltet sich beides wieder aus.

Kann es sein dass das Problem nicht am Code, sondern am Effekt selber liegt?

Grüße,
Harri

PHP-Code:

<Gauge Name="DHC2 Beaver EngineSmokeEffectControl" Version="1.0">
<
Size X="50" Y="100"/>
   <
Update Frequency="6"/>
   <
Element>
      <
Select>
         <
Value>
               (
A:GENERAL ENG1 THROTTLE LEVER POSITION,part0.80 &gt;
               if{ (
A:LIGHT WING,bool) ! if{ (&gt;K:TOGGLE_WING_LIGHTS) } }
               
els{ (A:LIGHT WING,bool) if{ (&gt;K:TOGGLE_WING_LIGHTS) } }
         </
Value>
      </
Select>
   </
Element>
   <
Element>
      <
Select>
         <
Value>
               (
A:GENERAL ENG1 THROTTLE LEVER POSITION,part0.80 &gt;
               if{ (
A:SMOKE ENABLE,bool) ! if{ (&gt;K:SMOKE_ON) } }
               
els{ (A:SMOKE ENABLE,bool) if{ (&gt;K:SMOKE_OFF) } }
         </
Value>
      </
Select>
   </
Element>



<
Element>
<
Text X="50" Y="20" Bright="yes" VerticalAdjust="Center" Adjust="Center" Font="Glass Gauge" Fixed="yes" Color="red" 

Length="1" >
<
String>%( (A:LIGHT WING,bool) )%!d!</String>
</
Text>
</
Element>

<
Element>
<
Position X="0" Y="20" />
<
Text X="50" Y="20" Bright="yes" VerticalAdjust="Center" Adjust="Center" Font="Glass Gauge" Fixed="yes" Color="red" 

Length="4" >
<
String>%( (A:GENERAL ENG1 THROTTLE LEVER POSITION,part) )%!1.2f!</String>
</
Text>
</
Element>


</
Gauge


EduHir 25.09.2004 12:32

Harry,
ich habe am Anfang einige Fehler mit dem Effect gehabt.

Mit dem Variablen auslesen, geht das natürlich am besten!!

Werde mich gleich damit "spielen".

edi

PS.: Eine Frage!!

Wenn ich ein Gau editiere ,muss ich immer den FS verlassen.
Gibt's da eine Möglichkeit???


harry3 25.09.2004 12:57

Also im FS2002 wars recht einfach, da konnte man sich ein "Reload Gauge" programmieren, das drückt man dann einmal, und kann danach die Gauges editieren. Danach drückt man das Gauge nochmal, und schon sind die veränderten Gauges sichtbar.(Code siehe unten)

Im FS2004 kann es teilweise Probleme geben, siehe dazu diese Seite:LINK

Grüße,
Harri

PHP-Code:

<Gauge Name="Reload" Version="1.0">
<
Image Name="reload.bmp" ImageSizes="19,19" Bright="yes"/>
<
Mouse>
<
Tooltip>Reload</Tooltip>
<
Cursor Type="Hand"/>
<
Click>(&gt;K:RELOAD_PANELS,bool) (&gt;K:RELOAD_USER_AIRCRAFT,bool) </Click
</
Mouse>
</
Gauge


EduHir 25.09.2004 15:50

Ich stehe total daneben:(

Bei einem anderen Flieger schalt ich über Wing- und Logo-Light
diverse Effekte(Afterburner und Turbine). Und dazu noch einen Smoke.
Kein Problem!!
Bei der Beaver kontrolliere ich den Smoke einfach mit einem
Standard-MS-FX. Und zum Winglight habe ich auch einen MS-FX.

Ich werde da nochmal von vorne anfangen.

Mit deinem Programmteil komme ich nicht zurecht. Wo schreibt das Gau
hin?? Was soll ich sehen? Position ist der Ausgabeplatz am Schirm??

Danke für den Link! Kannte ich schon, hatte ich allerdings auch schon wieder vergessen.

Könntest mir dein geändertes XML-File senden.
Ich schicke dir über PN meine E-Mail-Adresse.

edi

harry3 25.09.2004 16:32

So, das email müsste angekommen sein.

Grüße,
Harri

EduHir 25.09.2004 17:10

Harry,
danke erstmal!!

Wenn'st deine XML-Hilfe updatest, könntest mir eine Ausgabe zukommen lassen.
Dein XML-Gau habe ich heraus kopiert. Trotzdem:(

Ich bin 1 Woche nicht da.
Ich melde mich dann.

edi

EduHir 26.09.2004 11:47

Harry,
jetzt habe ich das GAU in einem anderen Flieger eingebaut.
Da geht's!!!

Electrical-Sektion habe ich in die Beaver eingebaut.
LIGHTS habe ich auch übernommen.

Das hilft nicht!!
Aber mit LIGHTS ALL(Taste L) werden die Effecte geschaltet.

Muss dann mit dem Model zusammenhängen.
Naja, ich kann mit dem Smoke auch leben. Aber trotzdem witzig!

Gruß

edi

harry3 26.09.2004 19:45

Zitat:

jetzt habe ich das GAU in einem anderen Flieger eingebaut.
Da geht's!!!
Na eben, dann passt das Gauge ja doch.
Probier halt einfach eine andere Variable für den Effekt zu benutzen!


Grüße,
Harri

Fox 09.10.2004 17:12

GAU-Compiler
 
Hallo Harri,

ich glaube Du kannst mir auch bei meinem Problem helfen.
Eigentlich eine ganz einfache Frage aber vielleicht habe ich auch nur ein Brett vor'm Kopf.
Ich möchte eine GAU-Datei (keine XML Datei, damit habe ich kein Problem) De-Compilieren, im Source-Code ändern und wieder Compilieren. Also, ganz einfach, nur wie geht's ?
Wie heisst der Compiler ? Wie kann ich De-Compilieren ?
Mit dem GAUBMP2 Tool kann ich zwar die bmp-Dateien extrahieren und mit Paint ändern und auch wieder in die GAU-Datei einfügen, nur ich komme nicht an den Code ran.
Müsste doch gehen wie bei BGL-Dateien. Da gibts einen BGL-ANALYSER der mir den
Source-Code aus der BGL-Datei erstellt. Dann kann ich ändern und anschließend mit
MS-DOS und SCASM-Compiler die neue BGL-Datei erstellen.
So müsste das doch auch mit dem GAU-Code gehen oder ? Das MS-SDK Doc. für Panel and Gauges
habe ich und vom Compilieren ist dort auch auch die Rede nur nichts vom Compiler.
Hab ich was übersehen ? Ist der GAU-Code in C++ ? Müsste ich dann eine sog. C++ Development-
Platform auf meinem PC haben ?? Fragen über Fragen aber die Antwort müsste doch ganz einfach sein oder ?
Schon mal danke für eine Antwort.

Gruss

Fox

harry3 09.10.2004 18:03

GAU Dateien kann man nicht zurück-kompilieren.
Sie sind DLL Dateien, und somit den EXE Dateien sehr ähnlich. Und die kann man bekanntlicherweise nicht mehr in Source Code zurückverwandeln. Man kann zwar die BMP extrahieren, aber den Programmcode selber nicht mehr.

Es ist viel einfacher, das Gauge neu zu erstellen als es zu Disassemblern(so kann man den Code zumindest in Assembler-Sprache übersetzen, bringt aber auch nicht viel)

Programmiert werden Gauges in C, aber wenn du willst kannst du sie auch in C++ schreiben. Die beste Software fürs Gauge Programmieren ist MS Visual C++ 6.0 weil sich alle Tutorials auf diese Software beziehen.



Viele Grüße,
Harri

Fox 10.10.2004 00:04

Danke Harry3 für die Aufklärung. Hatte es mir schon so gedacht.
Ist also doch nicht so einfach wie bei BGL.

Nochmals Danke.

Gruss

Fox


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag