【问题标题】:Sending information between users in a room in Photon在 Photon 的房间中的用户之间发送信息
【发布时间】:2017-06-22 06:15:51
【问题描述】:

我已关注PUN Basics Tutorial,以便为我的游戏创建一个大厅并连接两个玩家。但是,我正在制作一个棋盘游戏(九人莫里斯),本教程仅介绍如何通过使用玩家角色的观察者进行交流。我需要能够从一个玩家向另一个玩家发送一个动作(玩家从哪里移动,玩家要移动到哪里,玩家正在移除哪一块)。

我是不是用 Photon 找错树了?我已经在网上搜索和搜索,但我没有找到太多关于此的内容。感谢您的任何回复。

【问题讨论】:

    标签: networking unity3d multiplayer photon


    【解决方案1】:

    你告诉我们你已经有两个玩家连接到同一个房间,所以我将从这里开始。开始游戏的玩家首先想将他的一个游戏棋子放在棋盘上,因此我猜他直接点击棋盘以实例化对象。使用 Photon 执行此操作时,您必须调用 PhotonNetwork.Instantiate(...) 这将 - 显然 - 通过网络实例化对象。使用的 prefab 需要有一个 PhotonView 组件和一个 PhotonTransformView 组件,由 PhotonView 观察。这将在稍后同步移动,并且对您来说应该不是什么新鲜事,因为您已经完成了基础教程。

    当所有对象都被实例化后,移动阶段就开始了。因此,您需要一些代码来处理玩家的输入并将游戏块从一个位置移动到另一个位置。由于您已附加并观察了 PhotonTransformView 组件,因此所有玩家的新位置都会自动同步。

    这是一个简单的解决方案,您也可以使用 RaiseEvent(...) 调用来执行此操作,这是一个稍微高级的解决方案,可能需要更多的工作。

    由于这是一款回合制游戏,我还建议您查看 PUN 包中包含的 RockPaperScissors Demo 以及可能对您有所帮助的 PunTurnManager 脚本。

    【讨论】:

    • 非常感谢!我明白了。
    猜你喜欢
    • 2013-01-03
    • 1970-01-01
    • 1970-01-01
    • 2016-12-28
    • 1970-01-01
    • 2021-08-04
    • 1970-01-01
    • 2021-09-04
    • 2014-01-19
    相关资源
    最近更新 更多