diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index 8d871447cd3..3f3c394a7e6 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -163,6 +163,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) /datum/uplink_item/jobspecific category = "Job Specific Tools" cant_discount = TRUE + excludefrom = list(/datum/game_mode/nuclear) // Stops the job specific category appearing for nukies //Clown /datum/uplink_item/jobspecific/clowngrenade diff --git a/code/game/objects/items/devices/uplinks.dm b/code/game/objects/items/devices/uplinks.dm index d0c0622d1e5..9c080a4c256 100644 --- a/code/game/objects/items/devices/uplinks.dm +++ b/code/game/objects/items/devices/uplinks.dm @@ -24,6 +24,7 @@ var/list/world_uplinks = list() var/job = null var/show_descriptions = 0 + var/temp_category /obj/item/uplink/nano_host() return loc @@ -233,6 +234,7 @@ var/list/world_uplinks = list() if(!nanoui_items) generate_items(user) data["nano_items"] = nanoui_items + data["category_choice"] = temp_category data += nanoui_data return data @@ -260,9 +262,6 @@ var/list/world_uplinks = list() hidden_crystals = 0 ui.close() return 1 - if(href_list["return"]) - nanoui_menu = round(nanoui_menu/10) - update_nano_data() if(href_list["menu"]) nanoui_menu = text2num(href_list["menu"]) update_nano_data(href_list["id"]) @@ -272,6 +271,9 @@ var/list/world_uplinks = list() if(href_list["descriptions"]) show_descriptions = !show_descriptions update_nano_data() + if(href_list["category"]) + temp_category = href_list["category"] + update_nano_data() SSnanoui.update_uis(src) return 1 diff --git a/nano/templates/uplink.tmpl b/nano/templates/uplink.tmpl index 6177ab016a7..7d2158a240c 100644 --- a/nano/templates/uplink.tmpl +++ b/nano/templates/uplink.tmpl @@ -11,11 +11,10 @@ Used In File(s): \code\game\objects\items\devices\uplinks.dm Functions:
- {{:helper.link('Request Items', 'gear', {'menu' : 0}, null, 'fixedLeftWider')}} - {{:helper.link(data.descriptions ? 'Hide Descriptions' : 'Show Descriptions', 'gear', {'descriptions' : 1}, data.menu == 0 ? '' : 'disabled', 'fixedLeftWider')}} + {{:helper.link('Purchase Gear', 'gear', {'menu' : 0, 'category' : null}, null, 'fixedLeftWider')}} {{:helper.link('Exploitable Information', 'gear', {'menu' : 1}, null, 'fixedLeftWider')}} - {{:helper.link('Return', 'arrow-left', {'return' : 1}, null, 'fixedLeft')}} - {{:helper.link('Close', 'gear', {'lock' : "1"}, null, 'fixedLeft')}} + {{:helper.link(data.descriptions ? 'Hide Descriptions' : 'Show Descriptions', 'info-circle', {'descriptions' : 1}, data.menu == 0 ? '' : 'disabled', 'fixedLeftWider')}} + {{:helper.link('Lock Uplink', 'power-off', {'lock' : "1"}, null, 'fixedLeftWider')}}

@@ -32,30 +31,38 @@ Used In File(s): \code\game\objects\items\devices\uplinks.dm
- {{for data.nano_items}} -
-

{{:value.Category}}

-
- {{for value.items :itemValue:itemIndex}} -
- {{:helper.link( itemValue.Name, 'gear', {'buy_item' : itemValue.obj_path, 'cost' : itemValue.Cost}, itemValue.Cost > data.crystals ? 'disabled' : null, null)}} - {{:itemValue.Cost}} -
- - {{if itemValue.Cost <= data.crystals && data.descriptions}} -
- {{:itemValue.Description}} -
- {{/if}} - {{/for}} -
- {{/for}} - -
- {{:helper.link('Buy Random (??)' , 'gear', {'buy_item' : 'random'}, data.crystals <= 0 ? 'disabled' : null, null)}} -
+ {{for data.nano_items}} + {{if value.Category == data.category_choice}}
- {{:helper.link('Refund item in active hand' , 'gear', {refund : 1}, null, null)}} + {{:helper.link ( value.Category, 'arrow-circle-down', {'menu' : 0, 'category' : null}, null, 'white')}} +
+ {{else}} +
+ {{:helper.link ( value.Category, 'arrow-circle-right', {'menu' : 0, 'category' : value.Category}, null, 'white')}} +
+ {{/if}} + {{if value.Category == data.category_choice}} +
+ {{for value.items :itemValue:itemIndex}} +
+ {{:helper.link( itemValue.Name, 'gear', {'buy_item' : itemValue.obj_path, 'cost' : itemValue.Cost}, itemValue.Cost > data.crystals ? 'disabled' : null, null)}} - {{:itemValue.Cost}} +
+ {{if itemValue.Cost <= data.crystals && data.descriptions}} +
+ {{:itemValue.Description}} +
+ {{/if}} + {{/for}} +
+ {{/if}} + {{/for}} +
+
+ {{:helper.link('Buy Random Item' , 'gear', {'buy_item' : 'random'}, data.crystals <= 0 ? 'disabled' : null, 'white')}} +
+
+ {{:helper.link('Refund item in active hand' , 'gear', {refund : 1}, null, 'white')}}
{{else data.menu == 1}}