Esempio n. 1
0
    // 复活答复
    private void onReliveRespond(EventBase evt)
    {
        StageReliveEvent e = evt as StageReliveEvent;

        if (e == null)
        {
            return;
        }

        Player player = PlayerController.Instance.GetControlObj() as Player;

        if (player == null)
        {
            return;
        }

        mReliveTimes++;
        if (e.mReliveType == ReliveType.ReliveType_Normal)
        {
            player.Relive((int)(player.GetMaxHP() * GameConfig.NormalReliveRate), (int)(player.GetMaxMana() * GameConfig.NormalReliveRate));
        }
        else if (e.mReliveType == ReliveType.ReliveType_Extra)
        {
            player.Relive((int)(player.GetMaxHP() * GameConfig.ExtraReliveRate), (int)(player.GetMaxMana() * GameConfig.ExtraReliveRate));
        }
    }
Esempio n. 2
0
    // 请求复活
    private void onReliveRequest(EventBase evt)
    {
        StageReliveEvent e = evt as StageReliveEvent;

        if (e == null)
        {
            return;
        }

        if (e.mReliveType == ReliveType.ReliveType_Normal)
        {
            if (!ConditionManager.Instance.CheckCondition(mRes.mReliveCostId0))
            {
                PopTipManager.Instance.AddNewTip(StringHelper.GetErrorString(ERROR_CODE.ERR_SCENE_RELIVE_FAILED_NOCOST, FontColor.Red));
                return;
            }
        }
        else if (e.mReliveType == ReliveType.ReliveType_Extra)
        {
            if (!ConditionManager.Instance.CheckCondition(mRes.mReliveCostId1))
            {
                PopTipManager.Instance.AddNewTip(StringHelper.GetErrorString(ERROR_CODE.ERR_SCENE_RELIVE_FAILED_NOCOST, FontColor.Red));
                return;
            }
        }

        mModule.WaitRelive = true;

        WindowManager.Instance.CloseUI("stagerelive");

        ReliveActionParam param = new ReliveActionParam();

        param.scenetype  = SceneType.SceneType_Stage;
        param.sceneid    = mRes.resID;
        param.relivetype = (int)e.mReliveType;
        Net.Instance.DoAction((int)Message.MESSAGE_ID.ID_MSG_SCENE_RELIVE, param);
    }