public static void writeInfo(SendPacket s, List <a8000_NormalHitData.HitData> hits) { s.writeC((byte)hits.Count); for (int index = 0; index < hits.Count; ++index) { a8000_NormalHitData.HitData hit = hits[index]; s.writeD(hit._hitInfo); s.writeH(hit._boomInfo); s.writeH(hit._weaponInfo); s.writeC(hit._weaponSlot); s.writeTVector(hit.StartBullet); s.writeTVector(hit.EndBullet); } }
private static List <a8000_NormalHitData.HitData> BaseReadInfo(ReceivePacket p, bool OnlyBytes, bool genLog) { List <a8000_NormalHitData.HitData> hitDataList = new List <a8000_NormalHitData.HitData>(); int num1 = (int)p.readC(); for (int index1 = 0; index1 < num1; ++index1) { a8000_NormalHitData.HitData hitData = new a8000_NormalHitData.HitData() { _hitInfo = p.readUD(), _boomInfo = p.readUH(), _weaponInfo = p.readUH(), _weaponSlot = p.readC(), StartBullet = p.readTVector(), EndBullet = p.readTVector() }; if (!OnlyBytes) { hitData.HitEnum = (HitType)AllUtils.getHitHelmet(hitData._hitInfo); if (hitData._boomInfo > (ushort)0) { hitData.BoomPlayers = new List <int>(); for (int index2 = 0; index2 < 16; ++index2) { int num2 = 1 << index2; if (((int)hitData._boomInfo & num2) == num2) { hitData.BoomPlayers.Add(index2); } } } hitData.WeaponClass = (ClassType)((int)hitData._weaponInfo & 63); hitData.WeaponId = (int)hitData._weaponInfo >> 6; } if (!genLog) { ; } hitDataList.Add(hitData); } return(hitDataList); }