Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我想删除自己的玩家对象,但我可以';不要使用销毁| PUN2_C#_Unity3d_Photon - Fatal编程技术网

C# 我想删除自己的玩家对象,但我可以';不要使用销毁| PUN2

C# 我想删除自己的玩家对象,但我可以';不要使用销毁| PUN2,c#,unity3d,photon,C#,Unity3d,Photon,我正在用PUN2做一个射击游戏,但是我遇到了一个问题,玩家没有消失。 实现了玩家移动、使用PunRPC的炮弹移动、子弹处理等 当玩家的健康状况变为0时,我会使用以下代码销毁()该玩家 Player.cs: GameObject Player; // player object attached int HP = 100; //If hit public void Damaged(int damage) { photonView.RPC(nameof(UpdateHP), RpcTar

我正在用PUN2做一个射击游戏,但是我遇到了一个问题,玩家没有消失。 实现了玩家移动、使用PunRPC的炮弹移动、子弹处理等

当玩家的健康状况变为0时,我会使用以下代码销毁()该玩家

Player.cs

GameObject Player; // player object attached
int HP = 100; 

//If hit
public void Damaged(int damage)
{
    photonView.RPC(nameof(UpdateHP), RpcTarget.All, damage)
}

[PunRPC]
void UpdateHP(int damage)
{
    HP -= damage;
    if(HP <= 0)
        photonView.RPC(nameof(RemovePlayer), RpcTarget.All);

    var hashtable = new Hashtable();
    hashtable["HP"] = HP;
    PhotonNetwork.LocalPlayer.SetCustomProperties(hashtable);
}

[PunRPC]
void RemovePlayer()
{
    Destroy(Player)
}
GameObject Player; // player object attached
int HP = 100; 

//If hit
public void Damaged(int damage)
{
    photonView.RPC(nameof(UpdateHP), RpcTarget.All, damage)
}

[PunRPC]
void UpdateHP(int damage)
{
    HP -= damage;
    if(HP <= 0)
        RemovePlayer();

    var hashtable = new Hashtable();
    hashtable["HP"] = HP;
    PhotonNetwork.LocalPlayer.SetCustomProperties(hashtable);
}

void RemovePlayer()
{
    Destroy(Player)
}
gameobjectplayer;//球员对象附加
int HP=100;
//如果击中
公共空间损坏(内部损坏)
{
RPC(name of(UpdateHP),RpcTarget.All,damage)
}
[扑克牌]
无效更新HP(内部损坏)
{
HP-=损害;

如果(HP如Philipp先生所说,通过执行PhotonNetwork.Destroy(),我能够完全删除该对象.

尝试使用。您可以传递游戏对象或照片视图。您真的需要吗?通常光子会销毁已删除玩家的实例……我认为此代码中的错误与销毁没有直接关系。Photonnework.Destroy()或Destroy()在[PunRPC]中不允许吗?