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); }
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(); }