Пример #1
0
    public bool RisingStar(DefenceUIParam uiparam)
    {
        PlayerDataModule module = ModuleManager.Instance.FindModule <PlayerDataModule>();

        if (null == module)
        {
            return(false);
        }

        DefenceObj       defencedata = module.GetItemByIDAndPos(uiparam.itemid, uiparam.packpos, uiparam.packtype) as DefenceObj;
        DefenceTableItem defenceItem = DataManager.DefenceTable[uiparam.itemid] as DefenceTableItem;

        if (null == defencedata || null == defenceItem)
        {
            return(false);
        }


        //判断装备是否可以升星
        int starslv = defencedata.GetStarsLv();

        if (starslv >= defenceItem.starsLevelMax)
        {
            //弹窗.当前装备星阶已达到最高等级,请提升装备品质
            PopTipManager.Instance.AddNewTip(StringHelper.GetString("rising_stars_max"));
            return(false);
        }

        DefenceStarsItem    starsitem    = DataManager.DefenceStarsTable[starslv + 1] as DefenceStarsItem;
        DefenceStarsProItem starsproitem = DataManager.DefenceStarsProTable[defenceItem.starsSerialNumber + starslv] as DefenceStarsProItem;

        //判断升星石是否足够
        if (module.GetItemNumByID(starsitem.starsstoneId, PackageType.Pack_Bag) < starsitem.cstarsstone * starsproitem.scale)
        {
            //升星石不足,弹窗:提示玩家直接购买
            //TODO
            PopTipManager.Instance.AddNewTip(StringHelper.GetString("rising_stones_need"));
            return(false);
        }

        RisingStarsActionParam param = new RisingStarsActionParam();

        param.DefenceId = uiparam.itemid;
        param.PackType  = (int)uiparam.packtype;
        param.pos       = uiparam.packpos;
        param.riseten   = false;

        Net.Instance.DoAction((int)Message.MESSAGE_ID.ID_MSG_DEFENCE_RISING_STAR, param);

        return(true);
    }
Пример #2
0
    protected override void OnRequest(request_rising_stars request, object userdata)
    {
        RisingStarsActionParam param = userdata as RisingStarsActionParam;

        if (param == null)
        {
            return;
        }

        request.defenceId = param.DefenceId;
        request.packtype  = param.PackType;
        request.pos       = param.pos;
        if (param.riseten)
        {
            request.isstarsten = param.riseten;
        }
    }