Gardens have reduced crafting speed with quality

This commit is contained in:
Simon Brodtmann 2025-11-24 22:41:04 +01:00
parent 6e1ebd7fe3
commit 923d31db2b

View file

@ -1,11 +1,16 @@
local BioInd = require('common')('Bio_Industries_2') local BioInd = require('common')('Bio_Industries_2')
local ICONPATH = BioInd.modRoot .. "/graphics/icons/"
local ICONPATH_E = BioInd.modRoot .. "/graphics/icons/entity/" local ICONPATH_E = BioInd.modRoot .. "/graphics/icons/entity/"
local ENTITYPATH_BIO = BioInd.modRoot .. "/graphics/entities/" local ENTITYPATH_BIO = BioInd.modRoot .. "/graphics/entities/"
local REMNANTSPATH = BioInd.modRoot .. "/graphics/entities/remnants/" local REMNANTSPATH = BioInd.modRoot .. "/graphics/entities/remnants/"
require("util") require("util")
local crafting_speed_quality_multiplier = mods["quality"] and {
uncommon = 0.83,
rare = 0.66,
epic = 0.50,
legendary = 0.16
} or nil
--- Bio Garden --- Bio Garden
data:extend({ data:extend({
@ -45,13 +50,13 @@ data:extend({
filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_anim_trees.png", filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_anim_trees.png",
width = 256, height = 320, width = 256, height = 320,
frame_count = 20, line_length = 5, frame_count = 20, line_length = 5,
animation_speed = 0.15, scale = 0.5, shift = {0, -0.75} animation_speed = 0.15, scale = 0.5, shift = { 0, -0.75 }
}, },
{ {
filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_shadow.png", filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_shadow.png",
width = 384, height = 320, width = 384, height = 320,
frame_count = 1, repeat_count = 20, -- repeat to match frame_count = 1, repeat_count = 20, -- repeat to match
draw_as_shadow = true, scale = 0.5, shift = {1, -0.75} draw_as_shadow = true, scale = 0.5, shift = { 1, -0.75 }
} }
} }
} }
@ -68,6 +73,7 @@ data:extend({
source_inventory_size = 1, source_inventory_size = 1,
result_inventory_size = 1, result_inventory_size = 1,
crafting_speed = 1.0, crafting_speed = 1.0,
crafting_speed_quality_multiplier = crafting_speed_quality_multiplier,
energy_source = { energy_source = {
type = "electric", type = "electric",
usage_priority = "secondary-input", usage_priority = "secondary-input",
@ -90,23 +96,22 @@ data:extend({
{ {
type = "corpse", type = "corpse",
name = "bi-bio-garden-remnant", name = "bi-bio-garden-remnant",
localised_name = {"entity-name.bi-bio-garden-remnant"}, localised_name = { "entity-name.bi-bio-garden-remnant" },
icon = "__base__/graphics/icons/remnants.png", icon = "__base__/graphics/icons/remnants.png",
icon_size = 64, icon_size = 64,
icon_mipmaps = 4, icon_mipmaps = 4,
BI_add_icon = true, BI_add_icon = true,
flags = {"placeable-neutral", "building-direction-8-way", "not-on-map"}, flags = { "placeable-neutral", "building-direction-8-way", "not-on-map" },
subgroup = "remnants", subgroup = "remnants",
order = "z-z-z", order = "z-z-z",
selection_box = {{-1.5, -1.5}, {1.5, 1.5}}, selection_box = { { -1.5, -1.5 }, { 1.5, 1.5 } },
tile_width = 3, tile_width = 3,
tile_height = 3, tile_height = 3,
selectable_in_game = false, selectable_in_game = false,
time_before_removed = 60 * 60 * 15, -- 15 minutes time_before_removed = 60 * 60 * 15, -- 15 minutes
final_render_layer = "remnants", final_render_layer = "remnants",
remove_on_tile_placement = false, remove_on_tile_placement = false,
animation = animation = {
{
{ {
filename = REMNANTSPATH .. "bio_garden_remnant.png", filename = REMNANTSPATH .. "bio_garden_remnant.png",
line_length = 1, line_length = 1,
@ -114,15 +119,14 @@ data:extend({
height = 320, height = 320,
frame_count = 1, frame_count = 1,
direction_count = 1, direction_count = 1,
shift = {0, -0.75}, shift = { 0, -0.75 },
scale = 0.5 scale = 0.5
} }
} }
}, },
---- Bio Garden Large
---- Bio Garden Large
{ {
type = "assembling-machine", type = "assembling-machine",
name = "bi-bio-garden-large", name = "bi-bio-garden-large",
@ -139,8 +143,8 @@ data:extend({
fast_replaceable_group = "bi-bio-garden-large", fast_replaceable_group = "bi-bio-garden-large",
max_health = 1200, max_health = 1200,
corpse = "bi-bio-garden-large-remnant", corpse = "bi-bio-garden-large-remnant",
collision_box = {{-4.3, -4.3}, {4.3, 4.3}}, collision_box = { { -4.3, -4.3 }, { 4.3, 4.3 } },
selection_box = {{-4.5, -4.5}, {4.5, 4.5}}, selection_box = { { -4.5, -4.5 }, { 4.5, 4.5 } },
scale_entity_info_icon = true, scale_entity_info_icon = true,
fluid_boxes = { fluid_boxes = {
{ {
@ -167,14 +171,14 @@ data:extend({
width = 640, width = 640,
height = 704, height = 704,
scale = 0.5, scale = 0.5,
shift = {0, -0.5}, shift = { 0, -0.5 },
}, },
{ {
filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_large_shadow.png", filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_large_shadow.png",
width = 704, width = 704,
height = 640, height = 640,
scale = 0.5, scale = 0.5,
shift = {0.5, 0}, shift = { 0.5, 0 },
draw_as_shadow = true, draw_as_shadow = true,
} }
} }
@ -182,7 +186,7 @@ data:extend({
working_visualisations = { working_visualisations = {
{ {
light = {intensity = 1.2, size = 20 }, light = { intensity = 1.2, size = 20 },
draw_as_light = true, draw_as_light = true,
effect = "flicker", effect = "flicker",
constant_speed = true, constant_speed = true,
@ -192,7 +196,7 @@ data:extend({
width = 640, width = 640,
height = 640, height = 640,
scale = 0.5, scale = 0.5,
shift = {0, 0}, shift = { 0, 0 },
}, },
}, },
}, },
@ -209,6 +213,7 @@ data:extend({
source_inventory_size = 1, source_inventory_size = 1,
result_inventory_size = 1, result_inventory_size = 1,
crafting_speed = 4.0, crafting_speed = 4.0,
crafting_speed_quality_multiplier = crafting_speed_quality_multiplier,
energy_source = { energy_source = {
type = "electric", type = "electric",
usage_priority = "secondary-input", usage_priority = "secondary-input",
@ -231,23 +236,22 @@ data:extend({
{ {
type = "corpse", type = "corpse",
name = "bi-bio-garden-large-remnant", name = "bi-bio-garden-large-remnant",
localised_name = {"entity-name.bi-bio-garden-large-remnant"}, localised_name = { "entity-name.bi-bio-garden-large-remnant" },
icon = "__base__/graphics/icons/remnants.png", icon = "__base__/graphics/icons/remnants.png",
icon_size = 64, icon_size = 64,
icon_mipmaps = 4, icon_mipmaps = 4,
BI_add_icon = true, BI_add_icon = true,
flags = {"placeable-neutral", "building-direction-8-way", "not-on-map"}, flags = { "placeable-neutral", "building-direction-8-way", "not-on-map" },
subgroup = "remnants", subgroup = "remnants",
order = "z-z-z", order = "z-z-z",
selection_box = {{-4.5, -4.5}, {4.5, 4.5}}, selection_box = { { -4.5, -4.5 }, { 4.5, 4.5 } },
tile_width = 9, tile_width = 9,
tile_height = 9, tile_height = 9,
selectable_in_game = false, selectable_in_game = false,
time_before_removed = 60 * 60 * 15, -- 15 minutes time_before_removed = 60 * 60 * 15, -- 15 minutes
final_render_layer = "remnants", final_render_layer = "remnants",
remove_on_tile_placement = false, remove_on_tile_placement = false,
animation = animation = {
{
{ {
filename = REMNANTSPATH .. "bio_garden_large_remnant.png", filename = REMNANTSPATH .. "bio_garden_large_remnant.png",
line_length = 1, line_length = 1,
@ -255,12 +259,12 @@ data:extend({
height = 704, height = 704,
frame_count = 1, frame_count = 1,
direction_count = 1, direction_count = 1,
shift = {0, -0.5}, shift = { 0, -0.5 },
scale = 0.5 scale = 0.5
} }
} }
}, },
---- Bio Garden Huge ---- Bio Garden Huge
{ {
type = "assembling-machine", type = "assembling-machine",
name = "bi-bio-garden-huge", name = "bi-bio-garden-huge",
@ -277,8 +281,8 @@ data:extend({
fast_replaceable_group = "bi-bio-garden-huge", fast_replaceable_group = "bi-bio-garden-huge",
max_health = 2000, max_health = 2000,
corpse = "bi-bio-garden-huge-remnant", corpse = "bi-bio-garden-huge-remnant",
collision_box = {{-13.3, -13.3}, {13.3, 13.3}}, collision_box = { { -13.3, -13.3 }, { 13.3, 13.3 } },
selection_box = {{-13.5, -13.5}, {13.5, 13.5}}, selection_box = { { -13.5, -13.5 }, { 13.5, 13.5 } },
scale_entity_info_icon = true, scale_entity_info_icon = true,
fluid_boxes = { fluid_boxes = {
{ {
@ -307,7 +311,7 @@ data:extend({
line_length = 1, line_length = 1,
repeat_count = 8, repeat_count = 8,
animation_speed = 1, animation_speed = 1,
shift = {0, -0.5}, shift = { 0, -0.5 },
}, },
{ {
filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_huge_shadow.png", filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_huge_shadow.png",
@ -318,7 +322,7 @@ data:extend({
line_length = 1, line_length = 1,
repeat_count = 8, repeat_count = 8,
animation_speed = 1, animation_speed = 1,
shift = {14, -0.5}, shift = { 14, -0.5 },
draw_as_shadow = true, draw_as_shadow = true,
}, },
}, },
@ -339,7 +343,7 @@ data:extend({
line_length = 8, line_length = 8,
repeat_count = 1, repeat_count = 1,
animation_speed = 1, animation_speed = 1,
shift = {-4.5, -4.5}, shift = { -4.5, -4.5 },
}, },
{ {
filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_huge_turbine_anim.png", filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_huge_turbine_anim.png",
@ -350,7 +354,7 @@ data:extend({
line_length = 8, line_length = 8,
repeat_count = 1, repeat_count = 1,
animation_speed = 1, animation_speed = 1,
shift = {4.5, 4.5}, shift = { 4.5, 4.5 },
}, },
{ {
filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_huge_turbine_anim.png", filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_huge_turbine_anim.png",
@ -361,7 +365,7 @@ data:extend({
line_length = 8, line_length = 8,
repeat_count = 1, repeat_count = 1,
animation_speed = 1, animation_speed = 1,
shift = {4.5, -4.5}, shift = { 4.5, -4.5 },
}, },
{ {
filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_huge_turbine_anim.png", filename = ENTITYPATH_BIO .. "bio_garden/bio_garden_huge_turbine_anim.png",
@ -372,7 +376,7 @@ data:extend({
line_length = 8, line_length = 8,
repeat_count = 1, repeat_count = 1,
animation_speed = 1, animation_speed = 1,
shift = {-4.5, 4.5}, shift = { -4.5, 4.5 },
}, },
}, },
}, },
@ -391,6 +395,7 @@ data:extend({
source_inventory_size = 1, source_inventory_size = 1,
result_inventory_size = 1, result_inventory_size = 1,
crafting_speed = 16, crafting_speed = 16,
crafting_speed_quality_multiplier = crafting_speed_quality_multiplier,
energy_source = { energy_source = {
type = "electric", type = "electric",
usage_priority = "secondary-input", usage_priority = "secondary-input",
@ -410,26 +415,25 @@ data:extend({
}, },
---- corpse ---- corpse
{ {
type = "corpse", type = "corpse",
name = "bi-bio-garden-huge-remnant", name = "bi-bio-garden-huge-remnant",
localised_name = {"entity-name.bi-bio-garden-huge-remnant"}, localised_name = { "entity-name.bi-bio-garden-huge-remnant" },
icon = "__base__/graphics/icons/remnants.png", icon = "__base__/graphics/icons/remnants.png",
icon_size = 64, icon_size = 64,
icon_mipmaps = 4, icon_mipmaps = 4,
BI_add_icon = true, BI_add_icon = true,
flags = {"placeable-neutral", "building-direction-8-way", "not-on-map"}, flags = { "placeable-neutral", "building-direction-8-way", "not-on-map" },
subgroup = "remnants", subgroup = "remnants",
order = "z-z-z", order = "z-z-z",
selection_box = {{-13.5, -13.5}, {13.5, 13.5}}, selection_box = { { -13.5, -13.5 }, { 13.5, 13.5 } },
tile_width = 27, tile_width = 27,
tile_height = 27, tile_height = 27,
selectable_in_game = false, selectable_in_game = false,
time_before_removed = 60 * 60 * 15, -- 15 minutes time_before_removed = 60 * 60 * 15, -- 15 minutes
final_render_layer = "remnants", final_render_layer = "remnants",
remove_on_tile_placement = false, remove_on_tile_placement = false,
animation = animation = {
{
{ {
filename = REMNANTSPATH .. "bio_garden_huge_remnant.png", filename = REMNANTSPATH .. "bio_garden_huge_remnant.png",
line_length = 1, line_length = 1,
@ -437,9 +441,9 @@ data:extend({
height = 928, height = 928,
frame_count = 1, frame_count = 1,
direction_count = 1, direction_count = 1,
shift = {0, -0.5}, shift = { 0, -0.5 },
}
} }
} }
}
}) })