HI.
I made a flashlight script that works when the player presses the F key it toggles the spot light and plays a click sound but for some reason it doesn’t work over the network.
Here’s my code so far.
using UnityEngine;
using System.Collections;
/// <summary>
/// This script allows the player to toggle a light with the F key.
/// </summary>
public class FlashLight : MonoBehaviour {
public AudioClip lightToggle;
private bool _lightEnabled = false;
// Use this for initialization
void Start ()
{
if(networkView.isMine == true)
{
//nothing here.
}
else
{
enabled = false;
}
}
// Update is called once per frame
void Update ()
{
if(Input.GetKeyDown(KeyCode.F))
{
_lightEnabled = !_lightEnabled;
Debug.Log("F");
networkView.RPC ("ToggleFlashlight", RPCMode.AllBuffered);
}
}
[RPC]
void ToggleFlashlight()
{
if(_lightEnabled == true)
{
light.enabled = false;
audio.PlayOneShot(lightToggle);
}
if(_lightEnabled == false)
{
light.enabled = true;
audio.PlayOneShot(lightToggle);
}
}
}
It should be working, but when I open my game with 2 clients and press the F key on one of them, It only toggles the light for the one pressing the key while the other client can’t see the light toggling.
Does anyone know what to do to make this work?