TIL

2024 11 05 TIL

noc777 2024. 11. 5. 20:25

오늘 TIL은 간략히 정리해보고 새로 배운 내용을 바탕으로 먼저 구현해보러 가본다.

 

오늘 한 실수 :  쓰임을 마치고 비활성화 된 오브젝트를 다시 풀로 회수하고 싶어 Instatiate로 복제된 프리팹의 이름을 가져와 다시 딕셔너리의 큐에 넣어주는 코드를 작성하던 중 Replace 를 사용해도 제대로 (Clone) 이 지워지지 않는 것을 봐서

왜 그러지 했는데 다시 이름안에 넣어주어야 한다는 것을 잊었다.  알고리즘 문제좀 많이 풀어봐야 할것같다.

 

 Resource[] objects = GetComponentsInChildren<Resource>(true); //오브젝트의 하위 게임오브젝트들을 가져옴 true를 쓴 이유는 비활성화 된 오브젝트를 찾기 위해
 foreach (Resource obj in objects)
 {
     if(obj.GetComponent<Resource>().capacity == 0 && !obj.gameObject.activeSelf) //해당 오브젝트의 리소스 컴포넌트 정보를 가져와 체력이 0이고 비활성화 된 것을 찾음
     {
         obj.GetComponent<Resource>().capacity = 10; //오브젝트의 체력을 원상 복구

         string name = obj.name;
         name = name.Replace("(Clone)","");//키를 입력하기 위해 복제된 프리팹의 이름을 가져와 clone을 제거
         Debug.Log(name);

         resourceDictionary[name].Enqueue(obj.gameObject) ; //해당오브젝트의 태그에 맞는 키 값에 입력
     }
 }

 

 

저장 관련으로 다루어보고 싶어서 JSON을 만지작 해보고 있다. 조잡하더라도 일단 구현해보고 다시 리팩토링 해보는 과정을 해볼 예정이다.

'TIL' 카테고리의 다른 글

2024 11 07 TIL  (0) 2024.11.07
2024 11 06 TIL  (1) 2024.11.06
2024 11 04 TIL  (0) 2024.11.04
2024 11 01 TIL  (0) 2024.11.01
2024 10 31 TIL  (0) 2024.10.31