mirror of
https://github.com/ComfyFactory/ComfyFactorio.git
synced 2025-03-17 20:58:13 +02:00
Mtn v3 - user requested feature
You can now toggle auto upgrade when placing vehicles.
This commit is contained in:
parent
2c4711c0bb
commit
9c7dc00021
@ -1,9 +1,11 @@
|
||||
[ic]
|
||||
transfer_car=Transfer Car
|
||||
car_settings=Car Settings
|
||||
allow_anyone=Allow everyone to enter: ON
|
||||
allow_anyone=Allow everyone to enter: On
|
||||
auto_upgrade=Auto Upgrade Vehicle: On
|
||||
add_player=Add Player
|
||||
off=Off
|
||||
on=On
|
||||
select_player=Select Player
|
||||
discard=Discard
|
||||
save=Save
|
||||
|
@ -40,7 +40,8 @@ local function get_trusted_system(player)
|
||||
players = {
|
||||
[player.name] = true
|
||||
},
|
||||
allow_anyone = 'right'
|
||||
allow_anyone = 'right',
|
||||
auto_upgrade = 'left'
|
||||
}
|
||||
end
|
||||
|
||||
@ -168,6 +169,18 @@ local function get_player_surface(player)
|
||||
return false
|
||||
end
|
||||
|
||||
local function get_player_entity_upgrade_surface(player)
|
||||
local cars = IC.get('cars')
|
||||
for k, car in pairs(cars) do
|
||||
if car.owner == player.index and type(car.entity) == 'boolean' then
|
||||
return car.name, true
|
||||
elseif car.owner == player.index then
|
||||
return car.name, false
|
||||
end
|
||||
end
|
||||
return false, false
|
||||
end
|
||||
|
||||
local function get_player_entity(player)
|
||||
local cars = IC.get('cars')
|
||||
for k, car in pairs(cars) do
|
||||
@ -1051,10 +1064,15 @@ function Public.create_car(event)
|
||||
return player.print('Multi-surface is not supported at the moment.', Color.warning)
|
||||
end
|
||||
|
||||
local storage = get_trusted_system(player)
|
||||
|
||||
if
|
||||
get_owner_car_name(player) == 'car' and ce.name == 'tank' or get_owner_car_name(player) == 'car' and ce.name == 'spidertron' or
|
||||
get_owner_car_name(player) == 'tank' and ce.name == 'spidertron'
|
||||
then
|
||||
if storage.auto_upgrade and storage.auto_upgrade == 'right' then
|
||||
return
|
||||
end
|
||||
upgrade_surface(player, ce)
|
||||
render_owner_text(renders, player, ce)
|
||||
player.print('Your car-surface has been upgraded!', Color.success)
|
||||
|
@ -26,6 +26,7 @@ local main_toolbar_name = Gui.uid_name()
|
||||
local add_player_name = Gui.uid_name()
|
||||
local transfer_car_name = Gui.uid_name()
|
||||
local allow_anyone_to_enter_name = Gui.uid_name()
|
||||
local auto_upgrade_name = Gui.uid_name()
|
||||
local kick_player_name = Gui.uid_name()
|
||||
local destroy_surface_name = Gui.uid_name()
|
||||
|
||||
@ -48,7 +49,8 @@ local function create_player_table(player)
|
||||
players = {
|
||||
[player.name] = true
|
||||
},
|
||||
allow_anyone = 'right'
|
||||
allow_anyone = 'right',
|
||||
auto_upgrade = 'left'
|
||||
}
|
||||
end
|
||||
return trust_system[player.index]
|
||||
@ -376,6 +378,17 @@ local function draw_main_frame(player)
|
||||
right_label_caption = ({'ic.off'})
|
||||
}
|
||||
)
|
||||
local auto_upgrade =
|
||||
inside_table.add(
|
||||
{
|
||||
type = 'switch',
|
||||
name = auto_upgrade_name,
|
||||
switch_state = player_list.auto_upgrade,
|
||||
allow_none_state = false,
|
||||
left_label_caption = ({'ic.auto_upgrade'}),
|
||||
right_label_caption = ({'ic.off'})
|
||||
}
|
||||
)
|
||||
|
||||
local player_table =
|
||||
inside_table.add {
|
||||
@ -429,6 +442,7 @@ local function draw_main_frame(player)
|
||||
transfer_car_frame = transfer_car_frame,
|
||||
destroy_surface_frame = destroy_surface_frame,
|
||||
allow_anyone_to_enter = allow_anyone_to_enter,
|
||||
auto_upgrade = auto_upgrade,
|
||||
player = player
|
||||
}
|
||||
draw_players(data)
|
||||
@ -596,6 +610,35 @@ Gui.on_click(
|
||||
end
|
||||
)
|
||||
|
||||
Gui.on_click(
|
||||
auto_upgrade_name,
|
||||
function(event)
|
||||
local player = event.player
|
||||
if not player or not player.valid or not player.character then
|
||||
return
|
||||
end
|
||||
|
||||
local player_list = create_player_table(player)
|
||||
|
||||
local screen = player.gui.screen
|
||||
local frame = screen[main_frame_name]
|
||||
|
||||
if frame and frame.valid then
|
||||
if player_list.auto_upgrade == 'right' then
|
||||
player_list.auto_upgrade = 'left'
|
||||
player.print('[IC] Auto upgrade is now enabled!', Color.success)
|
||||
else
|
||||
player_list.auto_upgrade = 'right'
|
||||
player.print('[IC] Auto upgrade is now disabled!', Color.warning)
|
||||
end
|
||||
|
||||
if player.gui.screen[main_frame_name] then
|
||||
toggle(player, true)
|
||||
end
|
||||
end
|
||||
end
|
||||
)
|
||||
|
||||
Gui.on_click(
|
||||
save_add_player_button_name,
|
||||
function(event)
|
||||
|
Loading…
x
Reference in New Issue
Block a user