This commit is contained in:
Paul 2021-07-25 17:33:55 +02:00
commit 43086ea1eb
553 changed files with 20250 additions and 0 deletions

View file

@ -0,0 +1,143 @@
--local functions
local function config(name)
return settings.startup['fu_activator_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_activator/fu_activator_'..name
end
--item
data:extend({
{
name = 'fu_activator_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_activator_entity',
stack_size = 20,
subgroup = 'fu_item_subgroup_c',
order = 'a-a',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_activator_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-1.4,-1.4},{1.4,1.4}},
selection_box = {{-1.5,-1.5},{1.5,1.5}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_activator_item',
},
crafting_categories = {'fu_activator_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'burner',
fuel_inventory_size = 3,
burnt_inventory_size = 3,
effectivity = 1,
emissions_per_minute = 40,
fuel_categories = {'fi_basic_fuel','fi_advanced_fuel'}
},
energy_usage = '50MW',
allowed_effects = {"speed", "consumption", "pollution"},
module_specification = {
module_info_icon_shift = {
0,
0.8
},
module_slots = 2
},
--fluids
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-2, 0}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {2, 0}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {0, -2}},
},
production_type = "output"
},
},
--animation
animation = {
north = {
filename = sprite('entity_animation.png'),
size = {420,448},
scale = 0.26,
line_length = 2,
frame_count = 2,
animation_speed = 0.5,
shift = {0,-0.2}
},
east = {
filename = sprite('entity_animation.png'),
size = {420,448},
scale = 0.26,
line_length = 2,
frame_count = 2,
animation_speed = 0.5,
shift = {0,-0.2}
},
south = {
filename = sprite('entity_animation.png'),
size = {420,448},
scale = 0.26,
line_length = 2,
frame_count = 2,
animation_speed = 0.5,
shift = {0,-0.2}
},
west = {
filename = sprite('entity_animation.png'),
size = {420,448},
scale = 0.26,
line_length = 2,
frame_count = 2,
animation_speed = 0.5,
shift = {0,-0.2},
},
},
working_sound = {
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,144 @@
--local functions
local function config(name)
return settings.startup['fu_boiler_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_boiler/fu_boiler_'..name
end
--item
data:extend({
{
name = 'fu_boiler_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_boiler_entity',
stack_size = 20,
subgroup = 'fu_item_subgroup_c',
order = 'a-c',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_boiler_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-1.8,-1.8},{1.8,1.8}},
selection_box = {{-2,-2},{2,2}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_boiler_item',
},
crafting_categories = {'fu_boiler_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'heat',
max_temperature = 1000,
specific_heat = '100MJ',
max_transfer = '10GW',
connections = {
{position = {0.5,-1.8}, direction = defines.direction.north},
{position = {-0.5,-1.8}, direction = defines.direction.north},
}
},
energy_usage = '150MW',
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
module_specification = {
module_info_icon_shift = {
0,
0.8
},
module_slots = 2
},
--fluids
fluid_boxes = {
{
filter = 'water',
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-2.5, -0.5}}
},
production_type = "input"
},
{
filter = 'fu_hydrogen',
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {2.5, -0.5}},
},
production_type = "output"
},
{
filter = 'fu_oxygen',
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {0.5, 2.5}},
},
production_type = "output"
},
},
--animation
animation = {
north = {
filename = sprite('entity_animation.png'),
size = {512,512},
scale = 0.255,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
east = {
filename = sprite('entity_animation.png'),
size = {512,512},
scale = 0.255,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
south = {
filename = sprite('entity_animation.png'),
size = {512,512},
scale = 0.255,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
west = {
filename = sprite('entity_animation.png'),
size = {512,512},
scale = 0.255,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
},
working_sound = {
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,105 @@
--local functions
local function config(name)
return settings.startup['fu_burner_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_burner/fu_burner_'..name
end
--item
data:extend({
{
name = 'fu_burner_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_burner_entity',
stack_size = 20,
subgroup = 'fu_item_subgroup_c',
order = 'a-b',
},
})
--entity
data:extend({
{
name = 'fu_burner_entity',
type = 'generator',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral", "not-rotatable"},
--minable
minable = {
mining_time = 1,
result = 'fu_burner_item',
},
max_health = 150,
corpse = 'small-remnants',
collision_box = {{-1.4,-1.4},{1.4,1.4}},
selection_box = {{-1.5,-1.5},{1.5,1.5}},
--energy
effectivity = 1,
energy_source = {
type = 'electric',
usage_priority = 'primary-output',
input_flow_limit = '0W',
output_flow_limit = tostring(config('power_output'))..'W',
},
max_power_output = tostring(config('power_output'))..'W',
maximum_temperature = 40,
fluid_usage_per_tick = 1,
fluid_box = {
base_area = 1,
height = 2,
base_level = -1,
filter = 'fu_oxygen',
minimum_temperature = 0,
maximum_temperature = 40,
production_type = 'input-output',
pipe_connections = {
{type = "input-output", position = {2, 0}},
{type = "input-output", position = {-2, 0}},
},
},
fluid_input = {
name = 'fu_oxygen',
minimum_temperature = 0,
},
--animation
vertical_animation = {
filename = sprite('entity_animation.png'),
size = {420,448},
scale = 0.26,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
shift = {0,-0.2}
},
horizontal_animation = {
filename = sprite('entity_animation.png'),
size = {420,448},
scale = 0.26,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
shift = {0,-0.2}
},
map_color = {r=0, g=0, b=1, a=1},
working_sound =
{
sound = { filename = "__base__/sound/furnace.ogg" },
apparent_volume = 1.5,
},
smoke = {
{
name = 'smoke',
tape = 'trival-smoke',
frequency = 0.5,
position = {-0.6,-1.8},
--deviation = {x = -2, y = -2},
duration = 0.5,
},
},
},
})

View file

@ -0,0 +1,145 @@
--local functions
local function config(name)
return settings.startup['fu_exchanger_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_exchanger/fu_exchanger_'..name
end
--item
data:extend({
{
name = 'fu_exchanger_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_exchanger_entity',
stack_size = 20,
subgroup = 'fu_item_subgroup_c',
order = 'a-c',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_exchanger_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-1.8,-1.8},{1.8,1.8}},
selection_box = {{-2,-2},{2,2}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_exchanger_item',
},
crafting_categories = {'fu_exchanger_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'void',
},
energy_usage = '20MW',
allowed_effects = {"speed", "consumption", "pollution"},
module_specification = {
module_info_icon_shift = {
0,
0.8
},
module_slots = 2
},
--fluids
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-2.5, -0.5}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-2.5, 1.5}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {2.5, -0.5}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {2.5, 1.5}},
},
production_type = "output"
},
},
--animation
animation = {
north = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
east = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
south = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
west = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
},
working_sound = {
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,139 @@
--local functions
local function config(name)
return settings.startup['fu_fusor_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_fusor/fu_fusor_'..name
end
--item
data:extend({
{
name = 'fu_fusor_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_fusor_entity',
stack_size = 20,
subgroup = 'fu_item_subgroup_d',
order = 'a-a',
},
{
name = 'fu_tech_sign_item',
type = 'item',
icon = sprite('tech_sign_item.png'),
icon_size = 64,
stack_size = 10000,
subgroup = 'fu_item_subgroup_b',
order = 'a-a',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_fusor_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-2.8,-2.3},{2.8,2.3}},
selection_box = {{-3,-2.5},{3,2.5}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_fusor_item',
},
crafting_categories = {'fu_fusor_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'electric',
buffer_capacity = '400MJ',
usage_priority = 'secondary-input',
input_flow_limit = '600MW',
},
energy_usage = '400MW',
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
module_specification = {
module_info_icon_shift = {
0,
0.8
},
module_slots = 2
},
--fluid
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-1.5, -3}},
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {1.5, -3}}
},
production_type = "input"
},
},
--animation
animation = {
north = {
filename = sprite('entity_animation.png'),
size = {512*2,512*2},
scale = 0.2,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
shift = {0,-1},
},
east = {
filename = sprite('entity_animation.png'),
size = {512*2,512*2},
scale = 0.2,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
shift = {0,-1},
},
south = {
filename = sprite('entity_animation.png'),
size = {512*2,512*2},
scale = 0.2,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
shift = {0,-1},
},
west = {
filename = sprite('entity_animation.png'),
size = {512*2,512*2},
scale = 0.2,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
shift = {0,-1},
},
},
working_sound = {
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,43 @@
--local functions
local function config(name)
return settings.startup['el_lead_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_lead/fu_lead_'..name
end
--ore
data:extend({
{
name = 'fu_lead_ore_item',
type = 'item',
icon = sprite('ore_item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_a',
order = 'a-a',
},
})
--item
data:extend({
{
name = 'fu_lead_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_a',
order = 'b-a',
},
{
name = 'fu_crushed_lead_item',
type = 'item',
icon = sprite('crushed_item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_a-b',
order = 'c-a',
},
})

View file

@ -0,0 +1,277 @@
--local functions
local function config(name)
return settings.startup['fu_stelar_reactor_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_reactor/fu_reactor_'..name
end
--item
data:extend({
{
name = 'fu_stelar_reactor_item',
type = 'item',
icon = sprite('stelar_item.png'),
icon_size = 64,
place_result = 'fu_stelar_reactor_entity',
stack_size = 20,
subgroup = 'fu_item_subgroup_d',
order = 'a-c',
},
{
name = 'fu_tokamak_reactor_item',
type = 'item',
icon = sprite('tokamak_item.png'),
icon_size = 64,
place_result = 'fu_tokamak_reactor_entity',
stack_size = 20,
subgroup = 'fu_item_subgroup_d',
order = 'a-b',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_stelar_reactor_entity',
type = 'assembling-machine',
icon = sprite('stelar_entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 1500,
corpse = 'big-remnants',
collision_box = {{-5.8,-3.8},{5.8,5.8}},
selection_box = {{-6,-4},{6,6}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_stelar_reactor_item',
},
crafting_categories = {'fu_stelar_reactor_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'electric',
buffer_capacity = '400MJ',
usage_priority = 'secondary-input',
input_flow_limit = '600MW',
},
energy_usage = '400MW',
--fluid
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-1.5, -4.5}},
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {1.5, -4.5}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {0.5, -4.5}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {-0.5, -4.5}}
},
production_type = "output"
},
},
--animation
animation = {
north = {
filename = sprite('stelar_entity_animation.png'),
size = {512*2,512*2},
scale = 0.4,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
shift = {0,0.4},
},
east = {
filename = sprite('stelar_entity_animation.png'),
size = {512*2,512*2},
scale = 0.4,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
shift = {0,0.4},
},
south = {
filename = sprite('stelar_entity_animation.png'),
size = {512*2,512*2},
scale = 0.4,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
shift = {0,0.4},
},
west = {
filename = sprite('stelar_entity_animation.png'),
size = {512*2,512*2},
scale = 0.4,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
shift = {0,0.4},
},
},
working_sound = {
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
apparent_volume = 2.5,
},
},
{
name = 'fu_tokamak_reactor_entity',
type = 'assembling-machine',
icon = sprite('tokamak_entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 1500,
corpse = 'big-remnants',
collision_box = {{-5.8,-3.8},{5.8,5.8}},
selection_box = {{-6,-4},{6,6}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_tokamak_reactor_item',
},
crafting_categories = {'fu_tokamak_reactor_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'electric',
buffer_capacity = '400MJ',
usage_priority = 'secondary-input',
input_flow_limit = '600MW',
},
energy_usage = '400MW',
--fluid
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-1.5, -4.5}},
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {1.5, -4.5}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {0.5, -4.5}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {-0.5, -4.5}}
},
production_type = "output"
},
},
--animation
animation = {
north = {
filename = sprite('tokamak_entity_animation_vertikal.png'),
size = {512*3,512*2},
scale = 0.37,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
shift = {2.34,0.3},
},
east = {
filename = sprite('tokamak_entity_animation_horizontal.png'),
size = {512*3,512*2},
scale = 0.37,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
shift = {2.34,0.3},
},
south = {
filename = sprite('tokamak_entity_animation_vertikal.png'),
size = {512*3,512*2},
scale = 0.37,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
shift = {2.34,0.3},
},
west = {
filename = sprite('tokamak_entity_animation_horizontal.png'),
size = {512*3,512*2},
scale = 0.37,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
shift = {2.34,0.3},
},
},
working_sound = {
sound = { filename = '__base__/sound/nuclear-reactor-1.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,259 @@
--local functions
local function config(name)
return settings.startup['fu_robo_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_robo/fu_robo_'..name
end
--item
data:extend({
{
name = 'fu_robo_logistic_item',
type = 'item',
icon = sprite('logistic_item.png'),
icon_size = 64,
place_result = 'fu_robo_logistic_entity',
stack_size = 50,
subgroup = 'fu_item_subgroup_d',
order = 'b-a',
},
{
name = 'fu_robo_construction_item',
type = 'item',
icon = sprite('construction_item.png'),
icon_size = 64,
place_result = 'fu_robo_construction_entity',
stack_size = 50,
subgroup = 'fu_item_subgroup_d',
order = 'b-b',
},
})
data:extend({
{
name = 'fu_robo_logistic_entity',
type = 'logistic-robot',
icon = sprite('logistic_entity_icon.png'),
icon_size = 64,
flags = {"placeable-player", "player-creation", "placeable-off-grid", "not-on-map"},
max_health = 800,
corpse = 'big-remnants',
collision_box = {{0, 0}, {0, 0}},
selection_box = {{-0.5, -1.5}, {0.5, -0.5}},
minable = {
mining_time = 1,
result = 'fu_robo_logistic_item',
},
max_payload_size = 5,
speed = 0.24,
transfer_distance = 0.5,
max_energy = "20MJ",
energy_per_tick = "0.14kJ",
speed_multiplier_when_out_of_energy = 0.2,
energy_per_move = "10kJ",
min_to_charge = 0.2,
max_to_charge = 0.9,
cargo_centered = {0.0, 0.2},
idle =
{
filename = sprite('logistic_entity_animation.png'),
priority = "high",
line_length = 16,
width = 128,
height = 128,
scale = 0.5,
frame_count = 1,
shift = {0,0},
direction_count = 16,
},
idle_with_cargo =
{
filename = sprite('logistic_entity_animation.png'),
priority = "high",
line_length = 16,
width = 128,
height = 128,
scale = 0.5,
frame_count = 1,
shift = {0,0},
direction_count = 16,
},
in_motion =
{
filename = sprite('logistic_entity_animation.png'),
priority = "high",
line_length = 16,
width = 128,
height = 128,
scale = 0.5,
frame_count = 1,
shift = {0,0},
direction_count = 16,
},
in_motion_with_cargo =
{
filename = sprite('logistic_entity_animation.png'),
priority = "high",
line_length = 16,
width = 128,
height = 128,
scale = 0.5,
frame_count = 1,
shift = {0,0},
direction_count = 16,
},
shadow_idle =
{
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
priority = "high",
line_length = 16,
width = 58,
height = 29,
frame_count = 1,
direction_count = 16,
y = 29,
draw_as_shadow = true,
},
shadow_in_motion =
{
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
priority = "high",
line_length = 16,
width = 58,
height = 29,
frame_count = 1,
direction_count = 16,
draw_as_shadow = true,
},
shadow_idle_with_cargo =
{
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
priority = "high",
line_length = 16,
width = 58,
height = 29,
frame_count = 1,
direction_count = 16,
draw_as_shadow = true,
},
shadow_in_motion_with_cargo =
{
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
priority = "high",
line_length = 16,
width = 58,
height = 29,
frame_count = 1,
direction_count = 16,
draw_as_shadow = true,
},
},
{
name = 'fu_robo_construction_entity',
type = 'construction-robot',
icon = sprite('construction_entity_icon.png'),
icon_size = 64,
flags = {"placeable-player", "player-creation", "placeable-off-grid", "not-on-map"},
max_health = 800,
corpse = 'big-remnants',
collision_box = {{0, 0}, {0, 0}},
selection_box = {{-0.5, -1.5}, {0.5, -0.5}},
minable = {
mining_time = 1,
result = 'fu_robo_construction_item',
},
working_light = {intensity = 0.8, size = 3},
max_payload_size = 5,
speed = 0.24,
transfer_distance = 0.5,
max_energy = "20MJ",
energy_per_tick = "0.14kJ",
speed_multiplier_when_out_of_energy = 0.2,
energy_per_move = "10kJ",
min_to_charge = 0.2,
max_to_charge = 0.9,
cargo_centered = {0.0, 0.2},
construction_vector = {0.30, 0.22},
idle =
{
filename = sprite('construction_entity_animation.png'),
priority = "high",
line_length = 16,
width = 128,
height = 128,
scale = 0.5,
frame_count = 1,
shift = {0,0},
direction_count = 16,
},
in_motion =
{
filename = sprite('construction_entity_animation.png'),
priority = "high",
line_length = 16,
width = 128,
height = 128,
scale = 0.5,
frame_count = 1,
shift = {0,0},
direction_count = 16,
},
shadow_idle =
{
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
priority = "high",
line_length = 16,
width = 58,
height = 29,
frame_count = 1,
direction_count = 16,
y = 29,
draw_as_shadow = true,
},
shadow_in_motion =
{
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
priority = "high",
line_length = 16,
width = 58,
height = 29,
frame_count = 1,
direction_count = 16,
draw_as_shadow = true,
},
working =
{
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
priority = "high",
line_length = 16,
width = 58,
height = 29,
frame_count = 1,
direction_count = 16,
draw_as_shadow = true,
},
shadow_working =
{
filename = "__base__/graphics/entity/logistic-robot/logistic-robot-shadow.png",
priority = "high",
line_length = 16,
width = 58,
height = 29,
frame_count = 1,
direction_count = 16,
draw_as_shadow = true,
},
smoke =
{
filename = "__base__/graphics/entity/smoke-construction/smoke-01.png",
width = 39,
height = 32,
frame_count = 19,
line_length = 19,
shift = {0.078125, -0.15625},
animation_speed = 0.3,
},
},
})

View file

@ -0,0 +1,122 @@
--local functions
local function config(name)
return settings.startup['fu_space_probe_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_space_probe/fu_space_probe_'..name
end
--item
data:extend({
--space probes
{
name = 'fu_space_probe_sputnik_item',
type = 'item',
icon = sprite('sputnik_item.png'),
icon_size = 64,
stack_size = 1,
subgroup = 'fu_item_subgroup_d',
rocket_launch_product = {'fu_space_probe_data_card_1_item',10},
order = 'd-a',
},
{
name = 'fu_space_probe_probe_item',
type = 'item',
icon = sprite('probe_item.png'),
icon_size = 64,
stack_size = 1,
subgroup = 'fu_item_subgroup_d',
rocket_launch_product = {'fu_space_probe_data_card_3_item',10},
order = 'd-b',
},
{
name = 'fu_space_probe_deep_probe_item',
type = 'item',
icon = sprite('deep_probe_item.png'),
icon_size = 64,
stack_size = 1,
subgroup = 'fu_item_subgroup_d',
rocket_launch_product = {'fu_space_probe_ore_item',100},
order = 'd-c',
},
--data cards
{
name = 'fu_space_probe_data_card_1_item',
type = 'item',
icon = sprite('data_card_1_item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_a',
order = 'd-a',
},
{
name = 'fu_space_probe_data_card_2_item',
type = 'item',
icon = sprite('data_card_2_item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_a',
order = 'd-b',
},
{
name = 'fu_space_probe_data_card_3_item',
type = 'item',
icon = sprite('data_card_3_item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_a',
order = 'd-c',
},
-- matter
--ore
{
name = 'fu_space_probe_ore_item',
type = 'item',
icon = sprite('ore_item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_d',
order = 'd-d',
},
{
name = 'fu_space_probe_down_matter_item',
type = 'item',
icon = sprite('down_matter_item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_a',
order = 'd-d',
},
{
name = 'fu_space_probe_up_matter_item',
type = 'item',
icon = sprite('up_matter_item.png'),
icon_size = 64,
stack_size = 100,
subgroup = 'fu_item_subgroup_a',
order = 'd-e',
},
--science
{
name = 'fu_space_probe_science_item',
type = 'tool',
icon = sprite('science_item.png'),
durability = 1,
icon_size = 64,
stack_size = 10000,
subgroup = 'fu_item_subgroup_b',
order = 'd-a',
},
{
name = 'fu_space_probe_science_item_1',
type = 'item',
icon = sprite('science_item_1.png'),
durability = 1,
icon_size = 64,
stack_size = 10000,
subgroup = 'fu_item_subgroup_b',
order = 'd-b',
},
})

View file

@ -0,0 +1,145 @@
--local functions
local function config(name)
return settings.startup['fu_star_engine_caster_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_caster/fu_star_engine_caster_'..name
end
--item
data:extend({
{
name = 'fu_star_engine_caster_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_star_engine_caster_entity',
stack_size = 20,
subgroup = 'fu_item_subgroup_d-b',
order = 'a-c',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_star_engine_caster_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-1.8,-1.8},{1.8,1.8}},
selection_box = {{-2,-2},{2,2}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_star_engine_caster_item',
},
crafting_categories = {'fu_star_engine_caster_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'void',
},
energy_usage = '20MW',
allowed_effects = {"speed", "productivity", "consumption", "pollution"},
module_specification = {
module_info_icon_shift = {
0,
0.8
},
module_slots = 2
},
--fluids
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-2.5, -0.5}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "input", position = {-2.5, 1.5}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {2.5, -0.5}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_covers = pipecoverspictures(),
pipe_connections =
{
{type = "output", position = {2.5, 1.5}},
},
production_type = "output"
},
},
--animation
animation = {
north = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
east = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
south = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
west = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
},
working_sound = {
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,174 @@
--local functions
local function config(name)
return settings.startup['fu_star_engine_cooler_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_cooler/fu_star_engine_cooler_'..name
end
--item
data:extend({
{
name = 'fu_star_engine_cooler_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_star_engine_cooler_entity',
stack_size = 1,
subgroup = 'fu_item_subgroup_d-b',
order = 'b-b',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_star_engine_cooler_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-6.5,-10.5},{6.5,10.5}},
selection_box = {{-6.5,-10.5},{6.5,10.5}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_star_engine_cooler_item',
},
crafting_categories = {'fu_star_engine_cooler_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'electric',
usage_priority = 'secondary-input',
input_flow_limit = '4GW',
},
energy_usage = '0.5GW',
--fluids
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {-4, -11}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {4, -11}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {0, 11}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {-2, 11}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {2, 11}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {-4, 11}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {4, 11}},
},
production_type = "output"
},
},
--animation
animation = {
north = {
filename = sprite('entity_animation_1.png'),
size = {600*2,512*2},
scale = 0.8,
shift = {5.5,0.5},
line_length = 1,
lines_per_file = 1,
frame_count = 1,
animation_speed = 0.3,
},
east = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
south = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
west = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
},
working_sound = {
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,176 @@
--local functions
local function config(name)
return settings.startup['fu_star_engine_cooler_up_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_cooler_up/fu_star_engine_cooler_up_'..name
end
--item
data:extend({
{
name = 'fu_star_engine_cooler_up_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_star_engine_cooler_up_entity',
stack_size = 1,
subgroup = 'fu_item_subgroup_d-b',
order = 'b-a',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_star_engine_cooler_up_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-6.5,-10.5},{6.5,10.5}},
selection_box = {{-6.5,-10.5},{6.5,10.5}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_star_engine_cooler_up_item',
},
crafting_categories = {'fu_star_engine_cooler_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'electric',
usage_priority = 'secondary-input',
input_flow_limit = '4GW',
},
energy_usage = '0.5GW',
--fluids
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {-4, 11}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {4, 11}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {0, -11}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {-2, -11}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {2, -11}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {-4, -11}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {4, -11}},
},
production_type = "output"
},
--{-4, -11}{4, -11}
--{-2, 11}{2, 11}{0, 11}{-4, 11}{4, 11}
},
--animation
animation = {
north = {
filename = sprite('entity_animation_1.png'),
size = {600*2,512*2},
scale = 0.8,
shift = {5.5,-0.5},
line_length = 1,
lines_per_file = 1,
frame_count = 1,
animation_speed = 0.3,
},
east = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
south = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
west = {
filename = sprite('entity_animation.png'),
size = {480,500},
scale = 0.27,
line_length = 1,
frame_count = 1,
animation_speed = 0.5,
},
},
working_sound = {
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,186 @@
--local functions
local function config(name)
return settings.startup['fu_star_engine_core_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_core/fu_star_engine_core_'..name
end
--item
data:extend({
{
name = 'fu_star_engine_core_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_star_engine_core_entity',
stack_size = 1,
subgroup = 'fu_item_subgroup_d-b',
order = 'a-a',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_star_engine_core_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-8.5,-4.5},{8.5,8.5}},
selection_box = {{-8.5,-4.5},{8.5,8.5}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_star_engine_core_item',
},
crafting_categories = {'fu_star_engine_core_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'electric',
usage_priority = 'secondary-input',
input_flow_limit = '4GW',
},
energy_usage = '1GW',
--fluids
fluid_boxes = {
--in
--right
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {-9, -1}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {-9, 4}}
},
production_type = "input"
},
--left
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {9, -1}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {9, 4}}
},
production_type = "input"
},
--out
--up
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {-4, -5}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {4, -5}},
},
production_type = "output"
},
--down
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {-4, 9}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {4, 9}},
},
production_type = "output"
},
},
--animation
animation = {
north = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.6,
shift = {2,0},
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
east = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.5,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
},
south = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.5,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
},
west = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.5,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.5,
},
},
working_sound = {
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,157 @@
--local functions
local function config(name)
return settings.startup['fu_star_engine_heater_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_heater/fu_star_engine_heater_'..name
end
--item
data:extend({
{
name = 'fu_star_engine_heater_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_star_engine_heater_entity',
stack_size = 1,
subgroup = 'fu_item_subgroup_d-b',
order = 'c-b',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_star_engine_heater_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-15,-6.5},{11,6.5}},
selection_box = {{-15,-6.5},{11,6.5}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_star_engine_heater_item',
},
crafting_categories = {'fu_star_engine_heater_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'electric',
usage_priority = 'secondary-input',
input_flow_limit = '4GW',
},
energy_usage = '0.7GW',
--fluids
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {11.5, 0}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {11.5, 3}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {11.5, -3}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {-15.5, -2}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {-15.5, 3}},
},
production_type = "output"
},
--{-15, -3.5}}{-15, 3.5}}
--{11, 0}},{11, 3.5}},{11, -3.5}},
},
--animation
animation = {
north = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.8,
shift = {0.3,-0.2},
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
east = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.1,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
south = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.1,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
west = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.1,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
},
working_sound = {
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
apparent_volume = 2.5,
},
},
})

