Offline rig
how do I make a offline rig so when i join a server that rig is gone and now showd the player prefab thing
clientID will always return 0 in offline mode
didConnectToRoom event from the Realtime component to disable any GameObject when a connection is established. Here's a simple script to do exactly that:offlineModeConnectOptionsConnect()Connect()Disconnect()_realtime[SerializeField][SerializeField][SerializeField]using UnityEngine;
using Normal.Realtime;
public class OfflineRigManager : MonoBehaviour {
[SerializeField] private GameObject offlineRig;
[SerializeField] private Realtime realtime;
private void Awake() {
// Make sure offline rig is active by default
if (offlineRig != null)
offlineRig.SetActive(true);
// Subscribe to Realtime connection events
realtime.didConnectToRoom += DidConnectToRoom;
realtime.didDisconnectFromRoom += DidDisconnectFromRoom;
}
private void DidConnectToRoom(Realtime realtime) {
// When connected to a room, disable the offline rig
if (offlineRig != null)
offlineRig.SetActive(false);
}
private void DidDisconnectFromRoom(Realtime realtime) {
// When disconnected, re-enable the offline rig
if (offlineRig != null)
offlineRig.SetActive(true);
}
}using Normal.Realtime;
using UnityEngine;
public class OfflineModeExample : MonoBehaviour {
[SerializeField]
private Realtime _realtime;
private void Start() {
// Notify us when Realtime successfully connects to the room
_realtime.didConnectToRoom += DidConnectToRoom;
// Connect to "My Room" in offline mode
_realtime.Connect("My Room", new Room.ConnectOptions {
offlineMode = true
});
}
private void DidConnectToRoom(Realtime realtime) {
if (realtime.room.offlineMode) {
Debug.Log($"Connected to room in offline mode!");
}
}
}using Normal.Realtime;
using UnityEngine;
public class OfflineModeExample : MonoBehaviour {
private Realtime _realtime;
private void Awake() {
// Get the Realtime component from this GameObject or find it in the scene
_realtime = GetComponent<Realtime>(); // If on the same GameObject
// OR
// _realtime = FindObjectOfType<Realtime>(); // To find it anywhere in the scene
}
private void Start() {
// Notify us when Realtime successfully connects to the room
_realtime.didConnectToRoom += DidConnectToRoom;
// Connect to "My Room" in offline mode
_realtime.Connect("My Room", new Room.ConnectOptions {
offlineMode = true
});
}
private void DidConnectToRoom(Realtime realtime) {
if (realtime.room.offlineMode) {
Debug.Log($"Connected to room in offline mode!");
}
}
}using UnityEngine;
using Normal.Realtime;
public class DisableOnConnect : MonoBehaviour {
[SerializeField] private GameObject objectToDisable;
[SerializeField] private Realtime realtime;
private void Awake() {
// Subscribe to Realtime connection events
realtime.didConnectToRoom += DidConnectToRoom;
realtime.didDisconnectFromRoom += DidDisconnectFromRoom;
}
private void DidConnectToRoom(Realtime realtime) {
// When connected to a room, disable the object
if (objectToDisable != null)
objectToDisable.SetActive(false);
}
private void DidDisconnectFromRoom(Realtime realtime) {
// When disconnected, re-enable the object
if (objectToDisable != null)
objectToDisable.SetActive(true);
}
}