PhotonNetwork.Destroy object instantiated
Hi,
i have a problem with this script. I have another script that deals with zombie spawning on the map, all this on the net, and everything works perfectly.
However, I need the zombie to be killed when the bullet shoot hits it 5 times. In local everything works with (Destroy (col.gameObject);)
The problem arises when I try to destroy on the network, so that all players connected to the room see that it is killed.
I have try more script but everyone work. How can I destroy it on the network?
I have try with your id ( is 0 ) but i continue receive this error: NullReferenceException: Object reference not set to an instance of an object
Script c#
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class gestisciZombie : Photon.MonoBehaviour {
void OnCollisionEnter(Collision col)
{
if (col.gameObject.tag == "Zombie")
{
GameObject zombiePreso = col.gameObject;
serviziZombie vitaScript = zombiePreso.GetComponent<serviziZombie>();
vitaScript.vita -= 20;
if(vitaScript.vita == 0)
{
photonView.RPC("networkDestroy", PhotonTargets.All, 0);
// Destroy(col.gameObject);
}
else
{
Debug.Log("vita di questo tizio = " + vitaScript.vita);
}
}
}
[PunRPC]
void networkDestroy(int viewID)
{
Destroy(PhotonView.Find(viewID).gameObject);
}
}
Thank!
Answer by ChristianSimon · May 18, 2017 at 07:56 AM
Hi,
in order to destroy networked objects you can use PhotonNetwork.Destroy(...). As a parameter you can either pass the PhotonView component or the GameObject itself. You can read about both possibilities here.
Answer by basheerm · Jul 17, 2021 at 06:36 PM
@ChristianSimon Hi, the link you shared no longer works. Would you happen to have the updated one?
Your answer
Follow this Question
Related Questions
Pull Playfab users list 0 Answers
Simple call animation then destroy? 0 Answers
Objects getting destroyed in unity test, but only sometimes in the phone app 0 Answers
Destroy object with dontdestroyonload 2 Answers
Bullet Destroy 1 Answer