From 7cbfef04f4bf4025426d84093cdb6673c3812fef Mon Sep 17 00:00:00 2001 From: PHIDIAS Date: Mon, 17 Jun 2024 03:15:35 +0900 Subject: [PATCH] . --- {PHI-PB => OLD/PHI-PB}/.editorconfig | 0 {PHI-PB => OLD/PHI-PB}/.luacheckrc | 0 {PHI-PB => OLD/PHI-PB}/changelog.txt | 0 {PHI-PB => OLD/PHI-PB}/config.lua | 0 {PHI-PB => OLD/PHI-PB}/control.lua | 0 {PHI-PB => OLD/PHI-PB}/info.json | 0 {PHI-PB => OLD/PHI-PB}/thumbnail.png | Bin PHI-CL/config.lua | 169 +++++++++++++++++++ PHI-CL/data-updates.lua | 240 ++++++++++++++++++++++++--- PHI-CL/data.lua | 164 +++++++++++++++--- PHI-CL/info.json | 2 +- PHI-CL/locale/en/locale.cfg | 168 +++++++++++++++++++ PHI-CL/locale/ja/locale.cfg | 168 ++++++++++++++++++- PHI-CL/locale/zh-CN/locale.cfg | 166 ++++++++++++++++++ PHI-CL/locale/zh-TW/locale.cfg | 166 ++++++++++++++++++ PHI-CL/migrations/migrations.lua | 23 ++- PHI-CL/settings.lua | 69 ++++++++ PHI-EQ/config.lua | 2 +- PHI-EQ/data.lua | 44 +++-- PHI-EQ/settings.lua | 3 +- 20 files changed, 1312 insertions(+), 72 deletions(-) rename {PHI-PB => OLD/PHI-PB}/.editorconfig (100%) rename {PHI-PB => OLD/PHI-PB}/.luacheckrc (100%) rename {PHI-PB => OLD/PHI-PB}/changelog.txt (100%) rename {PHI-PB => OLD/PHI-PB}/config.lua (100%) rename {PHI-PB => OLD/PHI-PB}/control.lua (100%) rename {PHI-PB => OLD/PHI-PB}/info.json (100%) rename {PHI-PB => OLD/PHI-PB}/thumbnail.png (100%) diff --git a/PHI-PB/.editorconfig b/OLD/PHI-PB/.editorconfig similarity index 100% rename from PHI-PB/.editorconfig rename to OLD/PHI-PB/.editorconfig diff --git a/PHI-PB/.luacheckrc b/OLD/PHI-PB/.luacheckrc similarity index 100% rename from PHI-PB/.luacheckrc rename to OLD/PHI-PB/.luacheckrc diff --git a/PHI-PB/changelog.txt b/OLD/PHI-PB/changelog.txt similarity index 100% rename from PHI-PB/changelog.txt rename to OLD/PHI-PB/changelog.txt diff --git a/PHI-PB/config.lua b/OLD/PHI-PB/config.lua similarity index 100% rename from PHI-PB/config.lua rename to OLD/PHI-PB/config.lua diff --git a/PHI-PB/control.lua b/OLD/PHI-PB/control.lua similarity index 100% rename from PHI-PB/control.lua rename to OLD/PHI-PB/control.lua diff --git a/PHI-PB/info.json b/OLD/PHI-PB/info.json similarity index 100% rename from PHI-PB/info.json rename to OLD/PHI-PB/info.json diff --git a/PHI-PB/thumbnail.png b/OLD/PHI-PB/thumbnail.png similarity index 100% rename from PHI-PB/thumbnail.png rename to OLD/PHI-PB/thumbnail.png diff --git a/PHI-CL/config.lua b/PHI-CL/config.lua index 0971b8f..6482b91 100644 --- a/PHI-CL/config.lua +++ b/PHI-CL/config.lua @@ -58,6 +58,19 @@ local items = { 'se-space-mechanical-laboratory' } }, + ['PHI-EQ'] = { + type = 'enabled', + effect = { + 'solar-panel-equipment', + 'battery-equipment', + 'fusion-reactor-equipment', + 'energy-shield-equipment', + 'personal-laser-defense-equipment', + 'personal-roboport-equipment', + 'night-vision-equipment', + 'exoskeleton-equipment' + } + }, ['PHI-EN-SOLAR-TIER'] = { type = 'max', effect = { @@ -179,6 +192,54 @@ local items = { effect = { 'radar' } + }, + ['PHI-EQ-SOLAR-TIER'] = { + type = 'max', + effect = { + 'solar-panel' + } + }, + ['PHI-EQ-BATTERY-TIER'] = { + type = 'max', + effect = { + 'battery' + } + }, + ['PHI-EQ-REACTOR-TIER'] = { + type = 'max', + effect = { + 'fusion-reactor' + } + }, + ['PHI-EQ-LASER-TIER'] = { + type = 'max', + effect = { + 'personal-laser-defense' + } + }, + ['PHI-EQ-ROBOPORT-TIER'] = { + type = 'max', + effect = { + 'personal-roboport' + } + }, + ['PHI-EQ-SHIELD-TIER'] = { + type = 'max', + effect = { + 'energy-shield' + } + }, + ['PHI-EQ-NIGHT-TIER'] = { + type = 'max', + effect = { + 'night-vision' + } + }, + ['PHI-EQ-EXO-TIER'] = { + type = 'max', + effect = { + 'exoskeleton' + } } }, ['research_modifier'] = { @@ -428,6 +489,96 @@ local items = { min = 2, max = 3 } + }, + ['equipment'] = { + ['solar-panel-equipment'] = { + enabled = true, + type = 'solar-panel-equipment', + name = 'solar-panel', + ref_name = 'solar-panel-equipment', + tech = 'solar-panel-equipment', + min = 2, + max = 8, + base = 30, + graphics_name = 'solar-panel-equipment' + }, + ['fusion-reactor-equipment'] = { + enabled = true, + type = 'generator-equipment', + name = 'fusion-reactor', + ref_name = 'fusion-reactor-equipment', + tech = 'fusion-reactor-equipment', + min = 2, + max = 8, + base = 750, + graphics_name = 'fusion-reactor-equipment' + }, + ['battery-equipment'] = { + enabled = true, + type = 'battery-equipment', + name = 'battery', + ref_name = 'battery-mk2-equipment', + tech = 'battery-mk2-equipment', + min = 3, + max = 8, + base = 100, + graphics_name = 'battery-mk2-equipment' + }, + ['personal-laser-defense-equipment'] = { + enabled = true, + type = 'active-defense-equipment', + name = 'personal-laser-defense', + ref_name = 'personal-laser-defense-equipment', + tech = 'personal-laser-defense-equipment', + min = 2, + max = 8, + base = 3, + graphics_name = 'personal-laser-defense-equipment' + }, + ['energy-shield-equipment'] = { + enabled = true, + type = 'energy-shield-equipment', + name = 'energy-shield', + ref_name = 'energy-shield-mk2-equipment', + tech = 'energy-shield-mk2-equipment', + min = 3, + max = 8, + base = 150, + graphics_name = 'energy-shield-mk2-equipment' + }, + ['personal-roboport-equipment'] = { + enabled = true, + type = 'roboport-equipment', + name = 'personal-roboport', + ref_name = 'personal-roboport-mk2-equipment', + tech = 'personal-roboport-mk2-equipment', + min = 3, + max = 8, + base = 0.5, + graphics_name = 'personal-roboport-mk2-equipment' + }, + ['night-vision-equipment'] = { + enabled = true, + type = 'night-vision-equipment', + name = 'night-vision', + ref_name = 'night-vision-equipment', + tech = 'night-vision-equipment', + min = 2, + max = 2, + base = 1, + graphics_name = 'night-vision-equipment' + }, + ['exoskeleton-equipment'] = { + enabled = true, + type = 'movement-bonus-equipment', + name = 'exoskeleton', + ref_name = 'exoskeleton-equipment', + tech = 'exoskeleton-equipment', + min = 2, + max = 2, + base = 0.6, + graphics_name = 'exoskeleton-equipment' + } } } @@ -825,6 +976,24 @@ if mods ~= nil then min = 2, max = 3 } + + items['equipment']['solar-panel'].base = 30 + + items['equipment']['fusion-reactor'].tech = 'se-rtg-equipment' + items['equipment']['fusion-reactor'].base_name = 'se-rtg' + items['equipment']['fusion-reactor'].base = 400 + + items['equipment']['battery'].tech = 'battery-equipment' + items['equipment']['battery'].min = 2 + items['equipment']['battery'].base = 100 + + items['equipment']['energy-shield'].tech = 'energy-shield-equipment' + items['equipment']['energy-shield'].min = 2 + items['equipment']['energy-shield'].base = 200 + + items['equipment']['personal-roboport'].tech = 'personal-roboport-equipment' + items['equipment']['personal-roboport'].min = 2 + items['equipment']['personal-roboport'].base = 0.5 end end diff --git a/PHI-CL/data-updates.lua b/PHI-CL/data-updates.lua index 84f7451..41ebab5 100644 --- a/PHI-CL/data-updates.lua +++ b/PHI-CL/data-updates.lua @@ -1,7 +1,8 @@ local items = require 'config' +local file_stage = 2 -- entity -local function EE(source, tier) +local function EEE(source, tier) local item = table.deepcopy(data.raw[source.type][source.ref_name]) item.name = source.name .. '-' .. tier @@ -62,6 +63,22 @@ local function EE(source, tier) elseif (source.type == 'mining-drill') then item.mining_speed = item.mining_speed * (2 ^ (tier - source.min + 1)) + elseif source.type == 'electric-turret' then + item.attack_parameters.damage_modifier = item.attack_parameters.damage_modifier * 2 + item.glow_light_intensity = 1 + item.attack_parameters.ammo_type.action.action_delivery.max_length = source.range + (2 * (tier - source.min + 1)) + -- item.attack_parameters.ammo_type.energy_consumption = 800 * (2 ^ (tier - source.min + 1)) .. 'kJ' + item.energy_source.input_flow_limit = 9600 * (2 ^ (tier - source.min + 1)) .. 'kW' + item.energy_source.buffer_capacity = 12816 * (2 ^ (tier - source.min + 1)) .. 'kJ' + + elseif source.type == 'fluid-turret' then + item.prepare_range = 35 + (2 * (tier - source.min + 1)) + + elseif source.type == 'radar' then + item.max_distance_of_sector_revealed = item.max_distance_of_sector_revealed + (2 * tier) + item.max_distance_of_nearby_sector_revealed = item.max_distance_of_nearby_sector_revealed + (2 * tier) + item.energy_usage = 300 * (1 + (0.5 * (tier - source.min + 1))) .. 'kW' + else if item.crafting_speed then item.crafting_speed = item.crafting_speed * (2 ^ (tier - source.min + 1)) @@ -72,6 +89,12 @@ local function EE(source, tier) end end + if source.type == 'electric-turret' or source.type == 'ammo-turret' or source.type == 'fluid-turret' then + item.attack_parameters.damage_modifier = (2 ^ (tier - source.min + 1)) + item.attack_parameters.range = source.range + (2 * (tier - source.min + 1)) + item.call_for_help_radius = 40 + (2 * (tier - source.min + 1)) + end + if item.fluid_boxes then for k, _ in pairs(item.fluid_boxes) do if (item.fluid_boxes[k] and (not item.fluid_boxes[k])) then @@ -103,15 +126,101 @@ local function EE(source, tier) data:extend({item}) end +-- equipment +local function EEQ(source, tier) + local item = {} + item['name'] = source.name .. '-mk' .. tier .. '-equipment' + item['categories'] = {'armor'} + local w = 1 + local h = 1 + + if (source.name == 'solar-panel') then + item['power'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'kW' + item['energy_source'] = {type = 'electric', usage_priority = 'primary-output'} + + elseif (source.name == 'battery') then + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'tertiary', buffer_capacity= (source.base * (2 ^ (tier - source.min + 1))) .. 'MJ'} + + elseif (source.type == 'fusion-reactor') then + w = 4 + h = 4 + item['power'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'kW' + item['energy_source'] = {type = 'electric', usage_priority = 'primary-output'} + + elseif (source.type == 'personal-laser-defense') then + w = 2 + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = (250 * (2 ^ (tier - source.min + 1))) .. 'kJ'} + -- item['source_direction_count'] = 64 + -- item['source_offset'] = {0, -3.423489 / 4} + item['attack_parameters'] = {type = 'beam', cooldown = 40, range = (18 + tier), damage_modifier = (source.base * (2 ^ (tier - source.min + 1))), ammo_type = {category = 'laser', energy_consumption = (50 * (2 ^ (tier - 1))) .. 'kJ', action = {type = 'direct', action_delivery = {type = 'beam', beam = 'laser-beam', max_length = (18 + tier), duration = 60, source_offset = {0, -1.31439}}}}} + item['automatic'] = true + + elseif (source.type == 'energy-shield') then + w = 2 + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'primary-input', input_flow_limit = (source.base * 4 * (2 ^ (tier - source.min + 1))) .. 'kW', buffer_capacity = (source.base * 2 * (2 ^ (tier - 1))) .. 'kJ'} + item['max_shield_value'] = (source.base * (2 ^ (tier - 2))) + item['energy_per_shield'] = '80kJ' + + elseif (source.type == 'personal-roboport') then + w = 2 + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = (source.base * 32 * (2 ^ (tier - source.min + 1))) .. 'MJ'} + item['robot_limit'] = 50 + item['construction_radius'] = 32 + item['spawn_and_station_height'] = 0.4 + item['spawn_and_station_shadow_height_offset'] = 0.5 + item['charge_approach_distance'] = 2.6 + item['robots_shrink_when_entering_and_exiting'] = true + item['recharging_animation'] = {filename = '__base__/graphics/entity/roboport/roboport-recharging.png', draw_as_glow = true, priority = 'high', width = 37, height = 35, frame_count = 16, scale = 1.5, animation_speed = 0.5} + item['recharging_light'] = {intensity = 0.2, size = 3, color = {r = 0.5, g = 0.5, b = 1.0}} + item['stationing_offset'] = {0, -0.6} + item['charging_station_shift'] = {0, 0.5} + item['charging_station_count'] = 16 + item['charging_energy'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'MW' + item['charging_distance'] = 1.6 + item['charging_threshold_distance'] = 5 + + elseif (source.type == 'night-vision') then + w = 2 + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'primary-input', buffer_capacity = '1MJ'} + item['energy_input'] = '20kW' + item['activate_sound'] = {filename = '__base__/sound/nightvision-on.ogg', volume = 0.5} + item['deactivate_sound'] = {filename = '__base__/sound/nightvision-off.ogg', volume = 0.5} + item['darkness_to_turn_on'] = source.base + item['color_lookup'] = {{0, '__core__/graphics/color_luts/lut-sunset.png'}} + + elseif (source.type == 'exoskeleton') then + w = 2 + h = 4 + item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = '10MJ'} + item['energy_consumption'] = '400kW' + item['movement_bonus'] = source.base + end + + item['shape'] = {width = w, height = h, type = 'full'} + item['sprite'] = {filename = '__base__/graphics/equipment/' .. source.graphics_name .. '.png', width = w * 32, height = h * 32, priority = 'medium', hr_version = {filename = '__base__/graphics/equipment/hr-' .. source.graphics_name .. '.png', width = w * 64, height = h * 64, priority = 'medium', scale = 0.5}} + + data:extend({item}) +end + -- item local function EI(source, tier) local item = table.deepcopy(data.raw.item[source.ref_name]) - item.name = source.name .. '-' .. tier - item.place_result = source.name .. '-' .. tier + if string.find(source.type, '-equipment') then + item.name = source.name .. '-mk' .. tier .. '-equipment' + item.placed_as_equipment_result = source.name .. '-mk' .. tier .. '-equipment' - -- item.subgroup = 'energy' - -- item.icons = {{icon = graphics_location .. source.name .. '-i.png', icon_mipmaps = 4, icon_size = 64}} + else + item.name = source.name .. '-' .. tier + item.place_result = source.name .. '-' .. tier + + -- item.icons = {{icon = graphics_location .. source.name .. '-i.png', icon_mipmaps = 4, icon_size = 64}} + end item.order = item.order .. tier data:extend({item}) @@ -119,10 +228,27 @@ end -- recipe local function ER(source, tier) + local new_name = source.name local ingredient_name = source.name + local result_name = source.name - if tier > 2 then - ingredient_name = ingredient_name .. '-' .. (tier - 1) + if string.find(source.type, '-equipment') then + if (tier == 1) then + ingredient_name = ingredient_name .. '-equipment' + + else + ingredient_name = ingredient_name .. '-mk' .. (tier - 1) .. '-equipment' + end + + new_name = ingredient_name .. '-mk' .. tier .. '-equipment' + result_name = ingredient_name .. '-mk' .. tier .. '-equipment' + else + if tier > 2 then + ingredient_name = ingredient_name .. '-' .. (tier - 1) + end + + new_name = ingredient_name .. '-' .. tier + result_name = ingredient_name .. '-' .. tier end local ingredient_amount = 2 @@ -134,21 +260,21 @@ local function ER(source, tier) if ((source.type == 'boiler') or (source.type == 'steam-engine') or (source.type == 'nuclear-reactor') or (source.type == 'heat-pipe') or (source.type == 'heat-exchanger') or (source.type == 'steam-turbine')) and (tier > 2) then data:extend({{ type = 'recipe', - name = source.name .. '-' .. tier, + name = new_name , energy_required = 2, enabled = false, ingredients = {{ingredient_name, 1}, {source.name, 1}}, - result = source.name .. '-' .. tier, + result = result_name, }}) else data:extend({{ type = 'recipe', - name = source.name .. '-' .. tier, + name = new_name, energy_required = 2, enabled = false, ingredients = {{ingredient_name, ingredient_amount}}, - result = source.name .. '-' .. tier, + result = result_name, }}) end end @@ -194,7 +320,24 @@ local function ET(source, tier) end elseif data.raw.technology[source.tech] then - table.insert(data.raw.technology[source.tech].effects, {type='unlock-recipe', recipe=source.name .. '-' .. tier}) + if string.find(source.type, '-equipment') then + table.insert(data.raw.technology[source.tech].effects, {type='unlock-recipe', recipe=source.name .. '-mk' .. tier .. '-equipment'}) + + else + table.insert(data.raw.technology[source.tech].effects, {type='unlock-recipe', recipe=source.name .. '-' .. tier}) + + if source.type == 'ammo-turret' or source.type == 'fluid-turret' then + for i=1, #items['research_modifier'][source.type], 1 do + for j=1, #data.raw.technology[items['research_modifier'][source.type][i]].effects, 1 do + if (data.raw.technology[items['research_modifier'][source.type][i]].effects[j].type == 'turret-attack') then + if (data.raw.technology[items['research_modifier'][source.type][i]].effects[j].turret_id == source.ref_name) then + table.insert(data.raw.technology[items['research_modifier'][source.type][i]].effects, {type='turret-attack', turret_id=source.name .. '-' .. tier, modifier=data.raw.technology[items['research_modifier'][source.type][i]].effects[j].modifier}) + end + end + end + end + end + end end end @@ -215,23 +358,26 @@ local function EL(source) end end -for k, v in pairs(items['setting']) do - for k2=1, #v.effect do - if items[v.effect[k2]] ~= nil then - if settings.startup[k].value < items[v.effect[k2]].min then - items[v.effect[k2]].enabled = false +for _, v in pairs(items['item']) do + if v.enabled then + if v.stage == file_stage then + for j=v.min, v.max, 1 do + EEE(v, j) + EI(v, j) + ER(v, j) + ET(v, j) end - items[v.effect[k2]][v.type] = settings.startup[k].value + EL(v) end end end -for _, v in pairs(items['item']) do +for _, v in pairs(items['equipment']) do if v.enabled then - if v.stage == 2 then + if v.stage == file_stage then for j=v.min, v.max, 1 do - EE(v, j) + EEQ(v, j) EI(v, j) ER(v, j) ET(v, j) @@ -268,3 +414,55 @@ if settings.startup['PHI-XW-WATER'].value > 0 then data.raw['offshore-pump']['seafloor-pump'].max_health = 400 end end + +if settings.startup['PHI-EQ-ARMOR'].value then + data:extend({ + { + type = 'equipment-grid', + name = 'equipment-grid-14x14', + width = 14, + height = 14, + equipment_categories = {'armor'} + }, + { + type = 'armor', + name = 'power-armor-mk3', + icon = '__base__/graphics/icons/power-armor-mk2.png', + icon_size = 64, icon_mipmaps = 4, + resistances = {{type = 'physical', decrease = 20, percent = 50}, {type = 'acid', decrease = 20, percent = 80}, + {type = 'explosion', decrease = 70, percent = 60}, {type = 'fire', decrease = 20, percent = 80}, + {type = 'laser', decrease = 20, percent = 50}, {type = 'electric', decrease = 20, percent = 50}, + {type = 'impact', decrease = 20, percent = 50}, {type = 'poison', decrease = 20, percent = 50}}, + subgroup = 'armor', + order = 'eb[power-armor-mk3]', + stack_size = 1, + infinite = true, + equipment_grid = 'equipment-grid-14x14', + inventory_size_bonus = 40, + open_sound = {filename = '__base__/sound/armor-open.ogg', volume = 1}, + close_sound = {filename = '__base__/sound/armor-close.ogg', volume = 1} + } + }) + + data:extend({{ + type = 'recipe', + name = 'power-armor-mk3', + energy_required = 5, + enabled = 'false', + ingredients = {{'power-armor-mk2', 2}}, + result = 'power-armor-mk3' + }}) + + for _, animation in ipairs(data.raw['character']['character']['animations']) do + if animation.armors then + for _, armor in ipairs(animation.armors) do + if armor == 'power-armor-mk2' then + animation.armors[#animation.armors + 1] = 'power-armor-mk3' + break + end + end + end + end + + table.insert(data.raw.technology['power-armor-mk2'].effects, {type='unlock-recipe', recipe='power-armor-mk3'}) +end diff --git a/PHI-CL/data.lua b/PHI-CL/data.lua index d93eada..cd51435 100644 --- a/PHI-CL/data.lua +++ b/PHI-CL/data.lua @@ -1,9 +1,10 @@ local alpha_order = {'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm'} -- local graphics_location = '__PHI-EN__/graphics/' local items = require 'config' +local file_stage = 1 -- entity -local function EE(source, tier) +local function EEE(source, tier) local item = table.deepcopy(data.raw[source.type][source.ref_name]) item.name = source.name .. '-' .. tier @@ -127,15 +128,101 @@ local function EE(source, tier) data:extend({item}) end +-- equipment +local function EEQ(source, tier) + local item = {} + item['name'] = source.name .. '-mk' .. tier .. '-equipment' + item['categories'] = {'armor'} + local w = 1 + local h = 1 + + if (source.name == 'solar-panel') then + item['power'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'kW' + item['energy_source'] = {type = 'electric', usage_priority = 'primary-output'} + + elseif (source.name == 'battery') then + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'tertiary', buffer_capacity= (source.base * (2 ^ (tier - source.min + 1))) .. 'MJ'} + + elseif (source.type == 'fusion-reactor') then + w = 4 + h = 4 + item['power'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'kW' + item['energy_source'] = {type = 'electric', usage_priority = 'primary-output'} + + elseif (source.type == 'personal-laser-defense') then + w = 2 + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = (250 * (2 ^ (tier - source.min + 1))) .. 'kJ'} + -- item['source_direction_count'] = 64 + -- item['source_offset'] = {0, -3.423489 / 4} + item['attack_parameters'] = {type = 'beam', cooldown = 40, range = (18 + tier), damage_modifier = (source.base * (2 ^ (tier - source.min + 1))), ammo_type = {category = 'laser', energy_consumption = (50 * (2 ^ (tier - 1))) .. 'kJ', action = {type = 'direct', action_delivery = {type = 'beam', beam = 'laser-beam', max_length = (18 + tier), duration = 60, source_offset = {0, -1.31439}}}}} + item['automatic'] = true + + elseif (source.type == 'energy-shield') then + w = 2 + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'primary-input', input_flow_limit = (source.base * 4 * (2 ^ (tier - source.min + 1))) .. 'kW', buffer_capacity = (source.base * 2 * (2 ^ (tier - 1))) .. 'kJ'} + item['max_shield_value'] = (source.base * (2 ^ (tier - 2))) + item['energy_per_shield'] = '80kJ' + + elseif (source.type == 'personal-roboport') then + w = 2 + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = (source.base * 32 * (2 ^ (tier - source.min + 1))) .. 'MJ'} + item['robot_limit'] = 50 + item['construction_radius'] = 32 + item['spawn_and_station_height'] = 0.4 + item['spawn_and_station_shadow_height_offset'] = 0.5 + item['charge_approach_distance'] = 2.6 + item['robots_shrink_when_entering_and_exiting'] = true + item['recharging_animation'] = {filename = '__base__/graphics/entity/roboport/roboport-recharging.png', draw_as_glow = true, priority = 'high', width = 37, height = 35, frame_count = 16, scale = 1.5, animation_speed = 0.5} + item['recharging_light'] = {intensity = 0.2, size = 3, color = {r = 0.5, g = 0.5, b = 1.0}} + item['stationing_offset'] = {0, -0.6} + item['charging_station_shift'] = {0, 0.5} + item['charging_station_count'] = 16 + item['charging_energy'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'MW' + item['charging_distance'] = 1.6 + item['charging_threshold_distance'] = 5 + + elseif (source.type == 'night-vision') then + w = 2 + h = 2 + item['energy_source'] = {type = 'electric', usage_priority = 'primary-input', buffer_capacity = '1MJ'} + item['energy_input'] = '20kW' + item['activate_sound'] = {filename = '__base__/sound/nightvision-on.ogg', volume = 0.5} + item['deactivate_sound'] = {filename = '__base__/sound/nightvision-off.ogg', volume = 0.5} + item['darkness_to_turn_on'] = source.base + item['color_lookup'] = {{0, '__core__/graphics/color_luts/lut-sunset.png'}} + + elseif (source.type == 'exoskeleton') then + w = 2 + h = 4 + item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = '10MJ'} + item['energy_consumption'] = '400kW' + item['movement_bonus'] = source.base + end + + item['shape'] = {width = w, height = h, type = 'full'} + item['sprite'] = {filename = '__base__/graphics/equipment/' .. source.graphics_name .. '.png', width = w * 32, height = h * 32, priority = 'medium', hr_version = {filename = '__base__/graphics/equipment/hr-' .. source.graphics_name .. '.png', width = w * 64, height = h * 64, priority = 'medium', scale = 0.5}} + + data:extend({item}) +end + -- item local function EI(source, tier) local item = table.deepcopy(data.raw.item[source.ref_name]) - item.name = source.name .. '-' .. tier - item.place_result = source.name .. '-' .. tier + if string.find(source.type, '-equipment') then + item.name = source.name .. '-mk' .. tier .. '-equipment' + item.placed_as_equipment_result = source.name .. '-mk' .. tier .. '-equipment' - -- item.subgroup = 'energy' - -- item.icons = {{icon = graphics_location .. source.name .. '-i.png', icon_mipmaps = 4, icon_size = 64}} + else + item.name = source.name .. '-' .. tier + item.place_result = source.name .. '-' .. tier + + -- item.icons = {{icon = graphics_location .. source.name .. '-i.png', icon_mipmaps = 4, icon_size = 64}} + end item.order = item.order .. tier data:extend({item}) @@ -143,10 +230,27 @@ end -- recipe local function ER(source, tier) + local new_name = source.name local ingredient_name = source.name + local result_name = source.name - if tier > 2 then - ingredient_name = ingredient_name .. '-' .. (tier - 1) + if string.find(source.type, '-equipment') then + if (tier == 1) then + ingredient_name = ingredient_name .. '-equipment' + + else + ingredient_name = ingredient_name .. '-mk' .. (tier - 1) .. '-equipment' + end + + new_name = ingredient_name .. '-mk' .. tier .. '-equipment' + result_name = ingredient_name .. '-mk' .. tier .. '-equipment' + else + if tier > 2 then + ingredient_name = ingredient_name .. '-' .. (tier - 1) + end + + new_name = ingredient_name .. '-' .. tier + result_name = ingredient_name .. '-' .. tier end local ingredient_amount = 2 @@ -158,21 +262,21 @@ local function ER(source, tier) if ((source.type == 'boiler') or (source.type == 'steam-engine') or (source.type == 'nuclear-reactor') or (source.type == 'heat-pipe') or (source.type == 'heat-exchanger') or (source.type == 'steam-turbine')) and (tier > 2) then data:extend({{ type = 'recipe', - name = source.name .. '-' .. tier, + name = new_name , energy_required = 2, enabled = false, ingredients = {{ingredient_name, 1}, {source.name, 1}}, - result = source.name .. '-' .. tier, + result = result_name, }}) else data:extend({{ type = 'recipe', - name = source.name .. '-' .. tier, + name = new_name, energy_required = 2, enabled = false, ingredients = {{ingredient_name, ingredient_amount}}, - result = source.name .. '-' .. tier, + result = result_name, }}) end end @@ -218,14 +322,19 @@ local function ET(source, tier) end elseif data.raw.technology[source.tech] then - table.insert(data.raw.technology[source.tech].effects, {type='unlock-recipe', recipe=source.name .. '-' .. tier}) + if string.find(source.type, '-equipment') then + table.insert(data.raw.technology[source.tech].effects, {type='unlock-recipe', recipe=source.name .. '-mk' .. tier .. '-equipment'}) - if source.type == 'ammo-turret' or source.type == 'fluid-turret' then - for i=1, #items['research_modifier'][source.type], 1 do - for j=1, #data.raw.technology[items['research_modifier'][source.type][i]].effects, 1 do - if (data.raw.technology[items['research_modifier'][source.type][i]].effects[j].type == 'turret-attack') then - if (data.raw.technology[items['research_modifier'][source.type][i]].effects[j].turret_id == source.ref_name) then - table.insert(data.raw.technology[items['research_modifier'][source.type][i]].effects, {type='turret-attack', turret_id=source.name .. '-' .. tier, modifier=data.raw.technology[items['research_modifier'][source.type][i]].effects[j].modifier}) + else + table.insert(data.raw.technology[source.tech].effects, {type='unlock-recipe', recipe=source.name .. '-' .. tier}) + + if source.type == 'ammo-turret' or source.type == 'fluid-turret' then + for i=1, #items['research_modifier'][source.type], 1 do + for j=1, #data.raw.technology[items['research_modifier'][source.type][i]].effects, 1 do + if (data.raw.technology[items['research_modifier'][source.type][i]].effects[j].type == 'turret-attack') then + if (data.raw.technology[items['research_modifier'][source.type][i]].effects[j].turret_id == source.ref_name) then + table.insert(data.raw.technology[items['research_modifier'][source.type][i]].effects, {type='turret-attack', turret_id=source.name .. '-' .. tier, modifier=data.raw.technology[items['research_modifier'][source.type][i]].effects[j].modifier}) + end end end end @@ -265,9 +374,24 @@ end for _, v in pairs(items['item']) do if v.enabled then - if v.stage == 1 then + if v.stage == file_stage then for j=v.min, v.max, 1 do - EE(v, j) + EEE(v, j) + EI(v, j) + ER(v, j) + ET(v, j) + end + + EL(v) + end + end +end + +for _, v in pairs(items['equipment']) do + if v.enabled then + if v.stage == file_stage then + for j=v.min, v.max, 1 do + EEQ(v, j) EI(v, j) ER(v, j) ET(v, j) diff --git a/PHI-CL/info.json b/PHI-CL/info.json index 5a72092..249c4b0 100644 --- a/PHI-CL/info.json +++ b/PHI-CL/info.json @@ -7,7 +7,7 @@ "author": "PHIDIAS0303", "contributers": "", "homepage": "", - "description": "Additional compound entities and items.\nIncluding power item like solar panel, accumulator.", + "description": "Additional compound entities and items\nPower item like solar panel, accumulator\nWeapon like laser turret\nPersonal Equipment like fusion reactor\nRecipe scaling\nWater pump placement anywhere", "dependencies": [ "base >= 1.1.0", "? aai-industry >= 0.5.0", diff --git a/PHI-CL/locale/en/locale.cfg b/PHI-CL/locale/en/locale.cfg index 40efb10..c4a096d 100644 --- a/PHI-CL/locale/en/locale.cfg +++ b/PHI-CL/locale/en/locale.cfg @@ -180,6 +180,106 @@ flamethrower-turret-3=Flamethrower turret 3 radar-2=Radar 2 radar-3=Radar 3 +solar-panel-mk2-equipment=Portable Solar Panel MK2 +solar-panel-mk3-equipment=Portable Solar Panel MK3 +solar-panel-mk4-equipment=Portable Solar Panel MK4 +solar-panel-mk5-equipment=Portable Solar Panel MK5 +solar-panel-mk6-equipment=Portable Solar Panel MK6 +solar-panel-mk7-equipment=Portable Solar Panel MK7 +solar-panel-mk8-equipment=Portable Solar Panel MK8 + +battery-mk3-equipment=Personal Battery MK3 +battery-mk4-equipment=Personal Battery MK4 +battery-mk5-equipment=Personal Battery MK5 +battery-mk6-equipment=Personal Battery MK6 +battery-mk7-equipment=Personal Battery MK7 +battery-mk8-equipment=Personal Battery MK8 + +fusion-reactor-mk2-equipment=Portable Fusion Reactor MK2 +fusion-reactor-mk3-equipment=Portable Fusion Reactor MK3 +fusion-reactor-mk4-equipment=Portable Fusion Reactor MK4 +fusion-reactor-mk5-equipment=Portable Fusion Reactor MK5 +fusion-reactor-mk6-equipment=Portable Fusion Reactor MK6 +fusion-reactor-mk7-equipment=Portable Fusion Reactor MK7 +fusion-reactor-mk8-equipment=Portable Fusion Reactor MK8 + +energy-shield-mk3-equipment=Energy Shield MK3 +energy-shield-mk4-equipment=Energy Shield MK4 +energy-shield-mk5-equipment=Energy Shield MK5 +energy-shield-mk6-equipment=Energy Shield MK6 +energy-shield-mk7-equipment=Energy Shield MK7 +energy-shield-mk8-equipment=Energy Shield MK8 + +personal-laser-defense-mk2-equipment=Personal Laser Defense MK2 +personal-laser-defense-mk3-equipment=Personal Laser Defense MK3 +personal-laser-defense-mk4-equipment=Personal Laser Defense MK4 +personal-laser-defense-mk5-equipment=Personal Laser Defense MK5 +personal-laser-defense-mk6-equipment=Personal Laser Defense MK6 +personal-laser-defense-mk7-equipment=Personal Laser Defense MK7 +personal-laser-defense-mk8-equipment=Personal Laser Defense MK8 + +personal-roboport-mk3-equipment=Personal Roboport MK3 +personal-roboport-mk4-equipment=Personal Roboport MK4 +personal-roboport-mk5-equipment=Personal Roboport MK5 +personal-roboport-mk6-equipment=Personal Roboport MK6 +personal-roboport-mk7-equipment=Personal Roboport MK7 +personal-roboport-mk8-equipment=Personal Roboport MK8 + +night-vision-mk2-equipment=Nightvision Equipment MK2 +exoskeleton-mk2-equipment=Exoskeleton MK2 +power-armor-mk3=Power Armor MK3 + + +[item-description] +solar-panel-mk2-equipment=Provides power for equipment modules. +solar-panel-mk3-equipment=Provides power for equipment modules. +solar-panel-mk4-equipment=Provides power for equipment modules. +solar-panel-mk5-equipment=Provides power for equipment modules. +solar-panel-mk6-equipment=Provides power for equipment modules. +solar-panel-mk7-equipment=Provides power for equipment modules. +solar-panel-mk8-equipment=Provides power for equipment modules. + +battery-mk3-equipment=Stores electric energy for equipment modules. +battery-mk4-equipment=Stores electric energy for equipment modules. +battery-mk5-equipment=Stores electric energy for equipment modules. +battery-mk6-equipment=Stores electric energy for equipment modules. +battery-mk7-equipment=Stores electric energy for equipment modules. +battery-mk8-equipment=Stores electric energy for equipment modules. + +fusion-reactor-mk2-equipment=Provides power for equipment modules. +fusion-reactor-mk3-equipment=Provides power for equipment modules. +fusion-reactor-mk4-equipment=Provides power for equipment modules. +fusion-reactor-mk5-equipment=Provides power for equipment modules. +fusion-reactor-mk6-equipment=Provides power for equipment modules. +fusion-reactor-mk7-equipment=Provides power for equipment modules. +fusion-reactor-mk8-equipment=Provides power for equipment modules. + +energy-shield-mk3-equipment=Provides an energy shield to protect the character. +energy-shield-mk4-equipment=Provides an energy shield to protect the character. +energy-shield-mk5-equipment=Provides an energy shield to protect the character. +energy-shield-mk6-equipment=Provides an energy shield to protect the character. +energy-shield-mk7-equipment=Provides an energy shield to protect the character. +energy-shield-mk8-equipment=Provides an energy shield to protect the character. + +personal-laser-defense-mk2-equipment=Inserted into armor to automatically fire at nearby enemies. +personal-laser-defense-mk3-equipment=Inserted into armor to automatically fire at nearby enemies. +personal-laser-defense-mk4-equipment=Inserted into armor to automatically fire at nearby enemies. +personal-laser-defense-mk5-equipment=Inserted into armor to automatically fire at nearby enemies. +personal-laser-defense-mk6-equipment=Inserted into armor to automatically fire at nearby enemies. +personal-laser-defense-mk7-equipment=Inserted into armor to automatically fire at nearby enemies. +personal-laser-defense-mk8-equipment=Inserted into armor to automatically fire at nearby enemies. + +personal-roboport-mk3-equipment=Inserted into armor to allow many construction robots to work from your inventory. +personal-roboport-mk4-equipment=Inserted into armor to allow many construction robots to work from your inventory. +personal-roboport-mk5-equipment=Inserted into armor to allow many construction robots to work from your inventory. +personal-roboport-mk6-equipment=Inserted into armor to allow many construction robots to work from your inventory. +personal-roboport-mk7-equipment=Inserted into armor to allow many construction robots to work from your inventory. +personal-roboport-mk8-equipment=Inserted into armor to allow many construction robots to work from your inventory. + +night-vision-mk2-equipment=Allows you to see more clearly in darkness. +exoskeleton-mk2-equipment=Inserted into armor to increase movement speed. You can equip multiple exoskeletons at once. +power-armor-mk3=Armor with a huge equipment grid and inventory size bonus. + [entity-name] accumulator-2=Accumulator 2 accumulator-3=Accumulator 3 @@ -539,6 +639,56 @@ flamethrower-turret-3=Fires a stream of burning liquid at enemies. radar-2=Scans the nearby sectors, and actively reveals an area around it. radar-3=Scans the nearby sectors, and actively reveals an area around it. + +[equipment-name] +solar-panel-mk2-equipment=Portable Solar Panel MK2 +solar-panel-mk3-equipment=Portable Solar Panel MK3 +solar-panel-mk4-equipment=Portable Solar Panel MK4 +solar-panel-mk5-equipment=Portable Solar Panel MK5 +solar-panel-mk6-equipment=Portable Solar Panel MK6 +solar-panel-mk7-equipment=Portable Solar Panel MK7 +solar-panel-mk8-equipment=Portable Solar Panel MK8 + +battery-mk3-equipment=Personal Battery MK3 +battery-mk4-equipment=Personal Battery MK4 +battery-mk5-equipment=Personal Battery MK5 +battery-mk6-equipment=Personal Battery MK6 +battery-mk7-equipment=Personal Battery MK7 +battery-mk8-equipment=Personal Battery MK8 + +fusion-reactor-mk2-equipment=Portable Fusion Reactor MK2 +fusion-reactor-mk3-equipment=Portable Fusion Reactor MK3 +fusion-reactor-mk4-equipment=Portable Fusion Reactor MK4 +fusion-reactor-mk5-equipment=Portable Fusion Reactor MK5 +fusion-reactor-mk6-equipment=Portable Fusion Reactor MK6 +fusion-reactor-mk7-equipment=Portable Fusion Reactor MK7 +fusion-reactor-mk8-equipment=Portable Fusion Reactor MK8 + +energy-shield-mk3-equipment=Energy Shield MK3 +energy-shield-mk4-equipment=Energy Shield MK4 +energy-shield-mk5-equipment=Energy Shield MK5 +energy-shield-mk6-equipment=Energy Shield MK6 +energy-shield-mk7-equipment=Energy Shield MK7 +energy-shield-mk8-equipment=Energy Shield MK8 + +personal-laser-defense-mk2-equipment=Personal Laser Defense MK2 +personal-laser-defense-mk3-equipment=Personal Laser Defense MK3 +personal-laser-defense-mk4-equipment=Personal Laser Defense MK4 +personal-laser-defense-mk5-equipment=Personal Laser Defense MK5 +personal-laser-defense-mk6-equipment=Personal Laser Defense MK6 +personal-laser-defense-mk7-equipment=Personal Laser Defense MK7 +personal-laser-defense-mk8-equipment=Personal Laser Defense MK8 + +personal-roboport-mk3-equipment=Personal Roboport MK3 +personal-roboport-mk4-equipment=Personal Roboport MK4 +personal-roboport-mk5-equipment=Personal Roboport MK5 +personal-roboport-mk6-equipment=Personal Roboport MK6 +personal-roboport-mk7-equipment=Personal Roboport MK7 +personal-roboport-mk8-equipment=Personal Roboport MK8 + +night-vision-mk2-equipment=Nightvision Equipment MK2 +exoskeleton-mk2-equipment=Exoskeleton MK2 + [technology-name] compound-energy=Compound Energy compound-energy-1=Compound Energy @@ -569,6 +719,7 @@ flamethrower-turret-3-attack-bonus=Fire damage: +__1__ PHI-EN=Energy PHI-MB=Megabase PHI-WE=Military +PHI-EQ=Equipment PHI-EN-SOLAR-TIER=Solar Panel PHI-EN-STEAM-TIER=Steam engine PHI-EN-NUCLEAR-TIER=Nuclear reactor @@ -583,6 +734,15 @@ PHI-WE-LASER-TIER=Laser turret PHI-WE-FLAME-TIER=Flamethrower turret PHI-WE-GUN-TIER=Gun turret PHI-WE-RADAR-TIER=Radar +PHI-EQ-SOLAR-TIER=Portable Solar Panel +PHI-EQ-BATTERY-TIER=Personal Battery +PHI-EQ-REACTOR-TIER=Portable Fusion Reactor +PHI-EQ-LASER-TIER=Personal Laser Defense +PHI-EQ-ROBOPORT-TIER=Personal Roboport +PHI-EQ-SHIELD-TIER=Energy Shield +PHI-EQ-NIGHT-TIER=Nightvision Equipment +PHI-EQ-EXO-TIER=Exoskeleton +PHI-EQ-ARMOR=Power armor PHI-XW-WATER=Water [mod-setting-description] @@ -600,4 +760,12 @@ PHI-WE-LASER-TIER=Default 3 ; Disable 1 PHI-WE-FLAME-TIER=Default 3 ; Disable 1 PHI-WE-GUN-TIER=Default 3 ; Disable 1 PHI-WE-RADAR-TIER=Default 3 ; Disable 1 +PHI-EQ-SOLAR-TIER=Default 8 ; Disable 1 +PHI-EQ-BATTERY-TIER=Default 8 ; Disable 2 +PHI-EQ-REACTOR-TIER=Default 8 ; Disable 1 +PHI-EQ-LASER-TIER=Default 8 ; Disable 1 +PHI-EQ-ROBOPORT-TIER=Default 8 ; Disable 2 +PHI-EQ-SHIELD-TIER=Default 8 ; Disable 2 +PHI-EQ-NIGHT-TIER=Default 2 ; Disable 1 +PHI-EQ-EXO-TIER=Default 2 ; Disable 1 PHI-XW-WATER=Default 1 ; Disable 0 diff --git a/PHI-CL/locale/ja/locale.cfg b/PHI-CL/locale/ja/locale.cfg index ae886da..2e4ffd3 100644 --- a/PHI-CL/locale/ja/locale.cfg +++ b/PHI-CL/locale/ja/locale.cfg @@ -180,6 +180,105 @@ flamethrower-turret-3=火炎放射タレット 3 radar-2=レーダー 2 radar-3=レーダー 3 +solar-panel-mk2-equipment=携帯ソーラーパネルモジュール2代目 +solar-panel-mk3-equipment=携帯ソーラーパネルモジュール3代目 +solar-panel-mk4-equipment=携帯ソーラーパネルモジュール4代目 +solar-panel-mk5-equipment=携帯ソーラーパネルモジュール5代目 +solar-panel-mk6-equipment=携帯ソーラーパネルモジュール6代目 +solar-panel-mk7-equipment=携帯ソーラーパネルモジュール7代目 +solar-panel-mk8-equipment=携帯ソーラーパネルモジュール8代目 + +battery-mk3-equipment=個人用バッテリー3代目 +battery-mk4-equipment=個人用バッテリー4代目 +battery-mk5-equipment=個人用バッテリー5代目 +battery-mk6-equipment=個人用バッテリー6代目 +battery-mk7-equipment=個人用バッテリー7代目 +battery-mk8-equipment=個人用バッテリー8代目 + +fusion-reactor-mk2-equipment=携帯核融合炉モジュール2代目 +fusion-reactor-mk3-equipment=携帯核融合炉モジュール3代目 +fusion-reactor-mk4-equipment=携帯核融合炉モジュール4代目 +fusion-reactor-mk5-equipment=携帯核融合炉モジュール5代目 +fusion-reactor-mk6-equipment=携帯核融合炉モジュール6代目 +fusion-reactor-mk7-equipment=携帯核融合炉モジュール7代目 +fusion-reactor-mk8-equipment=携帯核融合炉モジュール8代目 + +energy-shield-mk3-equipment=エネルギーシールドモジュール3代 +energy-shield-mk4-equipment=エネルギーシールドモジュール4代 +energy-shield-mk5-equipment=エネルギーシールドモジュール5代 +energy-shield-mk6-equipment=エネルギーシールドモジュール6代 +energy-shield-mk7-equipment=エネルギーシールドモジュール7代 +energy-shield-mk8-equipment=エネルギーシールドモジュール8代 + +personal-laser-defense-mk2-equipment=携帯レーザー防御モジュール2代 +personal-laser-defense-mk3-equipment=携帯レーザー防御モジュール3代 +personal-laser-defense-mk4-equipment=携帯レーザー防御モジュール4代 +personal-laser-defense-mk5-equipment=携帯レーザー防御モジュール5代 +personal-laser-defense-mk6-equipment=携帯レーザー防御モジュール6代 +personal-laser-defense-mk7-equipment=携帯レーザー防御モジュール7代 +personal-laser-defense-mk8-equipment=携帯レーザー防御モジュール8代 + +personal-roboport-mk3-equipment=携帯ロボットステーション3代 +personal-roboport-mk4-equipment=携帯ロボットステーション4代 +personal-roboport-mk5-equipment=携帯ロボットステーション5代 +personal-roboport-mk6-equipment=携帯ロボットステーション6代 +personal-roboport-mk7-equipment=携帯ロボットステーション7代 +personal-roboport-mk8-equipment=携帯ロボットステーション8代 + +night-vision-mk2-equipment=暗視モジュール2代 +exoskeleton-mk2-equipment=強化外骨格モジュール2代 +power-armor-mk3=パワーアーマー3代 + +[item-description] +solar-panel-mk2-equipment=装備用モジュールに電力を供給します。 +solar-panel-mk3-equipment=装備用モジュールに電力を供給します。 +solar-panel-mk4-equipment=装備用モジュールに電力を供給します。 +solar-panel-mk5-equipment=装備用モジュールに電力を供給します。 +solar-panel-mk6-equipment=装備用モジュールに電力を供給します。 +solar-panel-mk7-equipment=装備用モジュールに電力を供給します。 +solar-panel-mk8-equipment=装備用モジュールに電力を供給します。 + +battery-mk3-equipment=装備用モジュール向けに電力を貯蓄します。 +battery-mk4-equipment=装備用モジュール向けに電力を貯蓄します。 +battery-mk5-equipment=装備用モジュール向けに電力を貯蓄します。 +battery-mk6-equipment=装備用モジュール向けに電力を貯蓄します。 +battery-mk7-equipment=装備用モジュール向けに電力を貯蓄します。 +battery-mk8-equipment=装備用モジュール向けに電力を貯蓄します。 + +fusion-reactor-mk2-equipment=装備用モジュールに電力を供給します。 +fusion-reactor-mk3-equipment=装備用モジュールに電力を供給します。 +fusion-reactor-mk4-equipment=装備用モジュールに電力を供給します。 +fusion-reactor-mk5-equipment=装備用モジュールに電力を供給します。 +fusion-reactor-mk6-equipment=装備用モジュールに電力を供給します。 +fusion-reactor-mk7-equipment=装備用モジュールに電力を供給します。 +fusion-reactor-mk8-equipment=装備用モジュールに電力を供給します。 + +energy-shield-mk3-equipment=プレイヤーを守るエネルギーシールドを展開します。 +energy-shield-mk4-equipment=プレイヤーを守るエネルギーシールドを展開します。 +energy-shield-mk5-equipment=プレイヤーを守るエネルギーシールドを展開します。 +energy-shield-mk6-equipment=プレイヤーを守るエネルギーシールドを展開します。 +energy-shield-mk7-equipment=プレイヤーを守るエネルギーシールドを展開します。 +energy-shield-mk8-equipment=プレイヤーを守るエネルギーシールドを展開します。 + +personal-laser-defense-mk2-equipment=アーマーに挿入して使い、自動的に近くの敵を撃ちます。 +personal-laser-defense-mk3-equipment=アーマーに挿入して使い、自動的に近くの敵を撃ちます。 +personal-laser-defense-mk4-equipment=アーマーに挿入して使い、自動的に近くの敵を撃ちます。 +personal-laser-defense-mk5-equipment=アーマーに挿入して使い、自動的に近くの敵を撃ちます。 +personal-laser-defense-mk6-equipment=アーマーに挿入して使い、自動的に近くの敵を撃ちます。 +personal-laser-defense-mk7-equipment=アーマーに挿入して使い、自動的に近くの敵を撃ちます。 +personal-laser-defense-mk8-equipment=アーマーに挿入して使い、自動的に近くの敵を撃ちます。 + +personal-roboport-mk3-equipment=アーマーに挿入して使い、インベントリから多くの建設ロボットを使えるようになります。 +personal-roboport-mk4-equipment=アーマーに挿入して使い、インベントリから多くの建設ロボットを使えるようになります。 +personal-roboport-mk5-equipment=アーマーに挿入して使い、インベントリから多くの建設ロボットを使えるようになります。 +personal-roboport-mk6-equipment=アーマーに挿入して使い、インベントリから多くの建設ロボットを使えるようになります。 +personal-roboport-mk7-equipment=アーマーに挿入して使い、インベントリから多くの建設ロボットを使えるようになります。 +personal-roboport-mk8-equipment=アーマーに挿入して使い、インベントリから多くの建設ロボットを使えるようになります。 + +night-vision-equipment-mk2=アーマーに挿入して使い、夜間の視界を改善します。 +exoskeleton-equipment-mk2=プレイヤーの移動速度を上昇させます。 +power-armor-mk3=巨大な装備グリッドとインベントリサイズボーナス付きアーマー。 + [entity-name] accumulator-2=蓄電池 2 accumulator-3=蓄電池 3 @@ -539,6 +638,55 @@ flamethrower-turret-3=敵に火のついた液体を投射します。 radar-2=近隣の領域をスキャンし、その周囲のエリアを探索します。 radar-3=近隣の領域をスキャンし、その周囲のエリアを探索します。 +[equipment-name] +solar-panel-mk2-equipment=携帯ソーラーパネルモジュール2代目 +solar-panel-mk3-equipment=携帯ソーラーパネルモジュール3代目 +solar-panel-mk4-equipment=携帯ソーラーパネルモジュール4代目 +solar-panel-mk5-equipment=携帯ソーラーパネルモジュール5代目 +solar-panel-mk6-equipment=携帯ソーラーパネルモジュール6代目 +solar-panel-mk7-equipment=携帯ソーラーパネルモジュール7代目 +solar-panel-mk8-equipment=携帯ソーラーパネルモジュール8代目 + +battery-mk3-equipment=個人用バッテリー3代目 +battery-mk4-equipment=個人用バッテリー4代目 +battery-mk5-equipment=個人用バッテリー5代目 +battery-mk6-equipment=個人用バッテリー6代目 +battery-mk7-equipment=個人用バッテリー7代目 +battery-mk8-equipment=個人用バッテリー8代目 + +fusion-reactor-mk2-equipment=携帯核融合炉モジュール2代目 +fusion-reactor-mk3-equipment=携帯核融合炉モジュール3代目 +fusion-reactor-mk4-equipment=携帯核融合炉モジュール4代目 +fusion-reactor-mk5-equipment=携帯核融合炉モジュール5代目 +fusion-reactor-mk6-equipment=携帯核融合炉モジュール6代目 +fusion-reactor-mk7-equipment=携帯核融合炉モジュール7代目 +fusion-reactor-mk8-equipment=携帯核融合炉モジュール8代目 + +energy-shield-mk3-equipment=エネルギーシールドモジュール3代 +energy-shield-mk4-equipment=エネルギーシールドモジュール4代 +energy-shield-mk5-equipment=エネルギーシールドモジュール5代 +energy-shield-mk6-equipment=エネルギーシールドモジュール6代 +energy-shield-mk7-equipment=エネルギーシールドモジュール7代 +energy-shield-mk8-equipment=エネルギーシールドモジュール8代 + +personal-laser-defense-mk2-equipment=携帯レーザー防御モジュール2代 +personal-laser-defense-mk3-equipment=携帯レーザー防御モジュール3代 +personal-laser-defense-mk4-equipment=携帯レーザー防御モジュール4代 +personal-laser-defense-mk5-equipment=携帯レーザー防御モジュール5代 +personal-laser-defense-mk6-equipment=携帯レーザー防御モジュール6代 +personal-laser-defense-mk7-equipment=携帯レーザー防御モジュール7代 +personal-laser-defense-mk8-equipment=携帯レーザー防御モジュール8代 + +personal-roboport-mk3-equipment=携帯ロボットステーション3代 +personal-roboport-mk4-equipment=携帯ロボットステーション4代 +personal-roboport-mk5-equipment=携帯ロボットステーション5代 +personal-roboport-mk6-equipment=携帯ロボットステーション6代 +personal-roboport-mk7-equipment=携帯ロボットステーション7代 +personal-roboport-mk8-equipment=携帯ロボットステーション8代 + +night-vision-mk2-equipment=暗視モジュール2代 +exoskeleton-mk2-equipment=強化外骨格モジュール2代 + [technology-name] compound-energy=複合発電 compound-energy-1=複合発電 @@ -569,6 +717,7 @@ flamethrower-turret-3-attack-bonus=火炎放射タレット ダメージ: +__1__ PHI-EN=エネルギー PHI-MB=メガベース PHI-WE=軍事 +PHI-EQ=設備 PHI-EN-SOLAR-TIER=ソーラーパネル PHI-EN-STEAM-TIER=蒸気機関 PHI-EN-NUCLEAR-TIER=原子炉 @@ -582,7 +731,16 @@ PHI-MB-SE-ASSEMBLING-TIER=宇宙組立機 PHI-WE-LASER-TIER=レーザータレット PHI-WE-FLAME-TIER=火炎放射タレット PHI-WE-GUN-TIER=ガンタレット -PHI-WE-RADAR-TIER=レーダー +PHI-WE-RADAR-TIER=レーダー +PHI-EQ-SOLAR-TIER=携帯ソーラーパネルモジュール +PHI-EQ-BATTERY-TIER=個人用バッテリー +PHI-EQ-REACTOR-TIER=携帯核融合炉モジュール +PHI-EQ-LASER-TIER=携帯レーザー防御モジュール +PHI-EQ-ROBOPORT-TIER=携帯ロボットステーション +PHI-EQ-SHIELD-TIER=エネルギーシールドモジュール +PHI-EQ-NIGHT-TIER=暗視モジュール +PHI-EQ-EXO-TIER=強化外骨格モジュール +PHI-EQ-ARMOR=パワーアーマー PHI-XW-WATER=水 [mod-setting-description] @@ -601,3 +759,11 @@ PHI-WE-FLAME-TIER=デフォルト 3 ; 止める 1 PHI-WE-GUN-TIER=デフォルト 3 ; 止める 1 PHI-WE-RADAR-TIER=デフォルト 3 ; 止める 1 PHI-XW-WATER=デフォルト 1 ; 止める 0 +PHI-EQ-SOLAR-TIER=デフォルト 8 ; 止める 1 +PHI-EQ-BATTERY-TIER=デフォルト 8 ; 止める 2 +PHI-EQ-REACTOR-TIER=デフォルト 8 ; 止める 1 +PHI-EQ-LASER-TIER=デフォルト 8 ; 止める 1 +PHI-EQ-ROBOPORT-TIER=デフォルト 8 ; 止める 2 +PHI-EQ-SHIELD-TIER=デフォルト 8 ; 止める 2 +PHI-EQ-NIGHT-TIER=デフォルト 2 ; 止める 1 +PHI-EQ-EXO-TIER=デフォルト 2 ; 止める 1 diff --git a/PHI-CL/locale/zh-CN/locale.cfg b/PHI-CL/locale/zh-CN/locale.cfg index 25e4565..9ab7613 100644 --- a/PHI-CL/locale/zh-CN/locale.cfg +++ b/PHI-CL/locale/zh-CN/locale.cfg @@ -180,6 +180,105 @@ flamethrower-turret-3=火焰噴射器 3 radar-2=雷達 2 radar-3=雷達 3 +solar-panel-mk2-equipment=攜帶式太陽能板2代 +solar-panel-mk3-equipment=攜帶式太陽能板3代 +solar-panel-mk4-equipment=攜帶式太陽能板4代 +solar-panel-mk5-equipment=攜帶式太陽能板5代 +solar-panel-mk6-equipment=攜帶式太陽能板6代 +solar-panel-mk7-equipment=攜帶式太陽能板7代 +solar-panel-mk8-equipment=攜帶式太陽能板8代 + +battery-mk3-equipment=電池設備3代 +battery-mk4-equipment=電池設備4代 +battery-mk5-equipment=電池設備5代 +battery-mk6-equipment=電池設備6代 +battery-mk7-equipment=電池設備7代 +battery-mk8-equipment=電池設備8代 + +fusion-reactor-mk2-equipment=攜帶式核融合反應器2代 +fusion-reactor-mk3-equipment=攜帶式核融合反應器3代 +fusion-reactor-mk4-equipment=攜帶式核融合反應器4代 +fusion-reactor-mk5-equipment=攜帶式核融合反應器5代 +fusion-reactor-mk6-equipment=攜帶式核融合反應器6代 +fusion-reactor-mk7-equipment=攜帶式核融合反應器7代 +fusion-reactor-mk8-equipment=攜帶式核融合反應器8代 + +energy-shield-mk3-equipment=能量護盾3代 +energy-shield-mk4-equipment=能量護盾4代 +energy-shield-mk5-equipment=能量護盾5代 +energy-shield-mk6-equipment=能量護盾6代 +energy-shield-mk7-equipment=能量護盾7代 +energy-shield-mk8-equipment=能量護盾8代 + +personal-laser-defense-mk2-equipment=個人雷射防禦2代 +personal-laser-defense-mk3-equipment=個人雷射防禦3代 +personal-laser-defense-mk4-equipment=個人雷射防禦4代 +personal-laser-defense-mk5-equipment=個人雷射防禦5代 +personal-laser-defense-mk6-equipment=個人雷射防禦6代 +personal-laser-defense-mk7-equipment=個人雷射防禦7代 +personal-laser-defense-mk8-equipment=個人雷射防禦8代 + +personal-roboport-mk3-equipment=機動無人機調度站3代 +personal-roboport-mk4-equipment=機動無人機調度站4代 +personal-roboport-mk5-equipment=機動無人機調度站5代 +personal-roboport-mk6-equipment=機動無人機調度站6代 +personal-roboport-mk7-equipment=機動無人機調度站7代 +personal-roboport-mk8-equipment=機動無人機調度站8代 + +night-vision-mk2-equipment=夜視鏡2代 +exoskeleton-mk2-equipment=動力外骨骼2代 +power-armor-mk3=動力護甲3代 + +[item-description] +solar-panel-mk2-equipment=替裝備的模組供電。 +solar-panel-mk3-equipment=替裝備的模組供電。 +solar-panel-mk4-equipment=替裝備的模組供電。 +solar-panel-mk5-equipment=替裝備的模組供電。 +solar-panel-mk6-equipment=替裝備的模組供電。 +solar-panel-mk7-equipment=替裝備的模組供電。 +solar-panel-mk8-equipment=替裝備的模組供電。 + +battery-mk3-equipment=為設備模組儲存電力。 +battery-mk4-equipment=為設備模組儲存電力。 +battery-mk5-equipment=為設備模組儲存電力。 +battery-mk6-equipment=為設備模組儲存電力。 +battery-mk7-equipment=為設備模組儲存電力。 +battery-mk8-equipment=為設備模組儲存電力。 + +fusion-reactor-mk2-equipment=替裝備的模組供電。 +fusion-reactor-mk3-equipment=替裝備的模組供電。 +fusion-reactor-mk4-equipment=替裝備的模組供電。 +fusion-reactor-mk5-equipment=替裝備的模組供電。 +fusion-reactor-mk6-equipment=替裝備的模組供電。 +fusion-reactor-mk7-equipment=替裝備的模組供電。 +fusion-reactor-mk8-equipment=替裝備的模組供電。 + +energy-shield-mk3-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk4-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk5-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk6-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk7-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk8-equipment=用於插入模組化裝甲,可吸收大量傷害。 + +personal-laser-defense-mk2-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk3-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk4-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk5-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk6-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk7-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk8-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 + +personal-roboport-mk3-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk4-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk5-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk6-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk7-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk8-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 + +night-vision-equipment-mk2=放入模組化裝甲可使玩家獲得夜視能力。 +exoskeleton-equipment-mk2=用於插入模組化裝甲,可提高玩家的移動速度。你可以同時裝備多個外骨骼模組。 +power-armor-mk3=具有巨大模組化插槽和背包容量加成的裝甲。 + [entity-name] accumulator-2=蓄電池 2 accumulator-3=蓄電池 3 @@ -539,6 +638,55 @@ flamethrower-turret-3=噴射燃燒的油料燒灼敵人。 radar-2=掃描並顯示附近的未知區域。 radar-3=掃描並顯示附近的未知區域。 +[equipment-name] +solar-panel-mk2-equipment=攜帶式太陽能板2代 +solar-panel-mk3-equipment=攜帶式太陽能板3代 +solar-panel-mk4-equipment=攜帶式太陽能板4代 +solar-panel-mk5-equipment=攜帶式太陽能板5代 +solar-panel-mk6-equipment=攜帶式太陽能板6代 +solar-panel-mk7-equipment=攜帶式太陽能板7代 +solar-panel-mk8-equipment=攜帶式太陽能板8代 + +battery-mk3-equipment=電池設備3代 +battery-mk4-equipment=電池設備4代 +battery-mk5-equipment=電池設備5代 +battery-mk6-equipment=電池設備6代 +battery-mk7-equipment=電池設備7代 +battery-mk8-equipment=電池設備8代 + +fusion-reactor-mk2-equipment=攜帶式核融合反應器2代 +fusion-reactor-mk3-equipment=攜帶式核融合反應器3代 +fusion-reactor-mk4-equipment=攜帶式核融合反應器4代 +fusion-reactor-mk5-equipment=攜帶式核融合反應器5代 +fusion-reactor-mk6-equipment=攜帶式核融合反應器6代 +fusion-reactor-mk7-equipment=攜帶式核融合反應器7代 +fusion-reactor-mk8-equipment=攜帶式核融合反應器8代 + +energy-shield-mk3-equipment=能量護盾3代 +energy-shield-mk4-equipment=能量護盾4代 +energy-shield-mk5-equipment=能量護盾5代 +energy-shield-mk6-equipment=能量護盾6代 +energy-shield-mk7-equipment=能量護盾7代 +energy-shield-mk8-equipment=能量護盾8代 + +personal-laser-defense-mk2-equipment=個人雷射防禦2代 +personal-laser-defense-mk3-equipment=個人雷射防禦3代 +personal-laser-defense-mk4-equipment=個人雷射防禦4代 +personal-laser-defense-mk5-equipment=個人雷射防禦5代 +personal-laser-defense-mk6-equipment=個人雷射防禦6代 +personal-laser-defense-mk7-equipment=個人雷射防禦7代 +personal-laser-defense-mk8-equipment=個人雷射防禦8代 + +personal-roboport-mk3-equipment=機動無人機調度站3代 +personal-roboport-mk4-equipment=機動無人機調度站4代 +personal-roboport-mk5-equipment=機動無人機調度站5代 +personal-roboport-mk6-equipment=機動無人機調度站6代 +personal-roboport-mk7-equipment=機動無人機調度站7代 +personal-roboport-mk8-equipment=機動無人機調度站8代 + +night-vision-mk2-equipment=夜視鏡2代 +exoskeleton-mk2-equipment=動力外骨骼2代 + [technology-name] compound-energy=複合發電 compound-energy-1=複合發電 @@ -569,6 +717,7 @@ flamethrower-turret-3-attack-bonus=火焰噴射炮塔傷害:+__1__ PHI-EN=能量 PHI-MB=大型基地 PHI-WE=軍事 +PHI-EQ=設備 PHI-EN-SOLAR-TIER=太陽能板 PHI-EN-STEAM-TIER=蒸汽發電機 PHI-EN-NUCLEAR-TIER=核能反應爐 @@ -583,6 +732,15 @@ PHI-WE-LASER-TIER=雷射炮塔 PHI-WE-FLAME-TIER=火焰噴射器 PHI-WE-GUN-TIER=機槍炮塔 PHI-WE-RADAR-TIER=雷達 +PHI-EQ-SOLAR-TIER=攜帶式太陽能板 +PHI-EQ-BATTERY-TIER=電池設備 +PHI-EQ-REACTOR-TIER=攜帶式核融合反應器 +PHI-EQ-LASER-TIER=個人雷射防禦 +PHI-EQ-ROBOPORT-TIER=機動無人機調度站 +PHI-EQ-SHIELD-TIER=能量護盾 +PHI-EQ-NIGHT-TIER=夜視鏡 +PHI-EQ-EXO-TIER=動力外骨骼 +PHI-EQ-ARMOR=動力護甲 PHI-XW-WATER=水 [mod-setting-description] @@ -600,4 +758,12 @@ PHI-WE-LASER-TIER=預設 3 ; 停用 1 PHI-WE-FLAME-TIER=預設 3 ; 停用 1 PHI-WE-GUN-TIER=預設 3 ; 停用 1 PHI-WE-RADAR-TIER=預設 3 ; 停用 1 +PHI-EQ-SOLAR-TIER=預設 8 ; 停用 1 +PHI-EQ-BATTERY-TIER=預設 8 ; 停用 2 +PHI-EQ-REACTOR-TIER=預設 8 ; 停用 1 +PHI-EQ-LASER-TIER=預設 8 ; 停用 1 +PHI-EQ-ROBOPORT-TIER=預設 8 ; 停用 2 +PHI-EQ-SHIELD-TIER=預設 8 ; 停用 2 +PHI-EQ-NIGHT-TIER=預設 2 ; 停用 1 +PHI-EQ-EXO-TIER=預設 2 ; 停用 1 PHI-XW-WATER=預設 1 ; 停用 0 diff --git a/PHI-CL/locale/zh-TW/locale.cfg b/PHI-CL/locale/zh-TW/locale.cfg index 25e4565..9ab7613 100644 --- a/PHI-CL/locale/zh-TW/locale.cfg +++ b/PHI-CL/locale/zh-TW/locale.cfg @@ -180,6 +180,105 @@ flamethrower-turret-3=火焰噴射器 3 radar-2=雷達 2 radar-3=雷達 3 +solar-panel-mk2-equipment=攜帶式太陽能板2代 +solar-panel-mk3-equipment=攜帶式太陽能板3代 +solar-panel-mk4-equipment=攜帶式太陽能板4代 +solar-panel-mk5-equipment=攜帶式太陽能板5代 +solar-panel-mk6-equipment=攜帶式太陽能板6代 +solar-panel-mk7-equipment=攜帶式太陽能板7代 +solar-panel-mk8-equipment=攜帶式太陽能板8代 + +battery-mk3-equipment=電池設備3代 +battery-mk4-equipment=電池設備4代 +battery-mk5-equipment=電池設備5代 +battery-mk6-equipment=電池設備6代 +battery-mk7-equipment=電池設備7代 +battery-mk8-equipment=電池設備8代 + +fusion-reactor-mk2-equipment=攜帶式核融合反應器2代 +fusion-reactor-mk3-equipment=攜帶式核融合反應器3代 +fusion-reactor-mk4-equipment=攜帶式核融合反應器4代 +fusion-reactor-mk5-equipment=攜帶式核融合反應器5代 +fusion-reactor-mk6-equipment=攜帶式核融合反應器6代 +fusion-reactor-mk7-equipment=攜帶式核融合反應器7代 +fusion-reactor-mk8-equipment=攜帶式核融合反應器8代 + +energy-shield-mk3-equipment=能量護盾3代 +energy-shield-mk4-equipment=能量護盾4代 +energy-shield-mk5-equipment=能量護盾5代 +energy-shield-mk6-equipment=能量護盾6代 +energy-shield-mk7-equipment=能量護盾7代 +energy-shield-mk8-equipment=能量護盾8代 + +personal-laser-defense-mk2-equipment=個人雷射防禦2代 +personal-laser-defense-mk3-equipment=個人雷射防禦3代 +personal-laser-defense-mk4-equipment=個人雷射防禦4代 +personal-laser-defense-mk5-equipment=個人雷射防禦5代 +personal-laser-defense-mk6-equipment=個人雷射防禦6代 +personal-laser-defense-mk7-equipment=個人雷射防禦7代 +personal-laser-defense-mk8-equipment=個人雷射防禦8代 + +personal-roboport-mk3-equipment=機動無人機調度站3代 +personal-roboport-mk4-equipment=機動無人機調度站4代 +personal-roboport-mk5-equipment=機動無人機調度站5代 +personal-roboport-mk6-equipment=機動無人機調度站6代 +personal-roboport-mk7-equipment=機動無人機調度站7代 +personal-roboport-mk8-equipment=機動無人機調度站8代 + +night-vision-mk2-equipment=夜視鏡2代 +exoskeleton-mk2-equipment=動力外骨骼2代 +power-armor-mk3=動力護甲3代 + +[item-description] +solar-panel-mk2-equipment=替裝備的模組供電。 +solar-panel-mk3-equipment=替裝備的模組供電。 +solar-panel-mk4-equipment=替裝備的模組供電。 +solar-panel-mk5-equipment=替裝備的模組供電。 +solar-panel-mk6-equipment=替裝備的模組供電。 +solar-panel-mk7-equipment=替裝備的模組供電。 +solar-panel-mk8-equipment=替裝備的模組供電。 + +battery-mk3-equipment=為設備模組儲存電力。 +battery-mk4-equipment=為設備模組儲存電力。 +battery-mk5-equipment=為設備模組儲存電力。 +battery-mk6-equipment=為設備模組儲存電力。 +battery-mk7-equipment=為設備模組儲存電力。 +battery-mk8-equipment=為設備模組儲存電力。 + +fusion-reactor-mk2-equipment=替裝備的模組供電。 +fusion-reactor-mk3-equipment=替裝備的模組供電。 +fusion-reactor-mk4-equipment=替裝備的模組供電。 +fusion-reactor-mk5-equipment=替裝備的模組供電。 +fusion-reactor-mk6-equipment=替裝備的模組供電。 +fusion-reactor-mk7-equipment=替裝備的模組供電。 +fusion-reactor-mk8-equipment=替裝備的模組供電。 + +energy-shield-mk3-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk4-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk5-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk6-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk7-equipment=用於插入模組化裝甲,可吸收大量傷害。 +energy-shield-mk8-equipment=用於插入模組化裝甲,可吸收大量傷害。 + +personal-laser-defense-mk2-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk3-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk4-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk5-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk6-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk7-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 +personal-laser-defense-mk8-equipment=用於插入模組化裝甲,可自動向周邊的敵對單位開火。 + +personal-roboport-mk3-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk4-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk5-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk6-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk7-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 +personal-roboport-mk8-equipment=用於放入裝甲,可讓建設無人機直接從背包中飛出來作業。 + +night-vision-equipment-mk2=放入模組化裝甲可使玩家獲得夜視能力。 +exoskeleton-equipment-mk2=用於插入模組化裝甲,可提高玩家的移動速度。你可以同時裝備多個外骨骼模組。 +power-armor-mk3=具有巨大模組化插槽和背包容量加成的裝甲。 + [entity-name] accumulator-2=蓄電池 2 accumulator-3=蓄電池 3 @@ -539,6 +638,55 @@ flamethrower-turret-3=噴射燃燒的油料燒灼敵人。 radar-2=掃描並顯示附近的未知區域。 radar-3=掃描並顯示附近的未知區域。 +[equipment-name] +solar-panel-mk2-equipment=攜帶式太陽能板2代 +solar-panel-mk3-equipment=攜帶式太陽能板3代 +solar-panel-mk4-equipment=攜帶式太陽能板4代 +solar-panel-mk5-equipment=攜帶式太陽能板5代 +solar-panel-mk6-equipment=攜帶式太陽能板6代 +solar-panel-mk7-equipment=攜帶式太陽能板7代 +solar-panel-mk8-equipment=攜帶式太陽能板8代 + +battery-mk3-equipment=電池設備3代 +battery-mk4-equipment=電池設備4代 +battery-mk5-equipment=電池設備5代 +battery-mk6-equipment=電池設備6代 +battery-mk7-equipment=電池設備7代 +battery-mk8-equipment=電池設備8代 + +fusion-reactor-mk2-equipment=攜帶式核融合反應器2代 +fusion-reactor-mk3-equipment=攜帶式核融合反應器3代 +fusion-reactor-mk4-equipment=攜帶式核融合反應器4代 +fusion-reactor-mk5-equipment=攜帶式核融合反應器5代 +fusion-reactor-mk6-equipment=攜帶式核融合反應器6代 +fusion-reactor-mk7-equipment=攜帶式核融合反應器7代 +fusion-reactor-mk8-equipment=攜帶式核融合反應器8代 + +energy-shield-mk3-equipment=能量護盾3代 +energy-shield-mk4-equipment=能量護盾4代 +energy-shield-mk5-equipment=能量護盾5代 +energy-shield-mk6-equipment=能量護盾6代 +energy-shield-mk7-equipment=能量護盾7代 +energy-shield-mk8-equipment=能量護盾8代 + +personal-laser-defense-mk2-equipment=個人雷射防禦2代 +personal-laser-defense-mk3-equipment=個人雷射防禦3代 +personal-laser-defense-mk4-equipment=個人雷射防禦4代 +personal-laser-defense-mk5-equipment=個人雷射防禦5代 +personal-laser-defense-mk6-equipment=個人雷射防禦6代 +personal-laser-defense-mk7-equipment=個人雷射防禦7代 +personal-laser-defense-mk8-equipment=個人雷射防禦8代 + +personal-roboport-mk3-equipment=機動無人機調度站3代 +personal-roboport-mk4-equipment=機動無人機調度站4代 +personal-roboport-mk5-equipment=機動無人機調度站5代 +personal-roboport-mk6-equipment=機動無人機調度站6代 +personal-roboport-mk7-equipment=機動無人機調度站7代 +personal-roboport-mk8-equipment=機動無人機調度站8代 + +night-vision-mk2-equipment=夜視鏡2代 +exoskeleton-mk2-equipment=動力外骨骼2代 + [technology-name] compound-energy=複合發電 compound-energy-1=複合發電 @@ -569,6 +717,7 @@ flamethrower-turret-3-attack-bonus=火焰噴射炮塔傷害:+__1__ PHI-EN=能量 PHI-MB=大型基地 PHI-WE=軍事 +PHI-EQ=設備 PHI-EN-SOLAR-TIER=太陽能板 PHI-EN-STEAM-TIER=蒸汽發電機 PHI-EN-NUCLEAR-TIER=核能反應爐 @@ -583,6 +732,15 @@ PHI-WE-LASER-TIER=雷射炮塔 PHI-WE-FLAME-TIER=火焰噴射器 PHI-WE-GUN-TIER=機槍炮塔 PHI-WE-RADAR-TIER=雷達 +PHI-EQ-SOLAR-TIER=攜帶式太陽能板 +PHI-EQ-BATTERY-TIER=電池設備 +PHI-EQ-REACTOR-TIER=攜帶式核融合反應器 +PHI-EQ-LASER-TIER=個人雷射防禦 +PHI-EQ-ROBOPORT-TIER=機動無人機調度站 +PHI-EQ-SHIELD-TIER=能量護盾 +PHI-EQ-NIGHT-TIER=夜視鏡 +PHI-EQ-EXO-TIER=動力外骨骼 +PHI-EQ-ARMOR=動力護甲 PHI-XW-WATER=水 [mod-setting-description] @@ -600,4 +758,12 @@ PHI-WE-LASER-TIER=預設 3 ; 停用 1 PHI-WE-FLAME-TIER=預設 3 ; 停用 1 PHI-WE-GUN-TIER=預設 3 ; 停用 1 PHI-WE-RADAR-TIER=預設 3 ; 停用 1 +PHI-EQ-SOLAR-TIER=預設 8 ; 停用 1 +PHI-EQ-BATTERY-TIER=預設 8 ; 停用 2 +PHI-EQ-REACTOR-TIER=預設 8 ; 停用 1 +PHI-EQ-LASER-TIER=預設 8 ; 停用 1 +PHI-EQ-ROBOPORT-TIER=預設 8 ; 停用 2 +PHI-EQ-SHIELD-TIER=預設 8 ; 停用 2 +PHI-EQ-NIGHT-TIER=預設 2 ; 停用 1 +PHI-EQ-EXO-TIER=預設 2 ; 停用 1 PHI-XW-WATER=預設 1 ; 停用 0 diff --git a/PHI-CL/migrations/migrations.lua b/PHI-CL/migrations/migrations.lua index 702874c..55c1345 100644 --- a/PHI-CL/migrations/migrations.lua +++ b/PHI-CL/migrations/migrations.lua @@ -21,10 +21,20 @@ for _, force in pairs(game.forces) do else if technologies[v.tech] then if technologies[v.tech].researched then - for j=v.min, v.max, 1 do - if recipes[v.name .. '-' .. j] ~= nil then - recipes[v.name .. '-' .. j].enabled = true - recipes[v.name .. '-' .. j].reload() + if string.find(v.type, '-equipment') then + for j=v.min, v.max, 1 do + if recipes[v.name .. '-mk' .. j .. '-equipment'] then + recipes[v.name .. '-mk' .. j .. '-equipment'].enabled = true + recipes[v.name .. '-mk' .. j .. '-equipment'].reload() + end + end + + else + for j=v.min, v.max, 1 do + if recipes[v.name .. '-' .. j] then + recipes[v.name .. '-' .. j].enabled = true + recipes[v.name .. '-' .. j].reload() + end end end @@ -46,4 +56,9 @@ for _, force in pairs(game.forces) do end end end + + if technologies['power-armor-mk2'].researched and settings.startup['PHI-EQ-ARMOR'].value then + recipes['power-armor-mk3'].enabled = true + recipes['power-armor-mk3'].reload() + end end diff --git a/PHI-CL/settings.lua b/PHI-CL/settings.lua index 7248af7..14885e0 100644 --- a/PHI-CL/settings.lua +++ b/PHI-CL/settings.lua @@ -20,6 +20,13 @@ data:extend({ default_value = true, order = 'A3' }, + { + type = 'bool-setting', + name = 'PHI-EQ', + setting_type = 'startup', + default_value = true, + order = 'A6' + }, { type = 'int-setting', name = 'PHI-XW-WATER', @@ -127,6 +134,68 @@ data:extend({ default_value = 3, allowed_values = {1, 2, 3}, order = 'D4' + }, { + type = 'int-setting', + name = 'PHI-EQ-SOLAR-TIER', + setting_type = 'startup', + default_value = 8, + allowed_values = {1, 2, 3, 4, 5, 6, 7, 8}, + order = 'G1' + }, { + type = 'int-setting', + name = 'PHI-EQ-BATTERY-TIER', + setting_type = 'startup', + default_value = 8, + allowed_values = {2, 3, 4, 5, 6, 7, 8}, + order = 'G2' + }, { + type = 'int-setting', + name = 'PHI-EQ-REACTOR-TIER', + setting_type = 'startup', + default_value = 8, + allowed_values = {1, 2, 3, 4, 5, 6, 7, 8}, + order = 'G3' + }, { + type = 'int-setting', + name = 'PHI-EQ-LASER-TIER', + setting_type = 'startup', + default_value = 8, + allowed_values = {1, 2, 3, 4, 5, 6, 7, 8}, + order = 'G4' + }, { + type = 'int-setting', + name = 'PHI-EQ-ROBOPORT-TIER', + setting_type = 'startup', + default_value = 8, + allowed_values = {2, 3, 4, 5, 6, 7, 8}, + order = 'G5' + }, { + type = 'int-setting', + name = 'PHI-EQ-SHIELD-TIER', + setting_type = 'startup', + default_value = 8, + allowed_values = {2, 3, 4, 5, 6, 7, 8}, + order = 'G6' + }, { + type = 'int-setting', + name = 'PHI-EQ-NIGHT-TIER', + setting_type = 'startup', + default_value = 2, + allowed_values = {1, 2}, + order = 'G7' + }, { + type = 'int-setting', + name = 'PHI-EQ-EXO-TIER', + setting_type = 'startup', + default_value = 2, + allowed_values = {1, 2}, + order = 'G8' + }, { + type = 'bool-setting', + name = 'PHI-EQ-ARMOR', + setting_type = 'startup', + default_value = true, + order = 'G9' }, { type = 'int-setting', name = 'PHI-XW-WATER', diff --git a/PHI-EQ/config.lua b/PHI-EQ/config.lua index 4829b95..a8f9cf4 100644 --- a/PHI-EQ/config.lua +++ b/PHI-EQ/config.lua @@ -35,7 +35,7 @@ local items = { }, ['solar-panel'] = { enabled = true, - type = 'solar-panel', + type = 'solar-panel-equipment', name = 'solar-panel', base_name = 'solar-panel', tech = 'solar-panel-equipment', diff --git a/PHI-EQ/data.lua b/PHI-EQ/data.lua index 27eaced..b9f40ea 100644 --- a/PHI-EQ/data.lua +++ b/PHI-EQ/data.lua @@ -3,48 +3,47 @@ local graphics_location = '__PHI-EQ__/graphics/' local items = require 'config' -- equipment -local function EE(source, tier) +local function EEQ(source, tier) local item = {} item['name'] = source.name .. '-mk' .. tier .. '-equipment' item['categories'] = {'armor'} local w = 1 local h = 1 - if (source.type == 'solar-panel') then - item['type'] = 'solar-panel-equipment' - item['power'] = (source.base * (2 ^ (tier - 1))) .. 'kW' + if (source.name == 'solar-panel') then + item['power'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'kW' item['energy_source'] = {type = 'electric', usage_priority = 'primary-output'} - elseif (source.type == 'battery') then + + elseif (source.name == 'battery') then h = 2 - item['type'] = 'battery-equipment' - item['energy_source'] = {type = 'electric', usage_priority = 'tertiary', buffer_capacity= (source.base * (2 ^ (tier - 2))) .. 'MJ'} + item['energy_source'] = {type = 'electric', usage_priority = 'tertiary', buffer_capacity= (source.base * (2 ^ (tier - source.min + 1))) .. 'MJ'} + elseif (source.type == 'fusion-reactor') then w = 4 h = 4 - item['type'] = 'generator-equipment' - item['power'] = (source.base * (2 ^ (tier - 1))) .. 'kW' + item['power'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'kW' item['energy_source'] = {type = 'electric', usage_priority = 'primary-output'} + elseif (source.type == 'personal-laser-defense') then w = 2 h = 2 - item['type'] = 'active-defense-equipment' - item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = (250 * (2 ^ (tier - 1))) .. 'kJ'} + item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = (250 * (2 ^ (tier - source.min + 1))) .. 'kJ'} -- item['source_direction_count'] = 64 -- item['source_offset'] = {0, -3.423489 / 4} - item['attack_parameters'] = {type = 'beam', cooldown = 40, range = (18 + tier), damage_modifier = (source.base * (2 ^ (tier - 1))), ammo_type = {category = 'laser', energy_consumption = (50 * (2 ^ (tier - 1))) .. 'kJ', action = {type = 'direct', action_delivery = {type = 'beam', beam = 'laser-beam', max_length = (18 + tier), duration = 60, source_offset = {0, -1.31439}}}}} + item['attack_parameters'] = {type = 'beam', cooldown = 40, range = (18 + tier), damage_modifier = (source.base * (2 ^ (tier - source.min + 1))), ammo_type = {category = 'laser', energy_consumption = (50 * (2 ^ (tier - 1))) .. 'kJ', action = {type = 'direct', action_delivery = {type = 'beam', beam = 'laser-beam', max_length = (18 + tier), duration = 60, source_offset = {0, -1.31439}}}}} item['automatic'] = true + elseif (source.type == 'energy-shield') then w = 2 h = 2 - item['type'] = 'energy-shield-equipment' - item['energy_source'] = {type = 'electric', usage_priority = 'primary-input', input_flow_limit = (source.base * 4 * (2 ^ (tier - 1))) .. 'kW', buffer_capacity = (source.base * 2 * (2 ^ (tier - 1))) .. 'kJ'} + item['energy_source'] = {type = 'electric', usage_priority = 'primary-input', input_flow_limit = (source.base * 4 * (2 ^ (tier - source.min + 1))) .. 'kW', buffer_capacity = (source.base * 2 * (2 ^ (tier - 1))) .. 'kJ'} item['max_shield_value'] = (source.base * (2 ^ (tier - 2))) item['energy_per_shield'] = '80kJ' + elseif (source.type == 'personal-roboport') then w = 2 h = 2 - item['type'] = 'roboport-equipment' - item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = (source.base * 32 * (2 ^ (tier - 1))) .. 'MJ'} + item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = (source.base * 32 * (2 ^ (tier - source.min + 1))) .. 'MJ'} item['robot_limit'] = 50 item['construction_radius'] = 32 item['spawn_and_station_height'] = 0.4 @@ -56,23 +55,23 @@ local function EE(source, tier) item['stationing_offset'] = {0, -0.6} item['charging_station_shift'] = {0, 0.5} item['charging_station_count'] = 16 - item['charging_energy'] = (source.base * (2 ^ (tier - 2))) .. 'MW' + item['charging_energy'] = (source.base * (2 ^ (tier - source.min + 1))) .. 'MW' item['charging_distance'] = 1.6 item['charging_threshold_distance'] = 5 + elseif (source.type == 'night-vision') then w = 2 h = 2 - item['type'] = 'night-vision-equipment' item['energy_source'] = {type = 'electric', usage_priority = 'primary-input', buffer_capacity = '1MJ'} item['energy_input'] = '20kW' item['activate_sound'] = {filename = '__base__/sound/nightvision-on.ogg', volume = 0.5} item['deactivate_sound'] = {filename = '__base__/sound/nightvision-off.ogg', volume = 0.5} item['darkness_to_turn_on'] = source.base item['color_lookup'] = {{0, '__core__/graphics/color_luts/lut-sunset.png'}} + elseif (source.type == 'exoskeleton') then w = 2 h = 4 - item['type'] = 'movement-bonus-equipment' item['energy_source'] = {type = 'electric', usage_priority = 'secondary-input', buffer_capacity = '10MJ'} item['energy_consumption'] = '400kW' item['movement_bonus'] = source.base @@ -93,7 +92,7 @@ local function EI(source, tier) item.stack_size = 20 item.default_request_amount = 5 item.icons = {{icon = '__base__/graphics/icons/' .. source.graphics_name .. '.png', icon_mipmaps = 4, icon_size = 64}} - item.order = source.order .. tier + item.order = item.order .. tier data:extend({item}) end @@ -102,9 +101,8 @@ local function ER(source, tier) local na = source.name if (tier == 1) then - na = source.base_name .. '-equipment' - elseif (tier == 2) then na = source.name .. '-equipment' + else na = source.name .. '-mk' .. (tier - 1) .. '-equipment' end @@ -192,7 +190,7 @@ for k, v in pairs(items) do if k ~= 'setting' then if v.enabled then for j=v.min, v.max, 1 do - EE(v, j) + EEQ(v, j) EI(v, j) ER(v, j) ET(v, j) diff --git a/PHI-EQ/settings.lua b/PHI-EQ/settings.lua index 76be75b..eb6cdaf 100644 --- a/PHI-EQ/settings.lua +++ b/PHI-EQ/settings.lua @@ -1,4 +1,5 @@ -data:extend({{ +data:extend({ + { type = 'int-setting', name = 'PHI-EQ-SOLAR-TIER', setting_type = 'startup',