Пример #1
0
 public static void Copy(this HandBookItemDataModel dataModel, HandBookItemDataModel other)
 {
     dataModel.BookId                 = other.BookId;
     dataModel.BookSortId             = other.BookSortId;
     dataModel.ItemId                 = other.ItemId;
     dataModel.BookCount              = other.BookCount;
     dataModel.BookMaxCapacity        = other.BookMaxCapacity;
     dataModel.BookPieceBagIndex      = other.BookPieceBagIndex;
     dataModel.BookPieceCount         = other.BookPieceCount;
     dataModel.BookUpgradeRequestCast = other.BookUpgradeRequestCast;
     dataModel.BountyActive           = other.BountyActive;
     dataModel.BountyBookAttr         = other.BountyBookAttr;
     dataModel.BountyMoney            = other.BountyMoney;
     dataModel.MonsterLevel           = other.MonsterLevel;
     dataModel.MonsterName            = other.MonsterName;
     dataModel.UpGradeRequestBookId   = other.UpGradeRequestBookId;
     dataModel.UpGradeRequestCount    = other.UpGradeRequestCount;
     dataModel.Composeable            = other.Composeable;
     dataModel.ComposeButtonShow      = other.ComposeButtonShow;
     dataModel.BookComposeTableId     = other.BookComposeTableId;
     dataModel.locationName           = other.locationName;
     for (var i = 0; i < dataModel.TrackParam.Count; i++)
     {
         dataModel.TrackParam[i] = other.TrackParam[i];
     }
     dataModel.TrackType = other.TrackType;
 }
Пример #2
0
    public IEnumerator BountyBookActive(HandBookItemDataModel dataModel)
    {
        using (new BlockingLayerHelper(0))
        {
            var msg = NetManager.Instance.ActivateBook(dataModel.BookId, -1, -1);
            yield return(msg.SendAndWaitUntilDone());

            if (msg.State == MessageState.Reply)
            {
                if (msg.ErrorCode == (int)ErrorCodes.OK)
                {
                    PlayerDataManager.Instance.SetBountyBookEnable(dataModel.BookId);
                    dataModel.BookCount--;
                    dataModel.BountyActive = 1;
                    RefreshNotice();
                    EventDispatcher.Instance.DispatchEvent(new ShowUIHintBoard(200011));
                    PlayerAttr.Instance.SetAttrChange(PlayerAttr.PlayerAttrChange.HandBook);

                    PlatformHelper.UMEvent("HandBook", "Active", dataModel.BookId);
                }
                else
                {
                    UIManager.Instance.ShowNetError(msg.ErrorCode);
                }
            }
        }
    }
Пример #3
0
        public void OnCellClick()
        {
            HandBookItemDataModel data = ItemLogic.Item as HandBookItemDataModel;

            if (data != null)
            {
                EventDispatcher.Instance.DispatchEvent(new UIEvent_OnClickHasCell(data.BookId));
            }
        }
Пример #4
0
    public HandBookItemDataModel CreateOneBookFromTable(HandBookRecord table)
    {
        var handbookitem = new HandBookItemDataModel();

        handbookitem.BookId          = table.Id;
        handbookitem.BookSortId      = table.ListSort;
        handbookitem.ItemId          = table.Id;
        handbookitem.BookPieceCount  = 0;
        handbookitem.BookMaxCapacity = Table.GetItemBase(table.Id).MaxCount;
        if (table.NpcId != -1)
        {
            handbookitem.MonsterName  = Table.GetNpcBase(table.NpcId).Name;
            handbookitem.MonsterLevel = Table.GetNpcBase(table.NpcId).Level;
        }
        handbookitem.TrackType      = table.TrackType;
        handbookitem.locationName   = table.TrackString;
        handbookitem.TrackParam[0]  = table.TrackParam[0];
        handbookitem.TrackParam[1]  = table.TrackParam[1];
        handbookitem.TrackParam[2]  = table.TrackParam[2];
        handbookitem.BountyBookAttr = string.Format("{0}: +{1}", ExpressionHelper.AttrName[table.AttrId],
                                                    table.AttrValue);
        handbookitem.BountyMoney = table.Money;
        //-----bountybook data start------------------------------
        var        key   = table.RewardGroupId;
        var        value = table.Id;
        List <int> output;

        if (bountyDictionary.TryGetValue(key, out output))
        {
            output.Add(value);
        }
        else
        {
            output = new List <int>();
            output.Add(value);
            bountyDictionary.Add(key, output);
        }
        //-----bountybook data end------------------------------

        //初始化合成属性
        ItemComposeRecord ComposeTable;
        var bExist = mComposeTableDic.TryGetValue(handbookitem.BookId, out ComposeTable);

        if (bExist)
        {
            handbookitem.BookUpgradeRequestCast = ComposeTable.NeedValue;
            handbookitem.UpGradeRequestBookId   = ComposeTable.NeedId[0];
            handbookitem.UpGradeRequestCount    = ComposeTable.NeedCount[0];
            handbookitem.BookComposeTableId     = ComposeTable.Id;
        }
        return(handbookitem);
    }
Пример #5
0
        public void OnFightClick()
        {
            var listitem = gameObject.GetComponent <ListItemLogic>();

            if (listitem != null)
            {
                HandBookItemDataModel data = (listitem.Item as HandBookItemDataModel);
                if (data != null)
                {
                    var e = new UIEvent_HandBookFrame_OnFightClick(data.BookId);
                    EventDispatcher.Instance.DispatchEvent(e);
                }
            }
        }
Пример #6
0
    public IEnumerator ActivateBook(HandBookItemDataModel dataModel, int id, int groupId, int bitIndex)
    {
        using (new BlockingLayerHelper(0))
        {
            var msg = NetManager.Instance.ActivateBook(id, groupId, bitIndex);
            yield return(msg.SendAndWaitUntilDone());


            if (msg.State == MessageState.Reply)
            {
                if (msg.ErrorCode == (int)ErrorCodes.OK)
                {
                    //先修改playerdata里存储的dictionary
                    PlayerDataManager.Instance.SetBookGroupEnable(groupId, bitIndex);

                    var groupDataModel = mHandBookDataModel.SelectedGropBooks;
                    dataModel.BookCount--;
                    // groupDataModel.BookEnable[bitIndex] = 1;
                    groupDataModel.GropBook[bitIndex].BookEnable = 1;
                    groupDataModel.GropCount++;
                    if (groupDataModel.GropCount >= groupDataModel.GropMaxCount)
                    {
                        groupDataModel.GropEnable = 1;
                    }
                    RefreshNotice();
                    var ee = new ShowUIHintBoard(200011);
                    EventDispatcher.Instance.DispatchEvent(ee);
                    PlayerAttr.Instance.SetAttrChange(PlayerAttr.PlayerAttrChange.HandBook);

                    PlatformHelper.UMEvent("HandBook", "ActiveInGroup", id);
                }
                else
                {
                    UIManager.Instance.ShowNetError(msg.ErrorCode);
                }
            }
        }
    }