少年修仙传客户端代码仓库
client_linchunjie
2019-04-26 48809daad2b723fc3d73a8de30b86c5ec4dfb543
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
6个文件已修改
368 ■■■■■ 已修改文件
Fight/Actor/Skill/AttackHandler.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Lua/Gen/SnxxzUIItemOperateUtilityWrap.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/GetWayTrigger.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/ItemTipUtility.cs 317 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ItemTip/TipLegendPropertyWidget.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/ItemOperateUtility.cs 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/Skill/AttackHandler.cs
@@ -283,8 +283,9 @@
                target.KillerPos = attacker.Pos;
            }
        }
        if (canDie && target.ActorInfo.RealHp == 0)
        if (canDie
         && target.ActorInfo.RealHp == 0
         && !(StageLoad.Instance.currentStage is ClientHazyDemonKingStage))
        {
            target.Die(attacker.ServerInstID, soConfig.deadFlyId, (byte)attackType);
        }
Lua/Gen/SnxxzUIItemOperateUtilityWrap.cs
@@ -813,10 +813,6 @@
        static int _g_get_operateItemGuid(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);
                Snxxz.UI.ItemOperateUtility gen_to_be_invoked = (Snxxz.UI.ItemOperateUtility)translator.FastGetCSObj(L, 1);
                LuaAPI.lua_pushstring(L, gen_to_be_invoked.operateItemGuid);
            } catch(System.Exception gen_e) {
                return LuaAPI.luaL_error(L, "c# exception:" + gen_e);
            }
System/ItemTip/GetWayTrigger.cs
@@ -29,7 +29,7 @@
                switch (m_ItemId)
                {
                    case 2105:
                        WindowCenter.Instance.Open<RechargeTipWin>();
                        WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.VipRechargeFunc1);
                        break;
                    default:
                        ModelCenter.Instance.GetModel<GetWayModel>().itemId = m_ItemId;
