public static ClientEntity ClientEntityFactory(EntityMessage em, BFBContentManager content) { IGraphicsComponent graphicsComponent = null; switch (em.EntityType) { case EntityType.Item: graphicsComponent = new ItemGraphicsComponent(content.GetAtlasTexture(em.TextureKey)); break; case EntityType.Mob: case EntityType.Player: case EntityType.Projectile: case EntityType.Particle: graphicsComponent = new AnimationComponent(content.GetAnimatedTexture(em.TextureKey)); break; } return(new ClientEntity(em.EntityId, new EntityOptions { Dimensions = em.Dimensions, Position = em.Position, Rotation = em.Rotation, Origin = em.Origin, EntityType = em.EntityType }, graphicsComponent)); }