示例#1
0
        public MainView(ProgressReporter reporter, UIPlayer player, GameController controller)
            : base()
        {
            this.isTransparent = true;
            this.RecievesEmptyMouse = true;
            RecievesEmptyMouse = true;

            this.reporter = reporter;
            this.player = player;
            gameController = controller;

            this.player.CurrentCharacter = new SpectatingCharacter(player, null, new MyVector(0, 24, -107), MyQuaternion.FromEulerAngles(0, 0/*(float)Math.PI*/, 0));
        }
 public UICharacterController(Character character)
     : base(character)
 {
     player = (UIPlayer)character.Player;
     updateDirections = true;
 }
示例#3
0
        void JoinServer(object d)
        {
            if (gameController != null)
                gameController.EndGame();
            waitingForJoin = true;
            JoinGameData data = (JoinGameData)d;
            ProgressReporter reporter = new ProgressReporter();
            Thread bkgLoader = new Thread(new ParameterizedThreadStart(delegate(object o)
            {
                object[] tab = (object[])o;
                World.FromFileBkg((string)tab[0], (ProgressReporter)tab[1]);
            }));
            bkgLoader.Start(new object[] { AppConfig.MapPath + "respawn_config.xml", reporter });
            //World.FromFileBkg("respawn_config.xml", reporter);
            //World.Instance=new
            //ShipClass shipClass=ObjectCache.Instance.GetShipClass(data.PlayerShip);
            frameworkWindow.RemoveLayer(mainView);
            UIPlayer player = new UIPlayer(data.PlayerName, null);
            gameController = new RemoteGameController(player, data.ClientSide, data.GameInfo);
            mainView = new MainView(reporter, player, gameController);

            frameworkWindow.RemoveLayer(mainMenu);
            frameworkWindow.PushLayer(mainView);
            Cursor.Hide();
        }