Experi-Sci: Techweb nodes may now require you to perform "scientific" experiments (#54093)

Co-authored-by: Brett Williams <bobbahbrown@gmail.com>
Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
This commit is contained in:
Qustinnus
2021-02-23 13:30:24 -08:00
committed by GitHub
co-authored by Brett Williams Jordan Brown ArcaneMusic Aleksej Komarov Mothblocks
parent 381b09fbd6
commit 931a32ffb3
82 changed files with 3349 additions and 808 deletions
+4 -14
View File
@@ -30,10 +30,8 @@ SUBSYSTEM_DEF(research)
)
var/list/errored_datums = list()
var/list/point_types = list() //typecache style type = TRUE list
var/list/slime_already_researched = list() //Slime cores that have already been researched
//----------------------------------------------
var/list/single_server_income = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_SINGLE_SERVER_INCOME)
var/multiserver_calculation = FALSE
var/last_income
//^^^^^^^^ ALL OF THESE ARE PER SECOND! ^^^^^^^^
@@ -65,18 +63,10 @@ SUBSYSTEM_DEF(research)
/datum/controller/subsystem/research/fire()
var/list/bitcoins = list()
if(multiserver_calculation)
var/eff = calculate_server_coefficient()
for(var/obj/machinery/rnd/server/miner in servers)
var/list/result = (miner.mine()) //SLAVE AWAY, SLAVE.
for(var/i in result)
result[i] *= eff
bitcoins[i] = bitcoins[i]? bitcoins[i] + result[i] : result[i]
else
for(var/obj/machinery/rnd/server/miner in servers)
if(miner.working)
bitcoins = single_server_income.Copy()
break //Just need one to work.
for(var/obj/machinery/rnd/server/miner in servers)
if(miner.working)
bitcoins = single_server_income.Copy()
break //Just need one to work.
if (!isnull(last_income))
var/income_time_difference = world.time - last_income
science_tech.last_bitcoins = bitcoins // Doesn't take tick drift into account