[CoronaSDK] 블록 어태커 개발 일지
시작 글
또 주말에 못 써버렸네.. 계속 까먹는다. 집중, 집중. 주말만 되면 정말 안 풀릴 것처럼 견고하던 나의 모든 것들이 놀랍도록 순식간에 무장해체 되어 버린다. 이번 주말에는 뭘 해야하지? 하는 생각을 할 겨를도 없이 주말을 겨울날 뜨끈한 목에 앉아서 귤 까먹듯이 시간을 다 까먹어 버린다.
여튼, 그렇기 때문에 또 평일날 이렇게 일지를 끄적여본다.
작업
이번주 작업 분량
1. Layered Tile 작업
타일 관련해서 더 작업할 줄은 몰랐는데. 이번 주에 다음 씬의 화면을 좀 더 이쁘게 꾸며보기 위해 이리저리 이미지 파일을 만지고, 스크립트를 수정하다 보니 몇 가지 니즈를 깨닫게 되었다.
1) 타일의 레이어가 한 가지라서 높이에 따라 이동할 수 있고 없고를 구현할 수 없다. 2) 레이어드 기능이 들어간다면 같은 레이어의 타일을 겹쳐셔 깔고 싶을 때가 있다.
여기까지 생각이 미쳤고, 그대로 구현을 해보았다.
기존에는 Tiles이라는 레이어만 존재하고 있었는데, 해당 기능은 일단 유지하고 layerTile이라는 레이어를 추가하기로 했다. 일단 이렇게 하면 기존 타일과 겹치진 않으니까..
즉 일단 구현된 형태는
layerTiles
Tiles
의 모양이 되었다.
하지만 맵의 뎁스, 즉 높이를 한 가지로만 맞춰두면 나중에 확장성에 문제가 생길 여지가 있으니,
layerTiles1, layerTiles2, layerTiles3…
형태로 레이어를 동적으로 추가할 수 있도록 하였다. 물론 뒤의 숫자는 높이를 뜻한다.
1)은 일단 이것으로 완료.
2)은, 같은 레이어에서도 여러 타일을 겹쳐서 깔고 싶을 때가 생기는 경우가 있었다. 맵 가장자리의 돌부리 형태 이미지라던가. 그래서 이것도 최대한 직관적으로 해결했다. 레이어의 이름 뒤에 _1, _2 식으로 붙이면 계속해서 겹쳐서 타일을 놓을 수 있다.
이것으로 2번도 해결.
좀 주먹구구식 구현이긴 한데.. 아무튼 이 규칙으로 한번 해보고 불편하면 수정 해보도록 하자.
2. 씬 오브젝트의 생성자 수정
lua에 익숙하지 않을 때 만든 인터페이스들이라 여기 저기 굉장히 너저분한 코드들이 많다.. 일단 생성자를 위해 넘기는 값들이 하나의 테이블에 모여있지 않고 변수로 너저분하게 넘어가는 부분들이.. 생성자 윗쪽에 필수 변수들을 assertion 체크 해주는 방식으로 하고 전부 테이블로 넘길껄… 이 부분은 정리를 꼭 해주도록 해야겠다.
아무튼 일부분을 inits 테이블에 넣어서 넘길 수 있도록 수정했다. 이벤트 없이 획득물 획득 관련 기능을 추가하다가 생긴 니즈였다.
맺음 글
꽤 많이 개발했다고 생각했는데, 역시나 역시나 얼마 나아가지 않았네. 이번 주말에는 꼭! 주말에 개발 일지를 쓰도록 해야지! 제바알..