如何找出谁发射了弹丸

问题描述

所以我正在尝试制作一款具有类似于《守望先锋》/《圣骑士》的能力的多人游戏。总而言之,一个技能应该是一种可以在地面上移动的投射物,并允许玩家在它活着的时候随时传送到它的位置。到目前为止,我无法找到仅传送射击它的玩家的解决方案,因为在我的测试中,当一名玩家激活他们的能力时,所有玩家都会传送。我该如何解决这个问题?

我的代码:

    void Update()
    {
        if (Input.GetKeyDown(KeyCode.E))
            GetComponent<playerController>().heldAbility = "gateCrash";

        if (GetComponent<playerController>().heldAbility == "gateCrash")
            holding = true;
        else
            holding = false;

        if (holding && Input.GetMouseButtonDown(0))
            PhotonNetwork.Instantiate(Path.Combine("PhotonPrefabs","GateCrashModel"),spawnPos,transform.rotation,0);
    }

此代码附在弹丸上:

    public float speed = 10;

    PhotonView pv;

    private void Awake()
    {
        pv = transform.GetComponent<PhotonView>();
    }

    private void FixedUpdate()
    {
        transform.Translate(transform.forward * speed * Time.fixedDeltaTime);
    }

我想我应该有一些东西作为 instatntiation 参数,但不知道是什么。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)