6차 모임이 있었다. 일정의 중반에 치닫아서, 중도 하차하거나 참석하지 못하는 분들도 생기기 시작했다. 오늘은 게임 아이디어의 핵심이 된 블랙타일의 생성, 이동, 결합과 함께 스테이징 까지 완료했다.
블랙타일은 기존 타일과 GameObject를 공유하도록 코드를 작성했다. 그 이유는, 타일이 겹쳐서 생성되는 경우를 해결하는 것이 생각보다 까다로웠기 때문이다. 그리고 해당 오브젝트의 (에셋으로 부터 복사 된)네임 값을 활용해 블랙타일과 일반타일을 판별하도록 했다.
이동 함수의 경우 Square[x1, y1].name.Contains("n_")
를 활용해 일반 타일인 경우에만 적용 되도록 했고, 스폰의 경우 좌표값과 타일벨류값을 고정하여 스테이지가 시작될 때 생성되도록 작성했다. 가장 곤란했던 것은 결합함수였는데, 블랙 타일과 일반타일이 만났을 때 값이 같으면 둘 다 파괴하고 해당 위치를 null값으로 설정해주었다.
스테이징은 블랙타일이 모두 제거되면 다음 스테이지로 넘어가기는 명확한 규칙이 있기 때문에, 모든 타일의 상태를 저장하고 있는 배열을 순회하여 블랙 타일이 있으면 int m의 값을 +1 해주어, m값이 0이면 클리어하도록 설정했다.
스폰 함수는 스테이징을 위해서 스테이지넘버 값마다 다르게 동작하도록 설정했다. 6단계 이상인 경우에는 각각의 타일 위치와 갯수, 벨류를 자동으로 설정하도록 했다. 다만, 적절한 난이도로 등장하도록 손 볼 필요가 있다.
스테이지 넘버 값은 화면 상의 텍스트로 보여주고, 스테이지 값은 앱을 다시 실행시켜도 고정되어야하기 때문에 PlayerPrefts에서 GetInt값으로 가져오고 있다.
버그 수정완료. 남은 것은 UI와 스토어 등록!