public static SendMonoMessage ( PhotonNetworkingMessage methodString ) : void | ||
methodString | PhotonNetworkingMessage | |
return | void |
public static void SendMonoMessage(PhotonNetworkingMessage methodString, params object[] parameters)
{
HashSet<GameObject> objectsToCall;
if (PhotonNetwork.SendMonoMessageTargets != null)
{
objectsToCall = PhotonNetwork.SendMonoMessageTargets;
}
else
{
objectsToCall = PhotonNetwork.FindGameObjectsWithComponent(PhotonNetwork.SendMonoMessageTargetType);
}
string methodName = methodString.ToString();
object callParameter = (parameters != null && parameters.Length == 1) ? parameters[0] : parameters;
foreach (GameObject gameObject in objectsToCall)
{
gameObject.SendMessage(methodName, callParameter, SendMessageOptions.DontRequireReceiver);
}
}
public void SetCustomProperties(Hashtable propertiesToSet, Hashtable expectedValues = null, bool webForward = false) { if (propertiesToSet == null) { return; } Hashtable hashtable = propertiesToSet.StripToStringKeys(); Hashtable hashtable2 = expectedValues.StripToStringKeys(); bool flag = hashtable2 == null || hashtable2.get_Count() == 0; bool flag2 = this.actorID > 0 && !PhotonNetwork.offlineMode; if (flag) { this.CustomProperties.Merge(hashtable); this.CustomProperties.StripKeysWithNullValues(); } if (flag2) { PhotonNetwork.networkingPeer.OpSetPropertiesOfActor(this.actorID, hashtable, hashtable2, webForward); } if (!flag2 || flag) { this.InternalCacheProperties(hashtable); NetworkingPeer.SendMonoMessage(PhotonNetworkingMessage.OnPhotonPlayerPropertiesChanged, new object[] { this, hashtable }); } }