์ด์ œ c#, ์œ ๋‹ˆํ‹ฐ ๊ฑธ์Œ๋งˆ๋Š” ์ตํžˆ๊ณ  ์ดˆ๋ณด์ž์˜ ๊ธธ๋กœ ๋“ค์–ด์˜จ ๋‰ด๋น„์ž…๋‹ˆ๋‹ค..


๊ฒŒ์ž„ ๋‚ด ์•„์ดํ…œ๋“ค์˜ ๊ธฐ๋ณธ ์ˆ˜์น˜๋“คย - json์ด๋‚˜ ๊ตฌ๊ธ€ ์Šคํ”„๋ ˆ๋“œ ์‹œํŠธ, SO ๋“ฑ ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ๊ฒŒ ์™ธ๋ถ€ ํŒŒ์ผ๋กœ ๋นผ์„œ ํ…์ŠคํŠธ ํ˜•์‹์œผ๋กœ ๊ด€๋ฆฌ

ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์†Œ์œ ํ•œ ์•„์ดํ…œ(์ธ๋ฒคํ† ๋ฆฌ)- ํ”Œ๋ ˆ์ด์–ด ๊ฐœ์ธ์˜ ๋ฐ์ดํ„ฐ ์ €์žฅ๊ณ ๋ฅผ ๋งŒ๋“ค๊ณ ,ย  ์†Œ์œ ํ•œ ์•„์ดํ…œ๋“ค์„ ์ €์žฅ์ด๋ผ๊ณ  ์ƒ๊ฐ์„ํ•˜๋Š”๋ฐ,


์žฅ๋น„๊ฐ•ํ™”๋‚˜ ์‚ฌ์šฉ์œผ๋กœ ์ธํ•œ ๋‚ด๊ตฌ๋„ ๊ฐ์†Œ๋“ฑ ๊ฐ๊ฐ ์•„์ดํ…œ(์นด๋“œ)์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋Š” ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„์„ ํ•ด์•ผ ์ข‹์„๊นŒ์š”



์ง€๊ธˆ๊นŒ์ง€ ๊ตฌํ˜„ํ•œ ๊ฒƒ์€ย ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์นด๋“œ ๊ฒŒ์ž„์„ ๋ชฉํ‘œ๋กœ ํ•˜๋Š”๋ฐ


Card.cs๋ผ๋Š” ์นด๋“œ ๊ฐ๊ฐ์˜ ๊ณ ์œ ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค

CardData(scriptable object)๋ฅผ ๋งŒ๋“ค์–ด ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํ„ฐ(์นด๋“œ ์ด๋ฆ„, ์นด๋“œ ์œ ํ˜•, ์นด๋“œ id๋“ฑ)๋ฅผ ๋‹ด๋Š” SO๋ฅผย ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค

์นด๋“œ ์ด๋ฏธ์ง€(ํ”„๋ ˆ์ž„)์™€ ์—ฌ๋Ÿฌ text๋“ค์„ ๊ฐ€์ง„ย Object์— Item.cs๋ฅผ ์ปดํฌ๋„ŒํŠธ๋กœ ๋„ฃ๊ณ , ์ธ์ŠคํŽ™ํ„ฐ ์ฐฝ์—์„œ Item.cs์—ย SerializeField๋ฅผ ํ†ตํ•ด so๋ฅผ ๋„ฃ์—ˆ์Šต๋‹ˆ๋‹ค.ย 

CardSetUp.cs๋ฅผ ์ด์šฉํ•ด ์ด๋ฆ„, ๋น„์šฉ, ํšจ๊ณผ๋“ฑ์„ text์— ์—ฐ๊ฒฐํ•ด์ฃผ๋Š” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ ํ›„ ์ด object๋ฅผ prefab์œผ๋กœ ์ €์žฅํ–ˆ์Šต๋‹ˆ๋‹ค.


ํ”Œ๋ ˆ์ด์–ด ๋ฑ์€ ์ž„์‹œ๋กœ List<Card>๋กœ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.ย 


์ด๋Ÿฌ๋ฉด ๋ฑ์—์„œ ์นด๋“œ๋ฅผ ๋ฝ‘์•„ scene์— ์ƒ์„ฑํ• ๋•Œ๋Š” Deck์—์„œ prefab์„ instantiate๋ฅผ ํ•˜์—ฌ ์ƒ์„ฑ์„ ํ•˜๋Š”๋ฐ, ์ด๋Ÿฌ๋ฉด ์•„์ดํ…œ '์‚ฌ๋ณธ'์„ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด๋ผ ๊ณ ์œ ์˜ ๋ฐ์ดํ„ฐ ๋ฐ˜์˜์ด ๋˜๋Š”๊ฒƒ๊ฐ™์ง€๋Š” ์•Š์€๋ฐ, ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„์„ ํ•ด์•ผํ•˜๋Š”์ง€ย ํ˜ผ๋™์ด์˜ต๋‹ˆ๋‹ค


๋„์›€์„ ์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹คย