public List<ResourceAmount> ListResourcesWithTag(Resource.ResourceTags tag) { Dictionary<string, ResourceAmount> resources = ListResources(); return (from pair in resources where pair.Value.ResourceType.Tags.Contains(tag) select pair.Value).ToList(); }
public ResourceAmount(Resource resourceType, int numResources) { ResourceType = resourceType; NumResources = numResources; }
public int CountResourcesWithTag(Resource.ResourceTags tag) { List<ResourceAmount> resources = ListResourcesWithTag(tag); int amounts = 0; foreach (ResourceAmount amount in resources) { amounts += amount.NumResources; } return amounts; }
public SearchFreeStockpileAct(CreatureAI creature, string StockpileBlackboardName, string VoxelBlackboardName, Resource itemToStock) : base(creature) { Name = "Search Stockpile " + StockpileBlackboardName; this.StockpileBlackboardName = StockpileBlackboardName; this.VoxelBlackboardName = VoxelBlackboardName; Item = itemToStock; }
public ResourceAmount(Resource resource) { ResourceType = resource; NumResources = 1; }
public static Resource GenerateTrinket(ResourceType baseMaterial, float quality) { Resource toReturn = new Resource(Resources[ResourceType.Trinket]); string[] names = { "Ring", "Pendant", "Earrings", "Crown", "Brace", "Figure", "Staff" }; Point[] tiles = { new Point(0, 0), new Point(0, 1), new Point(0, 2), new Point(0, 3), new Point(2, 0), new Point(2, 1), new Point(2, 2) }; float[] values = { 1.5f, 1.8f, 1.6f, 3.0f, 2.0f, 3.5f, 4.0f }; int item = PlayState.Random.Next(names.Count()); string name = names[item]; Point tile = tiles[item]; toReturn.MoneyValue = values[item]*Resources[baseMaterial].MoneyValue * 3 * quality; string qualityType = ""; if (quality < 0.5f) { qualityType = "Very poor"; } else if (quality < 0.75) { qualityType = "Poor"; } else if (quality < 1.0f) { qualityType = "Mediocre"; } else if (quality < 1.25f) { qualityType = "Good"; } else if (quality < 1.75f) { qualityType = "Excellent"; } else if(quality < 2.0f) { qualityType = "Masterwork"; } else { qualityType = "Legendary"; } toReturn.Type = baseMaterial + " " + name + " (" + qualityType + ")"; if (Resources.ContainsKey(toReturn.Type)) { return Resources[toReturn.Type]; } toReturn.Tint = Resources[baseMaterial].Tint; toReturn.Image = new NamedImageFrame(ContentPaths.Entities.DwarfObjects.crafts, 32, tile.X, tile.Y); Add(toReturn); toReturn.ShortName = baseMaterial + " " + names[item]; return toReturn; }
public static void Add(Resource resource) { Resources[resource.ResourceName] = resource; EntityFactory.RegisterEntity(resource.ResourceName + " Resource", (position, data) => new ResourceEntity(resource.Type, position)); }
public ResourceAmount(Resource resourceType, int numResources) { ResourceType = resourceType.Type; NumResources = numResources; }
public ResourceAmount(Resource resource) { ResourceType = resource.Type; NumResources = 1; }
public Strawman(ComponentManager manager, Vector3 position, Resource Resource) : base("Strawman", manager, position, Resource, new SpriteSheet(ContentPaths.Entities.Furniture.interior_furniture, 32, 32), new Point(1, 5)) { }