【发布时间】:2021-02-17 21:43:46
【问题描述】:
所以我正在尝试制作一款具有类似于《守望先锋》/《圣骑士》的能力的多人游戏。总而言之,一个技能应该是一种在地面上移动并允许玩家在其活着的任何时间传送到其位置的弹丸。我找不到只传送发射它的玩家的解决方案,因为到目前为止,在我的测试中,当一个玩家激活他们的能力时,所有玩家都会传送。我该如何解决这个问题?
我的代码:
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 参数,但不知道是什么。
【问题讨论】:
-
您应该向我们提供有关您的工作流程的更多信息。您只是在描述问题,但根据您的工作流程,可以有很多方法来解决它。除非您编辑和改进您的问题,否则您的问题可能会被 mods 关闭。 How to create a Minimal, Reproducible Example