Exemplo n.º 1
0
    void RefreshTexture()
    {
        RideData data = m_rideMgr.GetRideDataById(m_rideMgr.Auto_Ride);

        if (data == null)
        {
            m__selecthorse.mainTexture = null;
            m_label_Ride_Name2.text    = string.Empty;
        }
        else
        {
            m_label_Ride_Name2.text = data.name;
            UIManager.GetTextureAsyn(data.icon, ref m_knightTextureSeed, () =>
            {
                if (null != m__selecthorse)
                {
                    m__selecthorse.mainTexture = null;
                }
            }, m__selecthorse, false);

            UIManager.GetQualityAtlasAsyn(data.quality, ref m_knightQualityIcon, () =>
            {
                if (null != m_sprite_biankuang)
                {
                    m_sprite_biankuang.atlas = null;
                }
            }, m_sprite_biankuang, false);
        }
    }
Exemplo n.º 2
0
        /// <summary>
        /// 新增騎乘資料
        /// </summary>
        /// <param name="rideDto">rideDto</param>
        /// <returns>string</returns>
        public async Task <string> AddRideData(RideDto rideDto)
        {
            try
            {
                string verifyRideDataResult = this.VerifyRideData(rideDto);
                if (!string.IsNullOrEmpty(verifyRideDataResult))
                {
                    return(verifyRideDataResult);
                }

                RideData rideData   = this.mapper.Map <RideData>(rideDto);
                DateTime createDate = DateTime.Now;
                rideData.CreateDate = createDate;
                rideData.RideID     = Utility.GetSerialID(createDate);
                bool isSuccess = await this.rideRepository.CreateRideData(rideData);

                if (!isSuccess)
                {
                    return("新增騎乘資料失敗.");
                }

                return(string.Empty);
            }
            catch (Exception ex)
            {
                this.logger.LogError($"Add Ride Data Error >>> Data:{JsonConvert.SerializeObject(rideDto)}\n{ex}");
                return("新增騎乘資料發生錯誤.");
            }
        }
Exemplo n.º 3
0
    void RefreshProptyUI(RideData ridedata)
    {
        if (m_currRideData != null && ridedata.id == m_currRideData.id)
        {
            for (int i = 0; i < m_lstRideData.Count; i++)
            {
                if (m_lstRideData[i].id == ridedata.id)
                {
                    m_lstRideData[i] = ridedata;
                    m_currRideData   = ridedata;
                    break;
                }
            }
            if (m_Content == TabMode.MaJiu)
            {
                InitPropetyUI(m_currRideData);
            }
            //else if(m_Content == TabMode.Page_技能)
            //{
            //    InitSkillUI(m_currRideData);
            //}
            if (m_currUIRideGrid != null)
            {
                m_currUIRideGrid.SetGridData(m_currRideData);
            }

            //刷新吃经验面板
            if (DataManager.Manager <UIPanelManager>().IsShowPanel(PanelID.UseItemCommonPanel))
            {
                DataManager.Manager <UIPanelManager>().SendMsg(PanelID.UseItemCommonPanel, UIMsgID.eUseItemRefresh, UseItemCommonPanel.UseItemEnum.RideExp);
            }
        }
    }
Exemplo n.º 4
0
 public void InitRidePopup(RideData data, UserProductData inventoryData)
 {
     titleText.GetComponent <LocalizationComponent>().SetTheLocalizedText(data.name);
     descriptionText.GetComponent <LocalizationComponent>().SetTheLocalizedText(data.description);
     amountText.text = inventoryData.count.ToString();
     icon.sprite     = data.icon;
 }
Exemplo n.º 5
0
        // 更新 RideData 資料
        private bool UpdateRideData()
        {
            bool ret = false;

            try
            {
                List <RideData> rideList = db.GetSql().Queryable <RideData>().With(SqlSugar.SqlWith.RowLock).ToList();

                SaveLog($"[Info] Update Ride Data , Total Count: {rideList.Count}");

                for (int idx = 0; idx < rideList.Count; idx++)
                {
                    RideData info = rideList[idx];

                    redis.GetRedis((int)Connect.RedisDB.emRedisDB_Ride).HashSet($"RideData_" + info.MemberID, hashTransfer.TransToHashEntryArray(info));

                    SaveLog($"[Info] Update Ride Data, User: {info.MemberID}");
                }

                ret = true;
            }
            catch (Exception ex)
            {
                SaveLog($"[Error] Update Ride Data Catch Error, Msg:{ex.Message}");
            }

            return(ret);
        }
