6์๋ฌ์ ๊ธฐํ์ ์์ฑํด์ ํผ๋๋ฐฑ์ขํด๋ฌ๋ผ๊ณ ํ๋ ์ธ๋ถ์ด์ https://gall.dcinside.com/m/game_dev/98288 (๊ทธ๋ ์ฌ๋ ธ์๋๊ธ ๋์ผ์ธ๋ฌผ ๋ง์)
์๋๋ 6์๋ฌ ๋ถํฐ ๊ฐ๋ฐํ์ด์ผํ๋๋ฐ ๊ฒ์๋ฌ๊ฐ์ง๊ณ 7์์ ๊ฐ๋ฐ์ ์์ํ๋๋ฐ ๋ ธ๋๋ผ๊ณ ์ค ๊ฐ๋ฐ์๊ฐ์ 2์ฃผ์ ๋๋ฐ์ ์๋๋๋ฏ..
๋ง๋ฒ ์ ์ ๋ฌธ๋ฒ ๋ณ๊ฒฝ
์๋์ ๊ธฐํ๋๋ก๋ผ๋ฉด ๋ง๋ฒ์ ์ ๋ณด๋ฅผ ์ ์ํ๊ณ ์ ์ํ ์ ๋ณด์ ๋ฐ๋ผ์ ํค์๋๋ฅผ ์ ๋ ฅํ๋ ๋ฐฉ์์ผ๋ก ๋ง๋ฒ์ ์ ์ํ๋ ๋ฐฉ๋ฒ์ ์ฑํํ์์ย
๊ทผ๋ฐ ์๊ฐํด๋ณด๋๊น ๋๋ฌด ๋ณ๋ก์ ๋ฌธ๋ฒ๋ ์๊ทผํ ๋ณต์กํ๊ณ ๊ตฌํ๋ ๊ท์ฐฎ์๊ฒ ๊ฐ์์ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ๋ง๋ค๊ฒ๋์์.ย
ย
๊ทธ๋์ ๋ฐ๊พผ ๋ฐฉ๋ฒ์ ์ฃผ๋ฌธ์ด๋ผ๋ ํค์๋๋ค์ ์งํฉ๋ค์ ์งํฉ์์ผ์ ํ๋์ ๋ง๋ฒ์ ๋ง๋๋ ๋ฐฉ์์ ์ฑํํ๊ฒ๋ฌ์ ์ด๋ ๊ฒ ๋๋ฉด ๋ฌธ๋ฒ๋ ํจ์ฌ ๊ฐ๊ฒฐํด์ง๊ณ ๋ง๋ค์ด์ง์ ์๋ ๋ง๋ฒ์ ๊ฒฝ์ฐ์ ์๋ ๋ง์์ง๊ฒ ๋์ ์ข์๋ฏ
๋ง๋ฒ์ ํํ๋ณ๊ฒฝ
์ ์ ๊ธฐํํ๋ ๋ง๋ฒ์ ๊ฒฝ์ฐย
๋ง๋ฒ์ ํ์ (๋ถ๋ง๋ฒ,๋ ๋ง๋ฒ ๋ฑ๋ฑ...),๋ง๋ฒ์ ์ข ๋ฅ(๊ณต๊ฒฉ ๋ง๋ฒ,๋ฒํ ๋ง๋ฒ ๋ฑ๋ฑ...), ๋ง๋ฒ ์คํฌ๋กคย ์ฌ์ฉ์ ํ์ํ ๋ง๋๊ณ์(์๋์ด ๋ง๋ฒ์ ๊ตฌ๋งคํ ๋์ ๊ณ ๋ คํ๊ฒ๋๋ ์์), ๋ง๋์ํด(์ ์ํ ์คํฌ๋กค์ ์๋ ฅ)ย
์ด๋ฌํ ์ ๋ณด๋ค์ ๋ด๊ณ ์์์ ๊ทธ์๋ฐ๋ผ ํค์๋์ ๋ด๊ฒจ์ ธ์๋ ์ ๋ณด๋ค๋ ๋๋ฌด ๋ง์์ย
ํค์๋์ ํ์ (๋ถ๋ง๋ฒ ์ฑํฅ์ ํค์๋์ธ์ง ๋ ๋ง๋ฒ ์ฑํฅ์ ํค์๋์ธ์ง ๋ฑ๋ฑ...), ํค์๋์ ์ฑํฅ(๊ณต๊ฒฉ ๋ง๋ฒ์ ํค์๋์ธ์ง ๋ฒํ ๋ง๋ฒ์ ํค์๋์ธ์ง ๋ฑ๋ฑ...), ๋ง๋(์ฌ์ฉํ ํค์๋๋ค์ ๋ง๋์ ํฉ์ด ๋ง๋๊ณ์๊ฐ ๋จ),ํค์๋์ ์๋ ฅ(์ฌ์ฉํ ํค์๋์ค ์๋ ฅ์ด ๊ฐ์ฅ ํฐ๊ฐ์ด ๋ง๋ ์ํด์ด ๋จ)
๋๋ฌด ๋ง์๊ฐ์ง๊ณ ๋ง๋ฒ์ ๋ง๋๋๋ฐ์ ์๊ฐํด์ผํ ๊ฒ ๋๋ฌด ๋ง๊ณ ๋ณต์กํด์ ๋ง๋ฒ ํํ๋ฅผ ๋ฐ๊พธ์์
ํค์๋์ ์ฑํฅ(๊ณต๊ฒฉ ๋ง๋ฒ์ ํค์๋์ธ์ง ๋ฒํ ๋ง๋ฒ์ ํค์๋์ธ์ง ๋ฑ๋ฑ...),ํค์๋์ ์๋ ฅ(์ฌ์ฉํ ํค์๋์ค ์๋ ฅ์ด ๊ฐ์ฅ ํฐ๊ฐ์ด ๋ง๋ ์ํด์ด ๋จ),๋ง๋(์คํฌ๋กค์ ์ ์ํ ๋์ ํ์ํ ๋ง๋์ ๊ฐ์ด๋จ)
์ด๋ฐ์์ผ๋ก ๋ฐ๊พธ๊ฒ๋์์ ์ด๋ฌ๋ฉด ๊ณ ๋ คํด์ผํ๋๊ฑด ํค์๋์ ์ฑํฅ,๋ง๋,์๋ ฅ ์ ๋๋ง ์๊ฐํ๋ฉด๋๋๊น ํจ์ ๊ฐ๊ฒฐํด์ง๊ฒ ๊ฐ์ย
์ง๊ธ๊น์ง ๋ง๋ ๊ฑฐ
UI ํจ๊ณผ
ui๋ ๊ทธ๋ฅ ๋จ์ํ๊ฒ ๋ง์ฐ์คํด๋ฆญ์ผ๋ก ์กฐ์ํ๊ฒ ๋ง๋ค์์ ํด๋ฆญํ๋ฉด ์๋ก ์ฌ๋ผ์ค๊ฒ ๋๊ณ ๊ฐ๋ค๋๋ฉด ์ปค์ง๋ ํ์์ผ๋ก ๋ง๋ค์์
๋ง๋ฒ ์ ์
์๋ฌ๋ฅผ ์ก์์ฃผ๊ฑฐ๋ ํธ์์ฑ๋ถ๋ถ์ ์์ง ๊ตฌํ์ ์ํด๊ฐ์ง๊ณ ์๋ฌด๊ฑฐ๋ ์
๋ ฅํด๋ ๋ง๋ฒ์ ๋ง๋ค์์๋ ์์ค์
๊ตฌํ
ํค์๋๋ค์ ์ ๋ณด๋ค์ KeyWord๋ผ๋ ํด๋์ค๋ฅผ ๋ง๋ค์ด์ ํค์๋๋ค์ ์งํฉ์ธ keywordInfo๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์ด์ย KeywordSO ๋ผ๋ ScriptableObjectํ์์ผ๋ก ๋ง๋ค์์ย
์ฌ๊ธฐ์์ข ์ ๋จน์๊ฒ ์๋๋ฐ ํค์๋๋ค์ type๋คํ๊ณ type๋ค์ ๊ฐ์๋ฅผ ๋์ ๋๋ฆฌ ํ์์ผ๋ก ์ ์ฅํ๊ณ ์ถ์๋๋ฐ ๋์ ๋๋ฆฌ ํ์์ ์ง๋ ฌํ๊ฐ ์๋์ ๊ณ ์์ขํ์ ๊ฒฐ๊ตญ์ ๋ฐฉ๋ฒ์ ์ฐพ์๋๋ฐย ISerializationCallbackReceiver ๋ผ๋ ์ธํฐํ์ด์ค๊ฐ ์์ด์ ์ด๊ฑธ๋ก ์ง๋ ฌํ๊ฐ ์๋๋ ์๋ฃํ๋ค์ ์ง๋ ฌํ ์ํฌ์์์์ย
๋์ ๋๋ฆฌ ์ง๋ ฌํ์ ๋ํด์ ๊ตฌ๊ธ๋งํด๋ณด๋ฉดย
์ง๋ ฌํ๊ฐ ๋๋ ๋ฆฌ์คํธ๋ฅผ ์ด์ฉํด์ ๊ตฌํํ๋๋ฐ ์ด๋ ๊ฒ ํด๋ณด๋๊น ๊ธธ์ด๋ฅผ ๋๋ฆฌ๋ ค๊ณ ํ๋๊น key์ ๋ฆฌ์คํธ์ value์ ๋ฆฌ์คํธ์ ๊ธธ์ด๊ฐ ๋ฌ๋ผ์ ์๋์ด ์๋์์ย
https://gall.dcinside.com/m/game_dev/100004 (๊ทธ๋ ๋น์ ์ํฉ)
๊ทธ๋์ ๋ด๊ฐ ํด๊ฒฐํ ๋ฐฉ๋ฒ์ ๊ฒฝ์ฐ
public class SerializableDictionary<TKey, TValue> :Dictionary<TKey, TValue>, ISerializationCallbackReceiver{
[SerializeField]
private TKey key;
[SerializeField]
private TValue value;
// save the dictionary to lists
public void OnBeforeSerialize()
{
foreach (var kvp in this)
{
key = kvp.Key;
value = kvp.Value;
}
}
์ด๋ฐ์์ผ๋ก ๊ตฌํ์ ํ ๋์ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๊ทธ๋ฅ keyํ๊ณ value๋ง ๋ฐ๊ณ ย ์ฌ์ฉํ ๋ SerializableDictionaryํ์ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํ๋๊ฑธ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์
์ด๋ฐ์์ผ๋ก ํด๊ฒฐํ์
๊ทธํ์ ๋๋จธ์ง๋ ์ฌ์ ์ ์ ์ ๊ฐ ์ ๋ ฅํ ํ ์คํธ๋ฅผ ์ค๋จ์๋ก ๋๋๋ค์ ๊ทธ๊ฑธ ๋ ๋ค์ <cast = 0,1,2,3.....> </cast = 0,1,2,3....> ์ ๊ธฐ์ค์ผ๋ก ๋๋์ด์ casts๋ผ๋ list์๋ค๊ฐ ๋ฃ์๋ค์ LInq์ด์ฉํด์ ์ ๋ ฅํ ํค์๋๋ค์ค์ keywordinfo์ ์ ์๋ย ํค์๋๋ค๋ง ๊ฐ์ ธ์์ย ย ํด๋น ํค์๋๋ค์ ํ์ ๋ค์ ๊ณ์๋งํผ ์ ์๋ ๋ง๋ฒ์ ์ ๋ณด๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐฉ์์ผ๋ก ๋ง๋ค์์
void CastOperation(List<string> Operation){
var keyword =
from keywordSo in keywordSo.KeywordInfo
from type in keywordSo.typeAndCount
join operation in Operation on keywordSo.name equals operation
select new { Name = keywordSo.name, Key = type.GetKey(),Value = type.GetValue()};
foreach (var VARIABLE in keyword)
{
int temp = newSpell.TypeCount[(int)VARIABLE.Key];
newSpell[(int)VARIABLE.Key] = temp + VARIABLE.Value;
}
}
์ด๋ฐ์์ผ๋ก ๊ตฌํํ๋๋ฐ ์ธ๋ฑ์ ์ฌ์ฉํ๋๊น ๋๋ฌด ๋ณ๋ก์ธ๊ฒ ๊ฐ์์ ํ๋กํผํฐ ์์ข๋ด์ ์ธ๋ฑ์ ์ฌ์ฉ์ํ๋ ๋ฐฉํฅ์ผ๋ก ๊ฐ์ผํ ๋ฏ
๋ง๋ฌด๋ฆฌ
๋ค์ ๊ฐ๋ฐ์ผ์ง์์๋ ๋ง๋ฒ์ ์ ์ปดํ์ผ๋ฌ ์์ฑ(์๋ฌ๊ตฌ๋ถ, ์ ์ํ๊ณ ์๋ ๋ง๋ฒ์ ์ ๋ณด ์๋ ค์ฃผ๊ธฐ ๋ฑ๋ฑ... ํธ์์ฑ๋ถ๋ถ)ํ๊ณ ์ฌ๋ฆฌ๊ฒ ์ย ย
์ฌํด์์ ์ถ์ํ๋๊ฒ ๋ชฉํ์ด๊ธดํ๋ฐ ๊ตฌํํ ๊ฒ ๋ง์์ ๊ฐ๋ฅํ์ง ๋ชจ๋ฅด๊ฒ ๋ค ใ ใ ...
๊ณ ์
๊ฐ์ฌํฉ๋๋ค - dc App
์ ๋ง๋ค์๋ค. ์ฝ๋ฉ ๊ฒ์์ด๋ผ ์ด์ง ์ ๊ทผ์ฑ ๋ฌธ์ ์์ ๊ฒ ๊ฐ๋ค๋ ์ ๋ง ๋นผ๋ฉด ์ข์ ๊ฒ ๊ฐ์. ์ ์ ํ ํ๋งค ๊ฒ์์ด ๋ํ์ ์ผ๋ก ์ฃผ๋ฌธ ์ ์(ํฌ์ ํฌ๋ํํธ), ์ ์ ํ๋งค(ํ์คํฌํฌํธ), ํ๋งค ์ ํฌ(์ญ์ค๋ฏธ์ค) ์ธ๊ฐ์ง ์ ๋๋ก ๋๋๋๊ฒ ๊ฐ๋๋ฐ ๊ธฐํ์ ์ฝ์ด๋ณด๋ ์๋ง ์ ์ ํ ํ๋งค๋ก ํ๋ ๊ฒ ๊ฐ๋๋ฐ ์ ์ด ์ถ๋ชฐํ์๋ ์ ์์ฑ์ด๋ ์์ฑ๊ฐ์๊ฑธ ์ ์ ์๊ฒ ํด์ - dc App
๊ทธ์ ๋ฐ๋ฅธ ์ ํธ๋ ์ฐจ์ด๊ฐ์๊ฒ๋ ์ข์ ๊ฒ ๊ฐ๊ณ ์ ํด์น ์ฑ๊ณตํด์ ๋ช ์ฑ์ด ์ค๋ฅด๋ ์ด๋ฒคํธ๋ ๋์์ง ์์ ๋ฏ ใ ใ - dc App
์ ํํ๊ฒ ๋ถ์ํ์ ์ค์ ๋ก ์ ์ํ ํ๋งคํ๋ ๊ฒ์์ด๊ณ ํ ์์๋ค๋ฉด ํ์คํธ ์์คํ ์ ๋ง๋ค์ด์ ์ฃผ๋ฌธ์ ์ ๋ฐฉ์๋ ๋ฃ๊ณ ์ถ์ ์ ๊ทผ์ฑ์ ๊ฒฝ์ฐ ์ ์ ๊ฐ ๋ง๋ฒ์ ์ ์ํ๋๋ฐ์ ํ์ํ ์ ๋ณด๋ค์ ์ด๋ป๊ฒ ์ต๋ํ๊ฒํด์ผํ ์ง๋ ์์ง ๊ณ ๋ฏผ์ค์...
์คํฌ๋ฆฝํธ๋ง๊ณ ์์ฑ์ด๋ ์ฝ์คํธ ๊ฐ์๊ฑฐ๋ ํค์๋๋ก ํด์ ํค์๋๋ง ์กฐํฉํ๋๊ฑด ์๋จ? ๋ถ์์ฑํค์๋>ํ๊ดด์ ์ธ, ๋ฐ๋์์ฑํค์๋>์ ์ํ ์ด๋ฐ๊ฑธ๋ก ํ๋ฉด?
๋ด๊ฐ ์ ๋๋ก ์ดํด๋ฅผ ๋ชปํด์ ๊ทธ๋ฐ๋ฐ ์๋ฅผ์ข๋ค์ด์ค์์์ด?
๋ถํ๋ ๊ฑฐ๋ํ๊ณ ์ํ์ ์ธ ํ์ด์ด๋ณผ? - dc App
์๋ ฅ์ด๋ ์์ฑ๊ฐ์ ์์น๋ฅผ ์ซ์๋ก๋ ํํํ ๊บผ์ง๋ง ์ ์ํ ๋ง๋ฒ์ ์ด๋ฆ์ผ๋ก๋ ํํํ ์์ ์ ์๋ฅผ ๋ค์ด์ ๊ณต๊ฒฉํ์ ์ 3์ํด ์ ๋์ ๋ง๋ฒ์ด๋ฉด ๊ฑฐ์ธ์ ์ํ์ ์ธ ํ์ด์ด๋ณผ? ์ด๋ฐ์์ผ๋ก ๋ง๋ค์ด์ง๋ฏ
๊ฒ๋ ์ด๋ ต๋ด ์ด๊ฒ์ด ์ง์ง ํ๋ก๊ทธ๋๋จธ์ธ๊ฐ...
๊ฒ๋จน์ํ์์์ ๊ตฌ๊ธ๊ณผ ํจ๊ปํ๋ฉด ์ด๋ ค์ด๊ฒ ํ๋์์ ใ ใ - dc App
๋ง๋ฒ์ด๋ผ ๋ค๋ค์ ๊ทธ๋ ์ง ๋ฌด๊ธฐ๋ฅผ ๋ง๋๋ ๋์ฅ์ฅ์ด์์๊ฐ ์๋ ๊ฒ์์์ ๋ชจ๋ํ๋ ๋ฌด๊ธฐ ๋ง๋๋๊ฑฐ๋๋ ๋น์ทํ๋ค ๋ณด๋ฉด ๋๋
์์งํ ๋๋ ๊ทธ๋ถ๋ถ์ด๊ฑฑ์ ์ ๋ญ๊ฐ ์ฐจ๋ณํ๋์ ์ด ์๋๊ฒ๊ฐ์ - dc App
๊ฒ๋์ด๋ ๊ฐ๋ฐ์๋ค์ด๋ ์ด๋ ๊ฒ ๋ถ์ํ์ง ์ผ๋ฐ ๊ฒ์ด๋จธ์ผ ๊ทธ๋ ๊ฒ๊น์ง ์ฐ๊ด์ง์ง ๋ชปํ๊ณ ์๋กญ๋ค๊ณ ์๊ฐํ๊ธด ํ ๊ฑฐ์
๊ณ ๋ง๋ค...
๋ด์๊ฐ์ ์ถฉ๋ถํ ์ฐจ๋ณํ๋ ์ ์ด ์๋๊ฑฐ ๊ฐ์ ํด๋น์ฅ๋ฅด์์ ์ ๋ช ํ jacksmith์์๋ ๊ฐ๊ฐ์ ๋์ฅ์ฅ์ด ์์๋ค์ ํ๋ ๊ณผ์ ์์ ์ฉ๊ด๋ก ๊ธฐ์ธ์ฌ์ ์ณ๋ฌผ ๋ค์ด๋ถ๊ณ , ๋ ๋ ๋ ๋ง์น๋๋ ค์ฃผ๊ณ ํ๋ ๋ชจ๋ํ์ ์ฌ๋ฏธ์๋ค๋ฉด (์ ์ ์ ์๊ธฐ์ ์ด ์ค์ํจ) ๋ง๋ฒ์ด๋ผ๋ฉด ์์ ํ๋๋ฐ ํ๋ ๋ณต์ก๋(ํค์๋๊ฐฏ์, ํค์๋ ์์ฒด๋์ด๋), ์ฝ์คํธ(๋ง๋), ํจ๊ณผ๋ฑ ๊ทธ๊ฑธ ์ํฉ์ ๋ง๊ฒ ์กฐ์จํ๋๊ฒ ์ฌ๋ฏธ์์๊ฑฐ ๊ฐ์! (์ ์ ์ ๋ฅ์ง..?)
๊ธฐํํ ๋๋ ์ค๋ถ๋ถ์ ์ค์ํ๊ฒ ์๊ฐํ๊ณ ์์๋๋ฐ ์ฐจ๋ณํ๋๋ถ๋ถ์ด๋ผ๊ณ ๋ ์๊ฐ๋ชปํ๋๋ฐ ๊ณ ๋ง๋ค - dc App
๋ง๋ฒ๋ง๋ค๊ธฐ ๋ญ๊ฐ ์ด๋ฆ๋ง ๋ค์ด๋ ์ฌ๋ฐ์ ๊ฑฐ ๊ฐ์ ๋๋์ใ ใ ใ
์ญ์ ์ด๋ฆ์ด๋จ์ํ๋ฉด ๋จ์ํ ์๋ก ์ข์๊ฑฐ์ ใ ใ - dc App
์ค ๋ ์ด๋ฐ๊ฑฐ ๋ง๋ค๊ณ ์ถ์๋๋ฐ ํ๋ก๊ทธ๋จ ์ธ์ด๋ก ํ ์๊ฐ์ ๋ชปํด๋ดค๋ค ์๋์ผ๋ฉด ์ข๊ฒ ๋ค - dc App
๊ณ ๋ง์ก.. ์ด์ฌํํด๋ณผ๊ฒ - dc App
noita ํ๋๋ฒ์ ใทใท