本文整理汇总了C#中Zepheus.FiestaLib.Networking.Packet.WriteUInt方法的典型用法代码示例。如果您正苦于以下问题:C# Packet.WriteUInt方法的具体用法?C# Packet.WriteUInt怎么用?C# Packet.WriteUInt使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zepheus.FiestaLib.Networking.Packet
的用法示例。
在下文中一共展示了Packet.WriteUInt方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SendPartyInformation
public static void SendPartyInformation(ZoneClient client)
{
if (Program.Entity.Parties.Where(c => c.CharNo == client.Character.ID).Count() == 1)
{
Party PartyNo = Program.Entity.Parties.First(c => c.CharNo == client.Character.ID);
foreach (Party party in Program.Entity.Parties.Where(c => c.PartyNo == PartyNo.PartyNo))
{
Character Pcharacter = Program.Entity.Characters.First(c => c.ID == party.CharNo);
ZoneClient otherLiveInfo = ClientManager.Instance.GetClientByName(Pcharacter.Name);
if (otherLiveInfo != null)
{
if (otherLiveInfo.Character.MapID == client.Character.MapID)
{
using (var ppacket = new Packet(SH14Type.PartyInformationShort))
{
ppacket.WriteByte(1);
ppacket.WriteString(otherLiveInfo.Character.Name, 16);
ppacket.WriteUInt(otherLiveInfo.Character.HP);
ppacket.WriteUInt(otherLiveInfo.Character.SP);
ppacket.WriteUInt(otherLiveInfo.Character.LP);
client.SendPacket(ppacket);
}
using (var ppacket = new Packet(SH14Type.PartyInformation))
{
ppacket.WriteByte(1); //unk
ppacket.WriteString(otherLiveInfo.Character.Name, 16);
ppacket.WriteByte((byte)otherLiveInfo.Character.Job);
ppacket.WriteByte(otherLiveInfo.Character.Level);
ppacket.WriteUInt(otherLiveInfo.Character.HP);
ppacket.WriteUInt(otherLiveInfo.Character.SP);
ppacket.WriteUInt(otherLiveInfo.Character.LP);
ppacket.WriteByte(1); //unk
client.SendPacket(ppacket);
}
using (var ppacket = new Packet(SH14Type.PartyLoginCord))
{
ppacket.WriteByte(1); //unk
ppacket.WriteString(otherLiveInfo.Character.Name, 16);
ppacket.WriteInt(otherLiveInfo.Character.Position.X);
ppacket.WriteInt(otherLiveInfo.Character.Position.Y);
client.SendPacket(ppacket);
}
}
}
}
}
}
示例2: WriteUpdateStats
public void WriteUpdateStats(Packet packet)
{
packet.WriteUInt(this.HP);
packet.WriteUInt(BaseStats.MaxHP);
packet.WriteUInt(this.SP);
packet.WriteUInt(BaseStats.MaxSP);
packet.WriteUInt(this.LP);
packet.WriteUInt(this.MaxLP);
packet.WriteByte(this.Level);
packet.WriteUShort(this.UpdateCounter);
}
示例3: WriteDetailedInfoExtra
public void WriteDetailedInfoExtra(Packet packet, bool levelUP = false)
{
if (!levelUP)
{
packet.WriteUShort(this.MapObjectID);
}
packet.WriteLong(this.Exp);
packet.WriteULong(DataProvider.Instance.GetMaxExpForLevel(this.Level));
packet.WriteInt(BaseStats.Strength);
packet.WriteInt(BaseStats.Strength + GetExtraStr());
packet.WriteInt(BaseStats.Endurance);
packet.WriteInt(BaseStats.Endurance + GetExtraEnd());
packet.WriteInt(BaseStats.Dexterity);
packet.WriteInt(BaseStats.Dexterity + GetExtraDex());
packet.WriteInt(BaseStats.Intelligence);
packet.WriteInt(BaseStats.Intelligence + GetExtraInt());
packet.WriteInt(0); // Wizdom. It isn't set in the server so it can contain shit from old buffers... :D
packet.WriteInt(0); // I once had a name here :P
packet.WriteInt(BaseStats.Spirit);
packet.WriteInt(BaseStats.Spirit + GetExtraSpr());
packet.WriteInt(GetWeaponDamage()); //base damage
packet.WriteInt(GetWeaponDamage(true)); //increased damage (e.g. buffs)
packet.WriteInt(GetMagicDamage()); //magic dmg
packet.WriteInt(GetMagicDamage(true)); //inc magic dmg
packet.WriteInt(GetWeaponDefense()); //todo equip stats loading (weapondef)
packet.WriteInt(GetWeaponDefense(true)); //weapondef inc
packet.WriteInt(GetAim()); //TODO: basestats aim + dex?
packet.WriteInt(GetAim(true)); //aim inc (calcuate later based on dex)
packet.WriteInt(GetEvasion()); //evasion
packet.WriteInt(GetEvasion(true)); //evasion inc
packet.WriteInt(GetWeaponDamage()); //damage block again
packet.WriteInt(GetWeaponDamage(true));
packet.WriteInt(GetMagicDamage()); //magic damage
packet.WriteInt(GetMagicDamage(true));
packet.WriteInt(GetMagicDefense()); //magic def
packet.WriteInt(GetMagicDefense(true)); //magic def inc
packet.WriteInt(1);
packet.WriteInt(20);
packet.WriteInt(2);
packet.WriteInt(40);
packet.WriteUInt(BaseStats.MaxHP); //max HP
packet.WriteUInt(BaseStats.MaxSP); //max SP
if (character.Job == (int)Job.Crusader)
packet.WriteInt(100); // max LP
else
packet.WriteInt(0); // max LP
packet.WriteInt(0); // UNK
packet.WriteInt(BaseStats.MAXSoulHP); // Max HP Stones
packet.WriteInt(BaseStats.MAXSoulSP); // Max SP Stones
packet.Fill(64, 0);
if (!levelUP)
{
packet.WriteInt(this.Position.X);
packet.WriteInt(this.Position.Y);
}
}
示例4: WriteDetailedInfo
public void WriteDetailedInfo(Packet pPacket)
{
pPacket.WriteInt(ID);
pPacket.WriteString(this.Name, 16);
pPacket.WriteByte(this.Slot);
pPacket.WriteByte(this.Level);
pPacket.WriteLong(this.Exp);
pPacket.WriteInt(0); // UNK
pPacket.WriteShort(this.StonesHP);
pPacket.WriteShort(this.StonesSP);
pPacket.WriteUInt(this.HP);
pPacket.WriteUInt(this.SP);
pPacket.Fill(4, 0); //UNK
pPacket.WriteInt(this.Fame); // Fame
pPacket.WriteLong(this.Money); //TODO: inventory class
pPacket.WriteString(this.Map.MapInfo.ShortName, 12);
pPacket.WriteInt(this.Position.X);
pPacket.WriteInt(this.Position.Y);
pPacket.WriteByte(this.Rotation);
pPacket.WriteByte(this.Str); // Str bonus
pPacket.WriteByte(this.End); // End bonus
pPacket.WriteByte(this.Dex); // Dex bonus
pPacket.WriteByte(this.Int); // Int bonus
pPacket.WriteByte(this.Spr); // Spr bonus
pPacket.WriteShort(0); // UNK
pPacket.WriteUInt(0); // Killpoints
pPacket.Fill(7, 0); // UNK
}
示例5: SendUpdateLP
public static void SendUpdateLP(ZoneCharacter character)
{
using (var p = new Packet(SH9Type.HealLP))
{
p.WriteUInt(character.MaxLP);
character.Client.SendPacket(p);
}
}
示例6: GotIngame
public static void GotIngame(WorldClient client, Packet packet)
{
/* using (var p1 = new Packet(SH4Type.CharacterGuildacademyinfo))
{
if(client.Character.GuildAcademy != null)
{
}
else
{
p1.Fill(5, 0);
}
client.SendPacket(p1);
}
using (var p2 = new Packet(SH4Type.CharacterGuildinfo))
{
if (client.Character.Guild != null)
{
client.Character.Guild.Details.WriteMessageAsGuildMember(p2, client.Character.Guild);
}
else
{
p2.WriteInt(0);
}
client.SendPacket(p2);
}*/
// dafuq no op code..
using (var p = new Packet(0x581C))
{
//p.WriteShort();
p.WriteUInt(0x4d0bc167); // 21h
client.SendPacket(p);
}
// dafuq no op code..
using (var p3 = new Packet(0x581D))
{
p3.WriteShort(0); //zero kingdom quests!
client.SendPacket(p3);
}
using (var p4 = new Packet(21, 7))
{
p4.WriteByte((byte)client.Character.Friends.Count);
client.Character.WriteFriendData(p4);
client.SendPacket(p4);
}
using (var p5 = new Packet(SH2Type.UnkTimePacket))
{
p5.WriteShort(256);
client.SendPacket(p5);
}
if (!client.Character.IsIngame)
{
client.Character.IsIngame = true;
client.Character.OneIngameLoginLoad();
MasterManager.Instance.SendMasterList(client);
//SendMasterList(pClient);
}
Managers.CharacterManager.InvokdeIngame(client.Character);
client.Character.OnGotIngame();
}
示例7: SendUpdateSP
public static void SendUpdateSP(ZoneCharacter character)
{
using (var p = new Packet(SH9Type.HealSP))
{
p.WriteUInt(character.SP);
p.WriteUShort(character.UpdateCounter);
character.Client.SendPacket(p);
}
}
示例8: SendSkill
public static void SendSkill(MapObject user, ushort animid, List<SkillVictim> victims)
{
using (var packet = new Packet(SH9Type.SkillAnimationTarget))
{
packet.WriteUShort(animid);
packet.WriteUShort(user.MapObjectID);
packet.WriteByte((byte)(victims.Count > 255 ? 255 : victims.Count));
for (byte i = 0; i < victims.Count && i != 255; i++)
{
var victim = victims[i];
packet.WriteUShort(victim.MapObjectID);
packet.WriteByte(victim.Stance1);
packet.WriteByte(victim.Stance2);
packet.WriteUInt(victim.Damage);
packet.WriteUInt(victim.HPLeft);
packet.WriteUShort(victim.HPCounter);
}
user.MapSector.Broadcast(packet);
}
}
示例9: SendPremiumEmotions
public static void SendPremiumEmotions(ZoneCharacter character)
{
using (var packet = new Packet(SH4Type.CharacterItemList))
{
byte count = 0;
packet.WriteByte(count); // Count
packet.WriteByte(0x0F); // Inventory
packet.WriteByte(0xCB); // UNK (In newest client it exists, in bit older, not)
for (byte i = 0; i < count; i++)
{
packet.WriteByte(8); // Item Data Length
packet.WriteByte(i); // Slot
packet.WriteByte(0x3C); // Inventory thing
packet.WriteUShort((ushort)(31500 + (16 < i ? 1 : 0) + i * 2)); // Item ID
packet.WriteUInt(1992027391); // Expiring Time (1992027391 - Permanent)
}
character.Client.SendPacket(packet);
}
}
示例10: SendHouseList
public static void SendHouseList(ZoneCharacter character)
{
//TODO: house loading
using (var packet = new Packet(SH4Type.CharacterItemList))
{
byte count = 0;
packet.WriteByte(count); // Count
packet.WriteByte(0x0C); // Inventory
packet.WriteByte(0x35); // UNK (In newest client it exists, in bit older, not)
for (byte i = 0; i < count; i++)
{
packet.WriteByte(8); // Item Data Length
packet.WriteByte(i); // Slot
packet.WriteByte(0x30); // UNK
packet.WriteUShort((ushort)(31000 + i * 3)); // Item ID
packet.WriteUInt(1992027391); // Expiring Time (1992027391 - Permanent)
}
character.Client.SendPacket(packet);
}
}
示例11: WriteSmallInfo
//this is used by the smaller writer (e.g. additem, unequip, equip)
public void WriteSmallInfo(Packet packet)
{
packet.WriteUShort(this.ItemID);
switch (SlotType)
{
case ItemSlot.Helm:
case ItemSlot.Armor:
case ItemSlot.Pants:
case ItemSlot.Boots:
case ItemSlot.Weapon2:
case ItemSlot.Weapon:
packet.WriteByte(Upgrades);
packet.Fill(6, 0);
packet.WriteUShort(ushort.MaxValue); //unk
packet.WriteUInt(GetExpiringTime());
packet.WriteUShort(ushort.MaxValue);
break;
default:
packet.WriteUInt(GetExpiringTime());
packet.WriteInt(0); //unk
break;
}
}
示例12: WriteEquipStats
public void WriteEquipStats(Packet packet)
{
byte StatCount = 0;
if (Str > 0) StatCount++;
if (End > 0) StatCount++;
if (Dex > 0) StatCount++;
if (Spr > 0) StatCount++;
if (Int > 0) StatCount++;
packet.WriteUShort(ItemID);
switch (this.SlotType)
{
case ItemSlot.Helm:
case ItemSlot.Armor:
case ItemSlot.Pants:
case ItemSlot.Boots:
packet.WriteByte(this.Upgrades); // Refinement
packet.WriteByte(0);
packet.WriteShort(0); // Or int?
packet.WriteShort(0);
packet.WriteByte(0);
packet.WriteInt(0); //Temp
packet.WriteByte(0x01); //Temp
break;
// case ItemSlot.Bow: // Shield = same
case ItemSlot.Weapon2:
case ItemSlot.Weapon:
packet.WriteByte(this.Upgrades); // Refinement
packet.WriteByte(0);
packet.WriteShort(0); // Or int?
packet.WriteShort(0);
if (this.SlotType == ItemSlot.Weapon || (this.SlotType == ItemSlot.Weapon2 && Info.TwoHand))
{
packet.WriteByte(0);
// Licence data
packet.WriteUShort(0xFFFF); // Nr.1 - Mob ID
packet.WriteUInt(0); // Nr.1 - Kill count
packet.WriteUShort(0xFFFF); // Nr.2 - Mob ID
packet.WriteUInt(0); // Nr.2 - Kill count
packet.WriteUShort(0xFFFF); // Nr.3 - Mob ID
packet.WriteUInt(0); // Nr.3 - Kill count
packet.WriteUShort(0xFFFF); // UNK
packet.WriteString("", 16); // First licence adder name
}
packet.WriteByte(0);
packet.Fill(9, (byte)0xFF);
packet.Fill(7, 0x00);
//packet.WriteUInt(GetExpiringTime()); // Expiring time (1992027391 - never expires)
break;
case ItemSlot.Pet:
packet.WriteByte(this.Upgrades); // Pet Refinement Lol
packet.Fill(2, 0); // UNK
packet.WriteUInt(GetExpiringTime()); // Expiring time (1992027391 - never expires)
packet.WriteUInt(0); // Time? (1992027391 - never expires)
break;
case ItemSlot.Earings:
case ItemSlot.Necklace:
case ItemSlot.Ring:
packet.WriteUInt(GetExpiringTime()); // Expiring time (1992027391 - never expires)
packet.WriteUInt(0); // Time? (1992027391 - never expires)
packet.WriteByte(this.Upgrades); // Refinement
// Stats added while refining
packet.WriteUShort(0); // it may be byte + byte too (some kind of counter when item downgrades)
packet.WriteUShort(0); // STR
packet.WriteUShort(0); // END
packet.WriteUShort(0); // DEX
packet.WriteUShort(0); // INT
packet.WriteUShort(0); // SPR
break;
case ItemSlot.CostumeWeapon:
case ItemSlot.CostumeShield:
packet.WriteUInt(25000); // Skin Durability
break;
default:
//packet.WriteUInt(GetExpiringTime()); // Expiring time (1992027391 - never expires)
//packet.WriteUInt(0); // Time? (1992027391 - never expires)
break;
}
//// Random stats data (Not those what were added in refinement)
//switch (this.SlotType)
//{ // Stat count (StatCount << 1 | Visible(0 or 1 are stats shown or not))
// case ItemSlot.Earings:
// packet.WriteByte((byte)(StatCount << 1 | 1));
// break;
// case ItemSlot.Necklace:
// case ItemSlot.Ring:
// packet.WriteByte((byte)(StatCount << 1 | 1));
// break;
// case ItemSlot.Helm:
// case ItemSlot.Armor:
// case ItemSlot.Pants:
// case ItemSlot.Boots:
// case ItemSlot.Weapon2:
// case ItemSlot.Weapon:
// packet.WriteByte((byte)(StatCount << 1 | 1));
// break;
// case ItemSlot.Pet: // Yes!! Its possible to give stats to pet also (It overrides default one(s)).
// packet.WriteByte((byte)(StatCount << 1 | 1));
// break;
//.........这里部分代码省略.........
示例13: WriteStats
public void WriteStats(Packet Packet)
{
Packet.WriteUShort(ItemInfo.ItemID);
switch (ItemInfo.Class)
{
case ItemClass.Mount:
Packet.WriteUShort(100); // food ?
Packet.WriteUInt(0); // use time?
Packet.WriteUInt(1992027391); // expire time?
Packet.WriteUShort(0); // unk ?
break;
case ItemClass.QuestItem:
Packet.WriteByte(0); // unk ?
break;
case ItemClass.PremiumItem:
Packet.WriteUInt(0); // use time
Packet.WriteUInt(1992027391); // expire time
break;
case ItemClass.CollectCard:
Packet.WriteUInt(1000); // serial
Packet.WriteByte(5); // stars
break;
}
}
示例14: WriteEquipStats
public void WriteEquipStats(Packet Packet)
{
var length = GetEquipLength(this);
var statCount = GetInfoStatCount(this);
length += (byte)(statCount * 3);
Packet.WriteUShort(ItemInfo.ItemID);
switch (ItemInfo.Slot)
{
case ItemSlot.Weapon:
case ItemSlot.Weapon2:
case ItemSlot.Armor:
case ItemSlot.Pants:
case ItemSlot.Boots:
case ItemSlot.Helm:
case ItemSlot.Pet:
Packet.WriteByte(0);//upgrades
Packet.WriteByte(0); // unk
Packet.WriteUInt(0); // unk2
Packet.WriteByte(0); // unk3
if ((ItemInfo.Slot == ItemSlot.Weapon
|| ItemInfo.Slot == ItemSlot.Weapon2)
&& ItemInfo.Class != ItemClass.Shield)
{
Packet.WriteUShort(0xFFFF); // title mob 1
Packet.WriteUInt(0); // title mob 1 kill count
Packet.WriteUShort(0xFFFF); // title mob 2
Packet.WriteUInt(0); // title mob 2 kill count
Packet.WriteUShort(0xFFFF); // title mob 3
Packet.WriteUInt(0); // title mob 3 kill count
Packet.WriteUShort(0xFFFF); // unk
Packet.WriteString("", 16); // license adder name
Packet.WriteByte(0);
}
Packet.WriteUInt(1992027391); // unk4
break;
case ItemSlot.Necklace:
case ItemSlot.Earings:
case ItemSlot.Ring:
case ItemSlot.Ring2:
Packet.WriteUInt(1992027391); // expire time?
Packet.WriteUInt(0); // time ?
Packet.WriteByte(0);//upgrades
Packet.WriteUShort(0); // refinement stats?
Packet.WriteUShort((ushort)UpgradeStats.Str);
Packet.WriteUShort((ushort)UpgradeStats.End);
Packet.WriteUShort((ushort)UpgradeStats.Dex);
Packet.WriteUShort((ushort)UpgradeStats.Int);
Packet.WriteUShort((ushort)UpgradeStats.Spr);
break;
default:
Packet.WriteUInt(0);
Packet.WriteUInt(1992027391); // expire time?
break;
}
switch (ItemInfo.Slot)
{
case ItemSlot.Weapon:
case ItemSlot.Weapon2:
case ItemSlot.Armor:
case ItemSlot.Pants:
case ItemSlot.Boots:
case ItemSlot.Helm:
case ItemSlot.Pet:
case ItemSlot.Necklace:
case ItemSlot.Earings:
case ItemSlot.Ring:
case ItemSlot.Ring2:
Packet.WriteByte((byte)(statCount << 1 | 1));
if (ItemInfo.Stats.Str > 0) { Packet.WriteByte(0); Packet.WriteUShort((ushort)ItemInfo.Stats.Str); }
if (ItemInfo.Stats.End > 0) { Packet.WriteByte(1); Packet.WriteUShort((ushort)ItemInfo.Stats.End); }
if (ItemInfo.Stats.Dex > 0) { Packet.WriteByte(2); Packet.WriteUShort((ushort)ItemInfo.Stats.Dex); }
if (ItemInfo.Stats.Spr > 0) { Packet.WriteByte(3); Packet.WriteUShort((ushort)ItemInfo.Stats.Spr); }
if (ItemInfo.Stats.Int > 0) { Packet.WriteByte(4); Packet.WriteUShort((ushort)ItemInfo.Stats.Int); }
break;
}
}
示例15: SendGainExp
public static void SendGainExp(ZoneCharacter who, uint amount, ushort mobid = (ushort) 0xFFFF)
{
using (var packet = new Packet(SH9Type.GainExp))
{
packet.WriteUInt(amount);
packet.WriteUShort(mobid);
who.Client.SendPacket(packet);
}
}