行业资讯网,seo网站地图怎么做,网站域名备案在阿里云怎么做,登录C#开发的OpenRA游戏之基地工程车执行部署命令
前面已经分析接收到网络命令后,可以拿到多个命令对象, 通过命令对象进行遍历,最终会在比较部署命令的类里相同,从而执行部署命令。 可见,网络游戏里的对象操作,都是通过网络发送给服务器,再从服务器返回消息来执行对象的动…C#开发的OpenRA游戏之基地工程车执行部署命令
前面已经分析接收到网络命令后,可以拿到多个命令对象, 通过命令对象进行遍历,最终会在比较部署命令的类里相同,从而执行部署命令。 可见,网络游戏里的对象操作,都是通过网络发送给服务器,再从服务器返回消息来执行对象的动作, 而不是直接执行游戏对象的动作,这与本地游戏是有区别的。
下面就来详细分析一下基地工程车执行部署命令的过程, 之前在Transforms类分析ResolveOrder(Actor self, Order order)函数执行命令, 然后调用DeployTransform(bool queued)函数,这个函数如下:public void DeployTransform(bool queued) { if (!queued !CanDeploy()) { // Only play the "Cannot deploy here" audio // for non-queued orders foreach (var s in Info.NoTransformSounds) Game.Sound.PlayToPlayer(SoundType.World, self.Owner, s); Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Speech", Info.NoTransformNotification, self.Owner