本文整理汇总了C#中StreamHandler.ReadUInt16方法的典型用法代码示例。如果您正苦于以下问题:C# StreamHandler.ReadUInt16方法的具体用法?C# StreamHandler.ReadUInt16怎么用?C# StreamHandler.ReadUInt16使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StreamHandler
的用法示例。
在下文中一共展示了StreamHandler.ReadUInt16方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: UpdateData
public UpdateData(StreamHandler Reader, bool LazyReading)
{
this.m_map = (Maps)Reader.ReadUInt16();
this.Reader = Reader;
m_readers = new Action[]
{
ReadUpdates,
};
if (!LazyReading)
EnsureRead();
}
示例2: MovementInfo
//.........这里部分代码省略.........
.ReadSingle(out this.Position.X);
if (this.HavePitch)
Reader.ReadSingle(out this.Pitch);
// Fall Data
if (this.HaveFallData)
{
Reader.ReadUInt32(out this.FallTime);
if (this.HaveFallDirection)
{
Reader
.ReadSingle(out this.FallSinAngle)
.ReadSingle(out this.FallHorizontalSpeed)
.ReadSingle(out this.FallCosAngle);
}
Reader.ReadSingle(out this.FallVerticalSpeed);
}
Reader
.ReadXorByte(ref p_guid.Bytes[7])
.ReadSingle(out this.Speeds[4])
.ReadXorByte(ref p_guid.Bytes[0])
.ReadXorByte(ref p_guid.Bytes[5]);
if (this.TimeStamp != 0)
this.TimeStamp = Reader.ReadUInt32();
Reader
.ReadSingle(out this.Position.Z)
.ReadSingle(out this.Speeds[6])
.ReadXorByte(ref p_guid.Bytes[1])
.ReadSingle(out this.Speeds[2])
.ReadSingle(out this.Speeds[5])
.ReadSingle(out this.Speeds[3])
.ReadSingle(out this.Speeds[0])
.ReadXorByte(ref p_guid.Bytes[3])
.ReadXorByte(ref p_guid.Bytes[4])
.ReadXorByte(ref p_guid.Bytes[2])
.ReadXorByte(ref p_guid.Bytes[6]);
if (this.HaveSplineElevation)
this.SplineElevation = Reader.ReadSingle();
this.Position.Y = Reader.ReadSingle();
if (haveOrientation)
this.Orientation = Reader.ReadSingle();
this.Speeds[1] = Reader.ReadSingle();
}
if (field_1C8)
{
Console.WriteLine("Error: 16 floats @ 1CC detected !!!");
Reader.ReadBytes(16 * 4); // 16 floats starting at 1CC
var field_20C = Reader.ReadByte();
}
// transport time
if (this.HaveTransportTime)
Reader.ReadUInt32(out this.TransportTime);
// unk2 ?
if (field_1AC)
{
Console.WriteLine("Error: 3 shorts @ 1AE detected !!!");
if (field_1B0 != 0)
field_1B0 = Reader.ReadUInt16();
if (field_1B2 != 0)
field_1B2 = Reader.ReadUInt16();
if (field_1AE != 0)
field_1AE = Reader.ReadUInt16();
}
// go rotation?
if (this.HaveGameObjectRotation)
this.GameObjectRotation = Reader.ReadUInt64().UnpackQuaternion();
// target guid?
if (this.HaveAttackingTarget)
{
fixed (byte* bytes = this.AttackingTarget.Bytes)
{
Reader
.ReadXorByte(ref bytes[3])
.ReadXorByte(ref bytes[5])
.ReadXorByte(ref bytes[0])
.ReadXorByte(ref bytes[7])
.ReadXorByte(ref bytes[2])
.ReadXorByte(ref bytes[4])
.ReadXorByte(ref bytes[6])
.ReadXorByte(ref bytes[1]);
}
}
this.Guid = guid;
}
示例3: Read
public void Read(StreamHandler Reader)
{
Slot = Reader.ReadByte();
Spell = Reader.ReadUInt32();
Caster = Unit;
if (Spell != 0)
{
Flags = (AuraFlags)Reader.ReadUInt16();
Level = Reader.ReadByte();
Charges = Reader.ReadByte();
if ((Flags & AuraFlags.NotCaster) == 0)
Caster = Reader.ReadPackedGuid();
if ((Flags & AuraFlags.Duration) != 0)
{
MaxDuration = Reader.ReadUInt32();
var currentDurationMs = Reader.ReadUInt32();
this.AppliedTime = (uint)Environment.TickCount - currentDurationMs;
}
if ((Flags & AuraFlags.BasePoints) != 0)
{
for (int i = 0; i < MaxEffects; ++i)
{
if ((Flags & (AuraFlags)(1 << i)) != 0)
BasePoints[i] = Reader.ReadInt32();
else
BasePoints[i] = 0;
}
}
else
Array.Clear(BasePoints, 0, MaxEffects);
}
}