diff --git a/code/modules/integrated_electronics/subtypes/arithmetic.dm b/code/modules/integrated_electronics/subtypes/arithmetic.dm index 726aee2f83a..7505ed867ea 100644 --- a/code/modules/integrated_electronics/subtypes/arithmetic.dm +++ b/code/modules/integrated_electronics/subtypes/arithmetic.dm @@ -312,3 +312,42 @@ push_data() activate_pin(2) +// Min // + +/obj/item/integrated_circuit/arithmetic/min + name = "min circuit" + desc = "This outputs the smallest of the numbers you put in." + // The states are rarely used symbols for the operations + // Letters didn't fit as well + icon_state = "min" + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + +/obj/item/integrated_circuit/arithmetic/min/do_work() + var/list/values = list() + for(var/datum/integrated_io/I in inputs) + I.pull_data() + if(isnum(I.data)) + values.Add(I.data) + + set_pin_data(IC_OUTPUT, 1, min(values)) + push_data() + activate_pin(2) + +// Max // + +/obj/item/integrated_circuit/arithmetic/max + name = "max circuit" + desc = "This outputs the biggest of the numbers you put in." + icon_state = "max" + spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH + +/obj/item/integrated_circuit/arithmetic/max/do_work() + var/list/values = list() + for(var/datum/integrated_io/I in inputs) + I.pull_data() + if(isnum(I.data)) + values.Add(I.data) + + set_pin_data(IC_OUTPUT, 1, max(values)) + push_data() + activate_pin(2) \ No newline at end of file diff --git a/html/changelogs/aleksix-ic_min_max_restoration.yml b/html/changelogs/aleksix-ic_min_max_restoration.yml new file mode 100644 index 00000000000..2eda28b92ba --- /dev/null +++ b/html/changelogs/aleksix-ic_min_max_restoration.yml @@ -0,0 +1,6 @@ +author: aleksix + +delete-after: True + +changes: + - rscadd: "Re-introduced the min/max circuits for integrated circuitry" diff --git a/icons/obj/assemblies/electronic_components.dmi b/icons/obj/assemblies/electronic_components.dmi index 107c0aa0fac..0f8917f27e0 100644 Binary files a/icons/obj/assemblies/electronic_components.dmi and b/icons/obj/assemblies/electronic_components.dmi differ