[MY-RS] Erreur avec Photon RPC mais....

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
Novak84
Messages : 9
Inscription : 17 Mars 2014 22:42

Re: [MY-RS] Erreur avec Photon RPC mais....

Message par Novak84 » 10 Jan 2017 20:23

Oui ,oui j'ai bien Drag and Drop sur la scene

Voici le code pour le prefab de la ferme (Resources.cs)

Code : Tout sélectionner

using UnityEngine;
using System.Collections;

public class Resource : MonoBehaviour {

	public enum TypeResource { House,Ferme,Fer,Roche }
	public TypeResource Type;
	public GameObject InfoGame;
	PhotonView view;
	public GameObject CameraSelection;

	//bonus resource
	public int Bonus;
	public float Delay;
	private float Next;
	private float ActuTime;
	bool Add ;


	void Start () {
		
		InfoGame = GameObject.Find("InfoGame");
		 Add=true;
		view = PhotonView.Get (this);
		if (gameObject.tag == "Invite") {
			CameraSelection = GameObject.Find ("CameraB");
		}
		if (gameObject.tag == "Master") {
			CameraSelection = GameObject.Find ("CameraA");
		}
	}
	// Update is called once per frame
	void Update () {
		
		if (TypeResource.House == Type) {
			
			if (Add == true) {
				InfoGame.SendMessage ("AddHouse", Bonus);
				Add = false;
			}
		} else {
			ActuTime = Time.time;
		}
		if (TypeResource.Ferme == Type) {
			if (ActuTime > Next + Delay) {

				view.RPC ("Addferme", PhotonTargets.All,3);
				
				//InfoGame.SendMessage ("AddFerme", Bonus);
				Next = ActuTime;
			}
		}
		if (TypeResource.Fer == Type) {
			if (ActuTime > Next + Delay) {
				InfoGame.SendMessage ("AddFer", Bonus);
				Next = ActuTime;
			}
		}
		if (TypeResource.Roche == Type) {
			if (ActuTime > Next + Delay) {
				InfoGame.SendMessage ("AddRoche", Bonus);
				Next = ActuTime;
			}

		}
	}
}
Voici le code de la camera ce script je començais a la coder ;)

Code : Tout sélectionner

using UnityEngine;
using System.Collections;

public class CameraR : MonoBehaviour {
	public int Bles;
	PhotonView view;
	// Use this for initialization
	void Start () {
		view = GetComponent<PhotonView> ();
		Debug.Log (view.viewID);
	}
	
	// Update is called once per frame
	void Update () {

	}
	[PunRPC]
	void Addferme(int bonus)
	{
		Bles+= 2;


	}
}
Merci de ton aide

Moi 1971
Messages : 727
Inscription : 29 Sep 2015 13:38

Re: [MY-RS] Erreur avec Photon RPC mais....

Message par Moi 1971 » 10 Jan 2017 20:47

Pour ton problème il va falloir que d'autres avec une meilleur expertise sur photon interviennent...
Là il est tard.. j'ai pas forcément les yeux en face des trous...

Novak84
Messages : 9
Inscription : 17 Mars 2014 22:42

Re: [MY-RS] Erreur avec Photon RPC mais....

Message par Novak84 » 10 Jan 2017 21:42

Ok merci pour avoir essaié :super:

Farstone
Messages : 187
Inscription : 04 Déc 2016 09:38

Re: [MY-RS] Erreur avec Photon RPC mais....

Message par Farstone » 24 Jan 2017 16:08

PhotonView with ID 2002 has no method "Addferme" marked with the [PunRPC] C'est pourtant clair.

Tu essaie de faire un RPC d'une méthode qui n'est pas dans ton script, je te conseille de trouver le composent de ton script CameraR et de faire quelque chose comme ça.

Code : Tout sélectionner

CameraR example;

example = GetComponent<CameraR>(); // Tu récupère le component (si il est dans le même GameObject sinon tu le recherche avec FindWithTag ou FindObjectOfType si tu n'en a pas plusieurs)
example.view.RPC("Addferme", PhotonTargets.All, 3);

Répondre

Revenir vers « (C#) CSharp »