인벤토리의 자식객체(슬롯)를 등급에 맞게 정렬하기 위한 방법이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class Item
{
public int Grade;
}
public class Slot
{
public Item item;
public int itemCount;
}
public class SlotSort : MonoBehaviour
{
private List<Slot> _slots;
public void Sort()
{
// 슬롯이 2개 이상이면 정렬 시작
if (_slots.Count < 2)
return;
// List를 등급순으로 정렬
_slots.Sort((slot1, slot2) => { return slot2.item.Grade.CompareTo(slot1.item.Grade); }); // 내림차순
// slot 객체들을 list 순서대로 재배치
for(int i=0; i<_slots.Count; i++)
_slots[i].transform.SetSiblingIndex(i);
}
}