2012-10-26 5 views
4

리볼버, 라이플, 샷건과 같은 총을 가진 게임을 개발 중입니다. 당신은 총을 선택하고 화면에 나타나는 외계인을 쏜다. 거의 끝났지 만, 기관총과 같은 자동 화재 총으로 외계인을 쏘는 데 문제가 있습니다. 이 경우 하나의 샷 총을 들어, 내가 외계인이 십자선에있을 때 감지하려면이 옵션을 사용하고 있어요, 그것을 숨기기 :손가락을 화면에 올려 놓고 계속 실행하는 방법

CGPoint pos1 = enemyufoR.center; 
if ((pos1.x > 254) && (pos1.x < 344) && (pos1.y > 130) && (pos1.y < 165 && _ammoCount != 0)) 
{ 
    enemyufoR.hidden = YES; 
    [dangerBar setProgress:dangerBar.progress-0.10]; 
    _killCount = _killCount+3; 
    [killCountField setText: [NSString stringWithFormat:@"%d", _killCount]]; 

    timer = [NSTimer scheduledTimerWithTimeInterval: 4.0 
              target: self 
              selector: @selector(showrUfo) 
              userInfo: nil 
              repeats: NO]; 
} 

이 대부분의 총에 대한 잘 작동하지만 기관총을 위해 내가 필요 총이 발사되는 동안 계속적으로 적의 위치를 ​​확인하십시오. 어떻게하면 좋을까요?

답변

1

를 점검 UITouch

+0

은 있습니까? IF 문을 그 메서드에 넣을 수 있습니까? –

+0

뭔가 쉽게 찾을 수 있습니다. –

+0

그 방법으로 해당 터치의 위치가 단추 프레임에 맞는지 확인하십시오. 그렇다면 다음과 같이 화재를 신고하십시오. @selector (yourFireMethod) –

1

음의 timestam, 당신이 당신의 촬영 버튼을 누를 때, 당신은 분명 같은 전화하는거야 : 그에서

// -------------------------------------- 
// PSEUDO-CODE 
// -------------------------------------- 
-(void)shootButtonPressed 
{ 
    [self checkEnemies]; 
} 

을, 왜 그냥 BOOL를 선언하지 withEvent (NSSet *) 닿은 : (UIEvent를 *) 이벤트 {} - : 변수 손가락은 여전히 ​​같이 누르면 확인하기 위해 그것을 사용 (무효) touchesBegan

// -------------------------------------- 
// PSEUDO-CODE 
// -------------------------------------- 

@interface MyGameClass 
{ 
    // defaults to FALSE 
    BOOL isTouching; 
} 

-(void)shootButtonPressed 
{ 
    // assumes isTouching is a instance variable declared somewhere 
    isTouching = YES; 
    [self checkEnemies]; 
} 

-(void)checkEnemies 
{ 
    // check enemy action 

    // --------------------------------------------- 
    // when finger lifts off the screen, this 
    // isTouching variable will be reset to FALSE 
    // so as long as isTouching is TRUE, we call 
    // this same method checkEnemies again 
    // --------------------------------------------- 
    if(isTouching) 
    { 
     [self checkEnemies]; 
    } 
} 

// reset the isTouching variable when user finger is taken off the screen 
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    isTouching = NO; 
} 
+0

고마워, 나는 그것을 시도 할 것이다. –

관련 문제