Computercraft Hilfe: Wie kann ich per Table mehrere Farben gleichzeitig ausgeben?

... komplette Frage anzeigen

3 Antworten

Probier das hier mal aus:

colorString = ""

for i,v in pairs(tableColors) do
if colors.test(rs.getBundledInput(side), i) then
colorString = colorString + v
end
end

print("Input: ("..colorString..")")

MfG

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von lolman110
25.04.2016, 19:43

Danke schonmal für dieses Codesnippet es gibt allerdings Folgende Probleme:

http://pastebin.com/sBiQ5Lpx
Main:45: attempt to call nil
(Mit deinem Code)

http://pastebin.com/9vzVPgBT
Main:45: attempt to call nil
(Mit meinem Vorherigen Code nach Überarbeitung aufgrund der anderen Kommentare)

Die Sache ist, dass in beiden Codes nichts nil sein sollte da in beiden Codes mein Table ja schließlich definiert ist.

0

Kannst du arithmetische UNDs verwenden?

Natürlich könntest du auch versuchen, den jeweils größten Wert von deiner Zahl abzuziehen und wenn sie nicht negativ wird annehmen, dass die Farbe dabei ist.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von lolman110
21.04.2016, 21:16

Ich habe auch schon an das abziehen gedacht. Da ich aber neu bin was lua angeht, bzw. blutiger Anfänger, weiß ich leider nicht auf Anhieb, wie ich das mit dem Abziehen realisieren soll.

Und aritmethische Unds würden Zahlen zusammen zählen im Table sind es aber glaube ich keys o.Ä,  Die kann ich nicht aritmethisch addieren. Aber Danke schonmal ich werde dem mal einen Versuch geben!

0
Kommentar von lolman110
21.04.2016, 21:21

hmm ich weiß auch nicht wie ich das mit aritmethischen Unds realisieren könnte...

0

du arbeitest mit einer bit-maske, die nur ein 1-er bit enthält, beginnend mit 1=0000 0000 0000 0001.  

in einer schleife machst du ein xor mit dieser maske auf den eingangsindex, wenn > 0 dann hat man die betreffende farbe tabColors[maske], dann einen linkssshift auf die maske und nächster schleifendurchlauf.

http://bitop.luajit.org

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von 3v1lH4x0R
22.04.2016, 12:58

Oder... einfach ein and? Geht's noch?

0
Kommentar von lolman110
22.04.2016, 18:10

Danke, aber ehm wie gesagt ich bin blutiger Anfänger in lua. Ich weiß also nicht ganz genau was du mir damit sagen willst :/

0

Was möchtest Du wissen?