Exemplo n.º 1
0
    void CreateBearWith(int id, Transform t)
    {
        WGBearParam bp = dataCtrl.GetBearParam(id);

//		return;
        if (bp != null)
        {
            _curBearNum++;
            //int a = 5001;
            GameObject bearobj = _ShareObjManager.BCGameObjFactory(id, t.position, t.rotation.eulerAngles, _BearScale);

            bearobj.transform.parent        = t.transform;
            bearobj.transform.localPosition = Vector3.zero;

            GameObject hp   = Instantiate(HP, t.transform.position, t.transform.rotation) as GameObject;
            WGBear     bear = bearobj.GetComponent <WGBear>();


            bear.ID                       = id;
            bear.Blood                    = bp.hp;
            hp.transform.parent           = bearobj.transform;
            hp.transform.localPosition    = new Vector3(0, -0.5f, 3.5f);
            hp.transform.localEulerAngles = new Vector3(0, -180, 0);

            bear.AddHP(hp);

            szLiveBearID.Add(id);
            if (id == WGDefine.BossID)
            {
                _bearBoss = bear;
            }
        }
    }
Exemplo n.º 2
0
    public void ShowMonsterWithID(int id, bool isGray = false)
    {
        if (goBear != null)
        {
            goBear.SetActive(false);
            dicCacheBears.Add(mCurBearID, goBear);
        }


        GameObject go = null;

        if (dicCacheBears.TryGetValue(id, out go))
        {
            go.SetActive(true);
            dicCacheBears.Remove(id);
        }
        else
        {
            BCObj mObj = WGDataController.Instance.GetBCObj(id);

            go = Instantiate(mObj.goRes) as GameObject;
            go.transform.parent           = goBearParent.transform;
            go.transform.localPosition    = Vector3.zero;
            go.transform.localEulerAngles = Vector3.zero;
            go.transform.localScale       = Vector3.one;
            if (mObj.ID == WGDefine.BossID)
            {
                go.transform.localScale = Vector3.one * 0.6832443f;
            }
            else if (mObj.ID == WGDefine.PayBear1 || mObj.ID == WGDefine.PayBear2)
            {
                go.transform.localScale = Vector3.one * 0.8f;
            }
            else
            {
                go.transform.localScale = Vector3.one;
            }
            go.transform.localEulerAngles = Vector3.zero;
        }
        WGBear bear = go.GetComponent <WGBear>();

        if (bear != null)
        {
            bear.IsGray(isGray);
        }


        goBear     = go;
        mCurBearID = id;
    }
Exemplo n.º 3
0
    /// <summary>
    /// boss 是否消失成功,
    /// </summary>
    /// <returns><c>true</c>, if disappear was bossed, <c>false</c> otherwise.</returns>
    public bool BossDisappear()
    {
        if (szLiveBearID.Contains(WGDefine.BossID) && _bearBoss != null)
        {
            szLiveBearID.Remove(WGDefine.BossID);
            _bearBoss.Disappear();
            BearDead(_bearBoss.transform.parent);

            _bearBoss = null;

            return(true);
        }
        return(false);
    }
