Unity Collision Doesn't work when two Players instantiated

时间:2015-09-14 15:20:30

标签: c# unity3d photon unity5

I am using Unity3D and I have a problem. I have a script which instantiates the player gameobject once you are connected to the server. I also have an attack script. When there is only 1 player on, everything works fine. When the second player comes on, the attack doesnt work! I did Debug.Log and I found out that when you clicked the other player to attack instead of attacking him, you are attacking the terrain below it. Here is my code. Instantiate Code:

GameObject myPlayer = PhotonNetwork.Instantiate (character, mySpawn.transform.position, mySpawn.transform.rotation, 0) as GameObject;

Attack code:

using UnityEngine;
using System.Collections;

public class SendAttackInfo : Photon.MonoBehaviour
{
    public float damage = 100;
    // Use this for initialization
    void Start()
    {

    }



    void Update()
    {

        bool RMB = Input.GetMouseButtonDown(0);
        if (RMB)
        {

            RaycastHit hit;
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            if (Physics.Raycast(ray, out hit, 100))
            {
                Debug.Log("We arm-hit: " + hit.collider.name);

                hit.collider.transform.gameObject.GetComponent<PhotonView>().RPC("ApplyDamage", PhotonTargets.AllBuffered, damage);
                hit.collider.transform.FindChild("Cube").GetComponent<PhotonView>().RPC("ApplyDamage", PhotonTargets.AllBuffered, damage);
            }
        }
    }
}

Please help!

0 个答案:

没有答案