Tag: 游戏中心

我的GKMatch没有玩家…?

我成功地做了一个配对的屏幕出现。 我在我的iPhone和模拟器中运行我的游戏。 在这两种情况下,我都使用不同的Game Center帐户login。 我在两场比赛中都去参加比赛。 我按“现在玩”。 两场比赛都开始寻找比赛。 最后,两个游戏find一个匹配,并调用下面的函数: – (void)matchmakerViewController:(GKMatchmakerViewController *)viewController didFindMatch:(GKMatch *)match { self.myMatch = match; NSLog(@"%d",[[self.myMatch playerIDs]count]); } 但是我的控制台返回0.不是应该返回2吗?

发送数据错误?

typedef struct _protocol1 { int type; CGPoint pos; } Protocol1; -(void)sendData { NSError *error; Protocol1 msg; msg.pos = ccp(100,100); msg.type = 1; NSData *packet = [NSData dataWithBytes:&msg length:sizeof(Protocol1)]; [self.myMatch sendDataToAllPlayers: packet withDataMode: GKMatchSendDataReliable error:&error]; if (error != nil) { NSLog(@"error"]); } } 这是我的项目的一大块代码。 我得到一个错误。 但是,我不确定如何检索更多的信息来帮助我debugging。 有人能帮我吗? 对不起,我对iOS开发很新颖。 使用Cocos2d进行游戏。 编辑 我正在使用模拟器和我的iPhone来testing。 我怀疑这是问题,我已经得到了比赛的工作,一切…

UIView不会投射到SKView

我一直试图在我的Sprite Kit游戏中实现游戏中心,但每次我尝试呈现排行榜… -(void)showLeaderboard:(UIViewController*)gcvc { GKGameCenterViewController *leaderboardController = [[GKGameCenterViewController alloc] init]; if (leaderboardController != NULL) { leaderboardController.leaderboardIdentifier = @"Game_Leaderboard"; leaderboardController.viewState = GKGameCenterViewControllerStateLeaderboards; leaderboardController.gameCenterDelegate = self; UIViewController *vc = self.view.window.rootViewController; [vc presentViewController: leaderboardController animated: YES completion:nil]; } } 游戏崩溃在启动时出现错误: [UIView setShowsDrawCount:]:无法识别的select器发送到实例0x178169e40(lldb) 我查了一下相关的问题,他们都提出把IB的View类改成SKView类,但是没有运气。 exception断点停在行: SKView *spriteView = (SKView *)self.view; spriteView.showsDrawCount = YES; 该视图显然是SKViewtypes,但仍然表示spriteView是UIViewtypes。 我不确定这是否应该是重要的,因为游戏的主视图控制器是UIViewController的一个子类,这是呈现Game Center排行榜所需要的,所以我不知道如何解决这个错误。

如何将int转换为int64_t

我正在创build一个游戏,我想将Game Center整合到其中。 我已经看了,事实certificate,你想提交的整数必须是int64_t 。 而我正在使用的int是一个标准的int。 我如何将我的高分int转换为int64_t ?

如何将GKPlayer的数据发送到另一个比赛?

我想从一个GKPlayer NSData发送到另一个比赛。 因此, sendDataToAllPlayers(_:withDataMode:error:)将是最理想的。 func sendDataToAllPlayers(data: Int, withDataMode Reliable: GKMatchSendDataMode, error: NSErrorPointer) -> Bool { return true } 但是,如何使用上面的方法发送一个Intvariables? var score:Int = 0

不能closures从SKScene提供的GKGameCenterViewController

我正在从SKScene展示一个GKGameCenterViewController。 这是我的代码: -(void)showLeaderboardAndAchievements:(BOOL)shouldShowLeaderboard{ GKGameCenterViewController *gcViewController = [[GKGameCenterViewController alloc] init]; gcViewController.viewState = GKGameCenterViewControllerStateLeaderboards; gcViewController.leaderboardIdentifier = _leaderboardIdentifier; // _spriteViewController references an UIViewController [_spriteViewController presentViewController:gcViewController animated:YES completion:nil]; } 我没有提出窗口的问题,但我无法设法让用户closures它。 我实现了方法gameCenterViewControllerDidFinish但是函数根本不被调用。 我必须做什么以便用户可以closures排行榜?

游戏中心领导委员会错误

我为游戏中心排行榜创build了这个代码,而且我总是得到Thread 1 signal Sigabrt 。 NSLOG总是这样说的: 2014-04-15 15:27:28.441 GameCenter[38225:60b] -[GKGameCenterViewController setLeaderboardDelegate:]: unrecognized selector sent to instance 0xb48dd90 2014-04-15 15:27:28.442 GameCenter[38225:60b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[GKGameCenterViewController setLeaderboardDelegate:]: unrecognized selector sent to instance 0xb48dd90' *** First throw call stack: 在我实现排行榜的代码截图下面: 或/请在这里看看这个问题: https : //stackoverflow.com/questions/23068184/game-center-leaderboard-doesnt-work-in-xcode

iOS Gamecenter程序化匹配

我正在尝试实现一个实时的多人游戏与自定义用户界面(没有GKMatchMakerViewController )。 我使用的是startBrowsingForNearbyPlayersWithReachableHandler: ^(NSString *playerID, BOOL reachable)find一个本地播放器,然后用GKMatchmaker单例(我已经发起)发起一个匹配请求。 这是我遇到麻烦的地方。 当我发送请求时,完成处理程序几乎立即触发,没有错误,并且它返回的匹配具有预期的玩家数为零。 同时,另外一个玩家肯定没有回应这个要求。 相关代码: – (void) findMatch { GKMatchRequest *request = [[GKMatchRequest alloc] init]; request.minPlayers = NUM_PLAYERS_PER_MATCH; //2 request.maxPlayers = NUM_PLAYERS_PER_MATCH; //2 if (nil != self.playersToInvite) { // we always successfully get in this if-statement request.playersToInvite = self.playersToInvite; request.inviteeResponseHandler = ^(NSString *playerID, GKInviteeResponse response) { [self.delegate updateUIForPlayer: playerID […]

iOS客户端/服务器 – 我应该使用GameCenter吗?

第一次开发客户端/服务器游戏,并想知道是否有人可以给我一些指针。 我应该只使用GameCenter吗? 我应该写我自己的? (类似于DrawSomething的创造者) 我有一个GameCenter实现的基本演示工作,但我不知道使用它的起伏 – 有没有? 我应该自己开发一个完全定制化的产品,但是在空闲时间的周末就会失败吗? 任何见解都被赞赏! 谢谢!

如何实现使用Game Center的最佳分数今日排行榜?

我想在Game Center中创build一个排行榜来获得今天提交的最高分数,而且我希望每天午夜重置。 创build“最近得分”排行榜并不难,只需在应用程序中logging当天的得分并提交即可,但是我担心的是,第二天没有启动应用程序的用户将会得到一个旧分数仍然处于“今日最佳成绩”板,直到他们发布为止。 有没有办法让分数到期,或只在Game Center排行榜上显示当天的分数?