Exemplo n.º 6
0
 public void OnStartUse()
 {
     m_ridedata   = DataManager.Manager <RideManager>().GetRideDataById(m_parent.UserId);
     m_nCurrLevel = m_ridedata.level;
     m_nCurrExp   = m_ridedata.exp;
     MaxSendMsg   = false;
 }
Exemplo n.º 7
0
    void SetRightNewLevel()
    {
        if (m_LeftRideData != null && m_RightRideData != null)
        {
            TransExpType ttype = TransExpType.None;
            if (m_toggle_ptchuancheng.value)
            {
                ttype = TransExpType.Normal;
            }
            else if (m_toggle_wmchuancheng.value)
            {
                ttype = TransExpType.Perfect;
            }

            int level = CaculateLevel(m_LeftRideData, m_RightRideData, ttype);
            m_label_New_level_After.text  = level.ToString();
            m_label_New_level_After.color = level == m_RightRideData.level ? Color.white : Color.green;
            m_label_New_speed_After.text  = RideData.GetSpeedById_Level(m_RightRideData.baseid, level).ToString() + "%";
            m_label_New_speed_After.color = level == m_RightRideData.level ? Color.white : Color.green;
        }
        else
        {
            m_label_New_level_After.text = "0";
            m_label_New_speed_After.text = "0";
        }
    }
Exemplo n.º 8
0
 public void OnStartUse()
 {
     m_ridedata       = DataManager.Manager <RideManager>().GetRideDataById(m_parent.UserId);
     m_nCurrReplation = m_ridedata.repletion;
     m_nMaxReplation  = (int)m_ridedata.maxRepletion;
     MaxSendMsg       = false;
 }
Exemplo n.º 9
0
 public void Init(UseItemCommonPanel parent)
 {
     m_parent     = parent;
     m_ridedata   = DataManager.Manager <RideManager>().GetRideDataById(m_parent.UserId);
     m_nCurrLevel = m_ridedata.level;
     m_nCurrExp   = m_ridedata.exp;
     MaxSendMsg   = false;
 }
Exemplo n.º 10
0
 void ResetAdoration()
 {
     m_RightRideData = null;
     m_LeftRideData  = null;
     GetNewRideUIGo().SetActive(false);
     GetOldRideUIGo().SetActive(false);
     m_widget_new_select.gameObject.SetActive(false);
     m_widget_old_select.gameObject.SetActive(true);
 }
Exemplo n.º 11
0
    int GetCost(RideData leftRideData, TransExpType type)
    {
        int cost = 0;
        int rate = GameTableManager.Instance.GetGlobalConfig <int>("PassOnCostRide", ((int)type * 10).ToString());
        int exp  = GetRideAllExp(leftRideData);

        cost = Mathf.CeilToInt(exp * 1f / rate);
        return(cost);
    }
