From 80997e4ef36e71245680ddcd3d426ebf7a2d8ec0 Mon Sep 17 00:00:00 2001 From: Fermi <> Date: Fri, 13 Sep 2019 23:06:09 +0100 Subject: [PATCH] Works. --- code/modules/reagents/chem_wiki_render.dm | 100 ++++++++++++---------- 1 file changed, 55 insertions(+), 45 deletions(-) diff --git a/code/modules/reagents/chem_wiki_render.dm b/code/modules/reagents/chem_wiki_render.dm index 9fef2b81e2..fc3e5d3b5c 100644 --- a/code/modules/reagents/chem_wiki_render.dm +++ b/code/modules/reagents/chem_wiki_render.dm @@ -1,11 +1,13 @@ //Generates a markdown txt file for use with the wiki /client/proc/generate_wikichem_list() - set name = "Generate wikichem" + set name = "Generate Wikichems" set category = "Debug" - set desc = "generate a huge loglist of all the chems. Do not click unless you want lag." + set desc = "Generate a huge loglist of all the chems. Do not click unless you want lag." - var/prefix = "**Name** | **Reagent pH** | **Reagents** | **Reaction temp** | **Explosion temp** | **pH range** | **Kinetics** | **Description** | **OD level** | **Addiction level** | **Metabolism rate** |**Impure chem**|InverseChem \n---|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|" + message_admins("Someone pressed the superlag button. (Generate Wikichems)") + to_chat(usr, "Generating list") + var/prefix = "|Name | Reagent pH | Reagents | Reaction temp | Explosion temp | pH range | Kinetics | Description | OD level | Addiction level | Metabolism rate | Impure chem | InverseChem|\n|---|---|---|---|---|---|---|----------|---|---|---|---|---|\n" var/medicine = "" var/toxin = "" var/consumable = "" @@ -20,49 +22,53 @@ ///datum/reagent/colorful_reagent, /datum/reagent/mutationtoxin, /datum/reagent/fermi //Probably not the most eligant of solutions. - for(var/datum/reagent/R in GLOB.chemical_reagents_list) + to_chat(usr, "Attempting reagent scan. Length of list [LAZYLEN(GLOB.chemical_reagents_list)]") + var/datum/reagent/R + var/tally = 0 + for(var/X in GLOB.chemical_reagents_list) + R = GLOB.chemical_reagents_list[X] if(istype(R, /datum/reagent/medicine)) - medicine += generate_chemwiki_line(R) + medicine += generate_chemwiki_line(R, X) else if(istype(R, /datum/reagent/toxin)) - toxin += generate_chemwiki_line(R) + toxin += generate_chemwiki_line(R, X) else if(istype(R, /datum/reagent/consumable)) - consumable += generate_chemwiki_line(R) + consumable += generate_chemwiki_line(R, X) else if(istype(R, /datum/reagent/plantnutriment)) - plant += generate_chemwiki_line(R) + plant += generate_chemwiki_line(R, X) else if(istype(R, /datum/reagent/uranium)) - uranium += generate_chemwiki_line(R) + uranium += generate_chemwiki_line(R, X) else if(istype(R, /datum/reagent/colorful_reagent)) - colours += generate_chemwiki_line(R) + colours += generate_chemwiki_line(R, X) else if(istype(R, /datum/reagent/mutationtoxin)) - muta += generate_chemwiki_line(R) + muta += generate_chemwiki_line(R, X) else if(istype(R, /datum/reagent/fermi)) - fermi += generate_chemwiki_line(R) + fermi += generate_chemwiki_line(R, X) else - remainder += generate_chemwiki_line(R) + remainder += generate_chemwiki_line(R, X) + + tally++ + if((tally%50)==0) + to_chat(usr, "[tally] of [LAZYLEN(GLOB.chemical_reagents_list)] done.") + + to_chat(usr, "finished") + log_sql("------------BEGINNING OF REAGENTS VAR DUMP:------------------\n----------------------------------------------------------------------------------\n\n\n# BASIC REAGENTS\n\n[prefix][remainder]\n\n# MEDICINE:\n\n[prefix][medicine]\n\n# TOXIN:\n\n[prefix][toxin]\n\n# CONSUMABLE\n\n[prefix][consumable]\n\n# FERMI\n\nThese chems lie on the cutting edge of chemical technology, and as such are not recommended for beginners!\n\n[prefix][fermi]\n\n# PLANTS\n\n[prefix][plant]\n\n# URANIUM\n\n[prefix][uranium]\n\n# COLOURS\n\n[prefix][colours]\n\n# RACE MUTATIONS\n[prefix][muta]\n") - log_sql("------------BEGINNING OF REAGENTS VAR DUMP:------------------\n") - log_sql("----------------------------------------------------------------------------------\n\n\n") - log_sql("#BASIC REAGENTS\n[prefix][remainder]\n") - log_sql("#MEDICINE:\n[prefix][medicine]\n#TOXIN:\n[prefix][toxin]\n#CONSUMABLE\n[prefix][consumable]\n") - log_sql("#FERMI\nThese chems lie on the cutting edge of chemical technology, and as such are not recommended for beginners!\n[prefix][fermi]\n") - log_sql("#PLANTS\n[prefix][plant]\n#URANIUM\n[prefix][uranium]\n#COLOURS\n[prefix][colours]\n") - log_sql("#RACE MUTATIONS\n[prefix][muta]\n") - - - -/proc/generate_chemwiki_line(datum/reagent/R) +/proc/generate_chemwiki_line(datum/reagent/R, X) //name | Reagent pH | reagents | reaction temp | explosion temp | pH range | Kinetics | description | OD level | Addiction level | Metabolism rate | impure chem | inverse chem - var/datum/chemical_reaction/CR = GLOB.chemical_reactions_list[R.id] - var/outstring = "[R.name] | [R.pH] | " + + var/datum/chemical_reaction/CR = get_chemical_reaction(R.id) + + //message_admins("[CR]") + var/outstring = "|[R.name] !\[[R.color]\](https://placehold.it/15/[copytext(R.color, 2, 8)]/000000?text=+)| [R.pH] | " var/datum/reagent/R3 if(CR) outstring += "