12. 카드 짝 맞추기

0
(0)

이번 시간에는 카드를 뒤집어 짝이 맞으면(같은 동물 카드) 카드가 오픈된 상태를 유지하고, 짝이 맞지 않으면 카드를 모두 다시 뒤집어 뒷면이 보이도록 구현해 보겠습니다.

카드 짝이 맞는 상태인지를 보여주는 boolean과 짝이 맞는 카드롤 제외하고 오픈된 카드 수를 보여 주는 변수를 선언해 줍니다.

게임 시작시 관련 변수를 초기화하는 메서드를 만들고 카드 짝 맞은 상태, 오픈된 카드 수…등 관련 변수들을 초기화해 줍니다.

처음 뒤집은 카드와 다음 뒤집은 카드를 식별하기 위해 2개의 String을 선언해 줍니다.

카드 sprite에 위와 같이 작성 후

onCreateScene() 메서드 안에 있는 scene은 삭제하고 전역 변수로 선언해 줍니다.

짝이 맞은 카드를 제외한 모든 카드를 뒷면으로 뒤집는 closeAll() 메서드를 위와 같이 구현해 줍니다. 여기서 카드를 뒤집을 때 0.2초 지연 시키도록 코딩을한 이유는 만약 짝이 안 맞는 두번째 카드를 열었을 때 지연 시간을 안 주면 컴퓨터는 매우 빠르기 때문에 카드가 안 열리는 것 처럼 보입니다.(0.2f -> 0f 로 변경해서 확인해 보세요.) 그리고 일반적으로 Java에서 시간을 지연시킬 때 Thread를 사용하는데, AndEngine에서는 Thread를 이용해서는 작동을 안 하므로 위 방법을 활용해 시간 지연을 구현하면 됩니다. 그리고 AndEngine은 scene을 만들 때 중복 attachChild는 매우 엄격하고(에러 발생), detachChild는 너그럽기 때문에 중복 attachChild가 발생하지 않도록 주의 합니다.

다음 시간에는 소리와 음악에 대해 알려 드리겠습니다.

안드로이드 스튜디오 소스

완성된 게임

1) Animal Cards

2) Finger Runner

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

AhnDruid
Author: AhnDruid

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다