2016-06-24 14 views
1

addon/weakaura에 대한 테이블을 정렬하려고하는데, 그것을 수행하는 방법 (속성 값에 따라 정렬)이 표시되지 않습니다.월드 오브 워크 래프트 루아 - 정렬 테이블

예 :

 player = { 
      value = 34 
      class = Warrior, 
      id = 1 
     }, 
     { 
      value = 1, 
      class = mage, 
      id = 2 
     }, 
     { 
      value = 3443, 
      class = Paladin,, 
      class = 3 
     }  

내가 원하는 :

  player = { 
      value = 1, 
      class = mage, 
      id = 2 
     }, 
     { 
      value = 34 
      class = Warrior, 
      id = 1 
     }, 
     { 
      value = 3443, 
      class = Paladin, 
      class = 3 
     } 

누군가 아이디어는 어떻게이 일을?

+3

코드가 잘못에 대한 자세한 내용은 http://www.lua.org/manual/5.3/manual.html#pdf-table.sort를 참조하십시오. –

답변

2

당신이 당신의 테이블 선언을 수정 가정하면, 사용자 정의 기능을 사용하여 테이블을 정렬 할 수 있습니다 :이 value 필드의 값으로 player 테이블의 요소를 정렬합니다

local player = { 
    { value = 34, class = "Warrior", id = 1 }, 
    { value = 1, class = "mage", id = 2 }, 
    { value = 3443, class = "Paladin", id = 3 }, 
} 

table.sort(player, function(a,b) return a.value < b.value end) 

. 필요한 경우보다 정교한 정렬 조건을 제안 할 수 있습니다.

는 실제 코드를 보여 table.sort