-1
나는 게임 플레이의 현재 점수와 가장 좋은 순위의 점수를 화면에 표시하려고합니다. 그것은 작동하지만, 매번 나는 현재 점수가 최고 점수보다 낮더라도 게임을 다시 시작합니다.게임 중 화면상의 높은 점수와 현재 점수
CCLabelTTF *punteggio;
NSString *stringa;
NSString *stringa2;
CCLabelTTF *punteggioMAX;
int score;
int scoreMAX;
점수를 저장하고 점수를 추가하고 게임이 끝날 때 점수를 재설정하는 방법이 있습니다.
-(void)aum{
score++;
stringa = [NSString stringWithFormat:@"Punteggio: %d",score];
[punteggio setString:stringa];
}
-(void)res{
score=0;
stringa = [NSString stringWithFormat:@"Punteggio: %d",score];
[punteggio setString:stringa];
}
-(void)sal{
NSUserDefaults *ud=[NSUserDefaults standardUserDefaults];
[ud setInteger:score forKey:@"Punteggio"];
[ud synchronize];
}
-(void)sal2{
NSUserDefaults *ud=[NSUserDefaults standardUserDefaults];
[ud setInteger:scoreMAX forKey:@"Punteggio"];
[ud synchronize];
}
그리고 init 메소드에
:NSString *fontName = @"score.fnt";
stringa = [NSString stringWithFormat:@"Punteggio: %d",score];
punteggio = [CCLabelBMFont labelWithString:stringa fntFile:fontName];
punteggio.scale = 0.4;
punteggio.position=ccp(40,altezzaSchermo - 15);
[self addChild:punteggio];
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
score=[ud integerForKey:@"Punteggio"];
stringa2 = [NSString stringWithFormat:@"Best Score: %d",score];
punteggioMAX = [CCLabelBMFont labelWithString:stringa2 fntFile:fontName];
punteggioMAX.scale = 0.4;
punteggioMAX.position=ccp(40,altezzaSchermo - 35);
[self addChild:punteggioMAX];
scoreMAX=[ud integerForKey:@"punteggioMAX"];
if(score>scoreMAX) scoreMAX = score;
[self res];
감사합니다.
이전 질문을 반복하지 마십시오. – rmaddy