예제 #1
0
    public void PhotonAni()
    {
        PhotonAnimatorView pav = GetComponent <PhotonAnimatorView>();

        pav.SetLayerSynchronized(0, PhotonAnimatorView.SynchronizeType.Continuous);
        pav.SetLayerSynchronized(1, PhotonAnimatorView.SynchronizeType.Continuous);
        pav.SetParameterSynchronized("Speed", PhotonAnimatorView.ParameterType.Float, PhotonAnimatorView.SynchronizeType.Continuous);
        pav.SetParameterSynchronized("AttackMode", PhotonAnimatorView.ParameterType.Float, PhotonAnimatorView.SynchronizeType.Continuous);
        pav.SetParameterSynchronized("OpenFire", PhotonAnimatorView.ParameterType.Trigger, PhotonAnimatorView.SynchronizeType.Continuous);
    }
예제 #2
0
        void SetAnimatorProperties(Animator anim, PhotonAnimatorView animView)
        {
            foreach (AnimatorControllerParameter param in anim.parameters)
            {
                PhotonAnimatorView.ParameterType type = PhotonAnimatorView.ParameterType.Bool;
                switch (param.type)
                {
                case (AnimatorControllerParameterType.Bool):
                    type = PhotonAnimatorView.ParameterType.Bool;
                    break;

                case (AnimatorControllerParameterType.Float):
                    type = PhotonAnimatorView.ParameterType.Float;
                    break;

                case (AnimatorControllerParameterType.Int):
                    type = PhotonAnimatorView.ParameterType.Int;
                    break;

                case (AnimatorControllerParameterType.Trigger):
                    type = PhotonAnimatorView.ParameterType.Trigger;
                    break;
                }

                animView.SetParameterSynchronized(param.name, type, PhotonAnimatorView.SynchronizeType.Discrete);
            }

            if (anim.layerCount > 0)
            {
                for (int i = 0; i < anim.layerCount; i++)
                {
                    animView.SetLayerSynchronized(i, PhotonAnimatorView.SynchronizeType.Discrete);
                }
            }
        }