View file

@ -0,0 +1,157 @@
--local functions
local function config(name)
return settings.startup['fu_star_engine_heater_left_'..name].value
end
local function sprite(name)
return '__248k__/ressources/fusion/fu_star_engine/fu_star_engine_heater_left/fu_star_engine_heater_left_'..name
end
--item
data:extend({
{
name = 'fu_star_engine_heater_left_item',
type = 'item',
icon = sprite('item.png'),
icon_size = 64,
place_result = 'fu_star_engine_heater_left_entity',
stack_size = 1,
subgroup = 'fu_item_subgroup_d-b',
order = 'c-a',
},
})
--entity
data:extend({
--prototype
{
name = 'fu_star_engine_heater_left_entity',
type = 'assembling-machine',
icon = sprite('entity_icon.png'),
icon_size = 64,
flags = {"player-creation","placeable-neutral","not-rotatable"},
max_health = 300,
corpse = 'big-remnants',
collision_box = {{-15,-6.5},{11,6.5}},
selection_box = {{-15,-6.5},{11,6.5}},
map_color = {r=0, g=0, b=1, a=1},
minable = {
mining_time = 1,
result = 'fu_star_engine_heater_left_item',
},
crafting_categories = {'fu_star_engine_heater_crafting_category'},
crafting_speed = 1,
energy_source = {
type = 'electric',
usage_priority = 'secondary-input',
input_flow_limit = '4GW',
},
energy_usage = '0.7GW',
--fluids
fluid_boxes = {
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {-15.5, 0}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {-15.5, 3}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = -1,
pipe_connections =
{
{type = "input", position = {-15.5, -3}}
},
production_type = "input"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {11.5, -2}},
},
production_type = "output"
},
{
base_area = 1,
height = 2,
base_level = 1,
pipe_connections =
{
{type = "output", position = {11.5, 3}},
},
production_type = "output"
},
--{-15, -3.5}}{-15, 3.5}}
--{11, 0}},{11, 3.5}},{11, -3.5}},
},
--animation
animation = {
north = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.8,
shift = {0.3-5+0.1,-0.2},
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
east = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.1,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
south = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.1,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
west = {
filename = sprite('entity_animation.png'),
size = {600*2,512*2},
scale = 0.1,
line_length = 3,
lines_per_file = 3,
frame_count = 9,
animation_speed = 0.3,
},
},
working_sound = {
sound = { filename = '__base__/sound/heat-exchanger.ogg'},
apparent_volume = 2.5,
},
},
})