save load๊ธฐ๋ฅ ๊ตฌํํ๋๋ฐ
63๋ฒ์ค์์๋งํ
๊ทธ๋์
string jdata = JsonConvert.SerializeObject(save);
save =ย JsonConvert.DeserializeObject(jdata);
์ด๋ ๊ฒ ๋์ค๋ง ์จ๋ดค๋๋ ์ด๊ฒ๋ ์ ์์๋ ์๋๋๋ฐ, ์ด๋ ๊ฒ ์ฐ๋๊ฒ ์๋๊ฐ?
62๋ฒ์ค print๋ ์ ๋๋ก ๋์ค๋๊ฒ ๋ณด๋ฉด ๋๋จธ์ง๋ ์ ๋๋ก ๋๋๊ฒ๊ฐ์๋ฐ
62๋ฒ์ค ํ๋ฆฐํธ ๋ด์ฉ์
{
"stage":1,
"isSaved":true,
"leftDestroyCount":1,
"handsTileDic":{"basic":0,"cliff":1,"highway":0,"mountain":0,"swamp":0,"lake":0,"home":0,"gateway":0,"enemySpawn":0},
"handsArrDic":{"bowgun":1,"autoBowgun":0,"catapult":0,"detectTower":0,"flameThrower":0},
"tiles":[
ย {"posX":100,"posY":100,"tileType":6,"HP":0},
ย {"posX":99,"posY":100,"tileType":0,"HP":0},
ย {"posX":99,"posY":101,"tileType":0,"HP":0},
ย {"posX":100,"posY":101,"tileType":0,"HP":0},
ย {"posX":98,"posY":101,"tileType":0,"HP":0},
ย {"posX":101,"posY":100,"tileType":0,"HP":0},
ย {"posX":100,"posY":102,"tileType":0,"HP":0},
ย {"posX":102,"posY":101,"tileType":0,"HP":0},
ย {"posX":102,"posY":102,"tileType":0,"HP":0},
ย {"posX":101,"posY":102,"tileType":0,"HP":0},
ย {"posX":103,"posY":101,"tileType":0,"HP":0},ย
ย {"posX":99,"posY":99,"tileType":0,"HP":0},
ย {"posX":103,"posY":100,"tileType":0,"HP":0},
ย {"posX":102,"posY":103,"tileType":0,"HP":0},
ย {"posX":101,"posY":101,"tileType":0,"HP":0},
ย {"posX":98,"posY":100,"tileType":0,"HP":0},
ย {"posX":100,"posY":99,"tileType":0,"HP":0},ย
ย {"posX":97,"posY":100,"tileType":0,"HP":0}ย
ย ],
"arrangements":[],
"spawnPosList":[
ย [104,101]
ย ]
}
์์ฃผ๊ฐ๋ ๋์๋ฆฌ์ผ๋ผ์ด์ฆ๊ฐ ์ฑ๊ณตํ๋๋ฐ ์กฐ๊ฑด์ ์ ํ ๋ชจ๋ฅด๊ฒ ์
์ค๋ฅ๋ก๊ทธ๋ฅผ ๋ด์ผ
์ ใณใณ A class should either have a default constructor, one constructor with arguments or a constructor marked with the JsonConstructor attribute. ๊ฒ์ํด๋ณด๋๊น ์์ฑ์์ ๋งค๊ฐ๋ณ์ ์๋๊ฒ ๋ฌธ์ ์๋๋ฏ ์ผ๋จ์๋๋จ ์ฝ์์ฐฝ์ ๋นจ๊ฐ๋ฒํผ๋๋ฅด๋ฉด ์๋ฌ๋ฆฌ์คํธ ๋ค ๋จ๋๊ตฌ๋