Exemplo n.º 4
0
    public void WhenBearKilled(int id, Transform tran, bool bMiao = false)
    {
        BCSoundPlayer.Play(MusicEnum.hitBear);



        WGAchievementManager.Self.processAchievement(id, DTAchievementType.KILL_ALL);
        WGAchievementManager.Self.processAchievement(id, DTAchievementType.KILL_ONE);
        WGBearParam mBear = dataCtrl.GetBearParam(id);
        BCObj       mOjb  = dataCtrl.GetBCObj(id);

        _ShareWorld.PlayGetExp(mOjb.Exp);


        if (WGHelpManager.Self != null)
        {
            if (WGHelpManager.Self.enabled)
            {
                if (!WGHelpManager.Self.StatesIsEnd(EMHelpStates.Kill_Energy))
                {
                    WGHelpManager.Self.ShowHelpView(EMHelpStates.Kill_Energy);
                }
                else if (!WGHelpManager.Self.StatesIsEnd(EMHelpStates.Kill_Tiger) && mBear.tiger == 1)
                {
                    WGHelpManager.Self.ShowHelpView(EMHelpStates.Kill_Tiger);
                }
                else if (!WGHelpManager.Self.StatesIsEnd(EMHelpStates.Use_Item))
                {
                    WGHelpManager.Self.ShowHelpView(EMHelpStates.Use_Item);
                }
                else if (!WGHelpManager.Self.StatesIsEnd(EMHelpStates.RegetCoin))
                {
                    WGHelpManager.Self.ShowHelpView(EMHelpStates.RegetCoin);
                }
            }
        }


        BearDead(tran.parent);
        szLiveBearID.Remove(id);
        _curBearNum--;
        if (id == WGDefine.BossID)
        {
            _bearBoss = null;
        }
        if (!bHaiXiaoEffect)
        {
            _dataPlayer.mEnergy += mBear.energy;
        }
        if (_dataPlayer.mEnergy >= _EnergyFull)
        {
            if (!_bShowPowerTip)
            {
                if (_dataPlayer.a1 == 0)
                {
                    if (YeHuoSDK.bShowPoweGift)
                    {
                        _bShowPowerTip = true;
                        D04PowerTipView tip = D04PowerTipView.CreatePowerPayView();
                        Time.timeScale          = 0;
                        tip.alertViewBehavriour = (ab, view) => {
                            if (ab == MDAlertBehaviour.CLICK_OK)
                            {
                                Destroy(view.gameObject);
                                showBuyPowerView();
                            }
                        };
                    }
                    else
                    {
                        _dataPlayer.mEnergy -= _EnergyFull;
                        bHaiXiaoEffect       = true;

                        //DonNotNeedCoin(10+2);
//						WGTsunamiView tv = WGTsunamiView.CreateTsunamiView();
//						tv.alertViewBehavriour =(ab,view)=>{
//							switch(ab)
//							{
//							case MDAlertBehaviour.DID_HIDDEN:
//								Destroy(view.gameObject);
//								break;
//							}
//						};
//						SDK.AddChild(tv.gameObject,_ShareWorld.go2DUIBottom);
//						tv.showTsunamiView(10f);

                        csThrow.showTsunamiEffect(true);
                        pgHaiXiao.value = 1;
                        pgHaiXiaoValue  = 1;
                        InvokeRepeating("HaiXiaoEffect", 2f, 10f / 100);
                    }
                }
                else if (_dataPlayer.a1 == 1)
                {
                    _dataPlayer.mEnergy -= _EnergyFull;
                    bHaiXiaoEffect       = true;

                    DonNotNeedCoin(10 + 2);
                    WGTsunamiView tv = WGTsunamiView.CreateTsunamiView();
                    tv.alertViewBehavriour = (ab, view) => {
                        switch (ab)
                        {
                        case MDAlertBehaviour.DID_HIDDEN:
                            Destroy(view.gameObject);
                            break;
                        }
                    };
                    SDK.AddChild(tv.gameObject, _ShareWorld.go2DUIBottom);
                    tv.showTsunamiView(10f);

                    csThrow.showTsunamiEffect(true);
                    pgHaiXiao.value = 1;
                    pgHaiXiaoValue  = 1;
                    InvokeRepeating("HaiXiaoEffect", 2f, 10f / 100);
                }
            }
        }

        if (!bHaiXiaoEffect)
        {
            pgHaiXiao.value = _dataPlayer.mEnergy * 1.0f / _EnergyFull;
        }



//		//WG.SLog("WhenBearKilled======="+SDK.Serialize(mBear.death_reward));
        for (int i = 0, max = mBear.death_reward.Count; i < max; i++)
        {
            _ShareWorld.AddReward(mBear.death_reward[i]);
        }
        if (bMiao && mBear.additional != null && mBear.additional.Count > 0)
        {
            for (int i = 0, max = mBear.additional.Count; i < max; i++)
            {
                _ShareWorld.AddReward(mBear.additional[i]);
            }
        }

        if (mBear.tiger == 1)
        {
            WGGameTiger.Instance.StartTiger();
        }
    }