Hello,
I’ve made a simple script that allows control over a cube. When a button is pressed, the cube’s ownership switches to the button presser, giving them control over the object. However, as the ownership switches, I get the error
“View ID SceneID: 1 Level Prefix: 0 not found during lookup. Strange behaviour may occur”
Followed by
“Received state update for view id’ SceneID: 1 Level Prefix: 0’ but the NetworkView doesn’t exist”
While the functionality seems to be unimpaired, I would like to know why Unity is giving this error.
Thanks in advance!
Error:
Code:
using UnityEngine;
using System.Collections;
public class Player : MonoBehaviour {
public float speed = 10f;
void Start ()
{
}
void Update ()
{
if(Input.GetKeyDown(KeyCode.I))
{
networkView.RPC("UpdateID", RPCMode.AllBuffered, Network.AllocateViewID());
}
if(networkView.isMine)
{
InputMovement();
}
}
void InputMovement ()
{
if (Input.GetKey(KeyCode.W))
rigidbody.MovePosition(rigidbody.position + Vector3.forward * speed * Time.deltaTime);
if (Input.GetKey(KeyCode.S))
rigidbody.MovePosition(rigidbody.position - Vector3.forward * speed * Time.deltaTime);
if (Input.GetKey(KeyCode.D))
rigidbody.MovePosition(rigidbody.position + Vector3.right * speed * Time.deltaTime);
if (Input.GetKey(KeyCode.A))
rigidbody.MovePosition(rigidbody.position - Vector3.right * speed * Time.deltaTime);
}
[RPC] public void UpdateID (NetworkViewID inputViewID)
{
networkView.viewID = inputViewID;
}
}