System/ItemTip/ItemTipUtility.cs
@@ -12,6 +12,17 @@
    public class ItemTipUtility
    {
        public enum TipType
        {
            Item,
            Equip,
            Dogz,
            GatherSoul,
            KingTreasure,
            PetMount,
            Wing,
            Guard,
        }
        public class TipData
        {
@@ -119,11 +130,6 @@
            public List<int> ways;
        }
        public struct BuyInfo
        {
        }
        public struct GatherSoulInfo
        {
            public PackType packType;
@@ -157,49 +163,47 @@
            Debug.LogFormat("你查看的物品是:itemId->{0}", itemId);
            Debug.LogFormat("你查看的物品是:name->{0}", config.ItemName);
#endif
            var isEquip = ItemLogicUtility.Instance.IsEquip(itemId);
            if (isEquip)
            {
                mainTipData = CreateNormalEquipData(itemId);
            }
            else
            {
                mainTipData = CreateItemData(itemId);
            }
            if (isEquip)
            {
                WindowCenter.Instance.Open<EquipTipWin>();
            }
            else
            {
                switch (config.Type)
                {
                    case 61:
                    case 62:
                    case 63:
                        ShowGatherSoul(itemId, 0);
                        break;
                    case 53:
                        var kingTreasureShow = ModelCenter.Instance.GetModel<KingTreasureShowModel>();
                        kingTreasureShow.SetInitData(itemId);
                        break;
                    case 26:
                    case 41:
                    case 42:
                        WindowCenter.Instance.Open<PetMountTipWin>();
                        break;
                    case 113:
                        WindowCenter.Instance.Open<WingTipWin>();
                        break;
                    case 114:
                        WindowCenter.Instance.Open<GuardTipWin>();
                        break;
                    default:
                        WindowCenter.Instance.Open<ItemTipWin>();
                        break;
                }
            var tipType = GetTipType(itemId);
            switch (tipType)
            {
                case TipType.Equip:
                    mainTipData = CreateNormalEquipData(itemId);
                    break;
                case TipType.Dogz:
                    mainTipData = CreateDogzEquipData(itemId);
                    break;
                default:
                    mainTipData = CreateItemData(itemId);
                    break;
            }
            switch (tipType)
            {
                case TipType.Equip:
                    WindowCenter.Instance.Open<EquipTipWin>();
                    break;
                case TipType.Dogz:
                    WindowCenter.Instance.Open<EquipTipWin>();
                    break;
                case TipType.GatherSoul:
                    ShowGatherSoul(itemId, 0);
                    break;
                case TipType.KingTreasure:
                    var kingTreasureShow = ModelCenter.Instance.GetModel<KingTreasureShowModel>();
                    kingTreasureShow.SetInitData(itemId);
                    break;
                case TipType.PetMount:
                    WindowCenter.Instance.Open<PetMountTipWin>();
                    break;
                case TipType.Wing:
                    WindowCenter.Instance.Open<WingTipWin>();
                    break;
                case TipType.Guard:
                    WindowCenter.Instance.Open<GuardTipWin>();
                    break;
                default:
                    WindowCenter.Instance.Open<ItemTipWin>();
                    break;
            }
        }
@@ -217,66 +221,71 @@
            Debug.LogFormat("你查看的物品是:name->{0}", item.config.ItemName);
#endif
            secondaryData = null;
            var packType = item.packType;
            var isEquip = ItemLogicUtility.Instance.IsEquip(item.itemId);
            switch (packType)
            {
                case PackType.Equip:
                    mainTipData = CreateNormalEquipData(guid);
                    break;
                default:
                    if (isEquip)
                    {
                        if (item.isAuction)
                        {
                            mainTipData = CreateEquipAuctionData(guid);
                        }
                        else
                        {
                            mainTipData = CreateNormalEquipData(guid);
                            var equipedGuid = equipModel.GetEquip(new Int2(item.config.LV, item.config.EquipPlace));
                            if (equipedGuid != guid)
                            {
                                secondaryData = CreateNormalEquipData(equipedGuid);
                            }
                        }
                    }
                    else
                    {
                        mainTipData = CreateItemData(guid);
                    }
                    break;
            }
            if (isEquip)
            {
                WindowCenter.Instance.Open<EquipTipWin>();
            }
            else
            {
                switch (item.config.Type)
                {
                    case 61:
                    case 62:
                    case 63:
                        break;
                    case 26:
                    case 41:
                    case 42:
                        WindowCenter.Instance.Open<PetMountTipWin>();
                        break;
                    case 113:
                        WindowCenter.Instance.Open<WingTipWin>();
                        break;
                    case 114:
                        WindowCenter.Instance.Open<GuardTipWin>();
                        break;
                    default:
                        WindowCenter.Instance.Open<ItemTipWin>();
                        break;
                }
            }
            secondaryData = null;
            var tipType = GetTipType(item.itemId);
            switch (tipType)
            {
                case TipType.Equip:
                    var packType = item.packType;
                    switch (packType)
                    {
                        case PackType.Equip:
                            mainTipData = CreateNormalEquipData(guid);
                            break;
                        default:
                            if (item.isAuction)
                            {
                                mainTipData = CreateEquipAuctionData(guid);
                            }
                            else
                            {
                                mainTipData = CreateNormalEquipData(guid);
                                var equipedGuid = equipModel.GetEquip(new Int2(item.config.LV, item.config.EquipPlace));
                                if (equipedGuid != guid)
                                {
                                    secondaryData = CreateNormalEquipData(equipedGuid);
                                }
                            }
                            break;
                    }
                    break;
                case TipType.Dogz:
                    mainTipData = CreateDogzEquipData(guid);
                    break;
                default:
                    mainTipData = CreateItemData(guid);
                    break;
            }
            switch (tipType)
            {
                case TipType.Equip:
                    WindowCenter.Instance.Open<EquipTipWin>();
                    break;
                case TipType.Dogz:
                    WindowCenter.Instance.Open<EquipTipWin>();
                    break;
                case TipType.GatherSoul:
                    ShowGatherSoul(item.itemId, 0);
                    break;
                case TipType.KingTreasure:
                    var kingTreasureShow = ModelCenter.Instance.GetModel<KingTreasureShowModel>();
                    kingTreasureShow.SetInitData(item.itemId);
                    break;
                case TipType.PetMount:
                    WindowCenter.Instance.Open<PetMountTipWin>();
                    break;
                case TipType.Wing:
                    WindowCenter.Instance.Open<WingTipWin>();
                    break;
                case TipType.Guard:
                    WindowCenter.Instance.Open<GuardTipWin>();
                    break;
                default:
                    WindowCenter.Instance.Open<ItemTipWin>();
                    break;
            }
        }
        public static void ShowGood(int goodId, int itemId)
@@ -385,6 +394,39 @@
                suitInfo = GetSuitInfo(itemId),
                gemInfo = GetGemInfo(itemId),
                starInfo = GetStarInfo(itemId),
                getWay = GetGetWay(itemId)
            };
        }
        static TipData CreateDogzEquipData(string guid)
        {
            var item = packModel.GetItemByGuid(guid);
            if (item == null)
            {
                return default(TipData);
            }
            return new TipData()
            {
                itemId = item.itemId,
                guid = guid,
                baseInfo = GetBaseInfo(guid),
                baseProperty = GetBaseProperty(guid),
                legendProperty = GetLegendProperty(guid),
            };
        }
        static TipData CreateDogzEquipData(int itemId)
        {
            return new TipData()
            {
                itemId = itemId,
                guid = string.Empty,
                baseInfo = GetBaseInfo(itemId),
                baseProperty = GetBaseProperty(itemId),
                legendProperty = GetLegendProperty(itemId),
                getWay = GetGetWay(itemId)
            };
        }
