public CharacterPositionUpdateEventArgs(int _oldX, int _oldY, int _newX, int _newY, Information.Objects.Character _char, bool horse) { oldX = _oldX; oldY = _oldY; newX = _newX; newY = _newY; Character = _char; OnHorse = horse; }
public static void ProcessObject(Information.Objects.Object obj) { if (obj.type == 0) //Character { var character = new Information.Objects.Character(); character.AvatarInventory = obj.AvatarInventory; character.State.Buffs = obj.State.Buffs; character.Guild = obj.Guild; character.Inventory = obj.Inventory; character.JobLevel = obj.JobLevel; character.JobType = (JOB_Type)obj.JobType; character.ModelID = obj.ModelID; character.Name = obj.Name; character.OnTransport = (obj.TransportFlag == 1); character.PKState = (PK_State)obj.PVPState; character.Position = obj.Position; character.PVPCape = (FRPVPMode)obj.PVPCape; character.PVPEquipCooldown = obj.PVPEquipCooldown; character.Stall = obj.Stall; character.State = obj.State; character.TransportUniqueID = obj.TransportUniqueID; character.UniqueID = obj.UniqueID; character.UsingScroll = obj.UsingScroll; character.WearingMask = obj.WearingMask; Client.NearbyCharacters.Add(character.UniqueID, character); } else if (obj.type == 1) //NPC { var NPC = new Information.Objects.Base(); NPC.ModelID = obj.ModelID; NPC.Position = obj.Position; NPC.UniqueID = obj.UniqueID; Client.NearbyNPCs.Add(NPC.UniqueID, NPC); } else if (obj.type == 2) //MOB { var mob = new Information.Objects.Mob(); mob.Appearance = obj.Appearance; mob.ModelID = obj.ModelID; mob.Position = obj.Position; mob.Rarity = obj.Rarity; mob.UniqueID = obj.UniqueID; Client.NearbyMobs.Add(mob.UniqueID, mob); } else if (obj.type == 3) //Item { var item = new Information.Objects.Item(); item.Amount = obj.Amount; item.DropperUniqueID = obj.DropperUniqueID; item.DropSource = obj.DropSource; item.ModelID = obj.ModelID; item.OwnerID = obj.OwnerID; item.OwnerName = obj.Owner; item.PlusValue = obj.OptValue; item.Position = obj.Position; item.Rarity = obj.Rarity; item.UniqueID = obj.UniqueID; Client.NearbyItems.Add(item.UniqueID, item); } else if (obj.type == 4) //COS { var cos = new Information.Objects.COS(); cos.COSGuildName = obj.PetGuildName; cos.COSName = obj.Name; cos.FortressCOSGuildID = obj.Guild.ID; cos.FortressCOSGuildName = obj.Guild.Name; cos.ModelID = obj.ModelID; cos.OwnerName = obj.Owner; cos.OwnerUniqueID = obj.OwnerID; cos.Position = obj.Position; cos.Type = obj.COSType; cos.UniqueID = obj.UniqueID; Client.NearbyCOSs.Add(cos.UniqueID, cos); } else if (obj.type == 5) //Struct { var structure = new Information.Objects.Structure(); structure.HP = obj.HP; structure.ModelID = obj.ModelID; structure.OwnerName = obj.Owner; structure.OwnerUniqueID = obj.OwnerID; structure.Position = obj.Position; structure.RefEventStructID = obj.EventStructID; structure.State = obj.StructureState; structure.UniqueID = obj.UniqueID; Client.NearbyStructures.Add(structure.UniqueID, structure); } else if (obj.type == 6) //Event area { var area = new Information.Objects.BuffArea(); area.Position = obj.Position; area.UniqueID = obj.UniqueID; area.ModelID = obj.ModelID; area.ReferenceSkillID = obj.SkillID; Client.NearbyBuffAreas.Add(area.UniqueID, area); } }