Witam, wie ktoś może dlaczego w tym skrypcie bronie się nie zmieniają po naciśnięciu klawisza 1 i 2 ?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MenadzerBroni : MonoBehaviour
{
public BronWgrze aktywnaBron;
public BronWgrze dostepnaBronGlowna;
public BronWgrze dostepnaBronDodatkowa;
Strzelanie strzelanie;
private void Start()
{
strzelanie = GetComponent<Strzelanie>();
//dostepnaBronGlowna = Bron.dostepneBronie[DostepnaBron.Barretm_M82]
//dostepnaBronDodatkowa = Bron.dostepneBronie[DostepnaBron.glock_18]
//GetComponent<PhotonView>().RPC("ZmienBronRPC", PhotonTargets.All, (int)dostepnaBronGlowna.bron.Enum);
}
void Update()
{
if (Input.GetKeyDown(KeyCode.Alpha1))
{
//Chcemy zmieniac na bron glowna
if (dostepnaBronGlowna != null && aktywnaBron.bron != dostepnaBronGlowna.bron)
{
GetComponent<PhotonView>().RPC("ZmienBronRPC", PhotonTargets.All, (int)dostepnaBronGlowna.bron.Enum, dostepnaBronGlowna.id);
}
}
else if (Input.GetKeyDown(KeyCode.Alpha2))
{
//Chcemy zmieniac na bron dodatkowa
if (dostepnaBronDodatkowa != null && aktywnaBron.bron != dostepnaBronDodatkowa.bron)
{
GetComponent<PhotonView>().RPC("ZmienBronRPC", PhotonTargets.All, (int)dostepnaBronDodatkowa.bron.Enum, dostepnaBronDodatkowa.id);
}
}
}
[PunRPC]
void ZmienBronRPC(int enumBronId, int bronWgrzeID, PhotonMessageInfo pmi)
{
Bron nowaBron = Bron.dostepneBronie[(DostepnaBron)enumBronId];
Bron staraBron = null;
if (aktywnaBron != null)
staraBron = aktywnaBron.bron;
/*if (PhotonNetwork.isMasterClient)
{
if ((dostepnaBronGlowna == nowaBron || dostepnaBronDodatkowa == nowaBron) == false)
PhotonNetwork.CloseConnection(pmi.sender);
}*/
if (PhotonNetwork.isMasterClient || pmi.sender == PhotonNetwork.player)
{
// Jezeli jestesmy serwerm lub graczem ktore zmienia bron to chemy wiedziec jak to bron w grze
aktywnaBron = Bron.ZnajdzBronWgrze(bronWgrzeID);
}
else
aktywnaBron.bron = nowaBron;
if (pmi.sender == PhotonNetwork.player)
GetComponent<Strzelanie>().cooldown = nowaBron.czasBraniaDoReki;
Debug.Log(gameObject.name + " zmienil bron na: " + aktywnaBron.bron.przyjaznaNazwa);
if (PhotonNetwork.player == pmi.sender)
{
Transform bronie = transform.Find("TrzymaczKamery/Kamera/Bronie");
// Wlaczamy model lokalny
if (staraBron != null)
{
Debug.Log(staraBron.nazwa);
Debug.Log(bronie.Find(staraBron.nazwa).gameObject);
bronie.Find(staraBron.nazwa).gameObject.SetActive(false);
}
bronie.gameObject.SetActive(true);
}
else
{
//TODO: Wlaczac model globalny
}
}
}