@@ -800,6 +842,20 @@
                        }
                    }
                    break;
                case 119:
                case 120:
                case 121:
                case 122:
                case 123:
                    data.trueCount = LegendPropertyUtility.GetDogzPropertyCount(config.ItemColor, config.StarLevel, LegendAttrType.Normal);
                    data.properties = new List<Int2>();
                    var keys = LegendPropertyUtility.GetDogzPlaceProperties(config.EquipPlace);
                    foreach (var key in keys)
                    {
                        var value = LegendPropertyUtility.GetDogzQualityPropertyValue(key, config.ItemColor);
                        data.properties.Add(new Int2(key, value));
                    }
                    break;
                default:
                    data.trueCount = LegendPropertyUtility.GetEquipPropertyCount(itemId);
@@ -1437,6 +1493,51 @@
            return true;
        }
        private static TipType GetTipType(int itemId)
        {
            var config = ItemConfig.Get(itemId);
            switch (config.Type)
            {
                case 101:
                case 102:
                case 103:
                case 104:
                case 105:
                case 106:
                case 107:
                case 108:
                case 109:
                case 110:
                case 111:
                case 112:
                    return TipType.Equip;
                case 119:
                case 120:
                case 121:
                case 122:
                case 123:
                    return TipType.Dogz;
                case 61:
                case 62:
                case 63:
                    return TipType.GatherSoul;
                case 53:
                    return TipType.KingTreasure;
                case 26:
                case 41:
                case 42:
                    return TipType.PetMount;
                case 113:
                    return TipType.Wing;
                case 114:
                    return TipType.Guard;
                default:
                    return TipType.Item;
            }
        }
    }
}
System/ItemTip/TipLegendPropertyWidget.cs
@@ -21,10 +21,12 @@
            for (int i = 0; i < count; i++)
            {
                var property = data.properties[i];
                var quality = LegendPropertyConfig.Get(property.x).quality;
                var config = LegendPropertyConfig.Get(property.x);
                var quality = config != null ? config.quality : 0;
                if (data.isPreview)
                {
                    lines.Add(UIHelper.AppendColor(quality, string.Format("【推荐】{0}", PlayerPropertyConfig.GetFullDescription( property.x,property.y))));
                    lines.Add(UIHelper.AppendColor(quality, string.Format("【推荐】{0}", PlayerPropertyConfig.GetFullDescription(property.x, property.y))));
                }
                else
                {
System/KnapSack/Logic/ItemOperateUtility.cs
@@ -21,35 +21,33 @@
        #region 装备
        public string operateItemGuid { get; private set; }
        public void PutOnItem(string guid)
        {
            this.operateItemGuid = guid;
            var selectedItem = packModel.GetItemByGuid(guid);
            if (selectedItem == null)
            var item = packModel.GetItemByGuid(guid);
            if (item == null)
            {
                return;
            }
            var itemId = selectedItem.itemId;
            if (!ItemLogicUtility.Instance.IsJobCompatibleItem(selectedItem.itemId))
            var itemId = item.itemId;
            if (!ItemLogicUtility.Instance.IsJobCompatibleItem(item.itemId))
            {
                SysNotifyMgr.Instance.ShowTip("GeRen_lhs_31379");
                return;
            }
            var putOnLimits = selectedItem.GetUseData((int)ItemUseDataKey.cancelUseLimit);
            var putOnLimits = item.GetUseData((int)ItemUseDataKey.cancelUseLimit);
            if (putOnLimits != null && putOnLimits[0] == 1)
            {
                PutOnEquip(selectedItem.equipPlace, selectedItem.guid);
                PutOnEquip(item.equipPlace, item.guid);
                return;
            }
            var wearable = IsWearable(itemId);
            if (wearable)
            {
                PutOnEquip(selectedItem.equipPlace, selectedItem.guid);
                PutOnEquip(item.equipPlace, item.guid);
            }
        }
@@ -144,29 +142,11 @@
        /// </summary>
        private void EquipAttrShift(int equipPlace, ItemModel item)
        {
            var packType = GeneralDefine.GetPackTypeByItemType(item.config.Type);
            var putOnModel = packModel.GetItemByIndex(PackType.Equip, equipPlace);
            if (putOnModel == null)
            {
                return;
            }
            //var equipStrengthDic = strengthModel._EqInfo;
            //var isPrompt = strengthModel.TheRatingPrompt(item.itemId);
            //if (isPrompt && !PlayerPrefs.HasKey(PackModel.StrengthAttrShift_RecordKey))
            //{
            //    LocalSave.SetBool(PackModel.StrengthAttrShift_RecordKey, true);
            //    ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("SwitchEquip_Strengthen"));
            //}
            //if (equipStrengthDic.ContainsKey(equipPlace))
            //{
            //    if (equipStrengthDic[equipPlace].EquipPartStarLV >= 1)
            //    {
            //        SysNotifyMgr.Instance.ShowTip("SwitchEquip_Strengthen2");
            //    }
            //}
            int[] stones = null;
            equipGemModel.TryGetEquipGems(equipPlace, out stones);