Heey,我一直在寻找很多关于Lidgren,我已经成功地得到一些简单的控制台客户端和服务器,但我有一个很艰难的时间与2D ...C#Lidgren - 发送职位和玩家队列?
基本上我有这么远远只是基于控制台的应用程序,但我发现了一个使用Lidgren的2D游戏的例子。你打开了一个服务器,然后是两个应用程序。他们自动连接,你可以玩两个窗口,看到角色在另一个屏幕上移动。该项目使用的阵列加载纹理和在Draw()
方法简单绘制阵列,但使用从值:
foreach (var kvp in positions)
{
// use player unique identifier to choose an image
int num = Math.Abs((int)kvp.Key) % textures.Length;`
// draw player
spriteBatch.Draw(textures[num], kvp.Value, Color.White);
}
有人能解释num
变量做什么?如果我想使用diffrent类来做到这一点,我会只是做同样的事情,但在播放器类,还有动画 - 你如何发送纹理更新数据?对不起,我问了这么多..但我还没有发现任何实际上有所帮助:/
在此先感谢,如果您需要知道别的,告诉我! :)
我的意思是纹理更新基本上是动画,就像在播放器类中一样: 'public void Animate(GameTime gameTime,int sFrame, eFrame)' 并使用'currentFrame'和'elapsed'变量。与职位,只是发送消息与变量来更新它?我在问这个,因为我没有完全理解Lidgren教程,而且我对网络也很陌生。谢谢:) – QuackTheDuck
对于动画,你会继续添加'elapsed'到一个变量,当它大于'x'时,重置变量并改变帧。老实说,对于职位,我也有问题。发送移动不起作用,发送位置看起来越野车,所以是的,不知道那个。这本身就是一个很大的话题,所以你可能想问另一个问题来获得一些关注。 – Cyral