TC use count appears on round end

Conflicts:
	code/datums/uplink_item.dm
	code/game/objects/items/devices/uplinks.dm

Adds Icons and purchase list

Conflicts:
	code/datums/uplink_item.dm
	code/game/gamemodes/traitor/traitor.dm
	code/stylesheet.dm

CSS is hard

Conflicts:
	code/game/gamemodes/traitor/traitor.dm

Mah Indents

Made Purchase Log Text rather than List

Conflicts:
	code/game/objects/items/devices/uplinks.dm

Moved images to top "survived" line

Conflicts:
	code/game/objects/items/devices/uplinks.dm

Boxes show contents

Nuke Ops Group Shaming

Conflicts:
	code/game/gamemodes/nuclear/nuclear.dm

Uses compiled list for uplinks

Conflicts:
	code/game/objects/items/devices/uplinks.dm
This commit is contained in:
ChuckTheSheep
2014-02-23 23:43:45 -05:00
committed by alex-gh
parent c25b41ca5f
commit 7491cd7b65
6 changed files with 57 additions and 8 deletions
+12 -5
View File
@@ -47,9 +47,11 @@ var/list/uplink_items = list()
var/list/job = null
/datum/uplink_item/proc/spawn_item(var/turf/loc, var/obj/item/device/uplink/U)
U.uses -= max(cost, 0)
feedback_add_details("traitor_uplink_items_bought", name)
return new item(loc)
if(item)
U.uses -= max(cost, 0)
U.used_TC += cost
feedback_add_details("traitor_uplink_items_bought", name)
return new item(loc)
/datum/uplink_item/proc/buy(var/obj/item/device/uplink/hidden/U, var/mob/user)
@@ -74,7 +76,12 @@ var/list/uplink_items = list()
if(ishuman(user))
var/mob/living/carbon/human/A = user
A.put_in_any_hand_if_possible(I)
U.purchase_log += "[user] ([user.ckey]) bought [name] for [cost]."
if(istype(I,/obj/item/weapon/storage/box/) && I.contents.len>0)
for(var/atom/o in I)
U.purchase_log += "<BIG>\icon[o]</BIG>"
else
U.purchase_log += "<BIG>\icon[I]</BIG>"
U.interact(user)
return 1
@@ -481,4 +488,4 @@ var/list/uplink_items = list()
var/datum/uplink_item/I = pick(possible_items)
U.uses -= max(0, I.cost)
feedback_add_details("traitor_uplink_items_bought","RN")
return new I.item(loc)
return new I.item(loc)
+11
View File
@@ -332,6 +332,9 @@ proc/issyndicate(mob/living/M as mob)
if( syndicates.len || (ticker && istype(ticker.mode,/datum/game_mode/nuclear)) )
var/text = "<FONT size = 2><B>The syndicate operatives were:</B></FONT>"
var/purchases = ""
var/TC_uses = 0
for(var/datum/mind/syndicate in syndicates)
text += "<br>[syndicate.key] was [syndicate.name] ("
@@ -346,6 +349,14 @@ proc/issyndicate(mob/living/M as mob)
text += "body destroyed"
text += ")"
for(var/obj/item/device/uplink/H in world_uplinks)
if(H && H.uplink_owner && H.uplink_owner==syndicate.name)
TC_uses += H.used_TC
purchases += H.purchase_log
text += "(Syndicates used [TC_uses] TC) [purchases]"
world << text
return 1
+18 -1
View File
@@ -236,6 +236,19 @@
text += "body destroyed"
text += ")"
var/TC_uses = 0
var/uplink_true = 0
var/purchases = ""
for(var/obj/item/device/uplink/H in world_uplinks)
if(H && H.uplink_owner && H.uplink_owner==traitor.name)
TC_uses += H.used_TC
uplink_true=1
purchases += H.purchase_log
if(uplink_true) text += " (used [TC_uses] TC) [purchases]"
if(traitor.objectives.len)//If the traitor had no objectives, don't need to process this.
var/count = 1
for(var/datum/objective/objective in traitor.objectives)
@@ -254,6 +267,7 @@
else
special_role_text = "antagonist"
if(traitorwin)
text += "<br><font color='green'><B>The [special_role_text] was successful!</B></font>"
feedback_add_details("traitor_success","SUCCESS")
@@ -261,6 +275,7 @@
text += "<br><font color='red'><B>The [special_role_text] has failed!</B></font>"
feedback_add_details("traitor_success","FAIL")
world << text
return 1
@@ -299,6 +314,7 @@
var/obj/item/device/uplink/hidden/T = new(R)
target_radio.hidden_uplink = T
T.uplink_owner = "[traitor_mob]"
target_radio.traitor_frequency = freq
traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [R.name] [loc]. Simply dial the frequency [format_frequency(freq)] to unlock its hidden features."
traitor_mob.mind.store_memory("<B>Radio Freq:</B> [format_frequency(freq)] ([R.name] [loc]).")
@@ -308,6 +324,7 @@
var/obj/item/device/uplink/hidden/T = new(R)
R.hidden_uplink = T
T.uplink_owner = "[traitor_mob]"
var/obj/item/device/pda/P = R
P.lock_code = pda_pass
@@ -393,4 +410,4 @@
traitor_mind.special_role = null
update_traitor_icons_removed(traitor_mind)
//world << "Removed [traitor_mind.current.name] from traitor shit"
traitor_mind.current << "\red <FONT size = 3><B>The fog clouding your mind clears. You remember nothing from the moment you were implanted until now.(You don't remember who implanted you)</B></FONT>"
traitor_mind.current << "\red <FONT size = 3><B>The fog clouding your mind clears. You remember nothing from the moment you were implanted until now.(You don't remember who implanted you)</B></FONT>"
+11 -1
View File
@@ -6,20 +6,30 @@ A list of items and costs is stored under the datum of every game mode, alongsid
*/
var/list/world_uplinks = list()
/obj/item/device/uplink
var/welcome // Welcoming menu message
var/uses // Numbers of crystals
// List of items not to shove in their hands.
var/list/purchase_log = list()
var/purchase_log = ""
var/show_description = null
var/active = 0
var/job = null
var/uplink_owner = null//text-only
var/used_TC = 0
/obj/item/device/uplink/New()
..()
world_uplinks+=src
welcome = ticker.mode.uplink_welcome
uses = ticker.mode.uplink_uses
/obj/item/device/uplink/Del()
world_uplinks-=src
..()
//Let's build a menu!
/obj/item/device/uplink/proc/generate_menu(mob/user as mob)
if(!job)
@@ -14,6 +14,7 @@
activation_emote = input("Choose activation emote:") in list("blink", "blink_r", "eyebrow", "chuckle", "twitch_s", "frown", "nod", "blush", "giggle", "grin", "groan", "shrug", "smile", "pale", "sniff", "whimper", "wink")
source.mind.store_memory("Uplink implant can be activated by using the [src.activation_emote] emote, <B>say *[src.activation_emote]</B> to attempt to activate.", 0, 0)
source << "The implanted uplink implant can be activated by using the [src.activation_emote] emote, <B>say *[src.activation_emote]</B> to attempt to activate."
hidden_uplink.uplink_owner="[source]"
return 1
+4 -1
View File
@@ -71,4 +71,7 @@ h1.alert, h2.alert {color: #000000;}
.say_quote {font-family: Georgia, Verdana, sans-serif;}
.interface {color: #330033;}
</style>"}
BIG IMG.icon {width: 32px; height: 32px;}
</style>"}