Exemplo n.º 12
0
    void OnShowRideUI(RideData data)
    {
        m_label_level.text     = DataManager.Manager <RideManager>().GetRideQualityStr(data.quality);
        m_label_Ride_Name.text = data.name;
        m_label_speed.text     = data.GetSpeed().ToString() + "%";
        if (data.skill_ids != null)
        {
            OnShowRideSkill(data.skill_ids);
        }
        if (m_nModelId == data.modelid)
        {
            return;
        }
        if (m_RTObj_Ride != null)
        {
            m_RTObj_Ride.Release();
        }
        m_nModelId   = (int)data.modelid;
        m_RTObj_Ride = DataManager.Manager <RenderTextureManager>().CreateRenderTextureObj(m_nModelId, 512);
        if (m_RTObj_Ride == null)
        {
            return;
        }
        table.RideDataBase rideData = GameTableManager.Instance.GetTableItem <table.RideDataBase>(data.baseid);
        if (rideData == null)
        {
            return;
        }
        ModeDiplayDataBase modelDisp = GameTableManager.Instance.GetTableItem <ModeDiplayDataBase>(rideData.viewresid);

        if (modelDisp == null)
        {
            Engine.Utility.Log.Error("坐骑模型ID为{0}的模型展示数据为空", rideData.viewresid);
            return;
        }
        m_RTObj_Ride.SetDisplayCamera(modelDisp.pos512, modelDisp.rotate512, modelDisp.Modelrotation);
        m_RTObj_Ride.PlayModelAni(Client.EntityAction.Stand);
//         //设置人物旋转
//         m_RTObj_Ride.SetModelRotateY(rotateY);
//         m_RTObj_Ride.SetModelScale(data.modelScale);
//         //人物
        UIRenderTexture rt = m__rideModel.GetComponent <UIRenderTexture>();

        if (null == rt)
        {
            rt = m__rideModel.gameObject.AddComponent <UIRenderTexture>();
        }
        if (null != rt)
        {
            rt.SetDepth(0);
            rt.Initialize(m_RTObj_Ride, m_RTObj_Ride.YAngle, new Vector2(512, 512));
        }
    }
Exemplo n.º 13
0
    public void InitSkills(uint rid, List <int> skills)
    {
        RideData rdata = m_lstRides.Find(C => C.id == rid);

        if (rdata == null)
        {
            Engine.Utility.Log.Error("Can Not Found ride id:{0}", rid);
            return;
        }
        rdata.skill_ids.Clear();
        rdata.skill_ids.AddRange(skills);
    }
Exemplo n.º 14
0
        /// <summary>
        /// 建立騎乘資料
        /// </summary>
        /// <param name="rideData">rideData</param>
        /// <returns>bool</returns>
        public async Task <bool> CreateRideData(RideData rideData)
        {
            try
            {
                await this.rideDatas.InsertOneAsync(rideData);

                return(true);
            }
            catch (Exception ex)
            {
                this.logger.LogError($"Create Ride Data Error >>> Data:{JsonConvert.SerializeObject(rideData)}\n{ex}");
                return(false);
            }
        }
Exemplo n.º 15
0
    public override void SetGridData(object data)
    {
        base.SetGridData(data);
        m_data = null;

        if (data is GameCmd.PetData)
        {
            m_data = (GameCmd.PetData)data;

            if (!string.IsNullOrEmpty(m_data.name))
            {
                SetName(m_data.name);
            }

            table.PetDataBase petdataDb = GameTableManager.Instance.GetTableItem <table.PetDataBase>(m_data.base_id);
            if (petdataDb != null)
            {
                UIManager.GetTextureAsyn(petdataDb.icon, ref m_curIconAsynSeed, () =>
                {
                    if (null != m_spriteIcon)
                    {
                        m_spriteIcon.mainTexture = null;
                    }
                }, m_spriteIcon);
                string borderName = ItemDefine.GetItemFangBorderIconByItemID(petdataDb.ItemID);
                SetFrame(borderName);
                if (string.IsNullOrEmpty(m_data.name))
                {
                    SetName(petdataDb.petName);
                }
            }

            SetLevel(m_data.lv.ToString());
        }
        else if (data is  RideData)
        {
            m_rideData = (RideData)data;
            UIManager.GetTextureAsyn(m_rideData.icon, ref m_curIconAsynSeed, () =>
            {
                if (null != m_spriteIcon)
                {
                    m_spriteIcon.mainTexture = null;
                }
            }, m_spriteIcon);
            SetFrame(m_rideData.QualityBorderIcon);
            SetName(m_rideData.name);
            SetLevel(DataManager.Manager <RideManager>().GetRideQualityStr(m_rideData.quality));
        }
    }
