https://learn.unity.com/project/keurieiteo-kiteu-rpg

크리에이터 키트 rpg (2d)

안타깝게도, 최신버전 유니티랑은 호환은 안됨. 2020.03 버전 기반의 튜토임


2022 버전 2d 에선 돌아감


주의점
그냥 scene 폴더가 아니라 
Creator kit - RPG 속 scene 폴더의 SampleScene 을 눌러야 켜짐


+

 

 

window - 2d - tile palette 

 

 

Tilemaps 프리팹에선 4단계 레이어를 구분함

Background

Midground

Fences

Foreground

 

땅을 칠할 땐, Background 를 선택 후 칠할 것

 

+

 

 

집 바닥만 Background

나머지 옆벽, 벽, 창문 모두 Midground 로 칠하기

 

아랫문은 나중에 따로하기

지붕도 나중에 따로하기

 

+

 

 

prefabs 폴더 안에서 HouseRoof 를 넣음

단축키 T 크기조절, ctrl 로 그리드에 맞춰 크기 늘림

 

+

 

 


HouseRoof 의 Order in Layer 1000 으로 상승

Box Collider 2d 컴포 넣기

Edie Collider 로 상하좌우 피격박스 조절

Is Trigger 체크함

Fading Sprite 컴포 넣기
이 건 콜라이더가 트리거 되면, 스프라이트를 페이트 시키는 효과임


+

 

HouseOpenDoor 프리팹 넣기

 

+

 

더 꾸미기

 

 

 

오솔길 은 Midground

울타리 레이어는 Fences

 

+

 

울타리나 암역엔

tilemap collider 2d 
가 적용중이다
png 투명색 빼고 타일맵 그대로 콜라이더가 세세히 적용됨

 

+

 

맵 우클 - environment - add animated tree1 here

해서 나무 추가

 

Decorations > Add Bush0 Here

해서 덤불 추가

 

 

 

덤불은 ctrl d 로 복제후 오른쪽

Sprite Renderer 콤포넨트의 Sprite 를 변경해서 다른 오브젝트로 만들 수 있다

 

 

Art - Sprites - Environment - Cloud 선택

해서 구름 그림자추가

 

구름의 레이어는 2000 으로 상승. 

 

+

 

 

마우스 우클

add npc here 프리팹으로 npc 생성

 

 

인스펙터 ㅡ Animator 
오른위 동글 버튼
Archer - Override 이런거 선택하면  idle 애니메이션 변경가능

 

+

 

대화 시스템 만들기

 

 

 

위는 이렇게 분기 만든다는 설명

 

 

 

Conversation Script 컴포넌트 + 버튼  누른 후 ID 에 1.0 입력

Text 에 Greetings, traveller! 입력

 


같은 방식으로
npc에게 다음의 대화분기를 만든다
1.1: Why thank you! Please will you get me an apple?
1.2: Indeed it is.

 

+

 

 

1.0  Greetings, traveller 를 edit 후
Branches 필드에서 목록 하단의 + 버튼을 클릭

 드롭다운 ID 메뉴에서 1.1을 선택

Hello dapper archer! 라는 플레이어의 첫 대화 선택지 추가

Update를 클릭


같은방식으로
두번째 응답 
The weather is fine 를 

NPC Script Item 1.2에 추가

 

+

 

 

참고로 대화 형식은 다량의 스크립트로 되어있어

이 티스토리 글에선 다루지 않겠음

 

+

 

 

npc에게 퀘스트 추가

왼위 하이어라키 창에서 오브젝트 생성 Create Empty
Quest 로 이름 변경

Add Component , Quest (Script)

Title 에 Apple Quest

Desc 에 Fetch an apple for the archer

 

+

 



Quest 게임 오브젝트 선택 후 
Add Component 버튼을 클릭합니다. Conversation Script 

ID: 1.1.1
Text: Please, fetch me an apple.

Quest 게임 오브젝트 선택 된 상태에서 또
Add Component 버튼을 클릭합니다. Conversation Script 

ID: 1.1.2
Text: Thank you for the tasty apple.

 

 

각각 이렇게 드래그

 

+

 

인벤에 아이템 생성해주는 맵 오브젝트 생성

 

 

땅에서 우클
Gameplay Prefabs > Add InventoryItem Here

Golden Apple로 명명

Inventory Item 스크립트 컴포넌트

Count 를 3으로 변경

이제 이 아이템을 집으면 플레이어 캐릭터 인벤토리에 황금 사과 3개가 생성됨

 


+

 

아이템이 있을 시, 퀘스트 활성화

 

퀘스트에 필요 아이템 설정

 

 

왼위 하이어라키 계층 구조에서
Quest 오브젝트 선택

인스펙터 창에서 
Enable on Quest Start 섹션
Size 1 로 설정
Element 0 에 골든 애플 드래그

Required Items 에서도 1 입력후
Element 0 펼친 후
Item 에 골드 애플을 드래그

 

+

 

 

npc와 퀘스트 연결하기

 

 


하이어 라키 창에서 npc 오브젝트 선택

Conversation Script 컴포넌트를 찾습니다

Conversation Script Item 1.1('Why thank you! Please will you get me an apple?')
를 Edit 눌러서 연다


하이어 라키 창에서 Quest 오브젝트를  
 Quest (Optional) 필드로 드래그

update 클릭

 

 

+

 

퀘 완료 보상 만들기

 

npc 근처에서 땅 우클릭

Gameplay Prefabs > Add InventoryItem Here

 


기본 스프라이트는 황금사과지만
인스펙터에서 Inventory Item 컴포넌트
스프라이트를 Chicken 으로 변경

인스펙터에서 Animator 컴포넌트의 헤더에 있는 체크박스를 활성화
이러면 닭의 움직임이 추가됨

 Rename 해서 Chicken 으로 변경

하이어라키 창에서 Quest 선택, Reward Items 섹션
Size 파라메터 1로 설정

 


 Element 0이 새로 나옴
Chicken 게임 오브젝트를 Element 0 로 드래그

왼위 하이어라키 창에서  Chicken 게임 오브젝트를 선택
오른쪽 인스펙터에서 Chicken 게임 오브젝트 헤더의 체크박스를 비활성화

그러면 Chicken 게임 오브젝트가 비활성화되고 보상으로 주어지기 전까지 

플레이어가 해당 오브젝트를 수집할 수 없습니다

 

+

 

 ㅡㅇㅡ    여기까지했는데 치킨 헤더 비활성화 해서 그런지 치킨 안나옴

 

+

 

이번 튜토는  막하니까 그냥 넘어가야 겠다

반응형
Posted by 이름이 익명
: