cat d
๐ก ๊ฐ๋ฐ ๋ฌธ์์
- ํ ๊ฐ์ถ๊ธฐ ๋จ๊ณ - effect ์ฒ๋ผ ๊ผญ ํ์ํ์ง ์๋๊ฒ์ ๊ทธ๋ฅ ์ง๋์น๋ค ์ ์ฒด์ ์ธ ํ์ ๋ง๋๋๋ฐ ์ฃผ๋ ฅ
- ๊ตฌ์ ๋ง์ถ๊ธฐ ๋จ๊ณ - effect ๋ฐ ๊ฐ์ข ํจ๊ณผ ๊ธฐ๋ฅ์ ์ ์ฉํ๋๋ฐ ์ค์ ์ ๋๋ค ํน๋ณํ๊ฒ ๋ง๋ค์ง ์๋๋ค, ํน๋ณํด์ ธ์ผ ํ ๋ถ๋ถ๋ค์ ํ์ํ๊ณ , ์์ด๋์ด๋ง ์ ์ด๋๋ ๋จ๊ณ
- ํน๋ณํ๊ฒ ๋ง๋ค๊ธฐ ๋จ๊ณ - ์์ ๋ง์ถ๊ธฐ์์ ํ์ง ๋ชปํ๋ ๋ถ๋ถ๋ค, ๊ฐ์ฑ์ ์ธ ๋ถ๋ถ์ ๋ฃ์
์์ด๋์ด
ํํ ๋ฆฌ์ผ
- ํฐ์น ์๋๊ณ ์์ผ๋ฉด ์์ํ ์ฌ๋ผ์ง๊ฒ ํ์
- ๋๋ฆฌ๋๊ฒ ์ฝ์ด๋ค๋์, ๋ ๋๋ฆฌ๋ฉด ๋๋ค. ์ด๋ฐ์.. ํํ ๋ฆฌ์ผ, ๋ถ๊ฝ์ ๋ผ์ง๊ฐ ๋ฑ์ฅํ๋ค! ๋งค๊ฐ ์ฝ์ด๋ค, ๋ถ๊ฝ๋ผ์ง, ์ผ์์ ๋ถ๊ฝ ๋ผ์ง?, ์ผ์์ ๋ถ๊ฝ ๋ผ์ง๊ฐ ๋ํ๋ฌ๋ค, ๋๋๋๋ ๋งํ์ ์๋ฆฌ ๋ด๋๊ฑด ์ด๋ฐ?
- ์ด์ธ๊ณ๋ก ๋ถํฐ ์จ ์๋ช ์ฒด๋ฅผ ์ง์ผ ์ฃผ๋ ๋ง๋ฒ์ฌ?,
๊ฒ์ ์คํ์ผ
- ํฐ์น ์๋๊ณ ์์ผ๋ฉด ์์ํ ์ฌ๋ผ์ง๊ฒ ํ์
- ๋ค๋ก ๊ฐ์๋ก ํฐ์น๋ง ํ๋ ๋์ง์ปฌ์ ์ฌ์ฉํ ์ ์๋ ์ํฉ์ ์ ๋ํ๋ ์คํ ์ด์ง๋ฅผ ๋ง๋ค์ด์ผํ๋ค, ํผ์ง์ปฌ์ ์ํ๋ฉด ๋๋ฌด ํผ๊ณคํด์ง
- ๊ณ ์์ด ํผ์ ์ด๋ํ๊ณ ํผ์ ๊ฐ์ข ์ ๋๋ฉ์ด์ ํ๊ณ ๋ ์์ง์ด๊ณ ํ๋๋ก ๋ณ๊ฒฝํ๊ธฐ
- ์ฃผ๊ธฐ์ ์ผ๋ก ๋ฒ๊ฐ ๋จ์ด์ง๋ ์คํฌ or passive, ์ด๊ฑฐ ์ฒ๋ผ ์์ ๋ค๋ฅธ ๊ฒ์์ด ๋๊ธฐ๋ ํ๊ฒ? ์ฃผ๊ธฐ์ ์ผ๋ก ์ ์ด ์ธ๋ค๋๊ฐ, ํฌ๋ฆฌํฐ์ปฌ ํํธ ๋ฐ์ํ๋ค๋๊ฐ
- ์คํ ํฐ์น์ ์ฑ๋ฅ ์ฌ๋ฆฌ๊ธฐ ์คํฌ
- ๋๋ค์ฑ, ํผ์ฆ์ฑ์ ๋๋ ์ถ๊ฐํ ์ ์์๊น
- ์คํ ์ด์ง ์์ํ ๋ ์คํฌ๋์ฌ๊ฑธ ๋ช๊ฐ ์ ํ ํด์ ์์ํ ์ ์๊ฒ, ๊ทธ๋์ ์คํ ์ด์ง๋ง๋ค ํ์ฉ ๊ฐ๋ฅํ๊ฒ
- ๊ทธ๋ฆฌ๊ณ ์คํฌ์ ๋๋คํ๊ฒ ์ฌ๋ฆด ์ ์์ด์ ๋ ๋์๊ฑฐ ์ ํํ ์ง ๊ณ ๋ฏผ ํ ์ ์๊ฒ
- ๊ธฐ๋ณธ ํฐ์น์ ๋ง๋๋ฅผ ๋ฃ์ด ํํ๊ณ ํฐ์ง๊ฒ ํ๊ธฐ
- ๋ฌดํ ๋์ฌ๋ฅผ ๋ชปํ๊ฒ ํ๊ธฐ!
- ํ๋ธ๋ ์ฝ๊ฐ ํฌ๋ช ํ๊ฒ
- ๊ณ ์์ด ์ฒด๋ ฅ ์๋ ํ๋ณต, ์ ๊ทธ๋ ์ด๋
- ๋ค์ ์คํ ์ด์ง๊ฐ ๊ธฐ๋๋๋ ๊ฒ์(ํ์ฐ๊ทํ)
- ๋ง๋ ๊ตฌ๊ฐ ๋์๋ค๋๊ณ ๊ทธ๊ฑธ ์ฐ๋ฉด ๋ง๋๋ฅผ ์จ์ ๋์ง๋ฅผ ์ค๋ค?, ์ ์ ํ ์์น์์ ์ฐ๊ธฐ, ์ด๊ฒ๋ ๊ด์ฐฎ์๋ฏ
- ๋์๋ค๋๋ ํ๋ธ๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ๋์ง ์์
- ๋์ฅ๋ ๋๋ค..
- ๋ง๋ ฅ์ด ๋นจ๋ฆฌ์ฐจ๋ ์์ดํ , ์ ๋ฌผ..? ๊ฐ์ข ์ ๋ฌผ์ด ์๋๊ฒ๋ ์ผ๊ฒ ๋ค
์คํฌ
- ๊ณ ์์ด ๋ฌด์ ์์ดํ
- ๋ฐฐ๋ฅผ ๋ค์ง๋ ๋ณด์ค๋ ์ฃผ๊ธฐ์ ์ผ๋ก ์น๋ฉด ๋ค์ ์๋ค์ง์ ๊ทธ๋ฐ ์ดํํธ๋ ๋ณด์ฌ์ฃผ๋ฉด ๋ ๋ฏ, ํ์ด๋ฐ ๋ง์ถฐ์ ์น๊ธฐ
- ๋ค์ง๋ ์คํฌ, ์คํฌ๋ก๋ง ๋ค์ง์ ์ ์์
- ๋๋ฐฑ ์คํฌ
์ดํํธ
-
๋ง์์๋ ์ดํํธ, ์ฃฝ์ผ๋ฉด ๋ณด์๊ฐ์๊ฒ ๋จ์ด์ ธ์ ๊ธฐ๋ถ์ข๊ฒ, ์๋ฆฌ์ ํจ๊ป
-
ํฐ์น ์ดํํธ
๋ชฌ์คํฐ
- ๋ชฌ์คํฐ ์๋ ๋ฐ ๋ฅ๋ ฅ์น๊ฐ ๋ชจ๋ ์ผ์ ํ์ง ์์๊ฒ๋ ์ฌ๋ฐ์๋ฏ, ํฌ๊ธฐ๋
- ๊ฐ๋งํ ๊ฑธ์ด์ค๋ค๊ฐ ๋ค์ง๋์ , ๊ทธ๋ ์น๋ฉด ๋ฐ๋ก ๋ค์ง
- ๋ณด์ค๋ ์๋ฅผ๋ค์ด ๋ค์ฏ๊ฐ์ ๋ณด์ค๊ฐ ์๋ค๋ฉด ๋์ค๋ ํ์ด๋ฐ์ ๋ฐ๋ผ ์ฒด๋ ฅ, ํจํด๋ฑ์ด ๋ฐ๋, ๋๋คํ ์์๋ก ๋์ค๊ฒ ํ์
๋ฐฐ๊ฒฝ
- ๋ฐฐ๊ฒฝ์์ -๋ฐ์ ๋๋์ ๋ฐฐ๊ฒฝ
์ฌ์ด๋
-
๋ชน๋ค ๋ฌ๋ฆด๋ ์๋ฆฌ
-
๊ณ ์์ด ์๋ฆฌ
-
๋ผ์ง ๋ง๋์๋ฆฌ(๋ชน ๋ง์ ๋)
-
๊ธฐ๋ณธ ๊ณต๊ฒฉ ์๋ฆฌ - ํ, ํ ์ด๋ฐ๊ฑฐ
-
๋ชน์ฃฝ์ ๋ ์ฌ์ด๋
-
๋ง๋ ์์๋ ๋ง์์๋ฆฌ
-
๋ณด์ ๋ด๋์๋ฆฌ
-
skillbox ์ธ์ ์์๋, ์ธ๋
-
๋๋๋๋๋ ํ๋ ๋ฌ๋ ค์ค๋ ๋ฌด์์ด ๋ชน์๋ฆฌ
์์คํ
- ์ ๋ํฐ ๋ค์ค์ธ์ด? - ์ด๊ฑด ๋์ค์
- ํ์ ์์คํ ์ ๋ค ๊ฐ์ถ๊ณ ๋ ํ์ ๊ตฌ์กฐ์ง๊ณ ๋ค์ ์์ ์ฌ๋ฆฌ๊ธฐ
- ์ ๋ํฐ ์ด์ ์ ํด๋ฆฌ ํ์ธ ๋ฒ, ๋ก์ฐ ํด๋ฆฌ๋ ์ด๋์ ๋?
- prefab์ ๋ก๋ ํด๋๋๊ฒ ๋ง๋๊ฐ, ๋ก๋๋ ์๋ฏธ๊ฐ ๋ง๋๊ฐ
- prefab initiateํ ๋ ์ ๊น ๋ฉ์ถ๋ ๋ฌธ์ ๊ผญ ์์ ํ์
- ์คํฌ์ ๋ ์ด์ด๋ก ๊ตฌ๋ถํด์ ์์ ์ถฉ๋์ํ๊ฒ๋ ํ์
์ฐธ์กฐํ ๊ฒ
-
๋ก์์์ ํจํด ์์ด๋์ด ์ป๊ธฐ
-
๊ณต์ ๊ตด๋ฆฐ๋ค..? ์ฑํฐ๋ง๋ค ํน์ง์๊ฒ ํ๋๊ฒ๋ ๊ด์ฐฎ์๋ฏ, ์บํฌ๋ ๋ช๊ฐ๋ง๋ค ๊ทธ๊ฑฐ์ง
์์คํ ๋์ ๋ก์ง
์คํฌ
์คํฌ ์์ฑ
- PrefabConstants์ Skill Prefab ํ ๋น
- Skill์ SkillBase class๋ฅผ ๋ถ๋ชจ๋ก ํ๋ script ์ถ๊ฐ
- ๊ฐํธํ๊ฒ ์ฐ๊ธฐ ์ํด SkillMaker util ํด๋์ค ์์ฑ
- ์์ฑ์ SkillInfo๋ก ์คํฌ์ ํ์ํ ์ ๋ณด ์ ๋ฌ
Stage
1
- ์ ๋ํฐ ๋ค์ค์ธ์ด? - ์ด๊ฑด ๋์ค์
-
ํ์ ์์คํ ์ ๋ค ๊ฐ์ถ๊ณ ๋ ํ์ ๊ตฌ์กฐ์ง๊ณ ๋ค์ ์์ ์ฌ๋ฆฌ๊ธฐ
Skill ball
1. ์์ง์
-
์ ์ฌ๊ฐ, ๋ฐ์ฌ๊ฐ์ผ๋ก ๋ฒฝ์ ๋ถ๋ชํ๋ฉด ๋ฐ์ฌ๋๊ฒ + ์์ ๋๋ค์ผ๋ก๋ ๋์ํ๊ฒ
public void setForceDirectionWithVector(bool isChangeX) { //๋ถ๋ชํ๋ ๋ฐฉํฅ์ ๋ฐ๋ผ ๋ฒกํฐ์ ๋ฐฉํฅ์ ๋ฐ๋๋ก ํด์ฃผ๋ฉด ์ ์ฌ๊ฐ ๋ฐ์ฌ๊ฐ์ผ๋ก ์์ง์ด์ง๋ง ๊ทธ๋ ๊ฒ ํ๋๊น ์ฌ๋ฏธ๊ฐ ์๋๋ผ //๊ทธ๋์ variation์ ์ค์ ๊ฐ์ ์ด์ง ์ด์ง ํ์๋๋ฐ ๊ทธ๋๋ ์ฌ๋ฏธ ์์ //์ต์ข ์๋จ์ผ๋ก ๋๋ค angle๋ ์ถ๊ฐํด๋ด if (Random.Range(0, 3) > 1) { setForceDirection(); return; } float variation = Random.Range(0.5f, 1.5f); if (isChangeX) { direction = new Vector3(direction.x * -1f * variation, direction.y, direction.z).normalized; } else { direction = new Vector3(direction.x, direction.y, direction.z * -1f * variation).normalized; } setSpeed(); }