๋๊ฐ์ง ๋ฐฉ๋ฒ์ ์ ์ํจ
1. ๋ชจ๋ ์กฐ๊ฑด์ ์ด๊ฑฐํ์ผ๋ก ๋ง๋ค์ด๋ผ
2. ๋ชจ๋ ์กฐ๊ฑด์ SO๋ก ๋ง๋ค์ด๋ผ
๋๊ฐ ํ๋ก๊ทธ๋๋จธ๊ฐ ์๋๋ผ ๋์์ด๋๋ฉด ๊น์น์ง ๋ง๊ณ ๋ ์ค ํ๋ ๊ณ ๋ฅด๋ผ๋ ๋ง๋ ๋ง๋ถ์ด๋๋ผ
๋๊ฐ์ง ๋ฐฉ๋ฒ์ ์ ์ํจ
1. ๋ชจ๋ ์กฐ๊ฑด์ ์ด๊ฑฐํ์ผ๋ก ๋ง๋ค์ด๋ผ
2. ๋ชจ๋ ์กฐ๊ฑด์ SO๋ก ๋ง๋ค์ด๋ผ
๋๊ฐ ํ๋ก๊ทธ๋๋จธ๊ฐ ์๋๋ผ ๋์์ด๋๋ฉด ๊น์น์ง ๋ง๊ณ ๋ ์ค ํ๋ ๊ณ ๋ฅด๋ผ๋ ๋ง๋ ๋ง๋ถ์ด๋๋ผ
์ฐธ๊ณ ๊ฐ ๋ ์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง ๋ด ๊ฒฝ์ฐ์๋ ์์ ์ ์นด๋(์คํฌ), ์กฐ๊ฑด, ํจ๊ณผ, ํ๊ฒํ , ์ด๋ ๊ฒ ๋ค ๊ฐ์ง ๋ฐ์ดํฐ๋ก ๋๋ ์ ๋ง๋ค์์ ๊ฐ ๋ฐ์ดํฐ๋ abstract ํด๋์ค์ enum์ด ์๊ณ , ํ์ ํด๋์ค๋ง๋ค enum์ ํ ๋นํจ. ์๋ฅผ ๋ค์ด์ effect_damage๋ฉด abstract class์ธ effect๋ฅผ ์์๋ฐ๊ณ , enum์ damage ๊ฐ์ ๊ฐ์ง๋ ์์ผ๋ก ๋๋ so๊ฐ ์๋๋ผ json์ ์ผ๋๋ฐ, ๋ฐ์ดํฐ์ json ์ค๋ธ์ ํธ๋ฅผ ์ฝ์ ๋ enum๊ฐ์ ๋ถ๋ฌ์์ ๋ฌด์จ ํ์ ํด๋์ค์ธ์ง ํ์ ํ๊ณ , ๊ทธ๊ฑธ๋ก ๋ฐํ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ๋ ์์ด์์ ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฑธ ์์ ํ๋ ์๋ํฐ๋ฅผ ๋ฐ๋ก ๋ง๋ค์๊ณ
๊ฐ์ฌ ์ผ๋จ์ SO๋ก ๋ง๋ค๊ณ ํ ์คํธํ๋ค๊ฐ JSON์ผ๋ก ๋ฐ๊พธ๋ ์์ด ๋ ๋ฏ
์ ๊ธฐ์ ๋งํ๋ ์ด๊ฑฐํ์ด ํ๊ทธ๋ ์ ๋์จ์ธ๋ฐ ๊ทธ๊ฒ ์ ์์ด๊ธด ํจ
์ ๋ถ์ด ์๊ธฐํ ๋ฐฉ๋ฒ์ด ๋ฐ๋ก ํ๊ทธ๋ ์ ๋์จ์. C#์ด ์ด๊ฑธ ์ ๋งคํ๊ฒ ์ง์ํด์ ์ฐธ ์์ฝ์ง๋ง
๊ทธ๋ฅ ํจ๊ณผ๋ง๋ค ํด๋์ค ํ๋์ฉ ํ๋๊ฒ ์ ์ผ ๊น๋ํ๊ธด ํจ