游戏网络编程:从蓝牙到在线的进阶之路
1. 蓝牙对战的实现与注意事项
在实现基于蓝牙的游戏对战时,需关注多个关键方法和操作细节。
首先是判断是否开始游戏的逻辑。当骰子点数接收且确认后,就可以启动游戏,同时要释放之前分配的解归档器,代码如下:
if (dieRollReceived == YES && dieRollAcknowledged == YES)
[self startGame];
[unarchiver release];
接着是发送数据包的方法。此方法接收一个 TicTacToePacket 实例,将其归档为 NSData 实例,再通过会话的 sendDataToAllPeers:withDataMode:error: 方法发送出去,代码如下:
- (void) sendPacket:(TicTacToePacket *)packet {
NSMutableData *data = [[NSMutableData alloc] init];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc]
initForWritingWithMutableData:data];
[archiver encodeObject:packet forKey:kTicTacToeArchiveKey];
超级会员免费看
订阅专栏 解锁全文
66

被折叠的 条评论
为什么被折叠?



