diff --git a/angelsbioprocessing/control.lua b/angelsbioprocessing/control.lua index 052fe4e8a..340495f0e 100644 --- a/angelsbioprocessing/control.lua +++ b/angelsbioprocessing/control.lua @@ -4,7 +4,6 @@ script.on_event(defines.events.on_entity_died, function(event) if (not killing_force) or loot.is_empty() then return end - loot = loot.get_contents() for loot_item_name, loot_technology_to_research in pairs({ ["angels-small-alien-artifact"] = "angels-alien-artifact", ["angels-small-alien-artifact-red"] = "angels-alien-artifact-red", @@ -14,10 +13,11 @@ script.on_event(defines.events.on_entity_died, function(event) ["angels-small-alien-artifact-purple"] = "angels-alien-artifact-purple", ["angels-small-alien-artifact-green"] = "angels-alien-artifact-green", }) do - if loot[loot_item_name] then - local technology = killing_force.technologies[loot_technology_to_research] - if technology then - technology.researched = true + if loot.find_item_stack(loot_item_name) then + if killing_force.technologies[loot_technology_to_research] then + -- Using this trigger function takes care of checking tech prerequisites. + -- It also will show the "Technology researched" chat message. + killing_force.script_trigger_research(loot_technology_to_research) end end end diff --git a/angelsbioprocessing/prototypes/overrides/bio-processing-override-artifacts.lua b/angelsbioprocessing/prototypes/overrides/bio-processing-override-artifacts.lua index edfa60ce6..469716fa8 100644 --- a/angelsbioprocessing/prototypes/overrides/bio-processing-override-artifacts.lua +++ b/angelsbioprocessing/prototypes/overrides/bio-processing-override-artifacts.lua @@ -2,20 +2,20 @@ local OV = angelsmods.functions.OV local contains_artifact_creation = false local artifact = { - ["reg"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-alien-artifact" or "angels-alien-artifact", - ["small-reg"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-small-alien-artifact" or "angels-small-alien-artifact", - ["red"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-alien-artifact-red" or "angels-alien-artifact-red", - ["small-red"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-small-alien-artifact-red" or "angels-small-alien-artifact-red", - ["yellow"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-alien-artifact-yellow" or "angels-alien-artifact-yellow", - ["small-yellow"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-small-alien-artifact-yellow" or "angels-small-alien-artifact-yellow", - ["orange"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-alien-artifact-orange" or "angels-alien-artifact-orange", - ["small-orange"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-small-alien-artifact-orange" or "angels-small-alien-artifact-orange", - ["green"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-alien-artifact-green" or "angels-alien-artifact-green", - ["small-green"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-small-alien-artifact-green" or "angels-small-alien-artifact-green", - ["blue"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-alien-artifact-blue" or "angels-alien-artifact-blue", - ["small-blue"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-small-alien-artifact-blue" or "angels-small-alien-artifact-blue", - ["purple"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-alien-artifact-purple" or "angels-alien-artifact-purple", - ["small-purple"] = (bobmods and bobmods.plates and bobmods.enemies) and "bob-small-alien-artifact-purple" or "angels-small-alien-artifact-purple", + ["reg"] = (bobmods and bobmods.enemies and data.raw.item["bob-alien-artifact"]) and "bob-alien-artifact" or "angels-alien-artifact", + ["small-reg"] = (bobmods and bobmods.enemies and data.raw.item["bob-small-alien-artifact"]) and "bob-small-alien-artifact" or "angels-small-alien-artifact", + ["red"] = (bobmods and bobmods.enemies and data.raw.item["bob-alien-artifact-red"]) and "bob-alien-artifact-red" or "angels-alien-artifact-red", + ["small-red"] = (bobmods and bobmods.enemies and data.raw.item["bob-small-alien-artifact-red"]) and "bob-small-alien-artifact-red" or "angels-small-alien-artifact-red", + ["yellow"] = (bobmods and bobmods.enemies and data.raw.item["bob-alien-artifact-yellow"]) and "bob-alien-artifact-yellow" or "angels-alien-artifact-yellow", + ["small-yellow"] = (bobmods and bobmods.enemies and data.raw.item["bob-small-alien-artifact-yellow"]) and "bob-small-alien-artifact-yellow" or "angels-small-alien-artifact-yellow", + ["orange"] = (bobmods and bobmods.enemies and data.raw.item["bob-alien-artifact-orange"]) and "bob-alien-artifact-orange" or "angels-alien-artifact-orange", + ["small-orange"] = (bobmods and bobmods.enemies and data.raw.item["bob-small-alien-artifact-orange"]) and "bob-small-alien-artifact-orange" or "angels-small-alien-artifact-orange", + ["green"] = (bobmods and bobmods.enemies and data.raw.item["bob-alien-artifact-green"]) and "bob-alien-artifact-green" or "angels-alien-artifact-green", + ["small-green"] = (bobmods and bobmods.enemies and data.raw.item["bob-small-alien-artifact-green"]) and "bob-small-alien-artifact-green" or "angels-small-alien-artifact-green", + ["blue"] = (bobmods and bobmods.enemies and data.raw.item["bob-alien-artifact-blue"]) and "bob-alien-artifact-blue" or "angels-alien-artifact-blue", + ["small-blue"] = (bobmods and bobmods.enemies and data.raw.item["bob-small-alien-artifact-blue"]) and "bob-small-alien-artifact-blue" or "angels-small-alien-artifact-blue", + ["purple"] = (bobmods and bobmods.enemies and data.raw.item["bob-alien-artifact-purple"]) and "bob-alien-artifact-purple" or "angels-alien-artifact-purple", + ["small-purple"] = (bobmods and bobmods.enemies and data.raw.item["bob-small-alien-artifact-purple"]) and "bob-small-alien-artifact-purple" or "angels-small-alien-artifact-purple", } ------------------------------------------------------------------------------- -- RED ARTIFACTS -------------------------------------------------------------- diff --git a/angelsbioprocessing/prototypes/technology/bio-processing-artifacts.lua b/angelsbioprocessing/prototypes/technology/bio-processing-artifacts.lua index 319e63d40..f513ace01 100644 --- a/angelsbioprocessing/prototypes/technology/bio-processing-artifacts.lua +++ b/angelsbioprocessing/prototypes/technology/bio-processing-artifacts.lua @@ -4,23 +4,11 @@ ------------------------------------------------------------------------------- -- RED ARTIFACTS -------------------------------------------------------------- ------------------------------------------------------------------------------- - { - type = "tool", - name = "angels-alien-artifact-red-tool", - localised_name = { "item-name.angels-small-alien-artifact-red" }, - localised_description = { "item-description.angels-alien-artifact-tool" }, - icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-red-small.png", - icon_size = 32, - hidden = true, - stack_size = 1, - durability = 1, - order = "zzz", - }, { type = "technology", name = "angels-alien-artifact-red", localised_name = { "item-name.angels-alien-artifact-red" }, - icon = "__angelsbioprocessinggraphics__/graphics/technology/paste.png", + icon = "__angelsbioprocessinggraphics__/graphics/technology/alien-artifact-red.png", icon_size = 128, order = "c-a", prerequisites = { @@ -37,34 +25,22 @@ recipe = "angels-alien-artifact-red-from-basic", },]] }, - unit = { - count = 50, - ingredients = { - { "chemical-science-pack", 1 }, --{ "angels-alien-artifact-red-tool", 1 }, - }, - time = 30, - }, + research_trigger = { + type = "scripted", + trigger_description = "Locate this artifact in your fight against the biters!", + icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-red.png", + icon_size = 32, + } + }, ------------------------------------------------------------------------------- -- YELLOW ARTIFACTS ----------------------------------------------------------- ------------------------------------------------------------------------------- - { - type = "tool", - name = "angels-alien-artifact-yellow-tool", - localised_name = { "item-name.angels-small-alien-artifact-yellow" }, - localised_description = { "item-description.angels-alien-artifact-tool" }, - icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-yellow-small.png", - icon_size = 32, - hidden = true, - stack_size = 1, - durability = 1, - order = "zzz", - }, { type = "technology", name = "angels-alien-artifact-yellow", localised_name = { "item-name.angels-alien-artifact-yellow" }, - icon = "__angelsbioprocessinggraphics__/graphics/technology/paste.png", + icon = "__angelsbioprocessinggraphics__/graphics/technology/alien-artifact-yellow.png", icon_size = 128, order = "c-a", prerequisites = { @@ -81,34 +57,21 @@ recipe = "angels-alien-artifact-yellow-from-basic", },]] }, - unit = { - count = 50, - ingredients = { - { "chemical-science-pack", 1 }, --{ "angels-alien-artifact-yellow-tool", 1 }, - }, - time = 30, - }, + research_trigger = { + type = "scripted", + trigger_description = "Locate this artifact in your fight against the biters!", + icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-yellow.png", + icon_size = 32, + } }, ------------------------------------------------------------------------------- -- ORANGE ARTIFACTS ----------------------------------------------------------- ------------------------------------------------------------------------------- - { - type = "tool", - name = "angels-alien-artifact-orange-tool", - localised_name = { "item-name.angels-small-alien-artifact-orange" }, - localised_description = { "item-description.angels-alien-artifact-tool" }, - icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-orange-small.png", - icon_size = 32, - hidden = true, - stack_size = 1, - durability = 1, - order = "zzz", - }, { type = "technology", name = "angels-alien-artifact-orange", localised_name = { "item-name.angels-alien-artifact-orange" }, - icon = "__angelsbioprocessinggraphics__/graphics/technology/paste.png", + icon = "__angelsbioprocessinggraphics__/graphics/technology/alien-artifact-orange.png", icon_size = 128, order = "c-a", prerequisites = { @@ -124,34 +87,21 @@ recipe = "angels-alien-artifact-orange-from-basic", },]] }, - unit = { - count = 50, - ingredients = { - { "chemical-science-pack", 1 }, --{ "angels-alien-artifact-orange-tool", 1 }, - }, - time = 30, - }, + research_trigger = { + type = "scripted", + trigger_description = "Locate this artifact in your fight against the biters!", + icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-orange.png", + icon_size = 32, + } }, ------------------------------------------------------------------------------- -- BLUE ARTIFACTS ------------------------------------------------------------- ------------------------------------------------------------------------------- - { - type = "tool", - name = "angels-alien-artifact-blue-tool", - localised_name = { "item-name.angels-small-alien-artifact-blue" }, - localised_description = { "item-description.angels-alien-artifact-tool" }, - icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-blue-small.png", - icon_size = 32, - hidden = true, - stack_size = 1, - durability = 1, - order = "zzz", - }, { type = "technology", name = "angels-alien-artifact-blue", localised_name = { "item-name.angels-alien-artifact-blue" }, - icon = "__angelsbioprocessinggraphics__/graphics/technology/paste.png", + icon = "__angelsbioprocessinggraphics__/graphics/technology/alien-artifact-blue.png", icon_size = 128, order = "c-a", prerequisites = { @@ -167,34 +117,21 @@ recipe = "angels-alien-artifact-blue-from-basic", },]] }, - unit = { - count = 50, - ingredients = { - { "chemical-science-pack", 1 }, --{ "angels-alien-artifact-blue-tool", 1 }, - }, - time = 30, - }, + research_trigger = { + type = "scripted", + trigger_description = "Locate this artifact in your fight against the biters!", + icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-blue.png", + icon_size = 32, + } }, ------------------------------------------------------------------------------- -- PURPLE ARTIFACTS ----------------------------------------------------------- ------------------------------------------------------------------------------- - { - type = "tool", - name = "angels-alien-artifact-purple-tool", - localised_name = { "item-name.angels-small-alien-artifact-purple" }, - localised_description = { "item-description.angels-alien-artifact-tool" }, - icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-purple-small.png", - icon_size = 32, - hidden = true, - stack_size = 1, - durability = 1, - order = "zzz", - }, { type = "technology", name = "angels-alien-artifact-purple", localised_name = { "item-name.angels-alien-artifact-purple" }, - icon = "__angelsbioprocessinggraphics__/graphics/technology/paste.png", + icon = "__angelsbioprocessinggraphics__/graphics/technology/alien-artifact-purple.png", icon_size = 128, order = "c-a", prerequisites = { @@ -211,34 +148,21 @@ recipe = "angels-alien-artifact-purple-from-basic", },]] }, - unit = { - count = 50, - ingredients = { - { "chemical-science-pack", 1 }, --{ "angels-alien-artifact-purple-tool", 1 }, - }, - time = 30, - }, + research_trigger = { + type = "scripted", + trigger_description = "Locate this artifact in your fight against the biters!", + icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-purple.png", + icon_size = 32, + } }, ------------------------------------------------------------------------------- -- GREEN ARTIFACTS ------------------------------------------------------------ ------------------------------------------------------------------------------- - { - type = "tool", - name = "angels-alien-artifact-green-tool", - localised_name = { "item-name.angels-small-alien-artifact-green" }, - localised_description = { "item-description.alien-artifact-tool" }, - icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-green-small.png", - icon_size = 32, - hidden = true, - stack_size = 1, - durability = 1, - order = "zzz", - }, { type = "technology", name = "angels-alien-artifact-green", localised_name = { "item-name.angels-alien-artifact-green" }, - icon = "__angelsbioprocessinggraphics__/graphics/technology/paste.png", + icon = "__angelsbioprocessinggraphics__/graphics/technology/alien-artifact-green.png", icon_size = 128, order = "c-a", prerequisites = { @@ -255,33 +179,21 @@ recipe = "angels-alien-artifact-green-from-basic", },]] }, - unit = { - count = 50, - ingredients = { - { "chemical-science-pack", 1 }, --{ "angels-alien-artifact-green-tool", 1 }, - }, - time = 30, - }, + research_trigger = { + type = "scripted", + trigger_description = "Locate this artifact in your fight against the biters!", + icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-green.png", + icon_size = 32, + } }, ------------------------------------------------------------------------------- -- BASE ARTIFACTS (pink) ------------------------------------------------------ ------------------------------------------------------------------------------- - { - type = "tool", - name = "angels-alien-artifact-tool", - localised_name = { "item-name.angels-small-alien-artifact" }, - icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact-small.png", - icon_size = 32, - hidden = true, - stack_size = 1, - durability = 1, - order = "zzz", - }, { type = "technology", name = "angels-alien-artifact", localised_name = { "item-name.angels-alien-artifact" }, - icon = "__angelsbioprocessinggraphics__/graphics/technology/paste.png", + icon = "__angelsbioprocessinggraphics__/graphics/technology/alien-artifact.png", icon_size = 128, order = "c-a", prerequisites = {}, @@ -291,13 +203,12 @@ recipe = "angels-alien-artifact-from-small", },]] }, - unit = { - count = 50, - ingredients = { - { "chemical-science-pack", 1 }, --alien-artifact-tool not recognised in lab - }, - time = 30, - }, + research_trigger = { + type = "scripted", + trigger_description = "Locate this artifact in your fight against the biters!", + icon = "__angelsbioprocessinggraphics__/graphics/icons/alien-artifact.png", + icon_size = 32, + } }, }) --end diff --git a/angelsbioprocessinggraphics/graphics/technology/alien-artifact-blue.png b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-blue.png new file mode 100644 index 000000000..72f2d57aa Binary files /dev/null and b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-blue.png differ diff --git a/angelsbioprocessinggraphics/graphics/technology/alien-artifact-green.png b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-green.png new file mode 100644 index 000000000..be5a2314e Binary files /dev/null and b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-green.png differ diff --git a/angelsbioprocessinggraphics/graphics/technology/alien-artifact-orange.png b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-orange.png new file mode 100644 index 000000000..0182339d4 Binary files /dev/null and b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-orange.png differ diff --git a/angelsbioprocessinggraphics/graphics/technology/alien-artifact-purple.png b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-purple.png new file mode 100644 index 000000000..ffe63db0b Binary files /dev/null and b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-purple.png differ diff --git a/angelsbioprocessinggraphics/graphics/technology/alien-artifact-red.png b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-red.png new file mode 100644 index 000000000..7c11af81e Binary files /dev/null and b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-red.png differ diff --git a/angelsbioprocessinggraphics/graphics/technology/alien-artifact-yellow.png b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-yellow.png new file mode 100644 index 000000000..6ff15ea0a Binary files /dev/null and b/angelsbioprocessinggraphics/graphics/technology/alien-artifact-yellow.png differ diff --git a/angelsbioprocessinggraphics/graphics/technology/alien-artifact.png b/angelsbioprocessinggraphics/graphics/technology/alien-artifact.png new file mode 100644 index 000000000..bc8d171af Binary files /dev/null and b/angelsbioprocessinggraphics/graphics/technology/alien-artifact.png differ diff --git a/build_angelmods.sh b/build_angelmods.sh old mode 100644 new mode 100755