diff --git a/code/modules/station_goals/dna_vault.dm b/code/modules/station_goals/dna_vault.dm index 29fd5a7877b..4831dc5b61d 100644 --- a/code/modules/station_goals/dna_vault.dm +++ b/code/modules/station_goals/dna_vault.dm @@ -197,18 +197,18 @@ GLOBAL_LIST_INIT(non_simple_animals, typecacheof(list(/mob/living/carbon/human/m /obj/machinery/dna_vault/attack_ghost(mob/user) if(stat & (BROKEN|MAINT)) return - return ui_interact(user) + return tgui_interact(user) /obj/machinery/dna_vault/attack_hand(mob/user) if(..()) - return 1 - ui_interact(user) + return TRUE + tgui_interact(user) -/obj/machinery/dna_vault/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1) - ui = SSnanoui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/dna_vault/tgui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/tgui_state/state = GLOB.tgui_default_state) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) roll_powers(user) - ui = new(user, src, ui_key, "dna_vault.tmpl", name, 550, 400) + ui = new(user, src, ui_key, "DnaVault", name, 350, 400, master_ui, state) ui.open() /obj/machinery/dna_vault/proc/roll_powers(mob/user) @@ -220,33 +220,35 @@ GLOBAL_LIST_INIT(non_simple_animals, typecacheof(list(/mob/living/carbon/human/m L += pick_n_take(possible_powers) power_lottery[user] = L -/obj/machinery/dna_vault/ui_data(mob/user, ui_key = "main", datum/topic_state/state = GLOB.default_state) //TODO Make it % bars maybe - var/list/data = list() - data["plants"] = plants.len - data["plants_max"] = plants_max - data["animals"] = animals.len - data["animals_max"] = animals_max - data["dna"] = dna.len - data["dna_max"] = dna_max - data["completed"] = completed - data["used"] = TRUE - data["choiceA"] = "" - data["choiceB"] = "" +/obj/machinery/dna_vault/tgui_data(mob/user) + var/list/data = list( + "plants" = length(plants), + "plants_max" = plants_max, + "animals" = length(animals), + "animals_max" = animals_max, + "dna" = length(dna), + "dna_max" = dna_max, + "completed" = completed, + "used" = TRUE, + "choiceA" = "", + "choiceB" = "" + ) if(user && completed) var/list/L = power_lottery[user] - if(L && L.len) + if(length(L)) data["used"] = FALSE data["choiceA"] = L[1] data["choiceB"] = L[2] return data -/obj/machinery/dna_vault/Topic(href, href_list) +/obj/machinery/dna_vault/tgui_act(action, params) if(..()) - return 1 + return - if(href_list["gene"]) - upgrade(usr,href_list["choice"]) - . = TRUE + switch(action) + if("gene") + upgrade(usr, params["choice"]) + return TRUE /obj/machinery/dna_vault/proc/check_goal() if(plants.len >= plants_max && animals.len >= animals_max && dna.len >= dna_max) diff --git a/nano/templates/dna_vault.tmpl b/nano/templates/dna_vault.tmpl deleted file mode 100644 index a5d631414d1..00000000000 --- a/nano/templates/dna_vault.tmpl +++ /dev/null @@ -1,49 +0,0 @@ - -