2016-05-05 8 views
0

2つのシーンがありますGameSceneBonusScene私はNSUserDefaults10を使用して勝ち数を保存していますが、すべてうまくいきます、動画を見た後に動画報酬を追加します。画面の更新は、別のシーンに行って戻ったときにのみ発生しますが、NSLog()を使用すると、その更新が行われることがわかりますが、画面上でリアルタイムで行う方法はわかりません。動画広告を視聴した後に画面上のスコアを更新する

losingCount=[scoreprefs integerForKey:@"losingCount"]; 
    SKLabelNode *winsCoutnt = [SKLabelNode labelNodeWithFontNamed:@"ROTORcap Extended Bold"]; 
    winsCoutnt.text =[NSString stringWithFormat:@"%ld",(long)losingCount]; 
    winsCoutnt.position = CGPointMake(CGRectGetMidX(self.frame) + 100,(CGRectGetMidY(self.frame)) + self.frame.size.height/4); 
    winsCoutnt.fontSize = 15.f; 
    [self addChild:winsCoutnt]; 



if([Chartboost hasRewardedVideo:@"NetworkVideo"] == YES) { 

      NSUserDefaults *scoreprefs = [NSUserDefaults standardUserDefaults]; 

      losingCount =[scoreprefs integerForKey:@"losingCount"]; 
      losingCount = losingCount +5; 
      [scoreprefs setInteger:losingCount forKey:@"losingCount"]; } 

だから私の質問は、どのように私は別のシーンに行って戻ってくるせずに、リアルタイムで画面上のシーンでスコアを更新することができます:私が得たもの。ここ ?

答えて

1

ちょうどあなたがNSUserDefaults

losingCount=[scoreprefs integerForKey:@"losingCount"]; 
SKLabelNode *winsCoutnt = [SKLabelNode labelNodeWithFontNamed:@"ROTORcap Extended Bold"]; 
winsCoutnt.text =[NSString stringWithFormat:@"%ld",(long)losingCount]; 
winsCoutnt.position = CGPointMake(CGRectGetMidX(self.frame) + 100,(CGRectGetMidY(self.frame)) + self.frame.size.height/4); 
winsCoutnt.fontSize = 15.f; 
[self addChild:winsCoutnt]; 



if([Chartboost hasRewardedVideo:@"NetworkVideo"] == YES) { 

     NSUserDefaults *scoreprefs = [NSUserDefaults standardUserDefaults]; 

     losingCount =[scoreprefs integerForKey:@"losingCount"]; 
     losingCount = losingCount +5; 
     [scoreprefs setInteger:losingCount forKey:@"losingCount"]; 

     winsCoutnt.text =[NSString stringWithFormat:@"%ld",(long)losingCount]; 
} 
を更新しているテキストを更新
関連する問題