Input ports now connect to multiple output ports. Remove combiner. (#60494)

* tgui bsod

* debug disconnections

* prelim

* recomment

* set_value -> put ._.

* DAMN IT

* reinsert subsystem

* prepare

* unditch signals

* remove combiner

* remove combiner some more

* how did router.dm get here? deleting.

* These two COMSIGS should be one.

* critical typo

* inline cast

* have your signals

* Have your set_input & set_output.

* make compile

* upgrade save/load to n-to-n-wires

* have your documentation

* have your unsafe proc

* pay no attention to the compile errors

* unlist the ref

* paste my for block back in ._.

* fix manual input

* oops pushed too soon

* Have your !port.connected_to?.length

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
This commit is contained in:
Gurkenglas
2021-08-11 18:48:29 +03:00
committed by GitHub
co-authored by Watermelon914
parent e64b101750
commit e0fad671fd
66 changed files with 280 additions and 386 deletions
@@ -29,11 +29,11 @@
if(.)
return
var/seperator = separator.input_value
var/seperator = separator.value
if(!seperator)
return
var/list/list_input = list_port.input_value
var/list/list_input = list_port.value
if(!list_input)
return
@@ -28,13 +28,13 @@
if(.)
return
var/list/input_list = received_table.input_value
if(!islist(input_list) || isnum(column_name.input_value))
var/list/input_list = received_table.value
if(!islist(input_list) || isnum(column_name.value))
return
var/list/new_list = list()
for(var/list/entry in input_list)
var/anything = entry[column_name.input_value]
var/anything = entry[column_name.value]
if(islist(anything))
continue
new_list += anything
@@ -27,8 +27,8 @@
if(.)
return
var/index = index_port.input_value
var/list/list_input = list_port.input_value
var/index = index_port.value
var/list/list_input = list_port.value
if(!islist(list_input) || !index)
output.set_output(null)
@@ -29,12 +29,12 @@
if(.)
return
var/list/target_list = received_table.input_value
var/list/target_list = received_table.value
if(!islist(target_list) || !length(target_list))
output_list.set_output(null)
return
var/index = target_index.input_value
var/index = target_index.value
if(index < 1 || index > length(target_list))
output_list.set_output(null)
return
@@ -80,7 +80,7 @@
var/list/new_literal = list()
for(var/datum/port/input/entry_port as anything in entry_ports)
// Prevents lists from merging together
new_literal += list(entry_port.input_value)
new_literal += list(entry_port.value)
list_output.set_output(new_literal)
@@ -45,7 +45,7 @@
/obj/item/circuit_component/select/input_received(datum/port/input/port)
. = ..()
var/current_option = comparison_options.input_value
var/current_option = comparison_options.value
switch(current_option)
if(COMP_COMPARISON_EQUAL, COMP_COMPARISON_NOT_EQUAL)
@@ -60,14 +60,14 @@
if(.)
return
var/list/input_list = received_table.input_value
if(!islist(input_list) || isnum(column_name.input_value))
var/list/input_list = received_table.value
if(!islist(input_list) || isnum(column_name.value))
return
var/comparison_value = comparison_input.input_value
var/comparison_value = comparison_input.value
var/list/new_list = list()
for(var/list/entry in input_list)
var/anything = entry[column_name.input_value]
var/anything = entry[column_name.value]
if(islist(anything))
continue
if(current_option != COMP_COMPARISON_EQUAL && current_option != COMP_COMPARISON_NOT_EQUAL && !isnum(anything))
@@ -29,11 +29,11 @@
if(.)
return
var/separator_value = separator.input_value
var/separator_value = separator.value
if(isnull(separator_value))
return
var/value = input_port.input_value
var/value = input_port.value
if(isnull(value))
return