diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..03a576d --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ + +*.zip diff --git a/README.md b/README.md index 2931543..a65d193 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,17 @@ # Rocket Turrets -(Please note: This is a quick and dirty port to 0.18. As soon as the original is ported to 0.18, this will be removed.) +### Features +This mod adds a rocket turret to make rockets great again™. Sadly you would only get one single, boring, depressingly gray type of turret, unless you also play with Bob's Mods. Please think a moment before you load atomic rockets... because it probably won't end well... -Description: -- This mod adds rocket turrets to make rockets great again™. -- The mod is designed to work with Bob's, but you can also use it without. Sadly you would only get one single, boring, depressingly gray type of turret. -- Please think a moment before you load atomic rockets... because it probably won't end well... +### Compatibility +This mod should just work, but I specifically added compatibility for the following mods: -Credit: -- Thanks to [Kamsta99](https://mods.factorio.com/user/kamsta99) for the [original mod](https://mods.factorio.com/mod/RocketTurrets) and the [vanilla version](https://mods.factorio.com/mod/RocketTurretsNonBob). ++ [Bob's Metals, Chemicals and Intermediates](https://mods.factorio.com/mod/bobplates) - more turrets (MK1-MK5) ++ [Informatron](https://mods.factorio.com/mod/informatron) - informational page to explain dangers + +### Locale +If you want to contribute by translating this mod, you can view the existing translations [here](https://github.com/Wyrrrd/Rocket_Turrets/tree/master/locale). I'd be happy to add your language and credits to the next release. + +### Credits +- Thanks to [Kamsta99](https://mods.factorio.com/user/kamsta99) for the [original mod](https://mods.factorio.com/mod/RocketTurrets) and the [vanilla version](https://mods.factorio.com/mod/RocketTurretsNonBob). \ No newline at end of file diff --git a/changelog.txt b/changelog.txt index 0cddf4f..9f18d9b 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,6 +1,13 @@ --------------------------------------------------------------------------------------------------- +Version: 0.18.3 +Date: 2020-03-11 + Changes: + - Moved integrations into separate directory + - Simplified check for bobplates + - Merged MK1 turret with vanilla turret (except for colour, fixes losing all turrets on adding bobplates) +--------------------------------------------------------------------------------------------------- Version: 0.18.2 -Date: 25. 2. 2020 +Date: 2020-02-25 Changes: - Matched changelog file format to what Factorio expects @@ -11,13 +18,13 @@ Date: 25. 2. 2020 - Added translated mod description --------------------------------------------------------------------------------------------------- Version: 0.18.1 -Date: 21. 2. 2020 +Date: 2020-02-21 Features: - Added vanilla turret from Rocket Turrets Vanilla Version - Added check for used items and technology from Bob's Metals, Chemicals and Intermediates to determine if tiered or vanilla turrets should be loaded --------------------------------------------------------------------------------------------------- Version: 0.18.0 -Date: 18. 2. 2020 +Date: 2020-02-18 Changes: - Ported to 0.18 - Added changelog file diff --git a/data.lua b/data.lua index fb04bfd..f743366 100644 --- a/data.lua +++ b/data.lua @@ -5,26 +5,12 @@ require("prototypes.item") require("prototypes.recipe") require("prototypes.technology") -local bob_flag = data.raw.item["steel-gear-wheel"] and data.raw.item["steel-bearing"] and data.raw.item["invar-alloy"] and data.raw.item["titanium-plate"] and data.raw.item["titanium-gear-wheel"] and data.raw.item["nitinol-alloy"] and data.raw.item["nitinol-gear-wheel"] and data.raw.technology["invar-processing"] and data.raw.technology["titanium-processing"] and data.raw.technology["nitinol-processing"] -local adv_flag = data.raw.item["advanced-processing-unit"] +data:extend({ + rocket_entity, + rocket_item, + rocket_recipe, + rocket_tech +}) -if bob_flag then - -- if bobplates enabled, load tiered turrets - data:extend({ - entity1,item1,recipe1,tech1, - entity2,item2,recipe2,tech2, - entity3,item3,recipe3,tech3, - entity4,item4,recipe4,tech4, - entity5,item5,tech5 - }) - if adv_flag then - data:extend({recipe5_2}) - else - data:extend({recipe5_1}) - end -else - -- if not, load single boring gray turret - data:extend({ - entity0,item0,recipe0,tech0 - }) -end \ No newline at end of file +-- integrations +require("integrations.bobplates.data") \ No newline at end of file diff --git a/info.json b/info.json index 2acd1bf..cae2999 100644 --- a/info.json +++ b/info.json @@ -1,6 +1,6 @@ { "name": "Rocket_Turrets", - "version": "0.18.2", + "version": "0.18.3", "title": "RocketTurrets", "author": "Wyrrrd", "factorio_version": "0.18", diff --git a/integrations/bobplates/data.lua b/integrations/bobplates/data.lua new file mode 100644 index 0000000..3c43347 --- /dev/null +++ b/integrations/bobplates/data.lua @@ -0,0 +1,45 @@ +require("integrations.bobplates.prototypes.entity") +require("integrations.bobplates.prototypes.item") +require("integrations.bobplates.prototypes.recipe") +require("integrations.bobplates.prototypes.technology") + +if mods["bobplates"] then + -- if bobplates enabled, modify mk1 turret + + data.raw["ammo-turret"]["rocket-turret"].folded_animation.layers[1].filename = "__Rocket_Turrets__/graphics/entity/rocket-mk1-sheet.png" + data.raw["ammo-turret"]["rocket-turret"].folded_animation.layers[1].hr_version["filename"] = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk1-sheet.png" + data.raw["ammo-turret"]["rocket-turret"].preparing_animation.layers[1].filename = "__Rocket_Turrets__/graphics/entity/rocket-mk1-sheet.png" + data.raw["ammo-turret"]["rocket-turret"].preparing_animation.layers[1].hr_version["filename"] = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk1-sheet.png" + data.raw["ammo-turret"]["rocket-turret"].attacking_animation.layers[1].filename = "__Rocket_Turrets__/graphics/entity/rocket-mk1-sheet.png" + data.raw["ammo-turret"]["rocket-turret"].attacking_animation.layers[1].hr_version["filename"] = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk1-sheet.png" + data.raw["ammo-turret"]["rocket-turret"].folding_animation.layers[1].filename = "__Rocket_Turrets__/graphics/entity/rocket-mk1-sheet.png" + data.raw["ammo-turret"]["rocket-turret"].folding_animation.layers[1].hr_version["filename"] = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk1-sheet.png" + data.raw["item"]["rocket-turret"].icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk1-icon.png" + data.raw["technology"]["rocket-turret"].icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk1.png" + + -- if bobplates enabled, load tiered turrets + + data:extend({ + rocket_mk2_entity, + rocket_mk2_item, + rocket_mk2_recipe, + rocket_mk2_tech, + rocket_mk3_entity, + rocket_mk3_item, + rocket_mk3_recipe, + rocket_mk3_tech, + rocket_mk4_entity, + rocket_mk4_item, + rocket_mk4_recipe, + rocket_mk4_tech, + rocket_mk5_entity, + rocket_mk5_item, + rocket_mk5_tech + }) + + if data.raw.item["advanced-processing-unit"] then + data:extend({rocket_mk5_recipe2}) + else + data:extend({rocket_mk5_recipe1}) + end +end \ No newline at end of file diff --git a/integrations/bobplates/prototypes/entity.lua b/integrations/bobplates/prototypes/entity.lua new file mode 100644 index 0000000..78c7e8e --- /dev/null +++ b/integrations/bobplates/prototypes/entity.lua @@ -0,0 +1,388 @@ +-- Sheet definition + +function rocket_mk2_sheet(inputs) +return +{ + layers = + { + { + filename = "__Rocket_Turrets__/graphics/entity/rocket-mk2-sheet.png", + priority = "medium", + scale = 1, + width = 72, + height = 80, + direction_count = inputs.direction_count and inputs.direction_count or 64, + frame_count = 1, + line_length = inputs.line_length and inputs.line_length or 16, + axially_symmetrical = false, + run_mode = inputs.run_mode and inputs.run_mode or "forward", + shift = { 0.25, -0.5 }, + hr_version = + { + filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk2-sheet.png", + priority = "medium", + scale = 0.5, + width = 144, + height = 160, + direction_count = inputs.direction_count and inputs.direction_count or 64, + frame_count = 1, + line_length = inputs.line_length and inputs.line_length or 16, + axially_symmetrical = false, + run_mode = inputs.run_mode and inputs.run_mode or "forward", + shift = { 0.25, -0.5 }, + } + } + } +} +end + +function rocket_mk3_sheet(inputs) +return +{ + layers = + { + { + filename = "__Rocket_Turrets__/graphics/entity/rocket-mk3-sheet.png", + priority = "medium", + scale = 1, + width = 72, + height = 80, + direction_count = inputs.direction_count and inputs.direction_count or 64, + frame_count = 1, + line_length = inputs.line_length and inputs.line_length or 16, + axially_symmetrical = false, + run_mode = inputs.run_mode and inputs.run_mode or "forward", + shift = { 0.25, -0.5 }, + hr_version = + { + filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk3-sheet.png", + priority = "medium", + scale = 0.5, + width = 144, + height = 160, + direction_count = inputs.direction_count and inputs.direction_count or 64, + frame_count = 1, + line_length = inputs.line_length and inputs.line_length or 16, + axially_symmetrical = false, + run_mode = inputs.run_mode and inputs.run_mode or "forward", + shift = { 0.25, -0.5 }, + } + } + } +} +end + +function rocket_mk4_sheet(inputs) +return +{ + layers = + { + { + filename = "__Rocket_Turrets__/graphics/entity/rocket-mk4-sheet.png", + priority = "medium", + scale = 1, + width = 72, + height = 80, + direction_count = inputs.direction_count and inputs.direction_count or 64, + frame_count = 1, + line_length = inputs.line_length and inputs.line_length or 16, + axially_symmetrical = false, + run_mode = inputs.run_mode and inputs.run_mode or "forward", + shift = { 0.25, -0.5 }, + hr_version = + { + filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk4-sheet.png", + priority = "medium", + scale = 0.5, + width = 144, + height = 160, + direction_count = inputs.direction_count and inputs.direction_count or 64, + frame_count = 1, + line_length = inputs.line_length and inputs.line_length or 16, + axially_symmetrical = false, + run_mode = inputs.run_mode and inputs.run_mode or "forward", + shift = { 0.25, -0.5 }, + } + } + } +} +end + +function rocket_mk5_sheet(inputs) +return +{ + layers = + { + { + filename = "__Rocket_Turrets__/graphics/entity/rocket-mk5-sheet.png", + priority = "medium", + scale = 1, + width = 72, + height = 80, + direction_count = inputs.direction_count and inputs.direction_count or 64, + frame_count = 1, + line_length = inputs.line_length and inputs.line_length or 16, + axially_symmetrical = false, + run_mode = inputs.run_mode and inputs.run_mode or "forward", + shift = { 0.25, -0.5 }, + hr_version = + { + filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk5-sheet.png", + priority = "medium", + scale = 0.5, + width = 144, + height = 160, + direction_count = inputs.direction_count and inputs.direction_count or 64, + frame_count = 1, + line_length = inputs.line_length and inputs.line_length or 16, + axially_symmetrical = false, + run_mode = inputs.run_mode and inputs.run_mode or "forward", + shift = { 0.25, -0.5 }, + } + } + } +} +end + + +-- Entity definition + +rocket_mk2_entity = { + type = "ammo-turret", + name = "rocket-turret-mk2", + icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk2-icon.png", + icon_size = 32, + flags = {"placeable-player", "player-creation"}, + minable = {mining_time = 0.7, result = "rocket-turret-mk2"}, + max_health = 500, + corpse = "small-remnants", + collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, + selection_box = {{-1, -1 }, {1, 1}}, + rotation_speed = 0.008, + preparing_speed = 0.04, + folding_speed = 0.04, + dying_explosion = "medium-explosion", + inventory_size = 1, + automated_ammo_count = 10, + attacking_speed = 0.085, + + folded_animation = rocket_mk2_sheet{direction_count = 4, line_length = 1}, + preparing_animation = rocket_mk2_sheet{direction_count = 4, line_length = 1}, + prepared_animation = rocket_mk2_sheet{}, + attacking_animation = rocket_mk2_sheet{}, + folding_animation = rocket_mk2_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, + + vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, + + attack_parameters = + { + type = "projectile", + ammo_category = "rocket", + cooldown = 75, + projectile_creation_distance = 1.2, + projectile_center = {-0.15625, -0.07812}, + damage_modifier = 1.25, + shell_particle = + { + name = "shell-particle", + direction_deviation = 0.1, + speed = 0.1, + speed_deviation = 0.03, + center = {0, 0}, + creation_distance = -1.925, + starting_frame_speed = 0.2, + starting_frame_speed_deviation = 0.1 + }, + range = 34, + min_range = 15, + sound = + { + { + filename = "__base__/sound/fight/rocket-launcher.ogg", + volume = 0.8 + } + }, + }, + + call_for_help_radius = 40 +} + +rocket_mk3_entity = { + type = "ammo-turret", + name = "rocket-turret-mk3", + icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk3-icon.png", + icon_size = 32, + flags = {"placeable-player", "player-creation"}, + minable = {mining_time = 0.7, result = "rocket-turret-mk3"}, + max_health = 600, + corpse = "small-remnants", + collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, + selection_box = {{-1, -1 }, {1, 1}}, + rotation_speed = 0.008, + preparing_speed = 0.04, + folding_speed = 0.04, + dying_explosion = "medium-explosion", + inventory_size = 1, + automated_ammo_count = 10, + attacking_speed = 0.09, + + folded_animation = rocket_mk3_sheet{direction_count = 4, line_length = 1}, + preparing_animation = rocket_mk3_sheet{direction_count = 4, line_length = 1}, + prepared_animation = rocket_mk3_sheet{}, + attacking_animation = rocket_mk3_sheet{}, + folding_animation = rocket_mk3_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, + + vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, + + attack_parameters = + { + type = "projectile", + ammo_category = "rocket", + cooldown = 75, + projectile_creation_distance = 1.2, + projectile_center = {-0.15625, -0.07812}, + damage_modifier = 1.5, + shell_particle = + { + name = "shell-particle", + direction_deviation = 0.1, + speed = 0.1, + speed_deviation = 0.03, + center = {0, 0}, + creation_distance = -1.925, + starting_frame_speed = 0.2, + starting_frame_speed_deviation = 0.1 + }, + range = 36, + min_range = 15, + sound = + { + { + filename = "__base__/sound/fight/rocket-launcher.ogg", + volume = 0.8 + } + }, + }, + + call_for_help_radius = 40 +} + +rocket_mk4_entity = { + type = "ammo-turret", + name = "rocket-turret-mk4", + icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk4-icon.png", + icon_size = 32, + flags = {"placeable-player", "player-creation"}, + minable = {mining_time = 0.7, result = "rocket-turret-mk4"}, + max_health = 700, + corpse = "small-remnants", + collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, + selection_box = {{-1, -1 }, {1, 1}}, + rotation_speed = 0.008, + preparing_speed = 0.04, + folding_speed = 0.04, + dying_explosion = "medium-explosion", + inventory_size = 2, + automated_ammo_count = 10, + attacking_speed = 0.95, + + folded_animation = rocket_mk4_sheet{direction_count = 4, line_length = 1}, + preparing_animation = rocket_mk4_sheet{direction_count = 4, line_length = 1}, + prepared_animation = rocket_mk4_sheet{}, + attacking_animation = rocket_mk4_sheet{}, + folding_animation = rocket_mk4_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, + + vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, + + attack_parameters = + { + type = "projectile", + ammo_category = "rocket", + cooldown = 75, + projectile_creation_distance = 1.2, + projectile_center = {-0.15625, -0.07812}, + damage_modifier = 1.75, + shell_particle = + { + name = "shell-particle", + direction_deviation = 0.1, + speed = 0.1, + speed_deviation = 0.03, + center = {0, 0}, + creation_distance = -1.925, + starting_frame_speed = 0.2, + starting_frame_speed_deviation = 0.1 + }, + range = 38, + min_range = 15, + sound = + { + { + filename = "__base__/sound/fight/rocket-launcher.ogg", + volume = 0.8 + } + }, + }, + + call_for_help_radius = 40 +} + +rocket_mk5_entity = { + type = "ammo-turret", + name = "rocket-turret-mk5", + icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk5-icon.png", + icon_size = 32, + flags = {"placeable-player", "player-creation"}, + minable = {mining_time = 0.7, result = "rocket-turret-mk5"}, + max_health = 800, + corpse = "small-remnants", + collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, + selection_box = {{-1, -1 }, {1, 1}}, + rotation_speed = 0.008, + preparing_speed = 0.04, + folding_speed = 0.04, + dying_explosion = "medium-explosion", + inventory_size = 3, + automated_ammo_count = 10, + attacking_speed = 0.1, + + folded_animation = rocket_mk5_sheet{direction_count = 4, line_length = 1}, + preparing_animation = rocket_mk5_sheet{direction_count = 4, line_length = 1}, + prepared_animation = rocket_mk5_sheet{}, + attacking_animation = rocket_mk5_sheet{}, + folding_animation = rocket_mk5_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, + + vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, + + attack_parameters = + { + type = "projectile", + ammo_category = "rocket", + cooldown = 75, + projectile_creation_distance = 1.2, + projectile_center = {-0.15625, -0.07812}, + damage_modifier = 2, + shell_particle = + { + name = "shell-particle", + direction_deviation = 0.1, + speed = 0.1, + speed_deviation = 0.03, + center = {0, 0}, + creation_distance = -1.925, + starting_frame_speed = 0.2, + starting_frame_speed_deviation = 0.1 + }, + range = 40, + min_range = 15, + sound = + { + { + filename = "__base__/sound/fight/rocket-launcher.ogg", + volume = 0.8 + } + }, + }, + + call_for_help_radius = 40 +} \ No newline at end of file diff --git a/integrations/bobplates/prototypes/item.lua b/integrations/bobplates/prototypes/item.lua new file mode 100644 index 0000000..883e693 --- /dev/null +++ b/integrations/bobplates/prototypes/item.lua @@ -0,0 +1,45 @@ +--item + +rocket_mk2_item = { + type = "item", + name = "rocket-turret-mk2", + icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk2-icon.png", + icon_size = 32, + subgroup = "defensive-structure", + order = "b[turret]-c[base]-d[rocket-mk2]", + place_result = "rocket-turret-mk2", + stack_size = 50, +} + +rocket_mk3_item = { + type = "item", + name = "rocket-turret-mk3", + icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk3-icon.png", + icon_size = 32, + subgroup = "defensive-structure", + order = "b[turret]-c[base]-d[rocket-mk3]", + place_result = "rocket-turret-mk3", + stack_size = 50, +} + +rocket_mk4_item = { + type = "item", + name = "rocket-turret-mk4", + icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk4-icon.png", + icon_size = 32, + subgroup = "defensive-structure", + order = "b[turret]-c[base]-d[rocket-mk4]", + place_result = "rocket-turret-mk4", + stack_size = 50, +} + +rocket_mk5_item = { + type = "item", + name = "rocket-turret-mk5", + icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk5-icon.png", + icon_size = 32, + subgroup = "defensive-structure", + order = "b[turret]-c[base]-d[rocket-mk5]", + place_result = "rocket-turret-mk5", + stack_size = 50, +} \ No newline at end of file diff --git a/integrations/bobplates/prototypes/recipe.lua b/integrations/bobplates/prototypes/recipe.lua new file mode 100644 index 0000000..26b9e75 --- /dev/null +++ b/integrations/bobplates/prototypes/recipe.lua @@ -0,0 +1,77 @@ +--recipe + +rocket_mk2_recipe = { + type = "recipe", + name = "rocket-turret-mk2", + enabled = false, + energy_required = 10, + ingredients = + { + {"rocket-turret-mk1", 1}, + {"steel-gear-wheel", 10}, + {"steel-plate", 20}, + {"battery", 5}, + {"electronic-circuit", 5}, + }, + result = "rocket-turret-mk2", +} + +rocket_mk3_recipe = { + type = "recipe", + name = "rocket-turret-mk3", + enabled = false, + energy_required = 10, + ingredients = + { + {"rocket-turret-mk2", 1}, + {"steel-bearing", 10}, + {"invar-alloy", 20}, + {"advanced-circuit", 20}, + }, + result = "rocket-turret-mk3", +} + +rocket_mk4_recipe = { + type = "recipe", + name = "rocket-turret-mk4", + enabled = false, + energy_required = 10, + ingredients = + { + {"rocket-turret-mk3", 1}, + {"titanium-gear-wheel", 10}, + {"titanium-plate", 20}, + {"processing-unit", 20}, + }, + result = "rocket-turret-mk4", +} + +rocket_mk5_recipe1 = { + type = "recipe", + name = "rocket-turret-mk5", + enabled = false, + energy_required = 10, + ingredients = + { + {"rocket-turret-mk4", 1}, + {"nitinol-gear-wheel", 10}, + {"nitinol-alloy", 20}, + {"processing-unit", 20}, + }, + result = "rocket-turret-mk5", +} + +rocket_mk5_recipe2 = { + type = "recipe", + name = "rocket-turret-mk5", + enabled = false, + energy_required = 10, + ingredients = + { + {"rocket-turret-mk4", 1}, + {"nitinol-gear-wheel", 10}, + {"nitinol-alloy", 20}, + {"advanced-processing-unit", 20}, + }, + result = "rocket-turret-mk5", +} \ No newline at end of file diff --git a/integrations/bobplates/prototypes/technology.lua b/integrations/bobplates/prototypes/technology.lua new file mode 100644 index 0000000..8e178a6 --- /dev/null +++ b/integrations/bobplates/prototypes/technology.lua @@ -0,0 +1,126 @@ +rocket_mk2_tech = { + type = "technology", + name = "rocket-turret-mk2", + icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk2.png", + icon_size = 128, + effects = + { + { + type = "unlock-recipe", + recipe = "rocket-turret-mk2", + }, + }, + prerequisites = + { + "rocket-turret-mk1", + }, + unit = + { + count = 75, + ingredients = + { + {"automation-science-pack", 1}, + {"logistic-science-pack", 1}, + {"chemical-science-pack", 1}, + {"military-science-pack", 1}, + }, + time = 20 + }, + order = "c-a" +} + +rocket_mk3_tech = { + type = "technology", + name = "rocket-turret-mk3", + icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk3.png", + icon_size = 128, + effects = + { + { + type = "unlock-recipe", + recipe = "rocket-turret-mk3", + }, + }, + prerequisites = + { + "rocket-turret-mk2", + "invar-processing", + }, + unit = + { + count = 100, + ingredients = + { + {"automation-science-pack", 1}, + {"logistic-science-pack", 1}, + {"chemical-science-pack", 1}, + {"production-science-pack", 1} + }, + time = 30 + }, + order = "c-a" +} + +rocket_mk4_tech = { + type = "technology", + name = "rocket-turret-mk4", + icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk4.png", + icon_size = 128, + effects = + { + { + type = "unlock-recipe", + recipe = "rocket-turret-mk4", + }, + }, + prerequisites = + { + "rocket-turret-mk3", + "titanium-processing", + }, + unit = + { + count = 100, + ingredients = + { + {"automation-science-pack", 1}, + {"logistic-science-pack", 1}, + {"chemical-science-pack", 1}, + {"production-science-pack", 1} + }, + time = 30 + }, + order = "c-a" +} + +rocket_mk5_tech = { + type = "technology", + name = "rocket-turret-mk5", + icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk5.png", + icon_size = 128, + effects = + { + { + type = "unlock-recipe", + recipe = "rocket-turret-mk5", + }, + }, + prerequisites = + { + "rocket-turret-mk4", + "nitinol-processing", + }, + unit = + { + count = 125, + ingredients = + { + {"automation-science-pack", 1}, + {"logistic-science-pack", 1}, + {"chemical-science-pack", 1}, + {"production-science-pack", 1}, + }, + time = 30 + }, + order = "c-a" +} \ No newline at end of file diff --git a/locale/de/locale.cfg b/locale/de/locale.cfg index d192e6f..5d8aaaa 100644 --- a/locale/de/locale.cfg +++ b/locale/de/locale.cfg @@ -3,7 +3,6 @@ Rocket_Turrets=Fügt Raketen-Geschütztürme hinzu [item-name] rocket-turret=Raketen-Geschützturm -rocket-turret-mk1=Raketen-Geschützturm MK1 rocket-turret-mk2=Raketen-Geschützturm MK2 rocket-turret-mk3=Raketen-Geschützturm MK3 rocket-turret-mk4=Raketen-Geschützturm MK4 @@ -11,7 +10,6 @@ rocket-turret-mk5=Raketen-Geschützturm MK5 [entity-name] rocket-turret=Raketen-Geschützturm -rocket-turret-mk1=Raketen-Geschützturm MK1 rocket-turret-mk2=Raketen-Geschützturm MK2 rocket-turret-mk3=Raketen-Geschützturm MK3 rocket-turret-mk4=Raketen-Geschützturm MK4 @@ -19,7 +17,6 @@ rocket-turret-mk5=Raketen-Geschützturm MK5 [technology-name] rocket-turret=Raketen-Geschützturm -rocket-turret-mk1=Raketen-Geschützturm MK1 rocket-turret-mk2=Raketen-Geschützturm MK2 rocket-turret-mk3=Raketen-Geschützturm MK3 rocket-turret-mk4=Raketen-Geschützturm MK4 diff --git a/locale/en/locale.cfg b/locale/en/locale.cfg index 9b461da..ad15b9c 100644 --- a/locale/en/locale.cfg +++ b/locale/en/locale.cfg @@ -3,7 +3,6 @@ Rocket_Turrets=Adds rocket turrets [item-name] rocket-turret=Rocket turret -rocket-turret-mk1=Rocket turret MK1 rocket-turret-mk2=Rocket turret MK2 rocket-turret-mk3=Rocket turret MK3 rocket-turret-mk4=Rocket turret MK4 @@ -11,7 +10,6 @@ rocket-turret-mk5=Rocket turret MK5 [entity-name] rocket-turret=Rocket turret -rocket-turret-mk1=Rocket turret MK1 rocket-turret-mk2=Rocket turret MK2 rocket-turret-mk3=Rocket turret MK3 rocket-turret-mk4=Rocket turret MK4 @@ -19,7 +17,6 @@ rocket-turret-mk5=Rocket turret MK5 [technology-name] rocket-turret=Rocket turret -rocket-turret-mk1=Rocket turret MK1 rocket-turret-mk2=Rocket turret MK2 rocket-turret-mk3=Rocket turret MK3 rocket-turret-mk4=Rocket turret MK4 diff --git a/locale/pl/locale.cfg b/locale/pl/locale.cfg index 5d73a49..432502b 100644 --- a/locale/pl/locale.cfg +++ b/locale/pl/locale.cfg @@ -3,7 +3,6 @@ Rocket_Turrets=Dodaje działkom rakietowe [item-name] rocket-turret=Działko rakietowe -rocket-turret-mk1=Działko rakietowe MK1 rocket-turret-mk2=Działko rakietowe MK2 rocket-turret-mk3=Działko rakietowe MK3 rocket-turret-mk4=Działko rakietowe MK4 @@ -11,7 +10,6 @@ rocket-turret-mk5=Działko rakietowe MK5 [entity-name] rocket-turret=Działko rakietowe -rocket-turret-mk1=Działko rakietowe MK1 rocket-turret-mk2=Działko rakietowe MK2 rocket-turret-mk3=Działko rakietowe MK3 rocket-turret-mk4=Działko rakietowe MK4 @@ -19,7 +17,6 @@ rocket-turret-mk5=Działko rakietowe MK5 [technology-name] rocket-turret=Działko rakietowe -rocket-turret-mk1=Działko rakietowe MK1 rocket-turret-mk2=Działko rakietowe MK2 rocket-turret-mk3=Działko rakietowe MK3 rocket-turret-mk4=Działko rakietowe MK4 diff --git a/migrations/0.18.3.json b/migrations/0.18.3.json new file mode 100644 index 0000000..a4c5d13 --- /dev/null +++ b/migrations/0.18.3.json @@ -0,0 +1,18 @@ +{ + "entity": + [ + ["rocket-turret-mk1", "rocket-turret"] + ], + "item": + [ + ["rocket-turret-mk1", "rocket-turret"] + ], + "recipe": + [ + ["rocket-turret-mk1", "rocket-turret"] + ], + "technology": + [ + ["rocket-turret-mk1", "rocket-turret"] + ] +} \ No newline at end of file diff --git a/prototypes/entity.lua b/prototypes/entity.lua index 5f931b1..d700b9a 100644 --- a/prototypes/entity.lua +++ b/prototypes/entity.lua @@ -1,4 +1,3 @@ - -- Sheet definition function rocket_sheet(inputs) @@ -37,255 +36,14 @@ return } end -function rocket_mk1_sheet(inputs) -return -{ - layers = - { - { - filename = "__Rocket_Turrets__/graphics/entity/rocket-mk1-sheet.png", - priority = "medium", - scale = 1, - width = 72, - height = 80, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - hr_version = - { - filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk1-sheet.png", - priority = "medium", - scale = 0.5, - width = 144, - height = 160, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - } - } - } -} -end - -function rocket_mk2_sheet(inputs) -return -{ - layers = - { - { - filename = "__Rocket_Turrets__/graphics/entity/rocket-mk2-sheet.png", - priority = "medium", - scale = 1, - width = 72, - height = 80, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - hr_version = - { - filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk2-sheet.png", - priority = "medium", - scale = 0.5, - width = 144, - height = 160, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - } - } - } -} -end - -function rocket_mk3_sheet(inputs) -return -{ - layers = - { - { - filename = "__Rocket_Turrets__/graphics/entity/rocket-mk3-sheet.png", - priority = "medium", - scale = 1, - width = 72, - height = 80, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - hr_version = - { - filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk3-sheet.png", - priority = "medium", - scale = 0.5, - width = 144, - height = 160, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - } - } - } -} -end - -function rocket_mk4_sheet(inputs) -return -{ - layers = - { - { - filename = "__Rocket_Turrets__/graphics/entity/rocket-mk4-sheet.png", - priority = "medium", - scale = 1, - width = 72, - height = 80, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - hr_version = - { - filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk4-sheet.png", - priority = "medium", - scale = 0.5, - width = 144, - height = 160, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - } - } - } -} -end - -function rocket_mk5_sheet(inputs) -return -{ - layers = - { - { - filename = "__Rocket_Turrets__/graphics/entity/rocket-mk5-sheet.png", - priority = "medium", - scale = 1, - width = 72, - height = 80, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - hr_version = - { - filename = "__Rocket_Turrets__/graphics/entity/hr-rocket-mk5-sheet.png", - priority = "medium", - scale = 0.5, - width = 144, - height = 160, - direction_count = inputs.direction_count and inputs.direction_count or 64, - frame_count = 1, - line_length = inputs.line_length and inputs.line_length or 16, - axially_symmetrical = false, - run_mode = inputs.run_mode and inputs.run_mode or "forward", - shift = { 0.25, -0.5 }, - } - } - } -} -end - - -- Entity definition -entity0 = { +rocket_entity = { type = "ammo-turret", name = "rocket-turret", icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-icon.png", icon_size = 32, flags = {"placeable-player", "player-creation"}, - minable = {mining_time = 0.7, result = "rocket-turret"}, - max_health = 400, - corpse = "small-remnants", - collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, - selection_box = {{-1, -1 }, {1, 1}}, - rotation_speed = 0.008, - preparing_speed = 0.04, - folding_speed = 0.04, - dying_explosion = "medium-explosion", - inventory_size = 1, - automated_ammo_count = 10, - attacking_speed = 0.09, - - folded_animation = rocket_sheet{direction_count = 4, line_length = 1}, - preparing_animation = rocket_sheet{direction_count = 4, line_length = 1}, - prepared_animation = rocket_sheet{}, - attacking_animation = rocket_sheet{}, - folding_animation = rocket_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, - - vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, - - attack_parameters = - { - type = "projectile", - ammo_category = "rocket", - cooldown = 75, - projectile_creation_distance = 1.2, - projectile_center = {-0.15625, -0.07812}, - damage_modifier = 1, - shell_particle = - { - name = "shell-particle", - direction_deviation = 0.1, - speed = 0.1, - speed_deviation = 0.03, - center = {0, 0}, - creation_distance = -1.925, - starting_frame_speed = 0.2, - starting_frame_speed_deviation = 0.1 - }, - range = 35, - min_range = 15, - sound = - { - { - filename = "__base__/sound/fight/rocket-launcher.ogg", - volume = 0.8 - } - }, - }, - - call_for_help_radius = 40 -} - -entity1 = { - type = "ammo-turret", - name = "rocket-turret-mk1", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk1-icon.png", - icon_size = 32, - flags = {"placeable-player", "player-creation"}, minable = {mining_time = 0.7, result = "rocket-turret-mk1"}, max_health = 400, corpse = "small-remnants", @@ -299,11 +57,11 @@ entity1 = { automated_ammo_count = 10, attacking_speed = 0.08, - folded_animation = rocket_mk1_sheet{direction_count = 4, line_length = 1}, - preparing_animation = rocket_mk1_sheet{direction_count = 4, line_length = 1}, - prepared_animation = rocket_mk1_sheet{}, - attacking_animation = rocket_mk1_sheet{}, - folding_animation = rocket_mk1_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, + folded_animation = rocket_sheet{direction_count = 4, line_length = 1}, + preparing_animation = rocket_sheet{direction_count = 4, line_length = 1}, + prepared_animation = rocket_sheet{}, + attacking_animation = rocket_sheet{}, + folding_animation = rocket_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, @@ -337,245 +95,5 @@ entity1 = { }, }, - call_for_help_radius = 40 -} - -entity2 = { - type = "ammo-turret", - name = "rocket-turret-mk2", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk2-icon.png", - icon_size = 32, - flags = {"placeable-player", "player-creation"}, - minable = {mining_time = 0.7, result = "rocket-turret-mk2"}, - max_health = 500, - corpse = "small-remnants", - collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, - selection_box = {{-1, -1 }, {1, 1}}, - rotation_speed = 0.008, - preparing_speed = 0.04, - folding_speed = 0.04, - dying_explosion = "medium-explosion", - inventory_size = 1, - automated_ammo_count = 10, - attacking_speed = 0.085, - - folded_animation = rocket_mk2_sheet{direction_count = 4, line_length = 1}, - preparing_animation = rocket_mk2_sheet{direction_count = 4, line_length = 1}, - prepared_animation = rocket_mk2_sheet{}, - attacking_animation = rocket_mk2_sheet{}, - folding_animation = rocket_mk2_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, - - vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, - - attack_parameters = - { - type = "projectile", - ammo_category = "rocket", - cooldown = 75, - projectile_creation_distance = 1.2, - projectile_center = {-0.15625, -0.07812}, - damage_modifier = 1.25, - shell_particle = - { - name = "shell-particle", - direction_deviation = 0.1, - speed = 0.1, - speed_deviation = 0.03, - center = {0, 0}, - creation_distance = -1.925, - starting_frame_speed = 0.2, - starting_frame_speed_deviation = 0.1 - }, - range = 34, - min_range = 15, - sound = - { - { - filename = "__base__/sound/fight/rocket-launcher.ogg", - volume = 0.8 - } - }, - }, - - call_for_help_radius = 40 -} - -entity3 = { - type = "ammo-turret", - name = "rocket-turret-mk3", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk3-icon.png", - icon_size = 32, - flags = {"placeable-player", "player-creation"}, - minable = {mining_time = 0.7, result = "rocket-turret-mk3"}, - max_health = 600, - corpse = "small-remnants", - collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, - selection_box = {{-1, -1 }, {1, 1}}, - rotation_speed = 0.008, - preparing_speed = 0.04, - folding_speed = 0.04, - dying_explosion = "medium-explosion", - inventory_size = 1, - automated_ammo_count = 10, - attacking_speed = 0.09, - - folded_animation = rocket_mk3_sheet{direction_count = 4, line_length = 1}, - preparing_animation = rocket_mk3_sheet{direction_count = 4, line_length = 1}, - prepared_animation = rocket_mk3_sheet{}, - attacking_animation = rocket_mk3_sheet{}, - folding_animation = rocket_mk3_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, - - vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, - - attack_parameters = - { - type = "projectile", - ammo_category = "rocket", - cooldown = 75, - projectile_creation_distance = 1.2, - projectile_center = {-0.15625, -0.07812}, - damage_modifier = 1.5, - shell_particle = - { - name = "shell-particle", - direction_deviation = 0.1, - speed = 0.1, - speed_deviation = 0.03, - center = {0, 0}, - creation_distance = -1.925, - starting_frame_speed = 0.2, - starting_frame_speed_deviation = 0.1 - }, - range = 36, - min_range = 15, - sound = - { - { - filename = "__base__/sound/fight/rocket-launcher.ogg", - volume = 0.8 - } - }, - }, - - call_for_help_radius = 40 -} - -entity4 = { - type = "ammo-turret", - name = "rocket-turret-mk4", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk4-icon.png", - icon_size = 32, - flags = {"placeable-player", "player-creation"}, - minable = {mining_time = 0.7, result = "rocket-turret-mk4"}, - max_health = 700, - corpse = "small-remnants", - collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, - selection_box = {{-1, -1 }, {1, 1}}, - rotation_speed = 0.008, - preparing_speed = 0.04, - folding_speed = 0.04, - dying_explosion = "medium-explosion", - inventory_size = 2, - automated_ammo_count = 10, - attacking_speed = 0.95, - - folded_animation = rocket_mk4_sheet{direction_count = 4, line_length = 1}, - preparing_animation = rocket_mk4_sheet{direction_count = 4, line_length = 1}, - prepared_animation = rocket_mk4_sheet{}, - attacking_animation = rocket_mk4_sheet{}, - folding_animation = rocket_mk4_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, - - vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, - - attack_parameters = - { - type = "projectile", - ammo_category = "rocket", - cooldown = 75, - projectile_creation_distance = 1.2, - projectile_center = {-0.15625, -0.07812}, - damage_modifier = 1.75, - shell_particle = - { - name = "shell-particle", - direction_deviation = 0.1, - speed = 0.1, - speed_deviation = 0.03, - center = {0, 0}, - creation_distance = -1.925, - starting_frame_speed = 0.2, - starting_frame_speed_deviation = 0.1 - }, - range = 38, - min_range = 15, - sound = - { - { - filename = "__base__/sound/fight/rocket-launcher.ogg", - volume = 0.8 - } - }, - }, - - call_for_help_radius = 40 -} - -entity5 = { - type = "ammo-turret", - name = "rocket-turret-mk5", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk5-icon.png", - icon_size = 32, - flags = {"placeable-player", "player-creation"}, - minable = {mining_time = 0.7, result = "rocket-turret-mk5"}, - max_health = 800, - corpse = "small-remnants", - collision_box = {{-0.7, -0.7 }, {0.7, 0.7}}, - selection_box = {{-1, -1 }, {1, 1}}, - rotation_speed = 0.008, - preparing_speed = 0.04, - folding_speed = 0.04, - dying_explosion = "medium-explosion", - inventory_size = 3, - automated_ammo_count = 10, - attacking_speed = 0.1, - - folded_animation = rocket_mk5_sheet{direction_count = 4, line_length = 1}, - preparing_animation = rocket_mk5_sheet{direction_count = 4, line_length = 1}, - prepared_animation = rocket_mk5_sheet{}, - attacking_animation = rocket_mk5_sheet{}, - folding_animation = rocket_mk5_sheet{direction_count = 4, line_length = 1, run_mode = "backward"}, - - vehicle_impact_sound = { filename = "__base__/sound/car-metal-impact.ogg", volume = 0.65 }, - - attack_parameters = - { - type = "projectile", - ammo_category = "rocket", - cooldown = 75, - projectile_creation_distance = 1.2, - projectile_center = {-0.15625, -0.07812}, - damage_modifier = 2, - shell_particle = - { - name = "shell-particle", - direction_deviation = 0.1, - speed = 0.1, - speed_deviation = 0.03, - center = {0, 0}, - creation_distance = -1.925, - starting_frame_speed = 0.2, - starting_frame_speed_deviation = 0.1 - }, - range = 40, - min_range = 15, - sound = - { - { - filename = "__base__/sound/fight/rocket-launcher.ogg", - volume = 0.8 - } - }, - }, - call_for_help_radius = 40 } \ No newline at end of file diff --git a/prototypes/item.lua b/prototypes/item.lua index c5c7af1..4b8b767 100644 --- a/prototypes/item.lua +++ b/prototypes/item.lua @@ -1,6 +1,6 @@ --item -item0 = { +rocket_item = { type = "item", name = "rocket-turret", icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-icon.png", @@ -9,59 +9,4 @@ item0 = { order = "b[turret]-c[base]-d[rocket]", place_result = "rocket-turret", stack_size = 50, -} - -item1 = { - type = "item", - name = "rocket-turret-mk1", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk1-icon.png", - icon_size = 32, - subgroup = "defensive-structure", - order = "b[turret]-c[base]-d[rocket-mk1]", - place_result = "rocket-turret-mk1", - stack_size = 50, -} - -item2 = { - type = "item", - name = "rocket-turret-mk2", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk2-icon.png", - icon_size = 32, - subgroup = "defensive-structure", - order = "b[turret]-c[base]-d[rocket-mk2]", - place_result = "rocket-turret-mk2", - stack_size = 50, -} - -item3 = { - type = "item", - name = "rocket-turret-mk3", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk3-icon.png", - icon_size = 32, - subgroup = "defensive-structure", - order = "b[turret]-c[base]-d[rocket-mk3]", - place_result = "rocket-turret-mk3", - stack_size = 50, -} - -item4 = { - type = "item", - name = "rocket-turret-mk4", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk4-icon.png", - icon_size = 32, - subgroup = "defensive-structure", - order = "b[turret]-c[base]-d[rocket-mk4]", - place_result = "rocket-turret-mk4", - stack_size = 50, -} - -item5 = { - type = "item", - name = "rocket-turret-mk5", - icon = "__Rocket_Turrets__/graphics/icon/turret-rocket-mk5-icon.png", - icon_size = 32, - subgroup = "defensive-structure", - order = "b[turret]-c[base]-d[rocket-mk5]", - place_result = "rocket-turret-mk5", - stack_size = 50, -} +} \ No newline at end of file diff --git a/prototypes/recipe.lua b/prototypes/recipe.lua index 32a4ee8..948b883 100644 --- a/prototypes/recipe.lua +++ b/prototypes/recipe.lua @@ -1,6 +1,6 @@ --recipe -recipe0 = { +rocket_recipe = { type = "recipe", name = "rocket-turret", enabled = false, @@ -13,95 +13,4 @@ recipe0 = { {"advanced-circuit", 15}, }, result = "rocket-turret", -} - -recipe1 = { - type = "recipe", - name = "rocket-turret-mk1", - enabled = false, - energy_required = 10, - ingredients = - { - {"rocket-launcher", 10}, - {"iron-gear-wheel", 5}, - {"steel-plate", 20}, - {"electronic-circuit", 15}, - }, - result = "rocket-turret-mk1", -} - -recipe2 = { - type = "recipe", - name = "rocket-turret-mk2", - enabled = false, - energy_required = 10, - ingredients = - { - {"rocket-turret-mk1", 1}, - {"steel-gear-wheel", 10}, - {"steel-plate", 20}, - {"battery", 5}, - {"electronic-circuit", 5}, - }, - result = "rocket-turret-mk2", -} - -recipe3 = { - type = "recipe", - name = "rocket-turret-mk3", - enabled = false, - energy_required = 10, - ingredients = - { - {"rocket-turret-mk2", 1}, - {"steel-bearing", 10}, - {"invar-alloy", 20}, - {"advanced-circuit", 20}, - }, - result = "rocket-turret-mk3", -} - -recipe4 = { - type = "recipe", - name = "rocket-turret-mk4", - enabled = false, - energy_required = 10, - ingredients = - { - {"rocket-turret-mk3", 1}, - {"titanium-gear-wheel", 10}, - {"titanium-plate", 20}, - {"processing-unit", 20}, - }, - result = "rocket-turret-mk4", -} - -recipe5_1 = { - type = "recipe", - name = "rocket-turret-mk5", - enabled = false, - energy_required = 10, - ingredients = - { - {"rocket-turret-mk4", 1}, - {"nitinol-gear-wheel", 10}, - {"nitinol-alloy", 20}, - {"processing-unit", 20}, - }, - result = "rocket-turret-mk5", -} - -recipe5_2 = { - type = "recipe", - name = "rocket-turret-mk5", - enabled = false, - energy_required = 10, - ingredients = - { - {"rocket-turret-mk4", 1}, - {"nitinol-gear-wheel", 10}, - {"nitinol-alloy", 20}, - {"advanced-processing-unit", 20}, - }, - result = "rocket-turret-mk5", } \ No newline at end of file diff --git a/prototypes/technology.lua b/prototypes/technology.lua index cefa365..977a6bb 100644 --- a/prototypes/technology.lua +++ b/prototypes/technology.lua @@ -1,4 +1,6 @@ -tech0 = { +-- technology + +rocket_tech = { type = "technology", name = "rocket-turret", icon = "__Rocket_Turrets__/graphics/technology/rocket-turret.png", @@ -28,163 +30,4 @@ tech0 = { time = 20 }, order = "c-a" -} - -tech1 = { - type = "technology", - name = "rocket-turret-mk1", - icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk1.png", - icon_size = 128, - effects = - { - { - type = "unlock-recipe", - recipe = "rocket-turret-mk1", - }, - }, - prerequisites = - { - "rocketry", - "turrets", - "steel-processing", - }, - unit = - { - count = 75, - ingredients = - { - {"automation-science-pack", 1}, - {"logistic-science-pack", 1}, - {"military-science-pack", 1}, - }, - time = 20 - }, - order = "c-a" -} - -tech2 = { - type = "technology", - name = "rocket-turret-mk2", - icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk2.png", - icon_size = 128, - effects = - { - { - type = "unlock-recipe", - recipe = "rocket-turret-mk2", - }, - }, - prerequisites = - { - "rocket-turret-mk1", - }, - unit = - { - count = 75, - ingredients = - { - {"automation-science-pack", 1}, - {"logistic-science-pack", 1}, - {"chemical-science-pack", 1}, - {"military-science-pack", 1}, - }, - time = 20 - }, - order = "c-a" -} - -tech3 = { - type = "technology", - name = "rocket-turret-mk3", - icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk3.png", - icon_size = 128, - effects = - { - { - type = "unlock-recipe", - recipe = "rocket-turret-mk3", - }, - }, - prerequisites = - { - "rocket-turret-mk2", - "invar-processing", - }, - unit = - { - count = 100, - ingredients = - { - {"automation-science-pack", 1}, - {"logistic-science-pack", 1}, - {"chemical-science-pack", 1}, - {"production-science-pack", 1} - }, - time = 30 - }, - order = "c-a" -} - -tech4 = { - type = "technology", - name = "rocket-turret-mk4", - icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk4.png", - icon_size = 128, - effects = - { - { - type = "unlock-recipe", - recipe = "rocket-turret-mk4", - }, - }, - prerequisites = - { - "rocket-turret-mk3", - "titanium-processing", - }, - unit = - { - count = 100, - ingredients = - { - {"automation-science-pack", 1}, - {"logistic-science-pack", 1}, - {"chemical-science-pack", 1}, - {"production-science-pack", 1} - }, - time = 30 - }, - order = "c-a" -} - -tech5 = { - type = "technology", - name = "rocket-turret-mk5", - icon = "__Rocket_Turrets__/graphics/technology/rocket-turret-mk5.png", - icon_size = 128, - effects = - { - { - type = "unlock-recipe", - recipe = "rocket-turret-mk5", - }, - }, - prerequisites = - { - "rocket-turret-mk4", - "nitinol-processing", - }, - unit = - { - count = 125, - ingredients = - { - {"automation-science-pack", 1}, - {"logistic-science-pack", 1}, - {"chemical-science-pack", 1}, - {"production-science-pack", 1}, - }, - time = 30 - }, - order = "c-a" } \ No newline at end of file