/// <summary> /// Returns the first blueprint that matches the name (which can be a guid). Includes sub elements of the blueprint e.g. <see cref="RoomBlueprint.MandatoryItems"/> /// </summary> public HasStatsBlueprint TryGetBlueprint(string name) { return(Blueprints.Select(b => b.TryGetBlueprint(name)).FirstOrDefault(b => b != null)); }