public bool removeResource(Resource r, int count) { ResourceItem ri = findResource(r); if (ri == null) return false; if (ri.count < count) return false; ri.count -= count; if (ri.count <= 0) items.Remove(ri); return true; }
private ResourceItem findResource(Resource resource) { for (int i = 0; i < items.Count; i++) { if (items[i] is ResourceItem) { ResourceItem has = (ResourceItem)items[i]; if (has.resource == resource) return has; } } return null; }
public ResourceRecipe(Resource resource) : base(new ResourceItem(resource, 1)) { this.resource = resource; }
public OreTile(TileID id, Resource toDrop) : base(id) { this.toDrop = toDrop; this.color = toDrop.color & 0xffff00; }
public ResourceItem(Resource resource, int count) { this.resource = resource; this.count = count; }
public ResourceItem(Resource resource) { this.resource = resource; }
public bool hasResources(Resource r, int count) { ResourceItem ri = findResource(r); if (ri == null) return false; return ri.count >= count; }
public Recipe addCost(Resource resource, int count) { costs.add(new ResourceItem(resource, count)); return this; }