Beispiel #1
0
    int GetNextBearID(WGBearPanel bp)
    {
//		//WG.SLog("++"+_ShareWorld.bBossResurrection +"===level="+dataCtrl.GetBearParam(WGDefine.BossID).unlock);

//		//WG.SLog("GetNextBearID==="+_curBearNum+"===="+_MaxNum);

        if (_curBearNum >= _MaxNum)
        {
            BearDead(bp.transform);
            return(-1);
        }

        if ((bp.right != null && szBigBear.Contains(bp.right.id)) || (bp.left != null && szBigBear.Contains(bp.left.id)))
        {
            if (!_bDonotNeedCoin && bp.index % 2 == 0 && Random.Range(0, 100) > 50)
            {
                BearDead(bp.transform);
                return(-1);
            }

            return(dataCtrl.GetRandomBearID());
        }


        if (_ShareWorld.bBossResurrection && _dataPlayer.Level >= dataCtrl.GetBearParam(WGDefine.BossID).unlock &&
            _bearBoss == null && !szLiveBearID.Contains(WGDefine.BossID))
        {
            _ShareWorld.bBossResurrection = false;

            BCSoundPlayer.Play(MusicEnum.bossLaugh);


            for (int i = 0; i < 5; i++)
            {
                StartCoroutine(showBoosTips(i * 0.5f));
            }

            return(WGDefine.BossID);
        }


        if (_dataPlayer.szPayObjID.Contains(WGDefine.PayBear1) &&
            !szLiveBearID.Contains(WGDefine.PayBear1))
        {
            return(WGDefine.PayBear1);
        }
        if (_dataPlayer.szPayObjID.Contains(WGDefine.PayBear2) &&
            !szLiveBearID.Contains(WGDefine.PayBear2))
        {
            return(WGDefine.PayBear2);
        }

        if (!_bDonotNeedCoin && bp.index % 2 == 0 && Random.Range(0, 100) > 50)
        {
            BearDead(bp.transform);
            return(-1);
        }

        return(dataCtrl.GetRandomBearID());
    }