2017-01-13 2 views
1

Der Fehler zeigt "mehr als 60 upvalues"Lua - Corona SDK Wie kann man das beheben oder den Code ändern, damit er richtig funktioniert?

ball:addEventListener("tap", function1) 
eggs:addEventListener("tap", function2) 
dog:addEventListener("tap", function3) 
car:addEventListener("tap", function4) 
... 
plane:addEventListener("tap", function52) 

I Every programmiert haben. Wenn ich alle 20 Zeilen der Ereignislistener App löscht, funktioniert. Daher gibt es wahrscheinlich ein Limit für Event Listener. Ich habe keine Idee, wie man das so minimal wie möglich ändern kann.

Ich muss Rechtecke als Schaltflächen für Listener verwenden. Keine Variablen wie andere Artikel.

+0

Ich bin nicht sicher, aber ich glaube nicht, dass es irgendeine Art Limit für die Anzahl der Veranstaltung listerners. Wie unterscheidet sich der Listener 'function1' von' function2'? – ldurniat

+0

@ldurniat Lua begrenzt die Anzahl der Upvalues ​​standardmäßig auf 60. Dies steht nicht im Zusammenhang mit Corona – Piglet

+0

Mögliches Duplikat von [Funktion in Zeile xxx hat mehr als 60 upvalues] (http://stackoverflow.com/questions/12045077/function-at-line-xxx-has-more-than-60- upvalues) – Piglet

Antwort

0

Statt dies zu tun:

function function1() 
    print "tapped ball" 
end 
function function2() 
    print "tapped eggs" 
end 
... 
ball:addEventListener("tap", function1) 
eggs:addEventListener("tap", function2) 

Versuch dies zu tun:

ball:addEventListener("tap", function() 
    print("tapped ball") 
end) 
eggs:addEventListener("tap", function() 
    print("tapped eggs") 
end) 
Verwandte Themen