예제 #3
0
    public void ReciveJob(int job, PhotonMessageInfo info)
    {
        PlayerChar playerChar = null;

        // ジョブの番号によって処理を分ける
        switch (job)
        {
        case 0:
            // アーチャーのコンポ―ネントを入れる
            playerChar = gameObject.AddComponent <Archer>();
            // アーチャーのアニメーションを設定する
            anim.runtimeAnimatorController = archerAnimationController;
            break;

        case 1:
            // ウォーリアのコンポ―ネントを入れる
            playerChar = gameObject.AddComponent <Warrior>();
            // ウォーリアのアニメーションを設定する
            anim.runtimeAnimatorController = warriorAnimationController;
            break;

        case 2:
            // ソーサラーのコンポーネントを入れる
            playerChar = gameObject.AddComponent <Sorcerer>();
            // ソーサラーのアニメーションを設定する
            anim.runtimeAnimatorController = sorcererAnimationController;
            break;

        case 3:
            // モンクのコンポーネントを入れる
            playerChar = gameObject.AddComponent <Monk>();
            // モンクのアニメーションを設定する
            anim.runtimeAnimatorController = monkAnimationController;
            break;
        }
        // 同期対象に追加する
        photonView.ObservedComponents.Add(playerChar);
        // レイヤーの0番を同期に設定する
        animView.SetLayerSynchronized(0, PhotonAnimatorView.SynchronizeType.Discrete);
        // 同期設定を行う
        animView.SetParameterSynchronized("RunFlag", PhotonAnimatorView.ParameterType.Bool, PhotonAnimatorView.SynchronizeType.Discrete);
        playerChar.GetPlayerData().job = job;
    }
    IEnumerator HeroBorn()
    {
        Vector3 pos;

        do
        {
            pos = RandomPos();
            yield return(0);
        } while (CheckCanUse(pos));

        //Debug.Log(SelectHero.heroName);
        //player = ObjectPool.Instance.GetObj(SelectHero.heroName);
        //player.GetComponent<RPCScrip>().phv = phv;

        //player.AddComponent<PhotonView>();
        //phv = player.AddComponent<PhotonView>();

        //player.GetComponent<PhotonView>().ObservedComponents.Add(GetComponent<Transform>());
        //player.GetComponent<PhotonView>().ObservedComponents.Add(GetComponent<Animator>()); GetComponent<PhotonAnimatorView>();
        //pva.SetLayerSynchronized(0, PhotonAnimatorView.SynchronizeType.Continuous);
        //pva.SetLayerSynchronized(1, PhotonAnimatorView.SynchronizeType.Continuous);
        //pva.SetParameterSynchronized("speed", PhotonAnimatorView.ParameterType.Float, PhotonAnimatorView.SynchronizeType.Continuous);
        //pva.SetParameterSynchronized("AttackMode", PhotonAnimatorView.ParameterType.Float, PhotonAnimatorView.SynchronizeType.Continuous);
        //pva.SetParameterSynchronized("OpenFire", PhotonAnimatorView.ParameterType.Trigger, PhotonAnimatorView.SynchronizeType.Continuous);



        //Debug.Log(SelectHero.heroName+123);

        //zcc的networkTest脚本的生成方法
        // nwt.SpawnPlayer(SelectHero.heroName, pos);

        //photon的生成方法
        player     = PhotonNetwork.Instantiate(SelectHero.heroName, pos, Quaternion.identity);
        player.tag = "Player";
        player.GetComponent <PlayerAttack>().ChangeAttackAnimator(player.GetComponent <PlayerAttack>().currentWeaponName);
        Debug.Log(SelectHero.heroName + "8888888888888888888888");
        player.GetComponent <PlayerMove>().speed = float.Parse(DBA.Instance.GetCareerAttributeByName(SelectHero.heroName.Remove(SelectHero.heroName.IndexOf('0')))[4]);

        if (player.GetComponent <PhotonView>().IsMine)
        {
            PlayerSelfId.playerID = player;
        }


        //player.GetComponent<RPCScrip>().SapwnPlayer(SelectHero.heroName,pos);



        //player.GetComponent<PlayerAttack>().Init();
        Camera.main.transform.root.GetComponent <CameraFollow>().player1 = player.transform;

        phv = player.GetComponent <PhotonView>();
        pva = player.GetComponent <PhotonAnimatorView>();

        pva.SetLayerSynchronized(0, PhotonAnimatorView.SynchronizeType.Continuous);
        pva.SetLayerSynchronized(1, PhotonAnimatorView.SynchronizeType.Continuous);
        pva.SetParameterSynchronized("Speed", PhotonAnimatorView.ParameterType.Float, PhotonAnimatorView.SynchronizeType.Continuous);
        pva.SetParameterSynchronized("AttackMode", PhotonAnimatorView.ParameterType.Float, PhotonAnimatorView.SynchronizeType.Continuous);
        pva.SetParameterSynchronized("OpenFire", PhotonAnimatorView.ParameterType.Trigger, PhotonAnimatorView.SynchronizeType.Continuous);



        //  player.AddComponent<PlayerMove>();
        //  player.AddComponent<PlayerAttack>();
        //  player.AddComponent<PlayerAnimatorAttackEvent>();
        //   player.AddComponent<Rigidbody>();
        //  Rigidbody r =  player.GetComponent<Rigidbody>();
        //   r.useGravity = false;
        //   r.freezeRotation = true;
        //   player.AddComponent<CapsuleCollider>();
        //CapsuleCollider  p= player.GetComponent<CapsuleCollider>();
        //   p.radius = 1;
        //   p.center = new Vector3(0, 1.1f, 0.25f);
        //   p.height = 2.58f;
    }