菜鸟教程小白 发表于 2022-12-13 01:23:21

ios - Game Center 成就每次都会获得奖励


                                            <p><p>我正在将成就添加到 xCode 项目中。我使用的下面的代码在授予成就方面效果很好,但唯一的问题是它在调试控制台的后台不断被授予。每次我加载游戏时都会发生这种情况。</p>

<p>我还发现,当第一次获得成就时,完成横幅会重复出现。</p>

<p>我今天的问题是如何编辑代码以只奖励一次成就,显示横幅然后不再出现?</p>

<pre><code>-(void)Scoring
{
    ScoreNumber = ScoreNumber + AddedScore;
    AddedScore = AddedScore - 1;

    if (AddedScore &lt; 0) {
      AddedScore = 0;
    }

    Score.text = ;

    if (ScoreNumber &gt; 110 &amp;&amp; ScoreNumber &lt; 1000) {
      LevelNUmber = 2;
      //self.view.backgroundColor = ;
      GKAchievement *achievement= [ initWithIdentifier:@&#34;_level1easy&#34;];
      achievement.percentComplete = 100.0;
      achievement.showsCompletionBanner = YES;
      if(achievement!= NULL)
            {
                NSArray *achievements = ;
                [GKAchievement reportAchievements:achievements withCompletionHandler:^(NSError *error) {
                  if (error != nil) {
                        NSLog(@&#34;Error in reporting achievements: %@&#34;, error);
                  } else {
                        NSLog(@&#34;Achievement 1 Success&#34;);
                        }
                }];
            }
      }
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>如果我正确理解了您的问题,那么您只需将您的成就状态保存在某处,然后在您进入评分方法时检查它。例如,也许尝试保存在 NSUserdefaults 中;</p>

<pre><code>NSUserDefaults *savedScoring = ;
;
</code></pre>

<p>然后在游戏加载时检查此项。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - Game Center 成就每次都会获得奖励,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/25585528/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/25585528/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - Game Center 成就每次都会获得奖励