# RPG
1. ์ค๋ธ์ ํธ ์ถ๊ฐ ์ ๋ณด json์ผ๋ก ์ ์ฅ ๋ฐ ๋ถ๋ฌ์ค๊ธฐ ๊ธฐ๋ฅ ์ถ๊ฐ { ์ค๋ธ์ ํธ ํ์ , ์ขํ, ํป๋ง ํ ์คํธ, ์ด๋ฒคํธ ํธ์ถ, ์ค๋ธ์ ํธ ์์ด๋, ํ๋ถ ๊บผ์ง ์ผ์ง )
2. ํ๋ถ ์ค๋ธ์ ํธ ์ถ๊ฐ ( ์ ๋๋ฉ์ด์ ์๋ ํฐ ์ค๋ธ์ ํธ - ์ฌ์ด์ฆ๊ฐ 1x์๋ ์ค๋ธ์ ํธ)
3. ์บ๋ฆญํฐ ์ฌ๋ฌ์ข ์ถ๊ฐ
4. ์๋๋งต ๋ง์/์ฑ/๋๊ตด ๋ฑ ์ฌ๋ฌ์นธ ์ฐจ์งํ๋ ์ค๋ธ์ ํธ ์ถ๊ฐ ( ์์น ์ ์ฅ์ ์ข์๋จ ๊ธฐ์ค, ์ ๊ตฌ ๊ธฐ์ค์ ๋ง์ฐ์ค ์ปค์ ๊ธฐ์ค์ผ๋ก ํ๊ธฐ - hover์ ๋์ด์ผํจ )
# ์๋ฐ์ด๋ฒ๋ฅ
1. ์บ๋ฆญํฐ 1์ข ์ 1์ข ์ถ๊ฐ
2. wasd ๋ฐ ๋ฐฉํฅํค ์ด๋ ์ถ๊ฐ, ๊ฐ์ ์กฐ์ด์คํฑ ์ถ๊ฐ
3. ์ ์ด๋์๋ ๊ธฐ๋ฐ์ผ๋ก ์๋ ๋ฐ๋ผ์ค๊ธฐ ๊ธฐ๋ฅ
4. ์ ์๊ตฐ hp ์ถ๊ฐ
5. ๋จ์ ๋ฏธ์ฌ์ผ 1์ข ์ถ๊ฐ ( ๊ธฐ๋ณธ ๊ณต๊ฒฉ๋ ฅ 5 )
์ค๋์ ์๋ฉ์.... ํ์ค ์๋ฉ!
๊ณํ์๋ ์์๋ ๊ธฐ๋ฅ๋ ๋ช๊ฐ ์ถ๊ฐ ํ๋ค. (์ ํํ ๋งํ๋ฉด ๋ฒ๊ทธ ํฝ์ค)
1. ์ปค์คํ ์๋ํฐ ์ฐฝ์ ๋๋ ๊ฒฝ์ฐ ์ด์ ๋๋๊ทธ ๋ฐฉํฅ์ผ๋ก ๊ณ์ ๋ฐ๋ณต๋๋ ์๋ฌ๋ฅผ ์ก์๋ค. ์ปค์คํ ์๋ํฐ์ฐฝ์์ ํฌ์ปค์ค ์์๋๋ฉดย
ย ์คํฌ๋กค ๊ธฐ๋ฅ์ ๋ฉ์ถ๋ค.
2. ์คํฌ๋กค ์์ญ ๊ฐ์ ๋ฐ ์ค์ธ-์ค์์ ๋ ๋ฒจ์ ๋ฐ๋ฅธ ์คํฌ๋กค ์ ์กฐ์ ์
ย ๋ฉ๋ฆฌ ๋ณด๋ฉด ๋ ๋ง์ด 1์ด์ ๋ ๋ง์ด ์คํฌ๋กค ๋๊ณ
ย ์ฐฝ ์ธ๊ณฝ์ ์ ๋ฟ์์ผ๋ง ์คํฌ๋กค ๋๋ค ( ์ ์๋ ์๋ ์ขํ ๊ธฐ์ค์ผ๋ก ์คํฌ๋กค ๋์ด์ ์ค์์ ๋ฉ๋ฆฌํ๋ฉด ์ด์ํ๊ฒ ์๋ํ๋ค)
3.ย ๊ฐ ๋ ์ด์ด๋ณ ์ ๋ณด ์ถ๋ ฅ๋๋๋ก ๋ณ๊ฒฝ
ย ย ๋ฐ๋ฅ - ๋ฒฝ - ์ค๋ธ์ ํธ์ 3์ค ๋ ์ด์ด ๋งต์๋ํฐ์ธ๋ฐ
ย ย ๊ธฐ์กด์ ๋ฐ๋ฅ ํ์ผ ์ ๋ณด๋ง ์ถ๋ ฅ๋๋ค.
ย ย ์ด์ ๋ ๋ชจ๋ ์ถ๋ ฅ๋๊ณ , ๋ค์ผ๋ก ์ค๋ธ์ ํธ ์ ๋ณด๋ ์ถ๋ ฅ๋๋ค.
์ค๋ด์ฉ ๋ค๋ฅธ ๋งต์นฉ์ ํ๋ ๊ตฌํด์ ๋ฃ์ด๋ดค๋๋ฐ
48x48 ๋ฒ ์ด์ค์ธ๊ฑฐ ๊ฐ์์ ์ธ์์์์ง ๋ชจ๋ฅด๊ฒ ๋ค.
๊ณ ๋์ ํ์ผ๋งต ๊ธฐ๋ฅ์ด ๋งต์นฉ ์ฌ์ด์ฆ๋ฅผ 48x48๋ก ์ง์ ํ๋ฉด
์๋ ์ขํ์ ๊ฐ๋ก์ธ๋ก 1๋ก ์ง์ ํด์ค๋ค๋ฉด
์์ด์ ์ธ์๋ ์์ ๋ฏ, ํ์ธ์ ์ํด๋ดค๋ค. ์์ง ์ค๋ด๋งต ๋ง๋ค๋๊ฐ ์๋๋ผ.
ํ์ฌ์ฌ์ res://dir/filename.tscnย ๊ฒฝ๋ก๋ฅผ ๊ฐ์ ธ์์
res://dir/filename_mobj.json์ผ๋ก ์ ์ฅํ๊ณ ์ถ์๋๋ฐ
ํ์ฌ์ฌ์ ํ์ผ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ์ด ์๋๊ฑฐ ๊ฐ๋ค.
๊ทธ๋์ ์ง๊ธ์ ์ผ์ผํ ์ ์ฅํ ๊ฒฝ๋ก๋ฅผ ๋ฃ์ด์ฃผ๋ ์ค ( ์กฐ๊ธ ๋ถํธํจ )
์์ ์ด ๊ผฌ์ด๋ฉด ํ๋ฃจ ํฌ์ก์ ์ด๋ ค์ธ ๋ฏ
์ ์ด์ ์ฃผ์ด์ง PackedScene์ ๋ฐ์ดํฐ๋ฅผ ๋ฐํ์ผ๋ก ํ์ฌ ์ฌ์ ์์ฑํด์ฃผ๋๊ฑฐ ๋ฟ์ด๋ผ์ ํ์ผ์ ๋ณด๋ ๋ฐ๋ก ์ ์ฅ์ํจ ๋จ, PackedScene์ผ๋ก๋ถํฐ ๊ฒฝ๋ก ๊ฐ์ ธ์ค๋๊ฑด ๋จ
๊ทธ ์ ์ฅ์ํ๋ค๋๊ฒ ๋ฉ๋ชจ๋ฆฌ์ ์์ฌ๋ฆฐ๋ค๋ ๋ง์ธ๊ฑฐ์ฌ
๋๊ฐ๊ฐ ์ด๋ป๊ฒ ๋ค๋ฅธ๊ฑฐ์ง
packedscene์ผ๋ก๋ถํฐ ๊ฒฝ๋ก ๊ฐ์ ธ์ค๋๊ฑด ์ด๋ป๊ฒ ํจ?
๊ฑ resource_path์ธ๊ฐ ๊ฑฐ๊ธฐ์ ์ ํ์์ฌ๊ฑธ
PackedScene๋ฟ๋ง ์๋๋ผ Resource๋ฅผ ์์ํ๋ ๋ชจ๋ ํด๋์ค๋ ๋ค ์ด๋ ๊ฒ ๊ฒฝ๋ก ๊ฐ์ ธ์ค๊ธฐ ๊ฐ๋ฅํจ
PackedScene choice_scene = GD.Load("res://dialogue/Choice.tscn"); ์ด๋ ๊ฒ ๊ฐ์ ธ์์๋ ์ฝ์ด์์ง๋ค๋๊ฑฐ์ง? ๊ทธ๋ผ ํฐ ์๋ฏธ๋ ์๋๋ฐ ํ .. ํน์ PackedScene์ ์ด์ด์ ๋์ธ๋ ํน์ ๊ฐ์ ๋ณด๋ผ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์? ํ๋ผ๋ฏธํฐ ๊ฐ์ด
์ด๋ฏธ ์ด๋ฆฐ์ฌ์์๋ ๋ฆฌ์์ค๊ฐ ์๋๋๊น ๋ฐฉ๋ฒ์ด ์๋ค๋๊ฑฐ๊ณ
์ค ์ ์๋ ๋ฐฉ๋ฒ ์๊ธดํจ
set_meta get_meta ์ด๊ฑธ๋ก ๋ฌ์์ฃผ๋ฉด ๋ ๋ฏ?
๋ณ์ ๋ฌ๊ธด ํด์ผํ๋๋ฐ ์์คํฌ๋ฆฝํธ ๋ง๋ค๊ธฐ ๊ท์ฐฌ์๋ ์ฐ๋๋ฐฉ๋ฒ์
์ด ๊ฒฝ์ฐ์๋ ์ฌ์ ์ธ์คํด์คํ๊ณ set_meta๋ก ๊ฒฝ๋ก ๋ฌ์์ค๋ค์์ ์ ์ฅํ ๋ ๋ฃจํธ ๊ฐ์ ธ์์ get_meta๋ก ๋ฌ์๋์ ๊ฒฝ๋ก ๊ฐ์ ธ์ค๋ฉด ๋๊ฒ์ง???
์ค ์ข๋ค
๋์ค์ ๋งต์ด๋ ํ ๋ ์ธ๊ฑฐ๊ฐ์
์ง์ ๊ฒ ์๋ํฐ ๋ง๋ ๊ฑฐ์?
์ ํํ๋ ๊ณ ๋์์ง ํ์ผ๋งต์ ๋ ์ฝ๊ฒ ์ฐ๊ฒ ํด์ฃผ๋ ๋งต์๋ํฐ์
์ํผ์ง ๊ฒ์ ๋ฉ์ด์ปค ๊ฐ๋ ธ
RPG MAKER + GAME MAKER ? ์์!