나 때려봐 하는 오락실 기계를 본 적이 있을 겁니다. 이번에는 앱인벤터로 두더지 게임을 만들어 보도록 하겠습니다.
이 게임은 다들 알고 있듯이 무작위로 두더지가 스마트폰에 나타나고 두더지를 터치 했을 때 점수를 얻는 게임입니다.
이 강좌에서는 두더지를 터치하면 점수가 올라가는 것 뿐만 아니라 속도가 증가하고, 두더지를 터치하지 못했을 때는 점수가 내려가고 두더지 출몰 속도가 늦어지는 기능까지 구현해 보도록 하겠습니다.
- 앱 기능
– 랜덤으로 두더지가 나타나고 두더지를 터치 했을 때 점수를 얻고 두더지 출목 속도가 빨라집니다.
– 두더지가 아닌 곳을 터치 했을 때 점수가 감소하고 두더지의 속도는 느려집니다.
– 두더지는 처음에 1초에 한번 나타나고 점수가 올라가면 두더지는더 자주 빠르게 나타납니다. - 화면 UI
- 블록 프로그램
– 전역 변수로 타이머가 동작할 시간을 설정합니다. timerinterval 은 점수가 올라가면 타이머가 더 자주 동작하게 합니다.
– score란 변수를 선언합니다. 이 변수는 점수를 저장하게 됩니다.
– 두더지를 나타나게 하는 프로시져를 만듭니다. MoveMole 는 두더지를 X좌표와 Y좌표에 무작위로 나타나게 합니다.
– 두더지를 나타나게 할 때 두더지 이미지의 폭과 높이를 뺀 좌표에 나타나야 합니다. 그렇지 않으면 두더지가 반쪽만 나타날 수도 있습니다.
– UpdateScore 는 점수를 표시하고 Timer 의 동작 시간을 조정하는 역할을 합니다.– Mole 를 더치하게 되면 점수가 올라 갑니다.
– 전역 변수 score 에 점수를 더해주고 Timer의 TimerInterval이 500 보다 크거나 같은 경우 100을 빼 줍니다. 즉, 점수 1점을 얻으면 두더지가 100 밀리세컨드 더 빨리 출몰합니다.
– 두더지를 터치했을 때 진동을 100 밀리세컨드 동안 울려주고 UpdateScore 프로시져를 호출해서 점수를 표시해 주고 Timer 의 TimerInterval 속성을 재 설정 해 줍니다.
– MoveMole 프로시져를 호출해서 두더지를 다른 곳에 나타나게 합니다.– 두더지가 아닌 곳을 클릭하면 점수가 감소 합니다.
– 점수는 1점 감소하고 두더지 나타나는 속도는 100밀리세컨드 느려지고 UpdateScore 프로시져를 호출합니다.– reset 버튼을 클릭하면 점수와 두더지 출몰 속도를 초기화합니다.
– 타이머는 TimerInterval에 따라 MoveMole 을 호출해서 두더지가 나타나는 간격을 조정 합니다.
- 첨부파일