Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vlayer power on space #367

Merged
merged 5 commits into from
Feb 2, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions exp_legacy/module/config/vlayer.lua
Original file line number Diff line number Diff line change
@@ -10,6 +10,10 @@ return {
unlimited_surface_area = false, --- @setting unlimited_surface_area When true the vlayer has an unlimited surface area, landfill is not required
modded_auto_downgrade = false, --- @setting modded_auto_downgrade When true modded items will be converted into their base game equivalent, original items can not be recovered
power_on_space = false, --- @setting power_on_space When true allow on spaceship
power_on_space_research = { --- @setting power_on_space_research the research level needed to use power_on_space
name = "research-productivity",
level = 10
},

mimic_surface = "nauvis", --- @setting mimic_surface Surface name/index the vlayer will copy its settings from, use nil to use the settings below
surface = { --- @setting surface When mimic_surface is nil these settings will be used instead, see LuaSurface for details
1 change: 1 addition & 0 deletions exp_legacy/module/locale/en/gui.cfg
Original file line number Diff line number Diff line change
@@ -294,6 +294,7 @@ control-type-energy=Energy
control-type-circuit=Circuit
control-type-storage-input=Storage Input
control-type-storage-output=Storage Output
power-on-space-research=You need to research [technology=__1__] at __2__ level for the space platform vlayer feature.
enter=Entered vlayer selection mode.
exit=Exited vlayer selection mode.

1 change: 1 addition & 0 deletions exp_legacy/module/locale/zh-CN/gui.cfg
Original file line number Diff line number Diff line change
@@ -294,6 +294,7 @@ control-type-energy=電力
control-type-circuit=回路
control-type-storage-input=放入箱
control-type-storage-output=提取箱
power-on-space-research=你要研究 [technology=__1__] 在 __2__ 級 才可使用太空平台 vlayer 功能。
enter=現在進入 vlayer 區域選擇
exit=已進入 vlayer 區域選擇

1 change: 1 addition & 0 deletions exp_legacy/module/locale/zh-TW/gui.cfg
Original file line number Diff line number Diff line change
@@ -294,6 +294,7 @@ control-type-energy=電力
control-type-circuit=回路
control-type-storage-input=放入箱
control-type-storage-output=提取箱
power-on-space-research=你要研究 [technology=__1__] 在 __2__ 級 才可使用太空平台 vlayer 功能。
enter=現在進入 vlayer 區域選擇
exit=已進入 vlayer 區域選擇

7 changes: 6 additions & 1 deletion exp_legacy/module/modules/gui/vlayer.lua
Original file line number Diff line number Diff line change
@@ -87,7 +87,12 @@ Selection.on_selection(SelectionConvertArea, function(event)
local entities

if config.power_on_space and event.surface and event.surface.platform and target == "energy" then
entities = event.surface.find_entities_filtered{ area = area, name = "constant-combinator", force = player.force }
if player.force.technologies[config.power_on_space_research.name].level >= config.power_on_space_research.level then
entities = event.surface.find_entities_filtered{ area = area, name = "constant-combinator", force = player.force }
else
player.print{ "vlayer.power-on-space-research", config.power_on_space_research.name, config.power_on_space_research.level }
return nil
end
else
entities = event.surface.find_entities_filtered{ area = area, name = "steel-chest", force = player.force }
end