안드로이드 개발 질문/답변
(글 수 45,052)
public boolean onTouchEvent(MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN) {
touchX = (int)event.getX();
touchY = (int)event.getY();
for(int x=0; x<mShuffle.length; x++) { // 가로
for(int y=0; y<4; y++) { // 세로
// 각 카드의 가로, 세로 크기 설정
if(mShuffle[x][y].mColor != 0) {
Rect box_Card = new Rect((Width/17)+x*70, (Height/8)+y*90,
(Width/17)+x*70+50, (Height/8)+y*90+100);
if(box_Card.contains(touchX, touchY)) { // 선택된 카드 발견
// (tx1, ty1)에 위치한 카드가 선택
// 첫번째 카드 선택
if(mSelectCard_1 == null) { // 첫 카드를 선택
mSelectCard_1 = mShuffle[x][y];
}
else { // 이미 첫 번째 카드가 선택되어 있으면 두 번째 카드 선택
if(mSelectCard_1 != mShuffle[x][y]) {
// 중복 선택 방지
mSelectCard_2 = mShuffle[x][y];
moveCheck = true;
checkMatch();
}
}
}
}
}
}
}
invalidate();
return true;
}
int tun=0;
public void checkMatch() {
// 두 카드 중 하나라도 선택이 안되었다면 비교 X
if(mSelectCard_1 == null || mSelectCard_2 == null)
return;
// 두 카드의 색상을 비교
if(mSelectCard_1.mColor == mSelectCard_2.mColor) {
// 두 카드의 색상이 같으면 두 카드를 삭제
mSelectCard_1.mColor = 0;
mSelectCard_2.mColor = 0;
bingo++;
score+=10;
Combo++;
if(Combo > 0) {
ComboHandler.sendEmptyMessage(0);
}
// 다시 선택 할 수 있게 null값으로 교체
mSelectCard_1 = null;
mSelectCard_2 = null;
mVibrator.vibrate(100);
i+=10;
moveCheck = false;
}
else {
try {
Thread.sleep(500);
} catch(InterruptedException e) {
}
// 다시 선택 할 수 있게 null값으로 교체
mSelectCard_1 = null;
mSelectCard_2 = null;
Combo = -1;
i-=10;
moveCheck = false;
}
//postInvalidate();
}
배열에다가 난수 설정 해서 임이의 이미지 집어넣서 비교 저렇게 햇는데요
저렇게 하면 그냥 단순 짝맞추기 가 되어버려서.. 길찾기 알고리즘이 들어가지
사천성게임이 되잖아요 그래서 배열의 x,y좌표값을 증가 감소 해서 짝이 맞는 카드를 찾을려고 햇는데요
어떻게 해야될지 모르겟습니다.. 도움좀 부탁드릴꼐요
카드는 따로 클래스 만들어서 카드별 상수?? 지정해서 그 번호에 해당되는 이미지 뿌려주도록 햇구요 ㅠ.ㅜ
도움좀 부탁드립니다..
