Пример #1
0
        //TODO:道具信息(30%)
        public static void AddItemInfo(MapleBuffer buffer, CItem item)
        {
            //buffer.add<int>
            short Posin = (short)item.Position;

            if (Posin <= -1)
            {
                Posin *= -1;
                if (Posin > 100 && Posin < 1000)
                {
                    Posin -= 100;
                }
            }
            buffer.add <byte>((byte)Posin);

            if (false)//宠物道具信息
            {
            }
            else
            {
                if (item.Type == 0 || item.Type == 1)//0:佩戴,1装备
                {
                    //装备道具数据
                    CEquip equip = Common.Sql.MySqlFactory.GetFactory.Query <CEquip>().Where(a => a.InventoryitemsId == item.Id).FirstOrDefault();
                    if (equip == null)
                    {
                        AddBaseItemHeader(buffer, item);
                        buffer.add <byte>(0);
                        buffer.add <byte>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <short>(0);
                        buffer.add <string>("");
                    }
                    else
                    {
                        AddBaseItemHeader(buffer, item);
                        AddEquipItemInfo(buffer, equip);
                    }
                }
                else
                {
                    //其他道具数据
                    AddOtherItemInfo(buffer, item);
                }
            }
        }
Пример #2
0
 //TODO:装备信息(50%)
 private static void AddEquipItemInfo(MapleBuffer buffer, CEquip equip)
 {
     buffer.add <byte>((byte)equip.UpgradeSlots);
     buffer.add <byte>((byte)equip.Level);
     buffer.add <short>((short)equip.Str);
     buffer.add <short>((short)equip.Dex);
     buffer.add <short>((short)equip.Int);
     buffer.add <short>((short)equip.Luk);
     buffer.add <short>((short)equip.Hp);
     buffer.add <short>((short)equip.Mp);
     buffer.add <short>((short)equip.Watk);
     buffer.add <short>((short)equip.Matk);
     buffer.add <short>((short)equip.Wdef);
     buffer.add <short>((short)equip.Mdef);
     buffer.add <short>((short)equip.Acc);
     buffer.add <short>((short)equip.Avoid);
     buffer.add <short>((short)equip.Hands);
     buffer.add <short>((short)equip.Speed);
     buffer.add <short>((short)equip.Jump);
     buffer.add <string>(equip.Owner);
 }