본문 바로가기
어린이 코딩/앱인벤터 응용

[인벤터] 게임 어플 만들기 - 고양이잡기 게임 기능 추가

by [바가지] 2017. 9. 19.
반응형

[인벤터 코딩 배우기 ]

고양이 잡기 게임 어플 기능 추가

 

생각보다 많은 분들이 고양이 게임 만들기 포스팅을 조회 해 주시는 것 같아, 감사의 마음으로 몇가지 기능을 추가하는 포스팅을 하게 되었습니다.

고양이 잡기 게임 만들기 포스팅 마지막에 이야기 했던 기능들을 추가 해 보았습니다.

시작/종료 기능을 추가 하여 게임을 마음대로 시작 또는 종료할 수 있도록 하였습니다.

그리고 게임 제한 시간을 추가 하도록 하겠습니다. 1분은 긴 것 같아 30분으로 설정하여 코딩 해 보았습니다. 

제한 시간을 옵션으로 하여 사용자가 설정 하도록 할 수도 있겠죠. 이 글을 읽으시는 분들은 그렇게 한번 코딩을 해 보시는 것도 좋을 것 같습니다.

제한시간이 끝나, 게임이 종료 되면 상단에 자신의 점수를 표시 하는 기능을 추가 하였습니다.

오늘은 함수 사용에서 중요한 매개변수에 대하여 알아 볼 것이니 꼭 읽어 보시기 바랍니다.

 

그럼 기능 추가 작업 한 부분들을 보도록 하겠습니다.

 

■ 디자이너 영역

레이블을 상단에 두개 추가하였습니다. 하나는 Time : 남은시간 을 표시하는 역할을 하고, 하나는 종료 되었을 경우 접수를 보여주는 역할을 합니다.

 - txtTime 레이블, txtMsg 레이블 추가

화면 하단에는 시작, 종료 버튼을 추가하였습니다.

그리고 마지막으로 CntTime명으로 하여 시계 센서를 추가 하였습니다. 시계 센서는 저번 시간에 고양이를 초마다 움직이게 하기 위해 사용 했던 기능입니다.

※ 기존 고양이를 움직이게 하기위해 추가한 Timer 설정값을 수정해야합니다. 타이머항상작동, 타이머 활성여부 체크를 풀어 주세요. 시작버튼이 생겼기 때문입니다.

이제 시작버튼을 클릭 했을 경우 타이머 활성여부를 True로 주어 동작하도록 할 것이기 때문입니다.

여기까지 하면 디자이너 부분이 완료 되었습니다.

 

디자이너화면

 

■ 블록영역

이제 블록 영역입니다.

조금 많이 추가 된 듯 보이지만 하나하나 살펴보면 간단합니다.

먼저 전역변수로 time를 선언하고, 30이라는 값을 주었습니다 이부분이 게임 제한 시간 변수입니다.

그리고 버튼부분을 보겠습니다.

시작 버튼 클릭 시에 [시작종료]라는 함수를 호출 하게 됩니다. 그런데 여기서 Action이라는 부분을 주의깊게 볼 필요가 있습니다.

이전 포스팅에서는 나오지 않은 부분입니다.  잠시 아래로 이동하여 ★ 추가설명 부분을 먼저 읽어 보시기 바랍니다. 

시작을 클릭하면 참으로 값을 전달하여 CntTime 타이머와 Timer 타이머의  활성여부를 참으로 설정합니다.

그리고 종료 버튼을 클릭 시 거짓 값을 전달하여 활성화 여부를 거짓으로 설정 하게 됩니다.

마지막으로 [언제 CntTime. 타이머] 블로을 살펴 보겠습니다.

CntTime 는 1초마다 계속 실행됩니다(디자이너 부분에 설정 부분이 있습니다)

돌때마다 제한시간을 -1 해줍니다 그리고 만약 값이 0보다 작거나 같을 경우 종료하는 함수를 호출하게 되고

화면 상단 txtMsg에 당신의 점수는 : global score값을 입력 해 주게 됩니다.

이렇게 하여 블록 영역 코딩 작업이 완료 되었습니다.

 

블록영역

 

이제 자신의 폰으로 다운받아서 실행 해 볼 일만 남았습니다.

빌드에서 앱(.apk용 QR코드 제공) 으로 다운 받는 것이 역시 편합니다.

제가 작업한 파일도 올려 놓겠습니다 

TEST02_01.apk

 

 

인벤터는 저도 포스팅을 하며, 처음으로 접해보고 있는데

코딩의 개념을 익히기에 아주 좋을 뿐만 아니라, 왠만한 어플들은 제작이 가능 한 것 같습니다.

 

생각보다 훨씬 기능들이 많습니다

 

 

그럼 다음에는 또 다른 어플 제작으로 포스팅 하도록 하겠습니다

 

 

★ 추가설명

 

함수를 호출 할 경우 호출과 함께 값을 전달 할  수 있습니다. 이것을 매개변수라고 합니다.

함수 앞 모양을 클릭하면 아래 캡쳐화면과 같이 나타납니다. 입력:X 블록을 드래그 하여 입력값 안으로 이동하면, 이동이 됩니다. 그리고 Action 이라고 변수명을 수정 하였습니다.

이렇게 설정하고 나면, 가져오기 블록을 추가 하였을 경우 Action 변수를 선택 할 수 있게 됩니다.

단, 이 변수는 전역 변수가 아니기때문에 이 함수 안에서만 사용 할 수 있습니다.

 

 

 

반응형