Esempio n. 1
0
    public void MoveNengLiangQuanToEnd(DaoJuTypeIndex val)
    {
        if (IsMoveToEnd)
        {
            RecordDJType = val;
            return;
        }
        IsMoveToEnd = true;

        if (EndTran == null)
        {
            if (GlobalData.GetInstance().gameMode == GameMode.SoloMode)
            {
                EndTran = WaterwheelPlayerCtrl.GetInstance().HuanYingFuObj.transform;
            }
            else
            {
                EndTran = WaterwheelPlayerNetCtrl.GetInstance().GetHuanYingFuTeXiaoTran();
            }
            StartTran = Camera.main.transform;
        }
        TimeNengLiangQuan          = Time.realtimeSinceStartup;
        NengLiangQuanTran.position = StartTran.position;
        gameObject.SetActive(true);
        StartCoroutine(UpdateNengLiangQuanPosToEnd(val));
    }
Esempio n. 2
0
    IEnumerator UpdateNengLiangQuanPosToStart(DaoJuTypeIndex val)
    {
        while (true)
        {
            if (IsMoveToEnd)
            {
                IsMoveToStart = false;
                break;
            }

            Vector3 posEnd   = StartTran.position;
            Vector3 posStart = NengLiangQuanTran.position;
            if (Vector3.Distance(posEnd, posStart) < 0.5f)
            {
                IsMoveToStart = false;
                gameObject.SetActive(false);
                break;
            }

            Vector3 forwardVal = posEnd - posStart;
            forwardVal = forwardVal.normalized;
            Vector3 pos = forwardVal * MvSpeed + posStart;
            NengLiangQuanTran.position = pos;
            yield return(new WaitForSeconds(0.03f));
        }
    }
Esempio n. 3
0
    IEnumerator UpdateNengLiangQuanPosToEnd(DaoJuTypeIndex val)
    {
        while (true)
        {
            Vector3 posEnd   = EndTran.position;
            Vector3 posStart = NengLiangQuanTran.position;
            if (Vector3.Distance(posEnd, posStart) < 0.5f)
            {
                IsMoveToEnd = false;
                gameObject.SetActive(false);

                if (GlobalData.GetInstance().gameMode == GameMode.SoloMode)
                {
                    switch (val)
                    {
                    case DaoJuTypeIndex.shenXingState:
                        WaterwheelPlayerCtrl.GetInstance().ActiveShenXingState();                         //Player ShenXingState
                        NengLiangTiaoCtrl.GetInStance().StartPlayNengLiangTiao();
                        if (RecordDJType == DaoJuTypeIndex.huanYingFu)
                        {
                            WaterwheelPlayerCtrl.GetInstance().ActiveHuanYingFuState();
                        }
                        break;

                    case DaoJuTypeIndex.huanYingFu:
                        WaterwheelPlayerCtrl.GetInstance().ActiveHuanYingFuState();
                        if (RecordDJType == DaoJuTypeIndex.shenXingState)
                        {
                            WaterwheelPlayerCtrl.GetInstance().ActiveShenXingState();                             //Player ShenXingState
                            NengLiangTiaoCtrl.GetInStance().StartPlayNengLiangTiao();
                        }
                        break;
                    }
                }
                else
                {
                    switch (val)
                    {
                    case DaoJuTypeIndex.huanYingFu:
                        WaterwheelPlayerNetCtrl.GetInstance().ActiveHuanYingFuState();
                        break;
                    }
                }
                RecordDJType = DaoJuTypeIndex.NULL;
                break;
            }

            Vector3 forwardVal = posEnd - posStart;
            forwardVal = forwardVal.normalized;
            Vector3 pos = forwardVal * MvSpeed + posStart;
            NengLiangQuanTran.position = pos;
            yield return(new WaitForSeconds(0.03f));
        }
    }
