如何从GameManager或从光子上的另一个类发送变量值进行同步

时间:2017-02-13 11:48:23

标签: c# unity3d photon

我正在开发MMO游戏。在我的游戏中,User1对User2的攻击(用户2受到损害,现在健康需要减轻),那么User2的健康状况应该改变。它完美地在当地基地工作。我彻底调试它。我从网络发送中发现的问题是它只发送在启动或默认值上分配的信息。

我用来处理健康的逻辑是

  1. 我用user1
  2. 装备武器
  3. 现在,每种武器都包含其规格,即在不同的攻击下传递给用户2的伤害百分比。
  4. 现在,user2将user1提供的损坏转换为0-1,并将其传递给其健康栏并设置值。
  5. 以上所有要点都在本地工作我现在需要将值返回从point2传递到网络。所以在这种情况下我需要帮助。

    任何解决此问题的想法。 提前谢谢。

    以下片段将在对撞机上输入。而且可变的PassOnNetwork将从用户1传递给用户2。

    int AttackNo = GameManager.Instance.AttackNo;
    float val = transform.root.gameObject.GetComponent<AttackConverter> ().Attack_Converter (WeaponNo,AttackNo,other.gameObject.GetComponent<HealthTracker> ().MyHealth);
    PassOnNetwork = other.gameObject.GetComponent<HealthTracker> ().DecreaseHealth (val);
    

1 个答案:

答案 0 :(得分:0)

您是否实施了一个PhotonView来观察您的组件,该组件了解您的播放器的运行状况并为其实现序列化?

有疑问,请参考Photon Package提供的演示,研究如何在&#34; PUN Basic Tutorial&#34;

中处理健康状况

http://doc.photonengine.com/en-us/pun/current/tutorials/pun-basics-tutorial/player-networking#health

再见,