本文整理汇总了C#中Chraft.Net.Client.SendSecondLoginSequence方法的典型用法代码示例。如果您正苦于以下问题:C# Client.SendSecondLoginSequence方法的具体用法?C# Client.SendSecondLoginSequence怎么用?C# Client.SendSecondLoginSequence使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Chraft.Net.Client
的用法示例。
在下文中一共展示了Client.SendSecondLoginSequence方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: HandlePacketPlayerPositionRotation
public static void HandlePacketPlayerPositionRotation(Client client, PlayerPositionRotationPacket packet)
{
double feetY = packet.Y - client.Owner.EyeHeight;
if(client.WaitForInitialPosAck)
{
AbsWorldCoords coords = new AbsWorldCoords(packet.X, feetY, packet.Z);
if(coords == client.Owner.LoginPosition)
{
client.WaitForInitialPosAck = false;
client.SendSecondLoginSequence();
}
}
else
{
double threshold = 0.001;
double diffX = Math.Abs(client.Owner.Position.X - packet.X);
double diffY = Math.Abs(client.Owner.Position.Y - feetY);
double diffZ = Math.Abs(client.Owner.Position.Z - packet.Z);
if (diffX < threshold && diffY < threshold && diffZ < threshold)
return;
client.Owner.MoveTo(new AbsWorldCoords(packet.X, feetY, packet.Z), packet.Yaw, packet.Pitch);
client.OnGround = packet.OnGround;
client.Stance = packet.Stance;
client.CheckAndUpdateChunks(packet.X, packet.Z);
}
}