예제 #1
0
파일: VM.cs 프로젝트: fHachenberg/FreeSO
 public void CloseNet(VMCloseNetReason reason)
 {
     if (reason == VMCloseNetReason.LeaveLot && !Ready)
     {
         return;
     }
     Driver.CloseReason = reason;
     Driver.Shutdown();
 }
예제 #2
0
        private void VMShutdown(VMCloseNetReason reason)
        {
            var controller = FindController <CoreGameScreenController>();

            if (controller != null)
            {
                controller.HandleVMShutdown(reason);
            }
        }
예제 #3
0
        private void VMShutdown(VMCloseNetReason reason)
        {
            if (reason == VMCloseNetReason.NetException || reason == VMCloseNetReason.NetExceptionDirect)
            {
                UIAlert.Alert("Fatal Networking Error", Driver.CloseString, true);
            }
            var controller = FindController <CoreGameScreenController>();

            if (controller != null)
            {
                controller.HandleVMShutdown(reason);
            }
        }
예제 #4
0
        private void NetClosed(VMCloseNetReason reason)
        {
            if (reason != VMCloseNetReason.ServerShutdown)
            {
                return;                                            //only handle clean closes
            }
            var server = state.GetObjectByPersist(uint.MaxValue - 1);

            if (server != null)
            {
                server.Delete(true, state.Context);
            }
            CleanLot();
            SaveLot();
            System.Environment.Exit(0);
        }
예제 #5
0
 public void CloseNet(VMCloseNetReason reason)
 {
     Driver.CloseReason = reason;
     Driver.CloseNet();
 }
예제 #6
0
 public void HandleVMShutdown(VMCloseNetReason reason)
 {
     JoinLotRegulator.AsyncTransition("Disconnect");
 }
예제 #7
0
 private void NetClosed(VMCloseNetReason reason)
 {
     if (reason != VMCloseNetReason.ServerShutdown) return; //only handle clean closes
     var server = state.GetObjectByPersist(uint.MaxValue - 1);
     if (server != null) server.Delete(true, state.Context);
     CleanLot();
     SaveLot();
     System.Environment.Exit(0);
 }
예제 #8
0
파일: VM.cs 프로젝트: RHY3756547/FreeSO
 public void CloseNet(VMCloseNetReason reason)
 {
     Driver.CloseReason = reason;
     Driver.CloseNet();
 }