如何解决如何使用 Unity 中的 Photon 和骰子在棋盘游戏中创建回合制管理器?
我遇到的问题是,当我将玩家 2 的骰子 SetActive 设置为 False 时,玩家 1 的骰子也会消失,因为 PhotonTargets 设置为 All 以便玩家令牌一起移动。下面是我如何尝试的代码。我什至需要在这里编写这个逻辑还是应该在其他地方?提前致谢
public static void MoveSteps(string playerName,int numberOfSteps)
{
ScriptsPhotonView.RPC("MoveStepsRPC",PhotonTargets.All,playerName,numberOfSteps);
}
[PunRPC]
void MoveStepsRPC(string playerName,int numberOfSteps)
{
print("playerName:" + playerName);
print("numberOfSteps:" + numberOfSteps);
if (playerName == "Player1")
{
GameObject.Find(playerName).GetComponent<PlayerController>().Move(numberOfSteps);
dice.SetActive(true);
}
else if (playerName == "Player2")
{
dice.SetActive(false);
}
}
解决方法
我认为您甚至不必为其他玩家禁用骰子,只需让他们使用它的脚本即可。也许设置一个像 "canMove" 和 if (!can move){diceScript.enabled = false;}
这样的布尔值或者,你可以将骰子放在一个单独的层上,轮到它的玩家的相机忽略该层或其他东西。希望这有帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。