Exemplo n.º 16
0
    //TODO - add card!

    public override void Init(BasePopupData data)
    {
        base.Init(data);
        userInventory = GameManager.Instance.GetUserInventory();
        UserProductData         inventoryData        = userInventory.productDataList.Find(x => x.guid == ((AtractionPopupData)data).guid);
        AttractionsDataAsset    attractionsDataAsset = GameManager.Instance.GetAttractionsData();
        AttractionDataAssetItem assetDataItem        = attractionsDataAsset.attractionsDataAsset.Find
                                                           (a => a.gameEventType == attractionsDataAsset.currentEvent);
        RideData rideData = assetDataItem.rideData.Find(a => a.guid == ((AtractionPopupData)data).guid);

        if (rideData != null)
        {
            InitRidePopup(rideData, inventoryData);
        }
    }
Exemplo n.º 17
0
    int GetRideAllExp(RideData ridedata)
    {
        int exp   = ridedata.exp;
        int level = ridedata.level - 1;

        while (level >= 0)
        {
            table.RideFeedData feeddata = GameTableManager.Instance.GetTableItem <table.RideFeedData>(ridedata.baseid, level);
            if (feeddata != null)
            {
                exp += (int)feeddata.upExp;
            }
            level--;
        }
        return(exp);
    }
Exemplo n.º 18
0
    private void InitRideList(AttractionsListData data, List <UserProductData> userProductDataList)
    {
        transform.GetComponent <Image>().color = Random.ColorHSV(0f, 1f, 1f, 1f, 0.5f, 1f);
        AttractionDataAssetItem assetDataItem = attractionsDataAsset.attractionsDataAsset.Find
                                                    (a => a.gameEventType == attractionsDataAsset.currentEvent);
        List <RideData> rideDataList = assetDataItem.rideData;

        foreach (UserProductData userData in userProductDataList)
        {
            GameObject    gameObj       = Instantiate(data.prefab);
            RideElementUI rideElementUI = gameObj.GetComponent <RideElementUI>();
            RideData      rideDta       = rideDataList.Find(a => a.GetGUID() == userData.guid);
            rideElementUI.Init(rideDta);

            gameObj.transform.SetParent(listParent, false);
        }
    }
Exemplo n.º 19
0
    void InitRt()
    {
        RideData data = m_rideMgr.GetRideDataById(m_rideMgr.Auto_Ride);

        if (data == null)
        {
            if (m_KnightRTObj != null)
            {
                m_KnightRTObj.Release();
            }
            return;
        }
        if (rtBaseID != data.modelid)
        {
            rtBaseID = data.modelid;
            if (m_KnightRTObj != null)
            {
                m_KnightRTObj.Release();
            }

            m_KnightRTObj = DataManager.Manager <RenderTextureManager>().CreateRenderTextureObj((int)rtBaseID, 750);
            if (m_KnightRTObj == null)
            {
                return;
            }
            ModeDiplayDataBase modelDisp = GameTableManager.Instance.GetTableItem <ModeDiplayDataBase>(rtBaseID);
            if (modelDisp == null)
            {
                Engine.Utility.Log.Error("BOSS模型ID为{0}的模型展示数据为空", rtBaseID);
                return;
            }

            m_KnightRTObj.SetDisplayCamera(modelDisp.pos750, modelDisp.rotate750, modelDisp.Modelrotation);
            m_KnightRTObj.PlayModelAni(Client.EntityAction.Stand);
            UIRenderTexture rt = m__rideModel2.GetComponent <UIRenderTexture>();
            if (null == rt)
            {
                rt = m__rideModel2.gameObject.AddComponent <UIRenderTexture>();
            }
            if (null != rt)
            {
                rt.SetDepth(0);
                rt.Initialize(m_KnightRTObj, m_KnightRTObj.YAngle, new UnityEngine.Vector2(750, 750));
            }
        }
    }
Exemplo n.º 20
0
    public override void SetGridData(object data)
    {
        base.SetGridData(data);

        if (data is RideData)
        {
            m_rideData = (RideData)data;
            if (m_rideData.id != 0)
            {
                InitWithRideData(m_rideData);
            }
            else if (m_rideData.id == 0 && m_rideData.baseid == 0)
            {
                InitWithEmptyData(m_rideData.index == DataManager.Manager <RideManager>().MaxRideNum);
            }
        }
    }
