Exemplo n.º 1
0
    public void InitData(string map_name, List <TowerInfo> tower_list)
    {
        mTowerList = tower_list;
        AudioMananger.PlayMusic("music_fuben");
        Camera.main.transform.localPosition        = new Vector3(3, 25, 3.5f); //还原镜头位置 因为镜头可以改变
        Camera.main.fieldOfView                    = 34;                       //还原镜头视野
        MapManager.mMapObj.transform.localPosition = Vector3.zero;
        BattleManager.InitData(this, MapManager.GetMapPath(map_name));
        RefreshLife();
        mObjTowerContent.SetActive(false);
        RefreshTimeDownCount(0);
        mTextWave.text  = "";
        mTwaveTime.text = "";

        for (int i = 0; i < tower_list.Count; i++)
        {
            GameObject obj = Instantiate(mBtnBaseTower);
            obj.SetActive(true);
            obj.GetComponentInChildren <Text>().text = tower_list[i].BtnName;
            obj.GetComponentInChildren <Button>().onClick.AddListener(() =>
            {
                OnButtonClick("btn_Tower", obj);
            });
            obj.transform.SetParent(mObjTowerContent.transform);
            mButtonList.Add(obj);
        }
    }
Exemplo n.º 2
0
 // Use this for initialization
 void Start()
 {
     AudioMananger.InitData();
     AudioMananger.PlayMusic("music_login");
     MapManager.mMapObj = GameObject.Find("map"); //初始化map
     UIManager.EnterUI <UI_Main>();               //载入界面
 }
 public void InitData(bool is_win)
 {
     if (is_win)
     {
         mTextResult.text = "Win!";
         AudioMananger.PlaySound("battle_success");
     }
     else
     {
         mTextResult.text = "False!";
         AudioMananger.PlaySound("battle_fail");
     }
 }
 public override void OnButtonClick(string name, GameObject obj)
 {
     switch (name)
     {
     case "btn_return":
         BattleManager.Clear();
         UIManager.ExitUI(this);
         UIManager.ExitALLUI();         //关闭所有界面
         AudioMananger.PlayMusic("music_login");
         UIManager.EnterUI <UI_Main>(); //打开开始界面
         break;
     }
 }
Exemplo n.º 5
0
    void Update()
    {
        if (mTarget == null) //如果敌人为空
        {
            if (mMoveSpeed > 0)
            {
                rang       = Vector3.Distance(transform.localPosition, mTargetPos); //子弹和敌人距离
                tutal_time = rang / mMoveSpeed;                                     //运行总时间
            }
            else
            {
                tutal_time = 0;
            }
            if (Time.deltaTime >= tutal_time) //如果每帧运行时间大于总时间
            {
                gameObject.SetActive(false);  //将子弹显示关闭
            }
            else
            {
                transform.localPosition = Vector3.Lerp(transform.localPosition, mTargetPos, Time.deltaTime / tutal_time);//从当前位置运行到敌人位置,时间:暂时不懂
            }
        }
        else//如果有敌人
        {
            mTargetPos = mTarget.transform.localPosition;
            if (mMoveSpeed > 0)
            {
                rang       = Vector3.Distance(transform.localPosition, mTargetPos);
                tutal_time = rang / mMoveSpeed;
            }
            else
            {
                tutal_time = 0;
            }

            if (Time.deltaTime >= tutal_time)   //如果每帧运行时间大于总时间,子弹到达敌人位置
            {
                AudioMananger.PlaySound("hit"); //播放击中音效
                mTarget.AddHP(-mAttack);        //敌人生命值减少
                gameObject.SetActive(false);    //将子弹隐藏
            }
            else
            {
                transform.localPosition = Vector3.Lerp(transform.localPosition, mTargetPos, Time.deltaTime / tutal_time);//同上
            }
        }
    }
Exemplo n.º 6
0
    public IEnumerator AttackButtle(Enemy enemy, Vector3 pos, float time)
    {
        AudioMananger.PlaySound("attack");
        yield return(new WaitForSeconds(time));

        Bullet bullet = BulletManager.CreatBullet(mBulletModelName);

        if (enemy != null)
        {
            bullet.InitData(enemy, BulletMoveSpd, mAttack);
        }
        else
        {
            bullet.InitData(pos, BulletMoveSpd, mAttack);
        }
        bullet.transform.localPosition = transform.localPosition;
    }
Exemplo n.º 7
0
    public override void OnButtonClick(string name, GameObject obj) //封装按键后的事件
    {
        switch (name)
        {
        case "Button_Start":
            Debug.Log("开始游戏!");
            Close();
            UIManager.EnterUI <UI_SeletLevel>();
            break;

        case "Button_Close":
            Close();
            break;

        case "Button_Music":
            if (AudioMananger.mIsMusicOn)
            {
                SetMusicOn(false);
                AudioMananger.SetMusicOn(false);
            }
            else
            {
                SetMusicOn(true);
                AudioMananger.SetMusicOn(true);
            }
            break;

        case "Button_Sound":
            if (AudioMananger.mIsSoundOn)
            {
                SetSoundOn(false);
                AudioMananger.SetSoundOn(false);
            }
            else
            {
                SetSoundOn(true);
                AudioMananger.SetSoundOn(true);
            }
            break;
        }
    }
Exemplo n.º 8
0
 private void wake()
 {
     instance = this;
 }