Jump to content

Recommended Posts

Posted

Hallo!
Frage an die Lua Spezialisten:
Ich möchte den Inhalt eines virtuellen Depots auflisten, bekomme aber ein Fahrzeug weniger aufgelistet als wirklich im Depot sind.
Es sind definitiv 11 Fahrzeuge im Depot, es werden aber nur 10 aufgelistet.
Hier mein Lua Code:

local tblFahrzeuge = $("Depot Fahrzeuge").entries
print ("Fahrzeuge im Depot: "..$("Depot Fahrzeuge").count)
for i,Wdh in ipairs(tblFahrzeuge)do
  print (i.." - "..Wdh.name)
end

Hier das Ergebnis im Ereignisprotokoll:

Screenshot(129).thumb.jpg.508219fb5964161f02ffaf81303c36b5.jpg

Viele Grüße

Siggi

 

 

 

Posted
vor 27 Minuten schrieb siggi:

Es sind definitiv 11 Fahrzeuge im Depot, es werden aber nur 10 aufgelistet.

Es fehlt die Position 0 in der Tabelle.
(Ich habe es eben mit einem eigenen Depot verifiziert)

Mit print(tblFahrzeuge[0].name) bekomme ich das fehlende Fahrzeug.

Lua ist leider unorthodox und beginnt iterable Tabellen mit Position 1.
Das erste Fahrzeug im Depot sitzt , wie in allen anderen Sprachen üblich, auf Position 0.
Da wird es von in ipairs() aber nicht gefunden.

Viele Grüße
Götz

Posted

Hallo,

vor 2 Stunden schrieb siggi:

hätte ich selbst drauf kommen können/ müssen!

nur gut, daß Du da nicht darauf gekommen bist. Das Problem hat mich etwas überrascht und ist mir bisher noch nicht aufgefallen... gut daß es angesprochen wurde;):)

Gruß
EASY

Posted

Hallo,

ich bin auch etwas überrascht, dass ich daran nicht gedacht habe, denn bei Variablen (Listen) habe ich die Lua-Logik adaptiert und beginne bei 1. Diese Inkonsistenz werde ich in Zukunft beseitigen.

Viele Grüße,

Neo

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...