Code here:
Code: Select all
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using Sfs2X;
using Sfs2X.Logging;
using Sfs2X.Util;
using Sfs2X.Core;
using Sfs2X.Entities;
using Sfs2X.Entities.Data;
using Sfs2X.Requests;
using Sfs2X.Requests.MMO;
using UI.Dialogs;
using UnityEngine.SceneManagement;
using UMACharacterSystem;
public class SFSWorld : MonoBehaviour {
public UI.Dialogs.uDialog myDialog;
public DynamicCharacterAvatar Avatar;
private SmartFox sfs;
// Use this for initialization
void Start () {
if (SFSInstance.IsInitialized)
{
sfs = SFSInstance.Connection;
}
else
{
myDialog.SetContentText("No Smartfox connection.");
myDialog.Show();
}
sfs.AddEventListener(SFSEvent.ROOM_JOIN, OnRoomJoin);
sfs.AddEventListener(SFSEvent.ROOM_JOIN_ERROR, OnRoomJoinError);
string roomName = "World";
if (sfs.RoomManager.ContainsRoom(roomName))
{
sfs.Send(new JoinRoomRequest(roomName));
}
}
private void OnRoomJoin(BaseEvent evt)
{
Debug.Log("In World Scene the avatar is: " + SessionInfo.Avatar);
Avatar.LoadFromRecipeString(SessionInfo.Avatar);
}
private void OnRoomJoinError(BaseEvent evt)
{
reset();
Debug.Log("Room join failed: " + (string)evt.Params["errorMessage"]);
myDialog.SetContentText("Room join failed: " + (string)evt.Params["errorMessage"]);
myDialog.Show();
}
private void reset()
{
sfs.RemoveAllEventListeners();
}
void OnDialogClose(uDialog arg0)
{
SceneManager.LoadSceneAsync("login");
}
}