Ejemplo n.º 1
0
    void Test02()
    {
        items.Add(new C14_Item()
        {
            ItemType = C14_ItemType.Weapon, ItemRarity = C14_ItemRarity.Epic, name = "에픽 무기"
        });
        items.Add(new C14_Item()
        {
            ItemType = C14_ItemType.Armor, ItemRarity = C14_ItemRarity.Unique, name = "유니크 방어구"
        });
        items.Add(new C14_Item()
        {
            ItemType = C14_ItemType.Accessory, ItemRarity = C14_ItemRarity.Legendary, name = "레전더리 악세서리"
        });

        C14_Item item = FindItem2((C14_Item i) => { return(i.ItemRarity == C14_ItemRarity.Legendary); });

        Debug.Log($"레전더리 아이템 : {item.name}");

        MyFunction <C14_Item, int> selector = (C14_Item i) => //여러 줄일 경우 중괄호를 펼쳐서 함수처럼 적을 수도 있다.
        {
            return((int)i.ItemType);                          //아이템 타입의 enum 값을 정수로 반환한다.
        };                                                    //selector를 선언하는 명령문이므로, 중괄호 끝에 세미콜론을 빼먹지 말 것.

        Debug.Log($"무기 : { FindItem3(selector, 0).name}");
        Debug.Log($"방어구 : { FindItem3(selector, 1).name}");
        Debug.Log($"악세서리 : { FindItem3(selector, 2).name}");
        // 각각을 탐색하는 함수를 일일이 만들 필요가 없어진다.

        items.Clear(); //테스트 실행 시마다 리스트를 추가하지 않도록 리스트를 비워준다.
    }
Ejemplo n.º 2
0
 bool IsWeapon(C14_Item item)
 {
     return(item.ItemType == C14_ItemType.Weapon);
 }
Ejemplo n.º 3
0
 bool IsUnique(C14_Item item)
 {
     return(item.ItemRarity == C14_ItemRarity.Unique);
 }