Tabellen Index sortieren?

06/14/2013 17:28 Noa_#1
hallo,
ich hab hier Problem

PHP Code:
function warp_tab(tabelle)
    
local a,lvl={},20--pc.get_level()
    
table.foreach(tabelle,function(val,i)
        if 
lvl >= val then a[val]={i[1],i[2]} end
    end
)
    return 
a
end
 
local tabelle 
warp_tab(warp)
for 
_,i in next,tabelle do
    print(
_,i[1],i[2])
end 
es ist Eigendlich kein Problem sondern eine Verbesserung, der output des Codes :
PHP Code:
20    103    104
10    101    102 
wie man den code entziehen kann sieht die tabelle so aus
PHP Code:
tabelle={
[
10]={101,102}, 
--
usw

Die Verbesserung die ich gerne haben möchte ist die reinfolge des Outputs, dabei wird der index bei der Anfrage beginnen, dh wenn lvl also pc.get_level() (theoretisch) 40 wär, würde der output bei 40 beginnen und 10 folgen, wenn 30 , bei 30 beginnen und 10 folgend, wie hier im output angezeigt 20 beginnen und 10 folgend.

Ich würde gerne das es bei 10 beginn und der Reihenfolge laufend geht und nicht bei der Abfrage beginnend.

Würde mich über Lösungsvorschläge freuen mfg Noa
06/14/2013 17:40 yessiя#2
würde ich auch gerne mal wissen...
06/15/2013 16:04 Noa_#3
hab es gelöst, Lösung:
PHP Code:
warp={
[
30]={105,106,"Metinland"},
[
50]={109,110,"Deutschland"},
[
20]={103,104,"Hundeland"},
[
10]={101,102,"Affenland"},
[
40]={107,108,"Beispielland"},

}

function 
local_table(warp)
    
local function warp_tab(warp)
        
local a,lvl={},49--pc.get_level()
        
table.foreach(warp,function(val,i)
            if 
lvl >= val then
                table
.insert(a,val)
            
end
        end
)
        return 
a
    end
    local tabelle
,main_menu,sel_table warp_tab(warp),{},{}
    
table.sort(tabelle)
    
table.foreach(tabelle,function(i,nmain_menu[i]={warp[n][1],warp[n][2]} sel_table[i]=warp[n][3end)
    return 
main_menu,sel_table
end

print()
print(
"Du kannst in folgende maps teleportiert werden")
print(
"Maps:")
local s,mlocal_table(warp)
print(
"--------")
for 
i=1,table.getn(m)do
    print(
i,m[i])
end
print("In welche map willst du teleportiert werden? gib den index ein!")
print()
local p=tonumber(io.read())
print(
"Du wurdest zu "..m[p].." Teleportiert"