[MIRROR] Experi-Sci: Techweb nodes may now require you to perform "scientific" experiments (#3614)

* Experi-Sci: Techweb nodes may now require you to perform "scientific" experiments

* Update all_nodes.dm

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
This commit is contained in:
SkyratBot
2021-02-23 21:51:28 +00:00
committed by GitHub
co-authored by Qustinnus Gandalf2k15
parent e9896f3cf5
commit e5ff997ef8
82 changed files with 3350 additions and 809 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