요즘 일지 간격이 1주일로 늘어난 듯 하다.
아이템 내려놓을곳 표시해 주는 이미지를 바꿨다. 가운데 반투명하게 차있는게 더 보기 좋은듯 하다.
장비 장착 구현할 UI를 임시로 만들었다. 장비 아이템을 들면 해당되는 슬롯에 하이라이트가 켜지도록 했다.
타르코프 UI 싹 배낀거다.
넣으면 일반 아이템 슬롯처럼 들어간다.
이미 아이템이 있는 곳은 빨갛게 하이라이트 되도록 했다.
사이즈 다른 아이템도 들어가면 2X2 크기로 자동으로 바뀐다.
Action을 처음 써봤다.
한번에 싹 함수 사용할 수 있으니 편하다.
다른 기능 개발할려고 하니까 개니미십샹똥꾸릉내를 풀풀 풍기던 아이템 이동 스크립트가 방해해서 싹 정리했다.
뉴비한테 주는 팁이면 스크립트로 기능을 구현할 때는 그 기능이 이루어지는 곳에 스크립트를 넣을 수 있도록 구현하는게 편하다.
예를 들자면 총,총알,적 오브젝트가 있을 때 총을 발사해 공격하는 기능을 구현한다면 총에는 총알 발사 스크립트만 넣고, 총알에는 총알 이동 스크립트랑 적에게 데미지를 입력하는 스크립트, 적 유닛 오브젝트에는 입력된 데미지로 체력 감소를 계산하는 스크립트를 넣어서 구현한다면 기억하기도 쉽고 만들기도 편하다.
나는 아이템을 클릭 후 드래그해서 손을 떼면 아이템이 인벤토리로 들어가는 기능을 구현해야 하므로 플레이어/아이템으로 넣을 곳을 나눴다.
아이템이 인벤토리에서 나왔다 들어갔다 하는건 아이템이 이동하는 것이므로 아이템에 스크립트를 달았고, 마우스 입력은 플레이어가 UI 상에서 하는 행동이므로 인벤토리 캔버스 오브젝트에 스크립트를 달았다.
아래는 캔버스에 달려있는 아이템 이동을 위한 클릭판정, 드래그, 클릭 해제 판정을 관할하는 스크립트이다.
클릭하면 인벤토리 창인지 아이템인지 구분해서 아이템을 인벤토리 슬롯에서 빼낸다.
드래그하면 아이템을 마우스에 따라 이동시킨다.
클릭을 해제하면 현재 아이템 위치에 있는 UI를 판정해 아이템 삽입 여부를 결정한다.
OnEndDrag로 해봤는데 그러면 마우스 클릭만 했을 때 아이템이 들어가지 않는다.
잠깐이라도 드래그하고 떼야 작동해서 OnPointerUp으로 사용했다.
update에 Input으로 감지하는 것도 생각해 봤는데 매 프레임마다 돌리는것보단 이게 더 나을듯하다.
이제 장비 장착에 따라 유닛 스펙 변화하는 것을 구현해야한다.
후딱 시스템 좀 마무리하고 그래픽으로 넘어가고 싶은데 힘들것 같다.
아 그리고 유식아 시발 PC도 시리즈 저장좀 넣어줘라!!!
댓글 4