本文整理汇总了C#中Framework.Network.Packets.PacketReader.ReadUInt64方法的典型用法代码示例。如果您正苦于以下问题:C# PacketReader.ReadUInt64方法的具体用法?C# PacketReader.ReadUInt64怎么用?C# PacketReader.ReadUInt64使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Framework.Network.Packets.PacketReader
的用法示例。
在下文中一共展示了PacketReader.ReadUInt64方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: HandleCreatureStats
public static void HandleCreatureStats(ref PacketReader packet, ref WorldClass session)
{
int id = packet.ReadInt32();
ulong guid = packet.ReadUInt64();
Creature creature = DataMgr.FindCreature(id);
if (creature != null)
{
CreatureStats stats = creature.Stats;
PacketWriter creatureStats = new PacketWriter(LegacyMessage.CreatureStats);
creatureStats.WriteInt32(stats.Id);
creatureStats.WriteCString(stats.Name);
for (int i = 0; i < 7; i++)
creatureStats.WriteCString("");
creatureStats.WriteCString(stats.SubName);
creatureStats.WriteCString("");
creatureStats.WriteCString(stats.IconName);
foreach (var v in stats.Flag)
creatureStats.WriteInt32(v);
creatureStats.WriteInt32(stats.Type);
creatureStats.WriteInt32(stats.Family);
creatureStats.WriteInt32(stats.Rank);
foreach (var v in stats.QuestKillNpcId)
creatureStats.WriteInt32(v);
foreach (var v in stats.DisplayInfoId)
creatureStats.WriteInt32(v);
creatureStats.WriteFloat(stats.HealthModifier);
creatureStats.WriteFloat(stats.PowerModifier);
creatureStats.WriteUInt8(stats.RacialLeader);
foreach (var v in stats.QuestItemId)
creatureStats.WriteInt32(v);
creatureStats.WriteInt32(stats.MovementInfoId);
creatureStats.WriteInt32(stats.ExpansionRequired);
session.Send(ref creatureStats);
}
else
Log.Message(LogType.DEBUG, "Creature (Id: {0}) not found.", id);
}
示例2: HandleNameCache
public static void HandleNameCache(ref PacketReader packet, ref WorldClass session)
{
Character pChar = session.Character;
ulong guid = packet.ReadUInt64();
uint realmId = packet.ReadUInt32();
PacketWriter nameCache = new PacketWriter(LegacyMessage.NameCache);
nameCache.WriteGuid(guid);
nameCache.WriteUInt8(0);
nameCache.WriteCString(pChar.Name);
nameCache.WriteUInt32(realmId);
nameCache.WriteUInt8(pChar.Race);
nameCache.WriteUInt8(pChar.Gender);
nameCache.WriteUInt8(pChar.Class);
nameCache.WriteUInt8(0);
session.Send(nameCache);
}
示例3: HandleTalkToGossip
public static void HandleTalkToGossip(ref PacketReader packet, ref WorldClass session)
{
var guid = packet.ReadUInt64();
var gossipData = GossipMgr.GetGossip<Creature>(ObjectGuid.GetGuid(guid));
if (gossipData != null)
{
PacketWriter gossipMessage = new PacketWriter(LegacyMessage.GossipMessage);
gossipMessage.WriteUInt64(guid);
gossipMessage.WriteInt32(gossipData.Id);
gossipMessage.WriteInt32(gossipData.FriendshipFactionID);
gossipMessage.WriteInt32(gossipData.TextID);
gossipMessage.WriteInt32(gossipData.OptionsCount);
gossipMessage.WriteInt32(gossipData.QuestsCount);
session.Send(ref gossipMessage);
}
}
示例4: HandleResponseCharacterDelete
public static void HandleResponseCharacterDelete(ref PacketReader packet, ref WorldClass session)
{
UInt64 guid = packet.ReadUInt64();
PacketWriter writer = new PacketWriter(LegacyMessage.ResponseCharacterDelete);
writer.WriteUInt8(0x47);
session.Send(writer);
DB.Characters.Execute("DELETE FROM characters WHERE guid = {0}", guid);
DB.Characters.Execute("DELETE FROM character_spells WHERE guid = {0}", guid);
DB.Characters.Execute("DELETE FROM character_skills WHERE guid = {0}", guid);
}
示例5: HandleGameObjectStats
public static void HandleGameObjectStats(ref PacketReader packet, ref WorldClass session)
{
int id = packet.ReadInt32();
ulong guid = packet.ReadUInt64();
GameObject gObject = DataMgr.FindGameObject(id);
if (gObject != null)
{
GameObjectStats stats = gObject.Stats;
PacketWriter gameObjectStats = new PacketWriter(LegacyMessage.GameObjectStats);
gameObjectStats.WriteInt32(stats.Id);
gameObjectStats.WriteInt32(stats.Type);
gameObjectStats.WriteInt32(stats.DisplayInfoId);
gameObjectStats.WriteCString(stats.Name);
for (int i = 0; i < 3; i++)
gameObjectStats.WriteCString("");
gameObjectStats.WriteCString(stats.IconName);
gameObjectStats.WriteCString(stats.CastBarCaption);
gameObjectStats.WriteCString("");
foreach (var v in stats.Data)
gameObjectStats.WriteInt32(v);
gameObjectStats.WriteFloat(stats.Size);
foreach (var v in stats.QuestItemId)
gameObjectStats.WriteInt32(v);
gameObjectStats.WriteInt32(stats.ExpansionRequired);
session.Send(ref gameObjectStats);
}
else
Log.Message(LogType.DEBUG, "Gameobject (Id: {0}) not found.", id);
}
示例6: HandleNameCache
public static void HandleNameCache(ref PacketReader packet, ref WorldClass session)
{
ulong guid = packet.ReadUInt64();
uint realmId = packet.ReadUInt32();
var pSession = WorldMgr.GetSession(guid);
if (pSession != null)
{
var pChar = pSession.Character;
if (pChar != null)
{
PacketWriter nameCache = new PacketWriter(LegacyMessage.NameCache);
nameCache.WriteGuid(guid);
nameCache.WriteUInt8(0);
nameCache.WriteCString(pChar.Name);
nameCache.WriteUInt32(realmId);
nameCache.WriteUInt8(pChar.Race);
nameCache.WriteUInt8(pChar.Gender);
nameCache.WriteUInt8(pChar.Class);
nameCache.WriteUInt8(0);
session.Send(ref nameCache);
}
}
}
示例7: HandleVendorTabeList
public static void HandleVendorTabeList(ref PacketReader packet, ref WorldClass session)
{
ulong targetGuid = packet.ReadUInt64();
if (targetGuid == session.Character.TargetGuid)
{
HighGuidType lol = Framework.ObjectDefines.ObjectGuid.GetGuidType(targetGuid);
ulong odd = ObjectGuid.GetGuid(targetGuid);
CreatureSpawn spawn = Globals.SpawnMgr.FindSpawn(targetGuid);
Creature npc = spawn.Creature;
PacketWriter Inventory = new PacketWriter(JAMCMessage.VendorInventory);
BitPack ss = new BitPack(Inventory);
Inventory.WriteInt8(0x01);//client expects counting to start at 1??
byte[] count = {00,10,00};//count dat bitstream fortmat unkown
Inventory.WriteBytes(count, 3);
/*Item1*/
Inventory.WriteInt8(11);//slot
Inventory.WriteInt32(0xFFF010);//left ub stock?
ss.Flush();
string ssss = "00 00 0C 34 00 00 0C 10 00 00 00 10 00 00 05 30 00 00 03 C0 00 00 00 10 00 00 0C 74 00 00 00 B0 E0 00 0F FF FF FF F0 00 00 00 00 20 00 00 00 10 00 00 02 80 00 00 01 40 00 00 00 10 00 00 0C 44 00 00 0C 20 00 00 0F FF FF FF F0 00 00 00 00 30 00 00 00 10 00 00 05 30 00 00 02 D0 00 00 00 10 00 00 0C 64 00 00 0C 30 00 00 0F FF FF FF F0 00 00 00 00 40 00 00 00 10 00 00 03 E0 00 00 01 E0 00 00 00 10 00 00 0C 84 00 00 00 C0 E0 00 0F FF FF FF F0 00 00 00 00 50 00 00 00 10 00 00 02 80 00 00 01 40 00 00 00 10 00 00 0C 54 00 00 0C 70 20 00 0F FF FF FF F0 00 00 00 00 60 00 00 00 10 00 00 02 C0 00 00 01 40 00 00 00 10 00 00 0F 34 10 00 05 50 00 00 0F FF FF FF F0 00 00 00 00 70 00 00 00 10 00 00 05 50 00 00 03 C0 00 00 00 10 00 00 06 B3 80 00 02 B0 70 00 0F FF FF FF F0 00 00 00 00 80 00 00 00 10 00 00 02 B0 00 00 01 40 00 00 00 10 00 00 0F 44 20 00 0D 10 00 00 0F FF FF FF F0 00 00 00 00 90 00 00 00 10 00 00 05 20 00 00 02 D0 00 00 00 10 00 00 06 C3 80 00 0D 20 00 00 0F FF FF FF F0 00 00 00 00 A0 00 00 00 10 00 00 03 D0 00 00 01 E0 00 00 00 10 00 00 0A 93 70 00 02 C0 70 00 0F FF FF FF F0 00 00 00 00 B0 00 00 00 10 00 00 02 B0 00 00 01 40 00 00 00 10 00 00 06 D3 80 00 0C A0 20 00 0F FF FF FF F0 00 00 00 00 C0 00 00 00 10 00 00 02 C0 00 00 01 40 00 00 05 99 CF 03 10 D9 C0";
string[] all = ssss.Split(' ');
// int gu = int.Parse(all[0] + " " + all[1] + " " + all[2] + " " + all[3], System.Globalization.NumberStyles.HexNumber);
foreach (string a in all)
{
byte test = byte.Parse(a, System.Globalization.NumberStyles.HexNumber);
Inventory.WriteUInt8(test);
}
/* Inventory.WriteGuid(121332123);
Item ii = npc.Data.VendorItems[0];
Inventory.WriteUInt32(1); // client expects counting to start at 1
Inventory.WriteUInt32(1); // unk 4.0.1 always 1
Inventory.WriteUInt32((uint)71634);
Inventory.WriteUInt32((uint)69314);
Inventory.WriteUInt32(0xFFFFFFFF);//left in stcok
Inventory.WriteUInt32(1);
Inventory.WriteUInt32(0);
Inventory.WriteUInt32(1);
Inventory.WriteUInt32(0);
Inventory.WriteInt8(0); ;*/
// unk 4.0.1
session.Send(ref Inventory);
Console.WriteLine(npc.Data.NpcFlags);
}
// Globals.WorldMgr.
}
示例8: HandleNPCText
public static void HandleNPCText(ref PacketReader packet, ref WorldClass session)
{
var gossipTextId = packet.ReadInt32();
var guid = packet.ReadUInt64();
var gossipData = GossipMgr.GetGossip<Creature>(ObjectGuid.GetGuid(guid));
if (gossipData != null)
{
PacketWriter npcText = new PacketWriter(LegacyMessage.NPCText);
npcText.WriteInt32(gossipTextId);
npcText.WriteFloat(1);
for (int i = 0; i < 7; i++)
npcText.WriteUInt32(0);
npcText.WriteInt32(gossipData.BroadCastText.Id);
for (int i = 0; i < 7; i++)
npcText.WriteUInt32(0);
session.Send(ref npcText);
}
}