์งˆ๋ฌธย 

==> ์Šคํฌ๋ฆฝํ„ฐ๋ธ”์˜ค๋ธŒ์ ํŠธ ๊ทธ๋ƒฅ ๊ทธ๋Œ€๋กœ ์“ฐ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ. ์ด๊ฑธ ์ด์šฉํ•ด์„œ ์ธ์Šคํ„ด์Šค ๋”ฐ๋กœ ๋งŒ๋“ค์–ด์„œ ์“ฐ๋Š”๊ฒŒ ๋‚ ๊นŒ?



๊ฒŒ์ž„ ๋Œ์•„๊ฐ€๋ฉด์„œ ์Šคํฌ๋ฆฝํ„ฐ๋ธ” ์˜ค๋ธŒ์ ํŠธ์— ๋‚ด๊ฐ€ ๋งŒ๋“ค์–ด๋†“์€ ๋ฐ์ดํ„ฐ์˜ ๊ฐ’์ด ์žˆ๋‹ค๊ณ  ์น˜๋ฉด

์˜ˆ๋ฅผ ๋“ค์–ด์„œ ๋ชฌ์Šคํ„ฐ๋ผ๊ณ  ์น˜๋ฉด


name=์ข€๋น„

hp = 100


///


๋‚ด๊ฐ€ ์ด๊ฑธ MonsterData : ScriptableObject๋กœ ๋งŒ๋“ค์—ˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋ฉด.ย 

์ด๊ฑธ ๊ทธ๋ƒฅ ๊ฐ€์ ธ๋‹ค ์“ฐ๋ฉด ๋ชฌ์Šคํ„ฐ๊ฐ€ 100๋งŒ๋งˆ๋ฆฌ๊ฐ€ ์žˆ์–ด๋„ ํฐ ์ƒ๊ด€์€ ์—†๋Š”๋ฐ

์—ฌ๊ธฐ์„œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š”๊ฒŒ ๋ชฌ์Šคํ„ฐ๊ฐ€ ์ฒด๋ ฅ์ด 0์ด๋˜๋ฉด ์ฃฝ๊ฒŒ ํ•ด์•ผ๋งŒ ํ•˜์ž–์•„?


๊ทธ๋Ÿฐ๋ฐ 1๋ฒˆ ์ข€๋น„๊ฐ€ ์ฒด๋ ฅ์ด 100์—์„œ 50์ด ๋๋‹ค๊ณ ย 

๊ทธ๋ƒฅ ํ•ด๋‹น MonsterData๋ฅผ ๊ฐ€์ง€๊ณ  ์—ฌ๊ธฐ๋‹ค๊ฐ€ ์ฒด๋ ฅ 100->50์œผ๋กœ ๋ฐ”๊พธ๋ฉด

100๋งŒ๋งˆ๋ฆฌ ๋ชฌ์Šคํ„ฐ์˜ ์ฒด๋ ฅ์ด ์ „๋ถ€ ๋‹ค ๋ฐ”๋€Œ์ž–์•„?


๊ทธ๋Ÿฌ๋‹ˆ๊นŒ ์ข€๋น„๋ฅผ 100๋งŒ๋งˆ๋ฆฌ ๋งŒ๋“ค ๋•Œย 


public Monster(MonsterData _monData)


์ด๋Ÿฐ ์‹์œผ๋กœ ๋ชฌ์Šคํ„ฐ ๋ฐ์ดํ„ฐ ์ด์šฉํ•ด์„œ ์ง์ ‘ ์ธ์Šคํ„ด์Šค ๋”ฐ๋กœ ๋งŒ๋“ค์–ด์•ผํ•˜์ง€?

------


๊ทธ๋ž˜์„œ SriptableObject๊ฐ€ ํšจ์œจ๋ฉด์—์„œ ์ข‹๋‹ค๊ณ  ํ•˜๋Š”๋ฐย 

์ด ๊ฐ’์€ ๋ณ€๊ฒฝ์ด ์•ˆ ๋˜๋Š” ๊ฐ’๋“ค(๋ชฌ์Šคํ„ฐ์˜ ํ˜„์žฌ ์ฒด๋ ฅ์ด ์•„๋‹ˆ๋ผ ์ตœ๋Œ€์ฒด๋ ฅ๊ฐ™์€) ๊ฒƒ๋“ค๋งŒ SO๋กœ ๋นผ์„œ ์“ฐ๋Š” ๊ฑฐ๊ณ ?


๋งŒ์•ฝ์— ๋ชฌ์Šคํ„ฐ ์ด๋™์†๋„๊ฐ€ 100์ด๋ผ๊ณ  ๊ฐ€์ •ํ•˜๋ฉด


MonsterData

- Speed = 100 ๋„ฃ์–ด๋†“๊ณ .ย 


๊ฐ€์ ธ๋‹ค ์“ฐ๋‹ค๊ฐ€ ๋งŒ์•ฝ์— ๋‚ด๊ฐ€ ๋ชฌ์Šคํ„ฐ ์ด์† ์ฆ๊ฐ€ํ•˜๋Š” ์–ด๋–ค ๋ฒ„ํ”„(?)๋ฅผ ๋งŒ๋“ค์–ด์„œ 20% ์ฆ๊ฐ€(๊ทธ๋Ÿฌ๋‹ˆ๊นŒ 20์ด ์ฆ๊ฐ€ํ•˜๊ฒ ์ง€๋งŒ) ํ•˜๋Š” ๊ฒฝ์šฐ์—”


MonsterData์˜ Speed ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผย 


Monster ๊ฐ์ฒด ์•ˆ์— ํ•จ์ˆ˜ GetSpeed()์ด๋Ÿฐ๊ฑธ ๋งŒ๋“ค์–ด์„œ


int GetSpeed()
{

MonsterData.speed(100์ด๊ฒ ์ง€)*1.2 ์ด๋Ÿฐ ์‹์œผ๋กœ ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์“ฐ์ด๋Š”๊ฒŒ ๋งž์ง€?

}



/////////


์ด๋Ÿฐ ์ผ์„ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด SO๋งŒ๋“ค ๋•Œ ์ธ์ŠคํŽ™ํ„ฐ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ง‘์–ด๋„ฃ์ž–์•„?

readonly๋กœ๋งŒ ํ•ด๋†”์„œ ์ข€ ์‹ค์ˆ˜ ์•ˆํ•˜๊ณ  ์‹ถ์€๋ฐ

์ด๋Ÿฐ ๋ฐฉ์‹์€ ์–ด๋–ป๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Œ??


๊ทธ๋ƒฅ ์ด๋Ÿฐ ์‹์œผ๋กœ


MonsterData

{

ย  ย [serialized field] private int speed;


ย  ย public int GetSpeed

{

return speed;

}

}



์ด๋Ÿฐ ์‹์œผ๋กœ ๋ณ€์ˆ˜์— ์ ‘๊ทผ ๋ชปํ•˜๊ฒŒ ๋ง‰๊ณ  ๊ทธ๋ƒฅ getter/setter๋‚˜ ํ•˜์—ฌ๊ฐ„ ์ ‘๊ทผ ํ•  ๋•Œ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋ง‰๋Š” ๋ฐฉ๋ฒ•๋งŒ์ด ์žˆ๋Š”๊ฑด๊ฐ€?




์งˆ๋ฌธ์ด ์ข€ ๋‚œ์žกํ•ด์„œ ๋ฏธ์•ˆ!

์›๋ž˜ ์ €๋Ÿฐ ๋ฐฉ์‹์ด ์ •์„์ธ๊ฐ€?