์์ ํ๋ค๊ฐ Polymorphicํ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํด์ผํ๋ ์ํฉ์ด ์์๋๋ฐ ๊ฒ์ํด๋ ๋ฑํ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ์ด ์๋๋ผ๊ณ
๊ณ ๋ฏผํ๋ค๊ฐ ๋ด ๋ฐฉ์๋๋ก ํด๋ดค๋๋ฐ ๊ณต์ ํด๋ด
๋ชฉํ๋ ์ปค์คํ ์ธ์คํํฐ ์๋ง๋ค๊ณ ๋ฐ์ดํฐ ์ ๋ ฅ์ ์ํ ์ฝ๋ ์์ ๋์ ์ต์ํํ๋ฉด์ ์จ๋จน์๋งํ ์์ค์ ๋ฐ์ดํฐ ๊ด๋ฆฌ๋ฅ๋ ฅ์ ๊ฐ์ง๋ ๊ฑฐ์์.
ํ์ํ ๋ฐ์ดํฐ๋ Effect ํด๋์ค์ ๊ทธ๊ฒ์ ์์๋ฐ๋ DamageEffect, BuffEffect, StatEffect ๋ฑ๋ฑ.
ํจ๊ณผ์ ์ข ๋ฅ์ ๋ฐ๋ผ ํ์ํ ๋ฐ์ดํฐ๊ฐ ์๋ก ๋ค๋ฆ. DamageEffect๋ ๋ฐ๋ฏธ์ง๊ฐ, BuffEffect๋ ์ง์์๊ฐ, ์คํฏ ์กฐ์ ๊ฐ
Skill ํด๋์ค๋ Effect์ ๋ฆฌ์คํธ๋ฅผ ๊ฐ์ ธ์ 'DamageEffect๋ก ๋ฐ๋ฏธ์ง ์ผ๋ง๋ฅผ ์ฃผ๊ณ BuffEffect๋ก ๋๋ฒํ๋ฅผ ์ค๋ค' ๋ผ๋๊ฐ,
ํน์ ๋ ๋ณต์กํ๊ฒ 'ํน์ ์ํฉ'์์ 'ํน์ Effect'๋ฅผ ๋ฐ๋์ํฌ ์ ์์ด์ผ ํ์.
Skill ํด๋์ค๋ฅผ ๊ฐ์ง๋ Prefab์ ๋ง๋ค์ด์ ์คํฌ๋ง๋ค ํ์ํ Effect๋ฅผ ์ปดํฌ๋ํธ๋ก ์ถ๊ฐํ์.
Effect๋ ๋ฌธ์์ด ๋ณ์ key๋ฅผ ํ๋์ฉ ๊ฐ์ง.
Skill์ ์์ฑ๋ ๋ ์์ ์ด ๊ฐ์ง Effect ์ปดํฌ๋ํธ๋ฅผ ์ ๋ถ ์ฐพ์์ ๊ทธ๊ฒ๋ค์ key ๋ฌธ์์ด๋กย Dictionary๋ฅผ ๋ง๋ค๋๋ก ํจ.
(Dictionary<string, Effect> ํด์ Key๊ฐ์ Effect.key๋ฅผ ๋ฃ๋ ์์ผ๋ก)
์ด๊ฑธ๋ก Skill ํด๋์ค์์ ์์ ์ด ๊ฐ์ง Effect ์ปดํฌ๋ํธ์ Key๊ฐ์ ๊ฐ์ง๊ณ ๊ทธ๊ฒ์ ์ธ์ ๋ ์ง ํธ์ถํ ์ ์๊ฒ ๋จ.
์ดํ์ ์คํฌ๋ง๋ค Skill์ ์์ ํด๋์ค๋ฅผ ๋ง๋ค์ด์ Dictionary[key]๋ฅผ ํ์ฉํด์ ๋์์ ์ง๋ฉด ๋จ.
๋๋ ์ฌ๊ธฐ์ ์กฐ๊ธ ๋ ์์ฉํด์ ๊ฒ์ ์์์ Skill์ ํน์ Effect๋ฅผ ์ถ๊ฐํด์ ์ถ๊ฐ๊ธฐ๋ฅ์ ๊ฐ์ง ์ ์๊ฒ ๋ง๋ค์์.
ํ์ค์ค์ ํน์ฑ๊ฐ์๊ฑฐ๋ผ ์๊ฐํ๋ฉด ๋จ.
๊ทธ๋ฅ ๋ฐ๋ฏธ์ง ์ผ๋ง๋ฅผ ์ ํ๋ ์คํฌ์ย [์ ์ ์ฒด๋ ฅ์ด 50% ์ดํ๋ฉด ์ถ๊ฐ๋ฐ๋ฏธ์ง ์ผ๋ง ์ค๋ค] ๋ผ๋ Effect๋ฅผ ๋ถ์ด๋ ์์ผ๋ก.
๋๊ธ 0