Exemplo n.º 21
0
    public void LearnSkill(uint rid, int skillid)
    {
        RideData rdata = m_lstRides.Find(C => C.id == rid);

        if (rdata == null)
        {
            Engine.Utility.Log.Error("Can Not Found ride id:{0}", rid);
            return;
        }

        rdata.skill_ids.Add(skillid);
        if (RidePropUpdateCallback != null)
        {
            RidePropUpdateCallback(rdata);
        }

        TipsManager.Instance.ShowTips(LocalTextType.Ride_Skill_jinenglingwuchenggong);
    }
Exemplo n.º 22
0
        /// <summary>
        /// 取得騎乘資料
        /// </summary>
        /// <param name="rideDto">rideDto</param>
        /// <returns>Tuple(RideDto, string)</returns>
        public async Task <Tuple <RideDto, string> > GetRideData(RideDto rideDto)
        {
            try
            {
                if (string.IsNullOrEmpty(rideDto.RideID))
                {
                    return(Tuple.Create <RideDto, string>(null, "騎乘編號無效."));
                }

                RideData rideData = await this.rideRepository.GetRideData(rideDto.RideID);

                return(Tuple.Create(this.mapper.Map <RideDto>(rideData), string.Empty));
            }
            catch (Exception ex)
            {
                this.logger.LogError($"Get Ride Data Error >>> RideID:{rideDto.RideID}\n{ex}");
                return(Tuple.Create <RideDto, string>(null, "取得騎乘資料發生錯誤."));
            }
        }
Exemplo n.º 23
0
    void InitRideList()
    {
        m_lstRideData = null;
        m_lstRideData = m_rideMgr.GetRideList();

        //多加一个用于扩展
        for (int i = m_lstRideData.Count; i < m_rideMgr.MaxRideNum + 1; i++)
        {
            RideData rideNull = new RideData()
            {
                baseid = 0, id = 0, index = (uint)i
            };
            m_lstRideData.Add(rideNull);
        }

        if (m_UIGridCreatorBase != null)
        {
            m_UIGridCreatorBase.CreateGrids(m_lstRideData.Count);
        }
    }
Exemplo n.º 24
0
    int CaculateLevel(RideData left, RideData right, TransExpType type)
    {
        int rate = GameTableManager.Instance.GetGlobalConfig <int>("PassOnRateRide", ((int)type * 10).ToString());

        int level = right.level;

        int leftRideExp = GetRideAllExp(left);

        if (leftRideExp <= 0)
        {
            return(level);
        }
        int leftExp = Mathf.CeilToInt(leftRideExp * rate * 0.01f) + right.exp;

        table.RideFeedData feeddata = GameTableManager.Instance.GetTableItem <table.RideFeedData>(right.baseid, level);
        while (feeddata != null)
        {
            leftExp -= (int)feeddata.upExp;
            if (leftExp >= 0)
            {
                level++;
                if (leftExp > 0)
                {
                    feeddata = GameTableManager.Instance.GetTableItem <table.RideFeedData>(right.baseid, level);
                    if (feeddata == null)
                    {
                        level--;
                    }
                }
                else
                {
                    feeddata = null;
                }
            }
            else
            {
                feeddata = null;
            }
        }
        return(level);
    }
