如何停止同步播放器对撞机触发另一个对撞机的动画(Photon 2)

发布于 2025-01-30 10:19:18 字数 1344 浏览 3 评论 0原文

player 1查看图像

任何人知道任何只有玩家本身才能看到动画的方法客户看不到吗?

因此,我正在做诸如聚集塔之类的事情(褪色的暗屏和褪色)

player 2查看图像,

但我不希望另一个玩家看到另一个玩家的黑暗面板

image

尝试了很多方法,例如将观察到的组件毫无疑问并禁用“ BlackPanelTrigger”,但动画仍在同步 我什至尝试删除光子视图,光子动画仪视图和删除“使用光子引擎”,但仍然同步对象:(

顺便脱离精灵的可见性。 这是我的代码。

using System.Collections.Generic;
using UnityEngine;
//using Photon.Pun;

public class MatAnimation : MonoBehaviour
{
    [SerializeField] private Animator animator;


    private void OnTriggerEnter2D(Collider2D collider)
    {
        if (collider.CompareTag("Player"))
        {
            //Debug.Log("BlackPanelTrigger open Triggered!!!");
            //Player entered collider
            animator.SetBool("BlackPanelTrigger", true);
        }

         
    }
    private void OnTriggerExit2D(Collider2D collider)
    {
        if (collider.CompareTag("Player"))
        {
            //Debug.Log("Door close Triggered!!!");
            //Player exited collider
            animator.SetBool("BlackPanelTrigger", false);
        }
    }
}

Player 1 view image

Do anyone know any method that only the player itself can see the animation but other client can't see it?

So, I'm doing stuff like gather tower(Fading dark screen and fading out)

player 2 view image

But I don't want another player see the dark panel from the another player

image

I tried a lot of method like making the observed component to None and disabled the "BlackPanelTrigger", but the animation is still Synchronizing
I even tried to delete the Photon View, Photon Animator view and delete "using photon engine", but still the object is Synchronizing : (

Btw how I create the drak screen mechanic is just using a 2d collider enter then trigger animation to turn on and off the sprite visibility.
Is this my code.

using System.Collections.Generic;
using UnityEngine;
//using Photon.Pun;

public class MatAnimation : MonoBehaviour
{
    [SerializeField] private Animator animator;


    private void OnTriggerEnter2D(Collider2D collider)
    {
        if (collider.CompareTag("Player"))
        {
            //Debug.Log("BlackPanelTrigger open Triggered!!!");
            //Player entered collider
            animator.SetBool("BlackPanelTrigger", true);
        }

         
    }
    private void OnTriggerExit2D(Collider2D collider)
    {
        if (collider.CompareTag("Player"))
        {
            //Debug.Log("Door close Triggered!!!");
            //Player exited collider
            animator.SetBool("BlackPanelTrigger", false);
        }
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文