153 lines
3.6 KiB
Lua
153 lines
3.6 KiB
Lua
require("prototypes.nukes.data-nukes")
|
|
|
|
|
|
|
|
if(settings.startup["enable-small-thermobarics"].value or settings.startup["enable-medium-thermobarics"].value or settings.startup["enable-large-thermobarics"].value) then
|
|
require("prototypes.thermobarics.data-thermobaric")
|
|
end
|
|
|
|
|
|
|
|
require("MushroomCloudInBuilt.explosions")
|
|
require("MushroomCloudInBuilt.radiation_noise")
|
|
require("MushroomCloudInBuilt.ground_zero")
|
|
require("MushroomCloudInBuilt.explosion_sizes")
|
|
|
|
|
|
local fireutil = require("__base__.prototypes.fire-util")
|
|
|
|
data:extend({
|
|
fireutil.add_basic_fire_graphics_and_effects_definitions
|
|
{
|
|
type = "fire",
|
|
name = "thermobaric-wave-fire",
|
|
flags = {"placeable-off-grid", "not-on-map"},
|
|
damage_per_tick = {amount = 13 / 60, type = "fire"},
|
|
maximum_damage_multiplier = 6,
|
|
damage_multiplier_increase_per_added_fuel = 1,
|
|
damage_multiplier_decrease_per_tick = 0.005,
|
|
|
|
spawn_entity = "fire-flame-on-tree",
|
|
|
|
spread_delay = 300,
|
|
spread_delay_deviation = 180,
|
|
maximum_spread_count = 100,
|
|
|
|
emissions_per_second = 0.005,
|
|
|
|
initial_lifetime = 5,
|
|
lifetime_increase_by = 150,
|
|
lifetime_increase_cooldown = 4,
|
|
maximum_lifetime = 1800,
|
|
delay_between_initial_flames = 10,
|
|
--initial_flame_count = 1,
|
|
|
|
}})
|
|
|
|
|
|
|
|
|
|
if(settings.startup["enable-fire-shield"].value) then
|
|
data:extend({
|
|
{
|
|
type = "energy-shield-equipment",
|
|
name = "fire-shield-equipment",
|
|
sprite =
|
|
{
|
|
filename = "__True-Nukes__/graphics/fire-shield-equipment.png",
|
|
width = 64,
|
|
height = 64,
|
|
priority = "medium"
|
|
},
|
|
shape =
|
|
{
|
|
width = 2,
|
|
height = 2,
|
|
type = "full"
|
|
},
|
|
max_shield_value = 1,
|
|
energy_source =
|
|
{
|
|
type = "electric",
|
|
buffer_capacity = "2000kJ",
|
|
input_flow_limit = "250kW",
|
|
usage_priority = "primary-input"
|
|
},
|
|
energy_per_shield = "20kJ",
|
|
categories = {"armor"}
|
|
},
|
|
{
|
|
type = "item",
|
|
name = "fire-shield-equipment",
|
|
icon = "__True-Nukes__/graphics/fire-shield-equipment-icon.png",
|
|
icon_size = 64, icon_mipmaps = 4,
|
|
placed_as_equipment_result = "fire-shield-equipment",
|
|
subgroup = "military-equipment",
|
|
order = "a[shield]-aA[fire-shield-equipment]",
|
|
default_request_amount = 5,
|
|
stack_size = 10
|
|
},
|
|
{
|
|
type = "recipe",
|
|
name = "fire-shield-equipment",
|
|
enabled = false,
|
|
energy_required = 30,
|
|
ingredients =
|
|
{
|
|
{"low-density-structure", 10},
|
|
{"empty-barrel", 10}
|
|
},
|
|
result = "fire-shield-equipment"
|
|
}
|
|
})
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function add_mushroom_cloud_effect(effect, prefix)
|
|
table.insert(effect, 2, {
|
|
type = "create-entity",
|
|
entity_name = prefix .. "uranium-explosion-LUQ",
|
|
})
|
|
table.insert(effect, 3, {
|
|
type = "create-entity",
|
|
entity_name = prefix .. "uranium-explosion-RUQ"
|
|
})
|
|
table.insert(effect, 4, {
|
|
type = "create-entity",
|
|
entity_name = prefix .. "uranium-explosion-LLQ"
|
|
})
|
|
table.insert(effect, 5, {
|
|
type = "create-entity",
|
|
entity_name = prefix .. "uranium-explosion-RLQ"
|
|
})
|
|
table.insert(effect, 6, {
|
|
type = "create-entity",
|
|
entity_name = "nuclear-scorchmark",
|
|
check_buildability = true
|
|
})
|
|
end
|
|
|
|
|
|
|
|
--if(settings.startup["enable-menu-backgrounds"].value)then
|
|
-- if(settings.startup["enable-compact-medium-atomics"].value) then
|
|
-- require("menu-simulations.nuke-1x20t")
|
|
-- end
|
|
--
|
|
-- if(settings.startup["enable-compact-medium-atomics"].value) then
|
|
-- require("menu-simulations.nuke-2x2t")
|
|
-- end
|
|
--
|
|
-- if(settings.startup["enable-large-atomics"].value) then
|
|
-- require("menu-simulations.nuke-1x1kt")
|
|
-- end
|
|
--end
|
|
|
|
|
|
|
|
|