Esempio n. 1
0
        protected override void LoadContent()
        {
            // Create a new SpriteBatch, which can be used to draw textures.

            // TODO: use this.Content to load your game content here
            //_player = Content.Load<Texture2D>("orc");
            _bitmapFont = Game.Content.Load <BitmapFont>("montserrat-32");

            _map = Game.Content.Load <TiledMap>("01");

            _player = new Client.Model.Player(Game.Content);

            SetCameraPosition(_player.Position);
        }
Esempio n. 2
0
        private void SignalR()
        {
            var con = new HubConnection(ConfigurationManager.AppSettings["realm"]);

            _hubProxy = con.CreateHubProxy("ElvenHub");
            _hubProxy.On <DateTime>("Pong", (time) =>
            {
                var i = 0;
            });

            _hubProxy.On <Payload>("PushPayload", (payload) =>
            {
                switch (payload.Type)
                {
                case Payloadtype.AddEntity:    // add player
                    if (payload.Gameobject.ConnectionId != _connectionId)
                    {
                        var newPlayer = new Client.Model.Player(Game.Content)
                        {
                            ConnectionId = payload.Gameobject.ConnectionId
                        };
                        newPlayer.SetPosition(new Vector2(
                                                  payload.Gameobject.Position.X,
                                                  payload.Gameobject.Position.Y));
                        _players.Add(newPlayer);
                    }
                    else
                    {
                        _player.SetPosition(new Vector2(
                                                payload.Gameobject.Position.X,
                                                payload.Gameobject.Position.Y));
                    }
                    break;

                case Payloadtype.Move:    // move
                    var p            = _players.Find(a => a.ConnectionId == payload.Gameobject.ConnectionId);
                    var isThisPlayer = false;
                    if (p == null)
                    {
                        if (_connectionId == payload.Gameobject.ConnectionId)
                        {
                            isThisPlayer = true;
                            p            = _player;
                        }
                        else
                        {
                            return;
                        }
                    }
                    p.SetPosition(new Vector2(
                                      payload.Gameobject.Position.X,
                                      payload.Gameobject.Position.Y));

                    p.Animation = string.IsNullOrEmpty(payload.Animation) ? "" : payload.Animation;

                    if (isThisPlayer)
                    {
                        p.UpdateCameraposition = true;
                    }

                    break;
                }
            });

            con.Start().Wait();
            _connectionId = con.ConnectionId;

            _hubProxy.Invoke("EnterWorld").Wait();
        }