本文整理汇总了C#中Estrella.FiestaLib.Networking.Packet.WriteUShort方法的典型用法代码示例。如果您正苦于以下问题:C# Packet.WriteUShort方法的具体用法?C# Packet.WriteUShort怎么用?C# Packet.WriteUShort使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Estrella.FiestaLib.Networking.Packet
的用法示例。
在下文中一共展示了Packet.WriteUShort方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: BeginDisplayRest
public static Packet BeginDisplayRest(ZoneCharacter character)
{
Packet packet = new Packet(SH8Type.BeginDisplayRest);
packet.WriteUShort(character.MapObjectID);
packet.WriteUShort(character.House.ItemID);
packet.Fill(10, 0xff);
return packet;
}
示例2: Write
public void Write(Packet packet)
{
packet.WriteUShort(ID);
packet.WriteUShort(Item.ItemID);
packet.WriteInt(Position.X);
packet.WriteInt(Position.Y);
packet.WriteUShort((DroppedBy != null) ? DroppedBy.MapObjectID : (ushort)0xffff);
packet.WriteByte(CanTake ? (byte)0x08 : (byte)0x00);
}
示例3: Equip
public static Packet Equip(ZoneCharacter character, Item equip)
{
//B2 00 - AB 38 - 07 - 0D 00 04
Packet packet = new Packet(SH7Type.ShowEquip);
packet.WriteUShort(character.MapObjectID);
packet.WriteUShort(equip.ID);
packet.WriteByte(equip.UpgradeStats.Upgrades);
packet.Fill(3, 0xff);
return packet;
}
示例4: SendChangeZone
public static void SendChangeZone(ZoneCharacter character, ushort mapid, int x, int y, string ip, ushort port, ushort randomid)
{
using (var packet = new Packet(SH6Type.ChangeZone))
{
packet.WriteUShort(mapid);
packet.WriteInt(x);
packet.WriteInt(y);
packet.WriteString(Settings.Instance.IP, 16);
packet.WriteUShort(port);
packet.WriteUShort(randomid);
character.Client.SendPacket(packet);
}
}
示例5: SendAttackAnimation
public static void SendAttackAnimation(MapObject from, ushort objectID, ushort attackspeed, byte stance)
{
using (var packet = new Packet(SH9Type.AttackAnimation))
{
packet.WriteUShort(from.MapObjectID);
packet.WriteUShort(objectID);
packet.WriteByte(stance);
packet.WriteUShort(attackspeed);
packet.WriteByte(4);
packet.WriteByte(100);
from.MapSector.Broadcast(packet);
}
}
示例6: AddBlock
public static void AddBlock(WorldClient client, Packet packet)
{
string AddBlockname;
if (packet.TryReadString(out AddBlockname, 16))
{
client.Character.BlocketUser.Add(AddBlockname);
using (var pp = new Packet(SH42Type.AddToBlockList))
{
pp.WriteUShort(7168);//unk
pp.WriteString(AddBlockname, 16);
pp.WriteUShort(0);//unk
client.SendPacket(pp);
}
Program.DatabaseManager.GetClient().ExecuteQuery("INSERT INTO BlockUser (CharID,BlockCharname) VALUES ('" + client.Character.ID + "','" + AddBlockname + "')");
}
}
示例7: Animation
public static Packet Animation(ZoneCharacter character, byte id)
{
Packet packet = new Packet(SH8Type.Emote);
packet.WriteUShort(character.MapObjectID);
packet.WriteByte(id);
return packet;
}
示例8: SendCharacterChunkEnd
public static void SendCharacterChunkEnd(ZoneCharacter character)
{
using (var packet = new Packet(SH4Type.CharacterInfoEnd))
{
packet.WriteUShort(0xFFFF);
character.Client.SendPacket(packet);
}
}
示例9: SendConnectError
public static void SendConnectError(WorldClient client, ConnectErrors error)
{
using (var packet = new Packet(SH4Type.ConnectError))
{
packet.WriteUShort((ushort)error);
client.SendPacket(packet);
}
}
示例10: SendQuestion
public static void SendQuestion(ZoneCharacter character, Question question, ushort range)
{
using (var packet = new Packet(SH15Type.Question))
{
packet.WriteString(question.Text, 129);
packet.WriteUShort(character.MapObjectID); // Obj id
packet.WriteInt(character.Position.X);
packet.WriteInt(character.Position.Y);
packet.WriteUShort(range); // Distance how far your allowed to run when the question window is closed by Client
packet.WriteByte((byte)question.Answers.Count);
for (byte i = 0; i < question.Answers.Count; ++i)
{
packet.WriteByte(i);
packet.WriteString(question.Answers[i], 32);
}
character.Client.SendPacket(packet);
}
}
示例11: SendAcademyResponse
public static void SendAcademyResponse(WorldClient pClient,string GuildName, GuildAcademyResponse Response)
{
using (var packet = new Packet(SH38Type.AcademyResponse))
{
packet.WriteString(GuildName, 16);
packet.WriteUShort((ushort)Response);
pClient.SendPacket(packet);
}
}
示例12: SendZoneServerIP
public static void SendZoneServerIP(WorldClient client, ZoneConnection info)
{
using (var packet = new Packet(SH4Type.ServerIP))
{
packet.WriteString(info.IP, 16);
packet.WriteUShort(info.Port);
client.SendPacket(packet);
}
}
示例13: SendSkillLearnt
public static void SendSkillLearnt(ZoneCharacter character, ushort skillid)
{
using (var packet = new Packet(SH18Type.LearnSkill))
{
packet.WriteUShort(skillid);
packet.WriteByte(0); //unk
character.Client.SendPacket(packet);
}
}
示例14: ChangeFromGuildAcademyToResponse
public static void ChangeFromGuildAcademyToResponse(WorldClient client, Packet packet)
{
string GuildName;
string RequestName;
bool answer;
if (!packet.TryReadString(out GuildName, 16) || !packet.TryReadString(out RequestName, 16)|| (!packet.TryReadBool(out answer) || !client.Character.IsInGuildAcademy))
return;
if (answer)
{
GuildAcademyMember pMember = client.Character.GuildAcademy.Members.Find(m => m.Character.Character.Name == RequestName);
if (pMember == null)
return;
pMember.Character.IsInGuildAcademy = false;
pMember.Academy.RemoveMember(pMember);
pMember.Character.GuildAcademy.Guild.AddMember(pMember.Character, GuildRank.Member, Program.DatabaseManager.GetClient().GetConnection(), true, true);
pMember.Character.Guild = pMember.Character.GuildAcademy.Guild;
pMember.Character.IsInGuild = true;
using (var pack = new Packet(SH38Type.SendJoinGuildFromAcademy))
{
//this packet remove character from academy List and added to GuildList
pack.WriteString(RequestName, 16);
pack.WriteString(client.Character.Character.Name, 16);
pack.WriteByte(6);//rank
pack.WriteInt(0);//unk
pack.WriteUShort(0);//korp
pack.Fill(64, 0x00);//unk
pack.WriteByte(true ? (byte)0x95 : (byte)0x00);// (this.isOnline ? (byte)0x95 : (byte)0x00);
pack.Fill(3, 0x00);//unk
pack.WriteByte(pMember.Character.Character.Job);
pack.WriteByte(pMember.Character.Character.CharLevel);
pack.Fill(13, 0x00);//unk
client.Character.GuildAcademy.Guild.Broadcast(pack);
client.Character.GuildAcademy.Broadcast(pack);
}
}
using (var p2 = new Packet(SH4Type.CharacterGuildinfo))
{
client.Character.Guild.WriteGuildInfo(packet);
client.SendPacket(p2);
}
using (var pack = new Packet(SH29Type.GuildMemberJoined))
{
pack.WriteString(client.Character.Character.Name, 16);
client.Character.GuildAcademy.Guild.Broadcast(pack);
client.Character.GuildAcademy.Broadcast(pack);
}
using (var pack = new Packet(SH29Type.ChangeResponse))
{
pack.WriteUShort(3137);//unk
pack.WriteByte(3);
pack.Fill(2, 0x00);//unk
client.SendPacket(pack);
}
}
示例15: FriendInvite
public static void FriendInvite(WorldClient pClient, Packet pPacket)
{
string sender, receiver;
if (!pPacket.TryReadString(out sender, 16) ||
!pPacket.TryReadString(out receiver, 16))
{
Log.WriteLine(LogLevel.Warn, "Error reading friend invite.");
return;
}
WorldCharacter inviter = pClient.Character;
WorldClient invitee = ClientManager.Instance.GetClientByCharname(receiver);
if (invitee == null)
{
//character not found
using (var pack = new Packet(SH21Type.FriendInviteResponse))
{
pack.WriteString(sender, 16);
pack.WriteString(receiver, 16);
pack.WriteUShort(0x0946); // Cannot find ${Target}
pClient.SendPacket(pack);
}
}
else if (receiver == sender)
{
using (var pack = new Packet(SH21Type.FriendInviteResponse))
{
pack.WriteString(sender, 16);
pack.WriteString(receiver, 16);
pack.WriteUShort(0x0942); // You cannot add yourself to your Buddy List.
pClient.SendPacket(pack);
}
}
else if (inviter.Friends.Find(f => f.Name == receiver) != null)
{
using (var pack = new Packet(SH21Type.FriendInviteResponse))
{
pack.WriteString(sender, 16);
pack.WriteString(receiver, 16);
pack.WriteUShort(0x0945); // {Target} is already registered in the friends list.
pClient.SendPacket(pack);
}
}
else
{
using (var pack = new Packet(SH21Type.FriendInviteRequest))
{
pack.WriteString(receiver, 16);
pack.WriteString(sender, 16);
invitee.SendPacket(pack);
}
}
}