Love2d Lua Framework - convertendo una tabella di rendering non organizzata in una struttura mappa
Domanda
Sto trasformando una mappa resa 2D che non è organizzata in una tabella di stringhe, ad esempio da:
"Render= {{Image, 50,60,2}}"
dove l'immagine è l'immagine (sto usando love2d lua framework) 50 è l'asse x 60 è l'asse y 2 è l'ID dell'immagine (questo è ciò che sarà nella tabella effettiva.)
Ma c'è come 100 di questi, tutto non organizzato e roba, e ho bisogno di oriagnarli in una mappa strutturata.
Ecco il bit dispari: quando mi trasformi in una stringa organizzata .. .. .. Kinda ruota il tavolo su un angolo di 90 * in senso antiorario.
dicendo che voglio il risultato di
{
{7,6,5},
{6,5,4},
}
.
Otterrei:
{
{5,4},
{6,5},
{7,6},
}
.
Ovviamente nessun errore poiché funziona tecnicamente, ruota semplicemente erroneamente.Ecco il codice pertinente:
function OrganiseRenderIntoMap()
MapString = ""
Map2 = {}
MaxSoFarX = 0
MaxSoFarY = 0
for _,v in pairs(Render) do
if v[2] > MaxSoFarX then
MaxSoFarX = v[2]
elseif v[3] > MaxSoFarY then
MaxSoFarY = v[3]
end
end
for currx = 0, MaxSoFarX, 32 do
Map2[currx] = {}
MapString = MapString.."{"
for curry = 0, MaxSoFarY, 32 do
MapString = MapString..GetRenderPos(currx,curry)..","
Map2[currx][curry] = GetRenderPos(currx,curry)
end
MapString = MapString.."},\n"
end
return MapString
end
function GetRenderPos(locx,locy)
for _,v in pairs(Render) do
if v[2] == locx and v[3] == locy then
return v[4]
end
end
end
. Soluzione
Dare un'occhiata al mio Löve tessere Tutorial .Sezione 1d-strings parla di come gestire la "x commutata xe y "problema.