• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Keine Grafik beim Aufruf von Urwigo User Functions aus Lua?

satanklaus

Geomaster
Grundsätzlich kann ich ja aus Lua User Functions aufrufen, die in Urwigo grafisch erstellt wurden.
Nun ist mir aufgefallen, dass bei User Functions, die z.B. einen Dialog oder Messages erzeugen, diese Aktionen im Emulator nicht erfolgen bzw keine Grafik gezeigt wird.
Rufe ich die selbe Funktion mit dem grafischen Element "Function call" auf, passiert alles was soll.

Bei einem Aufruf aus Lua oder aus der Lua Konsole im Emulator scheinen die Schritte nur bis zum ersten Callback (z.B. dem OK Button eines Dialogs) abgearbeitet zu werden. Klar, es gibt ja nix zum Drücken.... Man sieht überhaupt nichts, und dass was passiert merkt man bloß an den Meldungen in der Konsole, da dort z.B. steht
Code:
Thu Aug 10 21:26:48 2017 CARTRIDGE [Lua]: 48.xxx|11.xxx|0.000|1.000|MessageBox:Callback - [Cancel] Executing callback script
Thu Aug 10 21:26:48 2017 CARTRIDGE [Lua]: 48.xxx|11.xxx|0.000|1.000|MessageBox:Show - ....

Frage: Ist das nur ein Problem des Emulators oder geht das generell nicht? Mir ist nicht ganz klar, wo der Unterschied zwischen direktem Aufruf und dem "Function call" Element sein soll.
 

Charlenni

Geomaster
Hier wäre ein Auszug aus der erzeugten Lua-Datei gut. Wherigo zum Hochladen erzeugen, in .zip umbenennen und Lua-Datei entpacken. Dann entsprechende Stellen anschauen. Sprechende Namen helfen dabei. Dazu Namen für Objekte von Hand vergeben.
 
OP
satanklaus

satanklaus

Geomaster
Ich habe das inzwischen anders gemacht. Aber der Vollständigkeit halber hier noch die Info, dass es nur den Aufruf aus der Lua-Konsole des Emulators zu betreffen scheint.
Ich hatte sogar gestern einen kleinen Demonstrator gebaut, wer es also nachvollziehen mag: Voilá Anhang anzeigen callMe.zip

Es gibt ein Item, das beide Varianten zur Auswahl bietet. Funktioniert in beiden Fällen und der zweistufige Dialog kommt.
Dann nur mal Cartridge starten und in der Konsole entweder direkt UserFunc() oder callMeFromLua() eingeben. Beide Male das gleiche Ergebnis: kein Dialog, nur eine Ausgabe im Messagewindow.

Schade eigentlich, gerade während der Entwicklung oder zum Debuggen wäre die Nutzung der Konsole eigentlich ganz hilfreich.
 
Oben