2010-05-24 5 views
0

나는 타이머를 설정했고 플레이어가 턴 단계에있을 때 호출됩니다. 또한 플레이어가 동작을하는 동안 천천히 감소하는 승수가 있습니다.카운트 다운 타이머

내 멀티 변수가 쓰레기 값을 반환하는 이유는 무엇입니까? onLoad 문에서 1로 초기화했지만 여전히 문제가있는 것 같습니다. 타이머가 발동 할 때마다 값이 NsLog 문에 즉시 큰 음수로 표시됩니다. 포인트를 얻었을 때 정말 큰 양수로 바뀌 었습니다.

-(void) Timerbar:(NSTimer *)barTimer { 


if(!waitForPlayer) { 

    [barTimer invalidate]; 

} 
if(mult > 0.0) { 
    mult -= 0.01; 
    if(mult < 0) { 
    mult = 0; 
    } 
} 
power = (mult * 10)/pwrBarMaxWidth; 
pwrBarWidth = (int)power % limit; 
NSLog(@"%d", mult); 
} 

어딘가에 구문 오류가 있습니까?

edit- 잘못된 식별자를 사용하여 플로트를 표시합니다.

답변

4

mult가 float 또는 double이라고 가정하면 NSLog의 인쇄 형식이 잘못 사용됩니다. 당신은 여기에 좋은 참조입니다

NSLog(@"%f", mult); 

를 원하는 :

http://www.cocoadev.com/index.pl?NSLog

+1

좋은 캐치! 질문의 모호성을 생각하면 .. – tomdemuyt

+0

그래, 좋았어! 제 질문이 조금이라도 유감 스럽습니다. 그 자리에서 일 했어. – Ohmnastrum