Exemple #1
0
    private void StartRemoteServer()
    {
        Debug.Log("[ServerStartUp].StartRemoteServer");
        _connectedPlayers = new List <ConnectedPlayer>();
        PlayFabMultiplayerAgentAPI.Start();
        PlayFabMultiplayerAgentAPI.IsDebugging             = configuration.playFabDebugging;
        PlayFabMultiplayerAgentAPI.OnMaintenanceCallback  += OnMaintenance;
        PlayFabMultiplayerAgentAPI.OnShutDownCallback     += OnShutdown;
        PlayFabMultiplayerAgentAPI.OnServerActiveCallback += OnServerActive;
        PlayFabMultiplayerAgentAPI.OnAgentErrorCallback   += OnAgentError;

        UNetServer.OnPlayerAdded.AddListener(OnPlayerAdded);
        UNetServer.OnPlayerRemoved.AddListener(OnPlayerRemoved);

        StartCoroutine(ReadyForPlayers());
        StartCoroutine(ShutdownServerInXTime());
    }
Exemple #2
0
    private void StartRemoteServer()
    {
        H.klog($"Starting Remote Server on Dead Server");
        PlayFabMultiplayerAgentAPI.Start();
        PlayFabMultiplayerAgentAPI.OnServerActiveCallback += OnServerActive;
        PlayFabMultiplayerAgentAPI.OnMaintenanceCallback  += OnMaintenance;
        PlayFabMultiplayerAgentAPI.OnShutDownCallback     += OnServerShutdown;
        PlayFabMultiplayerAgentAPI.OnAgentErrorCallback   += OnAgentError;
        PlayFabMultiplayerAgentAPI.IsDebugging             = true;

        // subcribe to event on server when adding and removing player
        knet.evnPlayerAdded += OnServerAddedPlayer;
        knet.addenv.AddListener(OnServerAddedPlayer);
        knet.evnPlayerRemoved += OnServerRemovedPlayer;
        knet.removeevn.AddListener(OnServerRemovedPlayer);

        StartCoroutine(ReadyForPlayers());
    }
Exemple #3
0
    private void OnServerRemovedPlayer(string infabid)
    {
        H.klog1($"A Player just left the server, fab will update and shutdown if neccessary", this.name);

        ///*
        // look in fab book, if existing then remove
        //foreach (ConnectedPlayer pl in _fabPlayerBook)
        for (int i = 0; i < _fabPlayerBook.Count; i++)
        {
            ConnectedPlayer pl = _fabPlayerBook[i];
            if (pl.PlayerId.Equals(infabid, StringComparison.OrdinalIgnoreCase))
            {
                _fabPlayerBook.Remove(pl);
                break;
            }
        }//*/
        PlayFabMultiplayerAgentAPI.UpdateConnectedPlayers(_fabPlayerBook);
        CheckConnToShutDown();
    }
    // Use this for initialization
    void Start()
    {
        if (configuration.buildType != BuildType.REMOTE_SERVER)
        {
            return;
        }

        _connectedPlayers = new List <ConnectedPlayer>();
        PlayFabMultiplayerAgentAPI.Start();
        PlayFabMultiplayerAgentAPI.IsDebugging             = Debugging;
        PlayFabMultiplayerAgentAPI.OnMaintenanceCallback  += OnMaintenance;
        PlayFabMultiplayerAgentAPI.OnShutDownCallback     += OnShutdown;
        PlayFabMultiplayerAgentAPI.OnServerActiveCallback += OnServerActive;
        PlayFabMultiplayerAgentAPI.OnAgentErrorCallback   += OnAgentError;

        UnityNetworkServer.Instance.OnPlayerAdded.AddListener(OnPlayerAdded);
        UnityNetworkServer.Instance.OnPlayerRemoved.AddListener(OnPlayerRemoved);

        StartCoroutine(ReadyForPlayers());
        StartCoroutine(ShutdownServerInXTime());
    }
Exemple #5
0
        // Utils

        // Configure Logger to output file to Playfab Logs folder
        private void ConfigurePlayFabLogs()
        {
            var logFolderPath = PlayFabMultiplayerAgentAPI.GetConfigSettings() [PlayFabMultiplayerAgentAPI.LogFolderKey];

            BoltLog.Add(new PlayfabLogger(logFolderPath));
        }
Exemple #6
0
 private void OnPlayerAdded(string playfabId)
 {
     _connectedPlayers.Add(new ConnectedPlayer(playfabId));
     PlayFabMultiplayerAgentAPI.UpdateConnectedPlayers(_connectedPlayers);
 }
Exemple #7
0
    IEnumerator ReadyForPlayers()
    {
        yield return(new WaitForSeconds(.5f));

        PlayFabMultiplayerAgentAPI.ReadyForPlayers();
    }
 void StartPlayFabAPI()
 {
     PlayFabMultiplayerAgentAPI.Start();
     StartCoroutine(ReadyForPlayers());
 }
Exemple #9
0
 private void OnServerAddedPlayer(string infabid)
 {
     H.klog1($"Fab server Got 1 client Connecting -> update connected player", this.name);
     _fabPlayerBook.Add(new ConnectedPlayer(infabid));
     PlayFabMultiplayerAgentAPI.UpdateConnectedPlayers(_fabPlayerBook);
 }