local hit_effects = require ("__base__/prototypes/entity/demo-hit-effects") local sounds = require("__base__/prototypes/entity/demo-sounds") data.raw.item["beacon"].subgroup = "module-beacon" data.raw.item["beacon"].fast_replaceable_group = "beacon" data.raw.item["beacon"].next_upgrade = "beacon-2" data:extend( { { type = "item", name = "beacon-2", icon = "__base__/graphics/icons/beacon.png", icon_size = 64, icon_mipmaps = 4, subgroup = "module-beacon", order = "a[beacon]-2", place_result = "beacon-2", stack_size = 10 }, { type = "item", name = "beacon-3", icon = "__base__/graphics/icons/beacon.png", icon_size = 64, icon_mipmaps = 4, subgroup = "module-beacon", order = "a[beacon]-3", place_result = "beacon-3", stack_size = 10 }, { type = "beacon", name = "beacon-2", icon = "__base__/graphics/icons/beacon.png", icon_size = 64, icon_mipmaps = 4, flags = {"placeable-player", "player-creation"}, minable = {mining_time = 0.2, result = "beacon"}, max_health = 300, corpse = "beacon-remnants", dying_explosion = "beacon-explosion", collision_box = {{-1.2, -1.2}, {1.2, 1.2}}, selection_box = {{-1.5, -1.5}, {1.5, 1.5}}, damaged_trigger_effect = hit_effects.entity(), drawing_box = {{-1.5, -2.2}, {1.5, 1.3}}, allowed_effects = {"consumption", "speed", "pollution"}, fast_replaceable_group = "beacon", next_upgrade = "beacon-3", graphics_set = require("__base__/prototypes/entity/beacon-animations"), radius_visualisation_picture = { filename = "__base__/graphics/entity/beacon/beacon-radius-visualization.png", priority = "extra-high-no-scale", width = 10, height = 10 }, supply_area_distance = 6, energy_source = { type = "electric", usage_priority = "secondary-input" }, vehicle_impact_sound = sounds.generic_impact, open_sound = sounds.machine_open, close_sound = sounds.machine_close, energy_usage = "480kW", distribution_effectivity = 1.0, module_specification = { module_slots = 6, module_info_icon_shift = {0, 0.5}, module_info_multi_row_initial_height_modifier = -0.3, module_info_max_icons_per_row = 4, }, water_reflection = { pictures = { filename = "__base__/graphics/entity/beacon/beacon-reflection.png", priority = "extra-high", width = 24, height = 28, shift = util.by_pixel(0, 55), variation_count = 1, scale = 5, }, rotate = false, orientation_to_variation = false } }, { type = "beacon", name = "beacon-3", icon = "__base__/graphics/icons/beacon.png", icon_size = 64, icon_mipmaps = 4, flags = {"placeable-player", "player-creation"}, minable = {mining_time = 0.2, result = "beacon"}, max_health = 400, corpse = "beacon-remnants", dying_explosion = "beacon-explosion", collision_box = {{-1.2, -1.2}, {1.2, 1.2}}, selection_box = {{-1.5, -1.5}, {1.5, 1.5}}, damaged_trigger_effect = hit_effects.entity(), drawing_box = {{-1.5, -2.2}, {1.5, 1.3}}, allowed_effects = {"consumption", "speed", "pollution"}, fast_replaceable_group = "beacon", graphics_set = require("__base__/prototypes/entity/beacon-animations"), radius_visualisation_picture = { filename = "__base__/graphics/entity/beacon/beacon-radius-visualization.png", priority = "extra-high-no-scale", width = 10, height = 10 }, supply_area_distance = 9, energy_source = { type = "electric", usage_priority = "secondary-input" }, vehicle_impact_sound = sounds.generic_impact, open_sound = sounds.machine_open, close_sound = sounds.machine_close, energy_usage = "480kW", distribution_effectivity = 0.75, module_specification = { module_slots = 6, module_info_icon_shift = {0, 0.5}, module_info_multi_row_initial_height_modifier = -0.3, module_info_max_icons_per_row = 6, }, water_reflection = { pictures = { filename = "__base__/graphics/entity/beacon/beacon-reflection.png", priority = "extra-high", width = 24, height = 28, shift = util.by_pixel(0, 55), variation_count = 1, scale = 5, }, rotate = false, orientation_to_variation = false } }, { type = "recipe", name = "beacon-2", enabled = false, energy_required = 30, ingredients = { {"beacon", 1}, {"electronic-circuit", 20}, {"advanced-circuit", 20}, {"processing-unit", 20}, {"steel-plate", 10}, {"copper-cable", 10}, }, result = "beacon-2" }, { type = "recipe", name = "beacon-3", enabled = false, energy_required = 45, ingredients = { {"beacon-2", 1}, {"electronic-circuit", 20}, {"advanced-circuit", 20}, {"processing-unit", 20}, {"steel-plate", 10}, {"copper-plate", 10}, {"copper-cable", 10}, }, result = "beacon-3" }, { type = "technology", name = "effect-transmission-2", icon = "__base__/graphics/technology/effect-transmission.png", icon_size = 128, effects = { { type = "unlock-recipe", recipe = "beacon-2" } }, prerequisites = { "effect-transmission", "advanced-electronics-2", "production-science-pack" }, unit = { count = 100, ingredients = { {"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}, {"production-science-pack", 1}, }, time = 30 }, order = "i-i-2" }, { type = "technology", name = "effect-transmission-3", icon = "__base__/graphics/technology/effect-transmission.png", icon_size = 128, effects = { { type = "unlock-recipe", recipe = "beacon-3" } }, prerequisites = { "effect-transmission-2", "utility-science-pack" }, unit = { count = 100, ingredients = { {"automation-science-pack", 1}, {"logistic-science-pack", 1}, {"chemical-science-pack", 1}, {"production-science-pack", 1}, {"utility-science-pack", 1} }, time = 30 }, order = "i-i-3" }, } )