만든거 미리보기카드게임을 만들어보기로 했다. 근데 그러려면 일단 자유로운 카드의 이동부터 만들어야겠다는 생각을 했음.일단 정렬을 위해 최상위 오브젝트에 LayoutGroup컴포넌트를 사용하고, 그 아래엔 슬롯들을 만들어 드래그 할 때와 그 종료시에도 그룹은 항상 일정한
기본적인 카드의 이동과 정렬은 구현 되었으니, 이제 카드를 내서 조합을 확인해봐야겠다. 카드를 드래그-드랍으로 손패영역에서 조합영역에 끌어다 놓을 경우 해당 카드는 손패영역에서 떠나 조합영역에 들어가게되며, 조합영역에 있는 카드들로 현재 카드들의 조합을 판단하면 될 것
카드를 새로 뽑거나, 특정한 이벤트에 의해 카드가 패로 들어오는 경우가 생길 수도 있다. 그런 경우 손패에 쉽게 카드를 추가하기 위해 코드를 추가해줬다. 카드의 이벤트는 모두 매니저로 옮겨줬으니 카드슬롯매니저에서 DrawNewCard()라는 코드를 만들어 호출하면 손
카드게임을 만들기 위해 이제 각각 카드 오브젝트에 데이터를 추가해주기로 했다. 지금은 드래그만 가능한 오브젝트였는데, 이걸 제네릭타입으로 바꿔주고 상속받는 Card를 만들기로 했음.카드는 전에 만들어두었던걸 고대로 사용했다.그리고 간단하게 카드매니저를 만들어 데이터를
매번 카드를 랜덤으로 뽑을수는 없을 노릇이니, 보유중인 카드를 관리할 CardDeck 클래스를 만들어주기로 했다. 여기서 한장씩 뽑아서 손패로 가져오고, 섞어주는 역할을 해주면 되겠지. 스택을 써서 뽑을때마다 Pop해줄지 그냥 리스트로 관리할지 고민해봤는데, 유연성을
지금 카드의 움직임은 부모의 위치로 바로 이동되기 때문에 부자연스럽고 뚝뚝 끊어져보인다. 이를 해결하기 위해 실제 오브젝트와 비주얼을 분리하고, 실제 오브젝트의 위치과 비주얼을 실시간으로 보간하여 자연스러운 움직임을 만들어보기로 했다. 일단 테스트를 해봤다. 하얀 네모
일단 우선적으로 해야 할 일은 비주얼의 계층구조를 손봐주는것이었다. 카드 오브젝트가 드래그 될 때 맨 앞으로 보내기 위해 부모를 바꿔주는 코드를 제거했고, 슬롯 카드들의 위치를 드래그중인 카드의 x값에 따라 변경하는 코드에도 약간의 수정이 필요했음. 그리고 카드비주얼에서는 포인터를 떼는시점에 현재 슬롯의 인덱스를 받아와서 카드의 인덱스를 설정해주기로 했다...
손패에 쥐고 있는 카드중 몇 장만 골라서 바꾸고 싶은 경우가 생길 수도 있다. 그럼 손패에 어떤 카드가 선택되었는지 확인할 수 있는 기능이 필요할 것 같은데, 간단하게 카드를 클릭하면 조금 위로 올리는 기능을 만들어 보기로 했다. 비주얼은 어짜피 알아서 따라오니까, 카
카드, 카드비주얼, 카드 슬롯 이 세가지 게임오브젝트는 매번 생성했다가 제거하는게 아니라 돌려쓰기가 가능한 재사용 오브젝트다. 그럼 당연히 풀링을 해줘야되고, 그래서 이걸 사용하는 핸들러마다 리스트를 써서 각각 풀링을 해주고 있었는데, 클래스들마다 풀이 따로 있는게 보
풀링도 다했고,이제 사용한 카드는 덱으로 되돌려주면 된다.비주얼과 카드 오브젝트는 꺼주고, 안에 들어있는 카드 데이터만 덱으로 되돌려서 사용하면 될듯 싶음.일단 isSelected 상태인 카드를 카드들을 순회해서 찾아줬다. 그리고 이 처리는 핸들러에서 해주면 됨. 일단
소팅 기능을 또 만들어야됨. 전에도 만들었던거니까 금방 뚝딱하고 넘어가자.지금 손패에 카드는 핸드카드그룹의 리스트에서 관리가 되고 있다. 그럼 이걸 소팅하려면 ? 그냥 내부 리스트를 소팅하고, 부모만 맞게 교체해주면 된다.그럼 당연하게도 소팅은 되고 비주얼의 계층은 엉
자유롭게 아이템을 장착할 수 있는 캐릭터가 필요했는데, 꼭 알맞은 에셋을 찾았다.https://assetstore.unity.com/packages/2d/characters/pixel-hero-maker-250116 자유롭게 부위를 바꿔 끼울 수 있는 2D 픽
때린다, 데미지를 준다. 맞는다, 데미지를 받는다. 기본적인 게임의 전투 시스템이다. 여러가지 스텟을 추가해서 전투 시스템을 만들어봤다. 일단 사용할 스텟 데이터들은 이렇게 결정했음. 체력, 공격력, 공격속도, 방어력, 방어관통, 회피, 명중률, 치명기회, 치명데미지