Exemplo n.º 25
0
    protected override void OnShow(object data)
    {
        base.OnShow(data);
        if (data is RideData)
        {
            m_ridedata          = data as RideData;
            m_label_rarity.text = DataManager.Manager <RideManager>().GetRideQualityStr(m_ridedata.quality);
            m_label_level.text  = m_ridedata.level.ToString();

            table.RideFeedData feeddata = GameTableManager.Instance.GetTableItem <table.RideFeedData>(m_ridedata.baseid, (int)m_ridedata.level);
            if (feeddata != null)
            {
                float value = (feeddata.speed / 10000.0f) * 100;
                m_label_speed.text = value.ToString() + "%";
            }

            m_slider_satiationscorllbar.value = m_ridedata.repletion * 1.0f / m_ridedata.maxRepletion;
            m_slider_satiationscorllbar.transform.Find("Percent").GetComponent <UILabel>().text = string.Format("{0}/{1}", m_ridedata.repletion, m_ridedata.maxRepletion);
            m_label_life.text        = m_ridedata.life.ToString();
            m_sprite_icon.spriteName = m_ridedata.icon;


            if (m_ridedata.life > 0)//封印
            {
                m_widget_fengyin.gameObject.SetActive(true);
                m_widget_qiuqi.gameObject.SetActive(false);
                m_label_name.text = string.Format("封印{0}", m_ridedata.name);
                m_btn_btn_diuqi.GetComponentInChildren <UILabel>().text = "封印";

                m_label_change_life.text = (m_ridedata.life - m_ridedata.subLife).ToString();
                m_label_life.text        = m_ridedata.life.ToString();
            }
            else
            {
                m_widget_fengyin.gameObject.SetActive(false);
                m_widget_qiuqi.gameObject.SetActive(true);
                m_label_name.text = string.Format("丢弃{0}", m_ridedata.name);
                m_btn_btn_diuqi.GetComponentInChildren <UILabel>().text = "丢弃";
            }
        }
    }
Exemplo n.º 26
0
    public void RefreshRideAttr(GameCmd.RideData data)
    {
        RideData rdata = m_lstRides.Find(C => C.id == data.id);

        if (rdata == null)
        {
            Engine.Utility.Log.Error("Can Not Found ride id:{0}", data.id);
            return;
        }
        // rdata.level = data.level;
        // rdata.life = data.life;
        //rdata.repletion = data.repletion;
        //rdata.exp = data.exp;
        // rdata.fight_power = data.fight_power;
        //rdata.skill_ids = data.skill_list;

        if (RidePropUpdateCallback != null)
        {
            RidePropUpdateCallback(rdata);
        }
    }
Exemplo n.º 27
0
    public void OnUnselectRight()
    {
        m_RightRideData = null;
        GetNewRideUIGo().SetActive(false);
        m_widget_new_select.gameObject.SetActive(m_LeftRideData != null);

        if (m_UIGridCreatorBase != null)
        {
            List <UIRideGrid> lstGrids = m_UIGridCreatorBase.GetGrids <UIRideGrid>(true);
            for (int i = 0; i < lstGrids.Count; i++)
            {
                if (lstGrids[i].TransExpSelect == 2)
                {
                    lstGrids[i].TransExpSelect = -1;

                    lstGrids[i].SetAdirationState(false);
                }
            }
        }
        SetRightNewLevel();
    }
Exemplo n.º 28
0
    public override void Init(BasicAtractionData data)
    {
        inventory        = GameManager.Instance.GetUserInventory();
        gameAsset        = GameManager.Instance.GetGameData();
        _rideData        = (RideData)data;
        guid             = data.guid;
        _userProductData = inventory.GetUserProductData(guid);

        if (_userProductData == null || _userProductData.count == 0)
        {
            _rideData.state = ItemState.LOCKED; //TODO - remove hardcodation
        }
        else
        {
            _rideData.state = ItemState.IDLE; //TODO - remove hardcodation
        }
        InitUIElements();
        CheckBuyBtnState();

        fillAnimation.Init(fillImage, _rideData.fillTimeSeconds, OnAnimComplete);
    }
Exemplo n.º 29
0
    public void OnUnselectLeft()
    {
        m_LeftRideData = null;
        GetOldRideUIGo().SetActive(false);
        m_widget_old_select.gameObject.SetActive(true);
        m_widget_new_select.gameObject.SetActive(false);

        if (m_UIGridCreatorBase != null)
        {
            List <UIRideGrid> lstGrids = m_UIGridCreatorBase.GetGrids <UIRideGrid>(true);
            for (int i = 0; i < lstGrids.Count; i++)
            {
                if (lstGrids[i].TransExpSelect == 1)
                {
                    lstGrids[i].TransExpSelect = -1;
                    lstGrids[i].SetSufferingState(false);
                }
            }
        }
        m_label_WMxiaohao.text = "0";
        m_label_PTxiaohao.text = "0";

        SetRightNewLevel();
    }
Exemplo n.º 30
0
 protected override void OnHide()
 {
     base.OnHide();
     m_ridedata = null;
 }