Esempio n. 4
0
    public void MoveNengLiangQuanToStart(DaoJuTypeIndex val)
    {
        if (IsMoveToStart)
        {
            return;
        }
        IsMoveToStart = true;

        TimeNengLiangQuan          = Time.realtimeSinceStartup;
        NengLiangQuanTran.position = EndTran.position;
        gameObject.SetActive(true);
        StartCoroutine(UpdateNengLiangQuanPosToStart(val));
    }
Esempio n. 5
0
    // Update is called once per frame

    /*void Update()
     * {
     *      if (Input.GetKeyUp(KeyCode.Keypad1)) {
     *              SpawnHitDaoJuSprite(DaoJuTypeIndex.huanWeiFu);
     *      }
     *
     *      if (Input.GetKeyUp(KeyCode.Keypad2)) {
     *              SpawnHitDaoJuSprite(DaoJuTypeIndex.huanYingFu);
     *      }
     *
     *      if (Input.GetKeyUp(KeyCode.Keypad3)) {
     *              SpawnHitDaoJuSprite(DaoJuTypeIndex.juLiFu);
     *      }
     *
     *      if (Input.GetKeyUp(KeyCode.Keypad4)) {
     *              SpawnHitDaoJuSprite(DaoJuTypeIndex.dianDaoFu);
     *      }
     *
     *      if (Input.GetKeyUp(KeyCode.Keypad5)) {
     *              SpawnHitDaoJuSprite(DaoJuTypeIndex.dingShenFu);
     *      }
     * }*/

    public void SpawnHitDaoJuSprite(DaoJuTypeIndex val)
    {
        if (!StartBtCtrl.GetInstanceP1().CheckIsActivePlayer() &&
            !StartBtCtrl.GetInstanceP2().CheckIsActivePlayer())
        {
            return;
        }

        string spriteNameVal = "x" + (int)val;

        if (StartBtCtrl.GetInstanceP1().CheckIsActivePlayer())
        {
            GameObject    objP1      = null;
            TweenPosition tweenPosP1 = null;
            objP1 = (GameObject)Instantiate(HitDaoJuCtrl_1);
            objP1.GetComponent <UISprite>().spriteName = spriteNameVal;

            tweenPosP1 = objP1.GetComponent <TweenPosition>();
            EventDelegate.Add(tweenPosP1.onFinished, delegate {
                ActivePlayerDaoJu(objP1, val, 1);
            });
            objP1.transform.parent = transform;
            objP1.SetActive(true);
        }

        if (StartBtCtrl.GetInstanceP2().CheckIsActivePlayer())
        {
            GameObject    objP2      = null;
            TweenPosition tweenPosP2 = null;
            objP2 = (GameObject)Instantiate(HitDaoJuCtrl_2);
            objP2.GetComponent <UISprite>().spriteName = spriteNameVal;

            tweenPosP2 = objP2.GetComponent <TweenPosition>();
            EventDelegate.Add(tweenPosP2.onFinished, delegate {
                ActivePlayerDaoJu(objP2, val, 2);
            });
            objP2.transform.parent = transform;
            objP2.SetActive(true);
        }
    }
Esempio n. 6
0
    void ActivePlayerDaoJu(GameObject spriteObj, DaoJuTypeIndex val, int key)
    {
        if (key == 1)
        {
            if (StartBtCtrl.GetInstanceP1().CheckIsActivePlayer())
            {
                ActiveDaJuCtrl.GetInstanceP1().ActiveDaoJuType((int)val);
                HeadCtrlPlayer.GetInstanceP1().InitChangeHeadUI();
            }
        }
        else if (key == 2)
        {
            if (StartBtCtrl.GetInstanceP2().CheckIsActivePlayer())
            {
                ActiveDaJuCtrl.GetInstanceP2().ActiveDaoJuType((int)val);
                HeadCtrlPlayer.GetInstanceP2().InitChangeHeadUI();
            }
        }

        //Debug.Log("ActivePlayerDaoJu -> key = " + key);
        Destroy(spriteObj);
    }