더북(TheBook)

실행하면 생성한 주인공 정보와 몬스터 정보가 보입니다. 운이 나쁘면 처음부터 약 33%의 확률로 마왕(보스 몬스터)을 만날 수도 있습니다.

그림 12-5 전투 메뉴

몬스터를 생성할 때 JSON.parse()JSON.stringify() 메서드로 깊은 복사를 했습니다. 여기서 얕은 복사가 아닌 깊은 복사를 하는 이유가 있습니다. 몬스터는 monsterList에서 가져옵니다. 여기에 저장된 값은 몬스터의 초기 정보입니다. 초기 정보는 바뀌면 안 됩니다.

만약 슬라임 몬스터를 얕은 복사로 생성해서 슬라임의 hp를 0으로 만들었다고 합시다. 그러면 monsterList 내부의 슬라임 hp도 같이 0이 되어 버립니다. 다음 번에 모험을 떠났을 때 다시 슬라임 몬스터를 만나게 되면 슬라임 몬스터의 체력은 0으로 시작할 것입니다. 따라서 초기 정보를 바꾸지 않기 위해 깊은 복사를 해야 합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.