Question by
bonaT · Jun 15, 2017 at 05:35 PM ·
scripting problemcrashcrashingscriptingproblemcrashes
Unity crashes when compiling this script. Where is the problem?
When I include this script in my project, Unity will crash RANDOMLY, when saving ANY changes in ANY script, when clicking play on the editor and when clicking the close button 'x'. Sometimes it works flawlessly and others don't so I can't reproduce the error at will. I read that infinite loops make Unity crash but I don't find any in here. Could someone find the problem with the script?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using ExitGames.Client.Photon.Chat;
using ExitGames.Client.Photon;
using System;
public class ChatManager : MonoBehaviour, IChatClientListener
{
//Singleton pattern
public static ChatManager instance;
public ChatClient chatClient;
private ConnectionProtocol connectionProtocol = ConnectionProtocol.Udp;
private ExitGames.Client.Photon.Chat.AuthenticationValues authValues = new ExitGames.Client.Photon.Chat.AuthenticationValues();
private string channelName;
public string GetChannelName()
{
return channelName;
}
// Use this for initialization
void Start () {
//Singleton pattern
instance = this;
chatClient = new ChatClient(this, connectionProtocol);
chatClient.ChatRegion = "EU";
authValues.UserId = PhotonNetwork.playerName;
authValues.AuthType = ExitGames.Client.Photon.Chat.CustomAuthenticationType.None;
chatClient.Connect(PhotonNetwork.PhotonServerSettings.ChatAppID, "4.2", authValues);
channelName = PhotonNetwork.room.Name + " channel" ;
}
// Update is called once per frame
void Update () {
if (chatClient != null) chatClient.Service();
}
public void PublishMessage(string channelName, string message)
{
chatClient.PublishMessage(channelName, message);
}
/////////////////////////////////////////////////////
/////////////////////////////////////////////////////
//IChatClientListener interface methods implementation
/////////////////////////////////////////////////////
/////////////////////////////////////////////////////
/*Implemented*/
public void DebugReturn(DebugLevel level, string message)
{
Debug.Log("Debug level "+ level);
Debug.Log("Message " + message);
}
/*Implemented*/
public void OnChatStateChange(ChatState state)
{
Debug.Log("Chat state: " + state);
}
/*Implemented*/
public void OnConnected()
{
chatClient.Subscribe(new string[] { channelName });
}
/*Implemented*/
public void OnDisconnected()
{
if (chatClient != null) chatClient.Disconnect();
}
/*Implemented*/
public void OnGetMessages(string channelName, string[] senders, object[] messages)
{
int msgCount = messages.Length;
for (int i = 0; i < msgCount; i++)
{
string sender = senders[i];
string msg = (string)messages[i];
Debug.Log(sender + ": " + msg);
}
}
public void OnPrivateMessage(string sender, object message, string channelName)
{
throw new NotImplementedException();
}
/*Implemented*/
public void OnStatusUpdate(string user, int status, bool gotMessage, object message)
{
Debug.Log("user: " + user);
Debug.Log("status: " + status);
Debug.Log("gotMessage: " + gotMessage);
Debug.Log("message: " + message);
}
/*Implemented*/
public void OnSubscribed(string[] channels, bool[] results)
{
Debug.Log("Suscribed to channel");
}
/*Implemented*/
public void OnUnsubscribed(string[] channels)
{
Debug.Log("Unsubscribed");
}
}
Comment
Your answer
Follow this Question
Related Questions
android app crashes for no logical reason 0 Answers
Help! My game keeps crashing on startup! 0 Answers
Dodgeroll script crashing game 0 Answers
Timeline causes IOS app to crash when adding it, how do i fix this/ 0 Answers
Android App Crashes Randomly 0 Answers