mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-12 03:02:54 +00:00
[MIRROR] browse to browser continued (#11088)
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
2a0bb3120b
commit
590a653d5a
@@ -217,7 +217,11 @@
|
|||||||
to_chat(O, span_infoplain(span_bold("[U]") + " holds \a [itemname] up to one of your cameras ..."))
|
to_chat(O, span_infoplain(span_bold("[U]") + " holds \a [itemname] up to one of your cameras ..."))
|
||||||
else
|
else
|
||||||
to_chat(O, span_infoplain(span_bold("<a href='byond://?src=\ref[O];track2=\ref[O];track=\ref[U];trackname=[U.name]'>[U]</a>") + " holds \a [itemname] up to one of your cameras ..."))
|
to_chat(O, span_infoplain(span_bold("<a href='byond://?src=\ref[O];track2=\ref[O];track=\ref[U];trackname=[U.name]'>[U]</a>") + " holds \a [itemname] up to one of your cameras ..."))
|
||||||
O << browse(text("<HTML><HEAD><TITLE>[]</TITLE></HEAD><BODY><TT>[]</TT></BODY></HTML>", itemname, info), text("window=[]", itemname))
|
|
||||||
|
var/datum/browser/popup = new(O, itemname, itemname)
|
||||||
|
popup.add_head_content("<TITLE>[itemname]</TITLE>")
|
||||||
|
popup.set_content("<TT>[info]</TT>")
|
||||||
|
popup.open()
|
||||||
|
|
||||||
else if (istype(W, /obj/item/camera_bug))
|
else if (istype(W, /obj/item/camera_bug))
|
||||||
if (!src.can_use())
|
if (!src.can_use())
|
||||||
|
|||||||
@@ -242,7 +242,7 @@
|
|||||||
if(stat & (BROKEN|NOPOWER))
|
if(stat & (BROKEN|NOPOWER))
|
||||||
return
|
return
|
||||||
user.set_machine(src)
|
user.set_machine(src)
|
||||||
var/dat = span_bold("Magnetic Control Console") + "<BR><BR>"
|
var/dat = ""
|
||||||
if(!autolink)
|
if(!autolink)
|
||||||
dat += {"
|
dat += {"
|
||||||
Frequency: <a href='byond://?src=\ref[src];operation=setfreq'>[frequency]</a><br>
|
Frequency: <a href='byond://?src=\ref[src];operation=setfreq'>[frequency]</a><br>
|
||||||
@@ -263,8 +263,9 @@
|
|||||||
dat += "Moving: <a href='byond://?src=\ref[src];operation=togglemoving'>[moving ? "Enabled":"Disabled"]</a>"
|
dat += "Moving: <a href='byond://?src=\ref[src];operation=togglemoving'>[moving ? "Enabled":"Disabled"]</a>"
|
||||||
|
|
||||||
|
|
||||||
user << browse("<html>[dat]</html>", "window=magnet;size=400x500")
|
var/datum/browser/popup = new(user, "magnet", "Magnetic Control Console", 400, 500)
|
||||||
onclose(user, "magnet")
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/obj/machinery/magnetic_controller/Topic(href, href_list)
|
/obj/machinery/magnetic_controller/Topic(href, href_list)
|
||||||
if(stat & (BROKEN|NOPOWER))
|
if(stat & (BROKEN|NOPOWER))
|
||||||
|
|||||||
@@ -56,9 +56,10 @@ Please wait until completion...</TT><BR>
|
|||||||
<A href='byond://?src=\ref[src];make=7'>Robot Frame (75,000 cc metal).<BR>
|
<A href='byond://?src=\ref[src];make=7'>Robot Frame (75,000 cc metal).<BR>
|
||||||
"}
|
"}
|
||||||
|
|
||||||
user << browse("<html><HEAD><TITLE>Robotic Fabricator Control Panel</TITLE></HEAD><TT>[dat]</TT></html>", "window=robot_fabricator")
|
var/datum/browser/popup = new(user, "robot_fabricator", "Robot Fabricator")
|
||||||
onclose(user, "robot_fabricator")
|
popup.add_head_content("<TITLE>Robotic Fabricator Control Panel</TITLE>")
|
||||||
return
|
popup.set_content("<TT>[dat]</TT>")
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/obj/machinery/robotic_fabricator/Topic(href, href_list)
|
/obj/machinery/robotic_fabricator/Topic(href, href_list)
|
||||||
if(..())
|
if(..())
|
||||||
|
|||||||
@@ -32,8 +32,10 @@
|
|||||||
if(!selfdestructing)
|
if(!selfdestructing)
|
||||||
dat += "<br><br><A href='byond://?src=\ref[src];betraitor=1;traitormob=\ref[user]'>\"[pick("I want to switch teams.", "I want to work for you.", "Let me join you.", "I can be of use to you.", "You want me working for you, and here's why...", "Give me an objective.", "How's the 401k over at the Syndicate?")]\"</A><BR>"
|
dat += "<br><br><A href='byond://?src=\ref[src];betraitor=1;traitormob=\ref[user]'>\"[pick("I want to switch teams.", "I want to work for you.", "Let me join you.", "I can be of use to you.", "You want me working for you, and here's why...", "Give me an objective.", "How's the 401k over at the Syndicate?")]\"</A><BR>"
|
||||||
dat += temptext
|
dat += temptext
|
||||||
user << browse("<html>[dat]</html>", "window=syndbeacon")
|
|
||||||
onclose(user, "syndbeacon")
|
var/datum/browser/popup = new(user, "syndbeacon", "Ominous Beacon")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/obj/machinery/syndicate_beacon/Topic(href, href_list)
|
/obj/machinery/syndicate_beacon/Topic(href, href_list)
|
||||||
if(..())
|
if(..())
|
||||||
|
|||||||
@@ -16,8 +16,10 @@
|
|||||||
if(!selfdestructing)
|
if(!selfdestructing)
|
||||||
dat += "<br><br><A href='byond://?src=\ref[src];betraitor=1;traitormob=\ref[user]'>\"[pick("Send me some supplies!", "Transfer supplies.")]\"</A><BR>"
|
dat += "<br><br><A href='byond://?src=\ref[src];betraitor=1;traitormob=\ref[user]'>\"[pick("Send me some supplies!", "Transfer supplies.")]\"</A><BR>"
|
||||||
dat += temptext
|
dat += temptext
|
||||||
user << browse("<html>[dat]</html>", "window=syndbeacon")
|
|
||||||
onclose(user, "syndbeacon")
|
var/datum/browser/popup = new(user, "syndbeacon", "Ominous Beacon")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/obj/machinery/syndicate_beacon/virgo/Topic(href, href_list)
|
/obj/machinery/syndicate_beacon/virgo/Topic(href, href_list)
|
||||||
if(href_list["betraitor"])
|
if(href_list["betraitor"])
|
||||||
|
|||||||
@@ -42,9 +42,10 @@
|
|||||||
if(src.occupant)
|
if(src.occupant)
|
||||||
dat += "[src.ready ? "<A href='byond://?src=\ref[src];implant=1'>Implant</A>" : "Recharging"]<BR>"
|
dat += "[src.ready ? "<A href='byond://?src=\ref[src];implant=1'>Implant</A>" : "Recharging"]<BR>"
|
||||||
user.set_machine(src)
|
user.set_machine(src)
|
||||||
user << browse("<html>[dat]</html>", "window=implant")
|
|
||||||
onclose(user, "implant")
|
|
||||||
|
|
||||||
|
var/datum/browser/popup = new(user, "implant", "Implant")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/obj/machinery/implantchair/Topic(href, href_list)
|
/obj/machinery/implantchair/Topic(href, href_list)
|
||||||
if((get_dist(src, usr) <= 1) || isAI(usr))
|
if((get_dist(src, usr) <= 1) || isAI(usr))
|
||||||
|
|||||||
@@ -26,9 +26,10 @@
|
|||||||
dat += span_bold("Four uses use them wisely:") + "<BR>"
|
dat += span_bold("Four uses use them wisely:") + "<BR>"
|
||||||
dat += "<A href='byond://?src=\ref[src];spell_teleport=1'>Teleport</A><BR>"
|
dat += "<A href='byond://?src=\ref[src];spell_teleport=1'>Teleport</A><BR>"
|
||||||
dat += "Kind regards,<br>Wizards Federation<br><br>P.S. Don't forget to bring your gear, you'll need it to cast most spells.<HR>"
|
dat += "Kind regards,<br>Wizards Federation<br><br>P.S. Don't forget to bring your gear, you'll need it to cast most spells.<HR>"
|
||||||
user << browse("<html>[dat]</html>", "window=scroll")
|
|
||||||
onclose(user, "scroll")
|
var/datum/browser/popup = new(user, "scroll", "Scroll")
|
||||||
return
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/obj/item/teleportation_scroll/Topic(href, href_list)
|
/obj/item/teleportation_scroll/Topic(href, href_list)
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -483,4 +483,6 @@
|
|||||||
output += "</table></div>"
|
output += "</table></div>"
|
||||||
qdel(select_query)
|
qdel(select_query)
|
||||||
|
|
||||||
usr << browse("<html>[output]</html>","window=lookupbans;size=900x700")
|
var/datum/browser/popup = new(owner, "lookupbans", "Lookup Bans", 900, 700)
|
||||||
|
popup.set_content(output)
|
||||||
|
popup.open()
|
||||||
|
|||||||
@@ -190,7 +190,10 @@ var/savefile/Banlist
|
|||||||
|
|
||||||
dat += "</table>"
|
dat += "</table>"
|
||||||
dat = "<HR>" + span_bold("Bans:") + " " + span_blue("(U) = Unban , (E) = Edit Ban") + " - " + span_green("([count] Bans)") + "<HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >[dat]"
|
dat = "<HR>" + span_bold("Bans:") + " " + span_blue("(U) = Unban , (E) = Edit Ban") + " - " + span_green("([count] Bans)") + "<HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >[dat]"
|
||||||
usr << browse("<html>[dat]</html>", "window=unbanp;size=875x400")
|
|
||||||
|
var/datum/browser/popup = new(owner, "unbanp", "Unban", 875, 400)
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
//////////////////////////////////// DEBUG ////////////////////////////////////
|
//////////////////////////////////// DEBUG ////////////////////////////////////
|
||||||
|
|
||||||
|
|||||||
@@ -67,7 +67,11 @@
|
|||||||
dat = "<table width='100%'>[dat]</table>"
|
dat = "<table width='100%'>[dat]</table>"
|
||||||
else
|
else
|
||||||
dat = "No addresses in list."
|
dat = "No addresses in list."
|
||||||
src << browse("<html>[dat]</html>","window=ToRban_show")
|
|
||||||
|
var/datum/browser/popup = new(src, "ToRban_show", "Torban")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
if("remove")
|
if("remove")
|
||||||
var/savefile/F = new(TORFILE)
|
var/savefile/F = new(TORFILE)
|
||||||
var/choice = tgui_input_list(src,"Please select an IP address to remove from the ToR banlist:","Remove ToR ban", F.dir)
|
var/choice = tgui_input_list(src,"Please select an IP address to remove from the ToR banlist:","Remove ToR ban", F.dir)
|
||||||
|
|||||||
@@ -53,8 +53,7 @@ GLOBAL_VAR_INIT(floorIsLava, 0)
|
|||||||
to_chat(usr, "Error: you are not an admin!")
|
to_chat(usr, "Error: you are not an admin!")
|
||||||
return
|
return
|
||||||
|
|
||||||
var/body = "<html><head><title>Options for [M.key]</title></head>"
|
var/body = "Options panel for" + span_bold("[M]")
|
||||||
body += "<body>Options panel for" + span_bold("[M]")
|
|
||||||
if(M.client)
|
if(M.client)
|
||||||
body += " played by " + span_bold("[M.client]")
|
body += " played by " + span_bold("[M.client]")
|
||||||
body += "\[<A href='byond://?src=\ref[src];[HrefToken()];editrights=show'>[M.client.holder ? M.client.holder.rank_names() : "Player"]</A>\]"
|
body += "\[<A href='byond://?src=\ref[src];[HrefToken()];editrights=show'>[M.client.holder ? M.client.holder.rank_names() : "Player"]</A>\]"
|
||||||
@@ -236,11 +235,13 @@ GLOBAL_VAR_INIT(floorIsLava, 0)
|
|||||||
else
|
else
|
||||||
body += "<a href='byond://?src=\ref[src];[HrefToken()];toglang=\ref[M];lang=[html_encode(k)]' style='color:#ff0000'>[k]</a>"
|
body += "<a href='byond://?src=\ref[src];[HrefToken()];toglang=\ref[M];lang=[html_encode(k)]' style='color:#ff0000'>[k]</a>"
|
||||||
|
|
||||||
body += {"<br>
|
body += {"<br>"}
|
||||||
</body></html>
|
|
||||||
"}
|
var/datum/browser/popup = new(owner, "adminplayeropts", "Edit Player", 550, 515)
|
||||||
|
popup.add_head_content("<title>Options for [M.key]</title>")
|
||||||
|
popup.set_content(body)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
usr << browse(body, "window=adminplayeropts;size=550x515")
|
|
||||||
feedback_add_details("admin_verb","SPP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
feedback_add_details("admin_verb","SPP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||||
|
|
||||||
|
|
||||||
@@ -314,7 +315,7 @@ GLOBAL_VAR_INIT(floorIsLava, 0)
|
|||||||
to_chat(usr, "Error: you are not an admin!")
|
to_chat(usr, "Error: you are not an admin!")
|
||||||
return
|
return
|
||||||
var/dat
|
var/dat
|
||||||
dat = text("<HEAD><TITLE>Admin Newscaster</TITLE></HEAD><H3>Admin Newscaster Unit</H3>")
|
dat = text("<H3>Admin Newscaster Unit</H3>")
|
||||||
|
|
||||||
switch(admincaster_screen)
|
switch(admincaster_screen)
|
||||||
if(0)
|
if(0)
|
||||||
@@ -547,10 +548,11 @@ GLOBAL_VAR_INIT(floorIsLava, 0)
|
|||||||
|
|
||||||
//to_world("Channelname: [src.admincaster_feed_channel.channel_name] [src.admincaster_feed_channel.author]")
|
//to_world("Channelname: [src.admincaster_feed_channel.channel_name] [src.admincaster_feed_channel.author]")
|
||||||
//to_world("Msg: [src.admincaster_feed_message.author] [src.admincaster_feed_message.body]")
|
//to_world("Msg: [src.admincaster_feed_message.author] [src.admincaster_feed_message.body]")
|
||||||
usr << browse("<html>[dat]</html>", "window=admincaster_main;size=400x600")
|
|
||||||
onclose(usr, "admincaster_main")
|
|
||||||
|
|
||||||
|
|
||||||
|
var/datum/browser/popup = new(owner, "admincaster_main", "Admin Newscaster", 400, 600)
|
||||||
|
popup.add_head_content("<TITLE>Admin Newscaster</TITLE>")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/datum/admins/proc/Jobbans()
|
/datum/admins/proc/Jobbans()
|
||||||
if(!check_rights(R_BAN)) return
|
if(!check_rights(R_BAN)) return
|
||||||
@@ -562,13 +564,17 @@ GLOBAL_VAR_INIT(floorIsLava, 0)
|
|||||||
r = copytext( r, 1, findtext(r,"##") )//removes the description
|
r = copytext( r, 1, findtext(r,"##") )//removes the description
|
||||||
dat += text("<tr><td>[t] (<A href='byond://?src=\ref[src];[HrefToken()];removejobban=[r]'>unban</A>)</td></tr>")
|
dat += text("<tr><td>[t] (<A href='byond://?src=\ref[src];[HrefToken()];removejobban=[r]'>unban</A>)</td></tr>")
|
||||||
dat += "</table>"
|
dat += "</table>"
|
||||||
usr << browse("<html>[dat]</html>", "window=ban;size=400x400")
|
|
||||||
|
var/datum/browser/popup = new(owner, "ban", "Job Bans", 400, 400)
|
||||||
|
popup.add_head_content("<TITLE>Admin Newscaster</TITLE>")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/datum/admins/proc/Game()
|
/datum/admins/proc/Game()
|
||||||
if(!check_rights(0)) return
|
if(!check_rights(0)) return
|
||||||
|
|
||||||
var/dat = {"
|
var/dat = {"
|
||||||
<html><center>"} + span_bold("Game Panel") + {"</center><hr>\n
|
<center>"} + span_bold("Game Panel") + {"</center><hr>\n
|
||||||
<A href='byond://?src=\ref[src];[HrefToken()];c_mode=1'>Change Game Mode</A><br>
|
<A href='byond://?src=\ref[src];[HrefToken()];c_mode=1'>Change Game Mode</A><br>
|
||||||
"}
|
"}
|
||||||
if(GLOB.master_mode == "secret")
|
if(GLOB.master_mode == "secret")
|
||||||
@@ -582,11 +588,12 @@ GLOBAL_VAR_INIT(floorIsLava, 0)
|
|||||||
<A href='byond://?src=\ref[src];[HrefToken()];create_mob=1'>Create Mob</A><br>
|
<A href='byond://?src=\ref[src];[HrefToken()];create_mob=1'>Create Mob</A><br>
|
||||||
<br><A href='byond://?src=\ref[src];[HrefToken()];vsc=airflow'>Edit Airflow Settings</A><br>
|
<br><A href='byond://?src=\ref[src];[HrefToken()];vsc=airflow'>Edit Airflow Settings</A><br>
|
||||||
<A href='byond://?src=\ref[src];[HrefToken()];vsc=phoron'>Edit Phoron Settings</A><br>
|
<A href='byond://?src=\ref[src];[HrefToken()];vsc=phoron'>Edit Phoron Settings</A><br>
|
||||||
<A href='byond://?src=\ref[src];[HrefToken()];vsc=default'>Choose a default ZAS setting</A><br></html>
|
<A href='byond://?src=\ref[src];[HrefToken()];vsc=default'>Choose a default ZAS setting</A><br>
|
||||||
"}
|
"}
|
||||||
|
|
||||||
usr << browse(dat, "window=admin2;size=210x280")
|
var/datum/browser/popup = new(owner, "admin2", "Game Panel", 210, 280)
|
||||||
return
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/datum/admins/proc/Secrets(var/datum/admin_secret_category/active_category = null)
|
/datum/admins/proc/Secrets(var/datum/admin_secret_category/active_category = null)
|
||||||
if(!check_rights(0)) return
|
if(!check_rights(0)) return
|
||||||
@@ -1255,7 +1262,9 @@ var/datum/announcement/minor/admin_min_announcer = new
|
|||||||
out += " None."
|
out += " None."
|
||||||
out += " <a href='byond://?src=\ref[ticker.mode];[HrefToken()];add_antag_type=1'>\[+\]</a><br/>"
|
out += " <a href='byond://?src=\ref[ticker.mode];[HrefToken()];add_antag_type=1'>\[+\]</a><br/>"
|
||||||
|
|
||||||
usr << browse("<html>[out]</html>", "window=edit_mode[src]")
|
var/datum/browser/popup = new(owner, "edit_mode[src]", "Edit Game Mode")
|
||||||
|
popup.set_content(out)
|
||||||
|
popup.open()
|
||||||
feedback_add_details("admin_verb","SGM")
|
feedback_add_details("admin_verb","SGM")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -115,8 +115,9 @@ world/New()
|
|||||||
else
|
else
|
||||||
output += "Whoops, no reports!"
|
output += "Whoops, no reports!"
|
||||||
|
|
||||||
usr << browse("<html>[output]</html>", "window=news;size=600x400")
|
var/datum/browser/popup = new(src, "news", "News", 600, 400)
|
||||||
|
popup.set_content(output)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/client/proc/Report(mob/M as mob in world)
|
/client/proc/Report(mob/M as mob in world)
|
||||||
set category = "Admin.Moderation"
|
set category = "Admin.Moderation"
|
||||||
|
|||||||
@@ -721,8 +721,10 @@ ADMIN_VERB(removetickets, R_ADMIN, "Security Tickets", "Allows one to remove tic
|
|||||||
dat += "</table>"
|
dat += "</table>"
|
||||||
|
|
||||||
qdel(query)
|
qdel(query)
|
||||||
usr << browse("<html>[dat]</html>", "window=library")
|
|
||||||
onclose(usr, "library")
|
var/datum/browser/popup = new(src, "library", "Delete Book")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/client/proc/toggle_spawning_with_recolour()
|
/client/proc/toggle_spawning_with_recolour()
|
||||||
set name = "Toggle Simple/Robot recolour verb"
|
set name = "Toggle Simple/Robot recolour verb"
|
||||||
|
|||||||
@@ -232,7 +232,10 @@ var/savefile/Banlistjob
|
|||||||
|
|
||||||
dat += "</table>"
|
dat += "</table>"
|
||||||
dat = "<HR>" + span_bold("Bans:") + " " span_blue("(U) = Unban , ") + " - " + span_green("([count] Bans)") + "<HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >[dat]"
|
dat = "<HR>" + span_bold("Bans:") + " " span_blue("(U) = Unban , ") + " - " + span_green("([count] Bans)") + "<HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >[dat]"
|
||||||
usr << browse("<html>[dat]</html>", "window=unbanp;size=875x400")
|
|
||||||
|
var/datum/browser/popup = new(owner, "unbanjob", "Unban Job", 875, 400)
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/*/datum/admins/proc/permjobban(ckey, computerid, reason, bannedby, temp, minutes, rank)
|
/*/datum/admins/proc/permjobban(ckey, computerid, reason, bannedby, temp, minutes, rank)
|
||||||
if(AddBanjob(ckey, computerid, reason, usr.ckey, 0, 0, job))
|
if(AddBanjob(ckey, computerid, reason, usr.ckey, 0, 0, job))
|
||||||
|
|||||||
@@ -133,7 +133,10 @@
|
|||||||
output += "</table></div><div id='top'><b>Search:</b> <input type='text' id='filter' value='' style='width:70%;' onkeyup='updateSearch();'></div></body>"
|
output += "</table></div><div id='top'><b>Search:</b> <input type='text' id='filter' value='' style='width:70%;' onkeyup='updateSearch();'></div></body>"
|
||||||
if(QDELETED(usr))
|
if(QDELETED(usr))
|
||||||
return
|
return
|
||||||
usr << browse("<!DOCTYPE html><html>[jointext(output, "")]</html>","window=editrights;size=1000x650")
|
|
||||||
|
var/datum/browser/popup = new(owner, "editrights", "Edit Rights", 1000, 650)
|
||||||
|
popup.set_content(jointext(output, ""))
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/datum/admins/proc/edit_rights_topic(list/href_list)
|
/datum/admins/proc/edit_rights_topic(list/href_list)
|
||||||
if(!check_rights(R_PERMISSIONS))
|
if(!check_rights(R_PERMISSIONS))
|
||||||
|
|||||||
@@ -9,4 +9,7 @@
|
|||||||
var/dat = span_bold("Bombing List")
|
var/dat = span_bold("Bombing List")
|
||||||
for(var/l in GLOB.bombers)
|
for(var/l in GLOB.bombers)
|
||||||
dat += text("[l]<BR>")
|
dat += text("[l]<BR>")
|
||||||
user << browse("<html>[dat]</html>", "window=bombers")
|
|
||||||
|
var/datum/browser/popup = new(user, "bombers", "Bombers")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|||||||
@@ -11,4 +11,7 @@
|
|||||||
if(H.dna && H.ckey)
|
if(H.dna && H.ckey)
|
||||||
dat += "<tr><td>[H]</td><td>[H.dna.unique_enzymes]</td><td>[H.dna ? H.dna.b_type : DEFAULT_BLOOD_TYPE]</td></tr>"
|
dat += "<tr><td>[H]</td><td>[H.dna.unique_enzymes]</td><td>[H.dna ? H.dna.b_type : DEFAULT_BLOOD_TYPE]</td></tr>"
|
||||||
dat += "</table>"
|
dat += "</table>"
|
||||||
user << browse("<html>[dat]</html>", "window=DNA;size=440x410")
|
|
||||||
|
var/datum/browser/popup = new(user, "DNA", "DNA", 440, 410)
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|||||||
@@ -16,4 +16,7 @@
|
|||||||
else if(!H.dna)
|
else if(!H.dna)
|
||||||
dat += "<tr><td>[H]</td><td>H.dna = null</td></tr>"
|
dat += "<tr><td>[H]</td><td>H.dna = null</td></tr>"
|
||||||
dat += "</table>"
|
dat += "</table>"
|
||||||
user << browse("<html>[dat]</html>", "window=fingerprints;size=440x410")
|
|
||||||
|
var/datum/browser/popup = new(user, "fingerprints", "Fingerprints", 440, 410)
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|||||||
@@ -9,4 +9,6 @@
|
|||||||
dat += "<h4>Crew Manifest</h4>"
|
dat += "<h4>Crew Manifest</h4>"
|
||||||
dat += GLOB.data_core.get_manifest()
|
dat += GLOB.data_core.get_manifest()
|
||||||
|
|
||||||
user << browse("<html>[dat]</html>", "window=manifest;size=370x420;can_close=1")
|
var/datum/browser/popup = new(user, "manifest", "Manifest", 370, 420)
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|||||||
@@ -12,4 +12,7 @@
|
|||||||
var/dat = span_bold("Showing last [length(GLOB.lawchanges)] law changes.") + "<HR>"
|
var/dat = span_bold("Showing last [length(GLOB.lawchanges)] law changes.") + "<HR>"
|
||||||
for(var/sig in GLOB.lawchanges)
|
for(var/sig in GLOB.lawchanges)
|
||||||
dat += "[sig]<BR>"
|
dat += "[sig]<BR>"
|
||||||
user << browse("<html>[dat]</html>", "window=GLOB.lawchanges;size=800x500")
|
|
||||||
|
var/datum/browser/popup = new(user, "lawchanges", "Lawcahnges", 800, 500)
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|||||||
@@ -12,4 +12,7 @@
|
|||||||
var/dat = span_bold("Showing last [length(GLOB.lastsignalers)] signalers.") + "<HR>"
|
var/dat = span_bold("Showing last [length(GLOB.lastsignalers)] signalers.") + "<HR>"
|
||||||
for(var/sig in GLOB.lastsignalers)
|
for(var/sig in GLOB.lastsignalers)
|
||||||
dat += "[sig]<BR>"
|
dat += "[sig]<BR>"
|
||||||
user << browse("<html>[dat]</html>", "window=lastsignalers;size=800x500")
|
|
||||||
|
var/datum/browser/popup = new(user, "lastsignalers", "Last Signallers", 800, 500)
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|||||||
@@ -21,7 +21,9 @@ var/inactive_keys = "None<br>"
|
|||||||
else
|
else
|
||||||
dat += "<a href='byond://?src=\ref[src];_src_=holder;[HrefToken()];populate_inactive_customitems=1'>Populate list (requires an active database connection)</a><br>"
|
dat += "<a href='byond://?src=\ref[src];_src_=holder;[HrefToken()];populate_inactive_customitems=1'>Populate list (requires an active database connection)</a><br>"
|
||||||
|
|
||||||
usr << browse("<html>[dat]</html>", "window=inactive_customitems;size=600x480")
|
var/datum/browser/popup = new(src, "inactive_customitems", "Inactive Custom Items", 600, 480)
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/proc/populate_inactive_customitems_list(var/client/C)
|
/proc/populate_inactive_customitems_list(var/client/C)
|
||||||
set background = 1
|
set background = 1
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
else
|
else
|
||||||
inactive_on_main_station++
|
inactive_on_main_station++
|
||||||
|
|
||||||
var/output = {"<html><B>AIR SYSTEMS REPORT</B><HR>
|
var/output = {"<B>AIR SYSTEMS REPORT</B><HR>
|
||||||
<B>General Processing Data</B><BR>
|
<B>General Processing Data</B><BR>
|
||||||
Cycle: [SSair.current_cycle]<br>
|
Cycle: [SSair.current_cycle]<br>
|
||||||
Groups: [SSair.zones.len]<BR>
|
Groups: [SSair.zones.len]<BR>
|
||||||
@@ -36,10 +36,12 @@
|
|||||||
Hotspot Processing: [hotspots]<BR>
|
Hotspot Processing: [hotspots]<BR>
|
||||||
<br>
|
<br>
|
||||||
<B>Geometry Processing Data</B><BR>
|
<B>Geometry Processing Data</B><BR>
|
||||||
Tile Update: [SSair.tiles_to_update.len]<BR></html>
|
Tile Update: [SSair.tiles_to_update.len]<BR>
|
||||||
"}
|
"}
|
||||||
|
|
||||||
usr << browse(output,"window=airreport")
|
var/datum/browser/popup = new(src, "airreport", "Airreport")
|
||||||
|
popup.set_content(output)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/client/proc/fix_next_move()
|
/client/proc/fix_next_move()
|
||||||
set category = "Debug.Game"
|
set category = "Debug.Game"
|
||||||
@@ -95,7 +97,9 @@
|
|||||||
else
|
else
|
||||||
output += " [device]<br>"
|
output += " [device]<br>"
|
||||||
|
|
||||||
usr << browse("<html>[output]</html>","window=radioreport")
|
var/datum/browser/popup = new(src, "radioreport", "Radioreport")
|
||||||
|
popup.set_content(output)
|
||||||
|
popup.open()
|
||||||
feedback_add_details("admin_verb","RR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
feedback_add_details("admin_verb","RR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||||
|
|
||||||
/client/proc/reload_admins()
|
/client/proc/reload_admins()
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ GLOBAL_LIST_BOILERPLATE(all_debugging_effects, /obj/effect/debugging)
|
|||||||
for(var/obj/machinery/camera/C in cameranet.cameras)
|
for(var/obj/machinery/camera/C in cameranet.cameras)
|
||||||
CL += C
|
CL += C
|
||||||
|
|
||||||
var/output = {""} + span_bold("CAMERA ANNOMALITIES REPORT") + {"<HR>
|
var/output = span_bold("CAMERA ANNOMALITIES REPORT") + {"<HR>
|
||||||
"} + span_bold("The following annomalities have been detected. The ones in red need immediate attention: Some of those in black may be intentional.") + {"<BR><ul>"}
|
"} + span_bold("The following annomalities have been detected. The ones in red need immediate attention: Some of those in black may be intentional.") + {"<BR><ul>"}
|
||||||
|
|
||||||
for(var/obj/machinery/camera/C1 in CL)
|
for(var/obj/machinery/camera/C1 in CL)
|
||||||
@@ -102,7 +102,10 @@ GLOBAL_LIST_BOILERPLATE(all_debugging_effects, /obj/effect/debugging)
|
|||||||
output += "<li>" + span_red("Camera not connected to wall at \[[C1.x], [C1.y], [C1.z]\] ([C1.loc.loc]) Network: [C1.network]") + "</li>"
|
output += "<li>" + span_red("Camera not connected to wall at \[[C1.x], [C1.y], [C1.z]\] ([C1.loc.loc]) Network: [C1.network]") + "</li>"
|
||||||
|
|
||||||
output += "</ul>"
|
output += "</ul>"
|
||||||
usr << browse("<html>[output]</html>","window=airreport;size=1000x500")
|
|
||||||
|
var/datum/browser/popup = new(src, "airreport", "Airreport", 1000, 500)
|
||||||
|
popup.set_content(output)
|
||||||
|
popup.open()
|
||||||
feedback_add_details("admin_verb","mCRP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
feedback_add_details("admin_verb","mCRP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||||
|
|
||||||
/client/proc/intercom_view()
|
/client/proc/intercom_view()
|
||||||
|
|||||||
@@ -27,9 +27,10 @@
|
|||||||
dat += span_bold("Charge progress: [reload]/180:") + "<BR>"
|
dat += span_bold("Charge progress: [reload]/180:") + "<BR>"
|
||||||
dat += "<A href='byond://?src=\ref[src];fire=1'>Open Fire</A><BR>"
|
dat += "<A href='byond://?src=\ref[src];fire=1'>Open Fire</A><BR>"
|
||||||
dat += "Deployment of weapon authorized by <br>[using_map.company_name] Naval Command<br><br>Remember, friendly fire is grounds for termination of your contract and life.<HR>"
|
dat += "Deployment of weapon authorized by <br>[using_map.company_name] Naval Command<br><br>Remember, friendly fire is grounds for termination of your contract and life.<HR>"
|
||||||
user << browse("<html>[dat]</html>", "window=scroll")
|
|
||||||
onclose(user, "scroll")
|
var/datum/browser/popup = new(user, "artillery", "Artillery")
|
||||||
return
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/obj/machinery/artillerycontrol/Topic(href, href_list)
|
/obj/machinery/artillerycontrol/Topic(href, href_list)
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -43,7 +43,10 @@
|
|||||||
dat += text("Phoron coins: [amt_phoron] <A href='byond://?src=\ref[src];remove=phoron'>Remove one</A><br>")
|
dat += text("Phoron coins: [amt_phoron] <A href='byond://?src=\ref[src];remove=phoron'>Remove one</A><br>")
|
||||||
if (amt_uranium)
|
if (amt_uranium)
|
||||||
dat += text("Uranium coins: [amt_uranium] <A href='byond://?src=\ref[src];remove=uranium'>Remove one</A><br>")
|
dat += text("Uranium coins: [amt_uranium] <A href='byond://?src=\ref[src];remove=uranium'>Remove one</A><br>")
|
||||||
user << browse("<html>[dat]</html>", "window=moneybag")
|
|
||||||
|
var/datum/browser/popup = new(user, "moneybag", "Moneybag")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/obj/item/moneybag/attackby(obj/item/W, mob/user)
|
/obj/item/moneybag/attackby(obj/item/W, mob/user)
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -88,11 +88,10 @@
|
|||||||
dat += "<br>"
|
dat += "<br>"
|
||||||
dat += "<i>Device ID:</i> [machine_id]"
|
dat += "<i>Device ID:</i> [machine_id]"
|
||||||
|
|
||||||
dat = "<html><head><title>Retail Scanner</title></head><body>[dat]</body></html>"
|
var/datum/browser/popup = new(user, "retail", "Retail", 350, 500)
|
||||||
|
popup.add_head_content("<title>Retail Scanner</title>")
|
||||||
user << browse(dat, "window=retail;size=350x500")
|
popup.set_content(dat)
|
||||||
onclose(user, "retail")
|
popup.open()
|
||||||
|
|
||||||
|
|
||||||
/obj/item/retail_scanner/Topic(var/href, var/href_list)
|
/obj/item/retail_scanner/Topic(var/href, var/href_list)
|
||||||
if(..())
|
if(..())
|
||||||
|
|||||||
@@ -22,7 +22,10 @@
|
|||||||
t += "#[i] | [display_data(line)] | "
|
t += "#[i] | [display_data(line)] | "
|
||||||
t += "<a href='byond://?src=\ref[src];edit=1;pos=[i]'>\[Edit\]</a> | "
|
t += "<a href='byond://?src=\ref[src];edit=1;pos=[i]'>\[Edit\]</a> | "
|
||||||
t += "<a href='byond://?src=\ref[src];remove=1;pos=[i]'>\[Remove\]</a><br>"
|
t += "<a href='byond://?src=\ref[src];remove=1;pos=[i]'>\[Remove\]</a><br>"
|
||||||
user << browse("<html>[t]</html>", "window=list_pin_\ref[src];size=500x400")
|
|
||||||
|
var/datum/browser/popup = new(user, "list_pin_\ref[src]", null, 500, 400)
|
||||||
|
popup.set_content(t)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/datum/integrated_io/list/proc/add_to_list(mob/user, var/new_entry)
|
/datum/integrated_io/list/proc/add_to_list(mob/user, var/new_entry)
|
||||||
if(!new_entry && user)
|
if(!new_entry && user)
|
||||||
|
|||||||
@@ -205,9 +205,9 @@ Book Cart End
|
|||||||
|
|
||||||
/// Proc that handles sending the book information to the user, as well as some housekeeping stuff.
|
/// Proc that handles sending the book information to the user, as well as some housekeeping stuff.
|
||||||
/obj/item/book/proc/display_content(mob/living/user)
|
/obj/item/book/proc/display_content(mob/living/user)
|
||||||
if(!findtext(dat, regex("^<html")))
|
var/datum/browser/popup = new(user, "book", "<TT><I>Penned by [author].</I></TT>")
|
||||||
dat = "<html>[dat]</html>"
|
popup.set_content(dat)
|
||||||
user << browse(replacetext(dat, "<html>", "<html><TT><I>Penned by [author].</I></TT> <BR>"), "window=book")
|
popup.open()
|
||||||
|
|
||||||
/obj/item/book/attackby(obj/item/W, mob/user)
|
/obj/item/book/attackby(obj/item/W, mob/user)
|
||||||
if(carved)
|
if(carved)
|
||||||
|
|||||||
@@ -52,12 +52,15 @@ GLOBAL_DATUM_INIT(mhelp_tickets, /datum/mentor_help_tickets, new)
|
|||||||
title = "Resolved Tickets"
|
title = "Resolved Tickets"
|
||||||
if(!l2b)
|
if(!l2b)
|
||||||
return
|
return
|
||||||
var/list/dat = list("<html><head><title>[title]</title></head>")
|
var/list/dat = list()
|
||||||
dat += "<A href='byond://?_src_=mentorholder;[HrefToken()];mhelp_tickets=[state]'>Refresh</A><br><br>"
|
dat += "<A href='byond://?_src_=mentorholder;[HrefToken()];mhelp_tickets=[state]'>Refresh</A><br><br>"
|
||||||
for(var/datum/mentor_help/MH as anything in l2b)
|
for(var/datum/mentor_help/MH as anything in l2b)
|
||||||
dat += span_adminnotice(span_adminhelp("Ticket #[MH.id]") + " <A href='byond://?_src_=mentorholder;mhelp=\ref[MH];[HrefToken()];mhelp_action=ticket'>[MH.initiator_ckey]: [MH.name]</A>") + "<br>"
|
dat += span_adminnotice(span_adminhelp("Ticket #[MH.id]") + " <A href='byond://?_src_=mentorholder;mhelp=\ref[MH];[HrefToken()];mhelp_action=ticket'>[MH.initiator_ckey]: [MH.name]</A>") + "<br>"
|
||||||
dat += "</html>"
|
|
||||||
usr << browse(dat.Join(), "window=mhelp_list[state];size=600x480")
|
var/datum/browser/popup = new(usr, "mhelp_list[state]", "Mentor Help List", 600, 480)
|
||||||
|
popup.add_head_content("<title>[title]</title>")
|
||||||
|
popup.set_content(dat.Join())
|
||||||
|
popup.open()
|
||||||
|
|
||||||
//Tickets statpanel
|
//Tickets statpanel
|
||||||
/datum/mentor_help_tickets/proc/stat_entry()
|
/datum/mentor_help_tickets/proc/stat_entry()
|
||||||
@@ -269,7 +272,7 @@ INITIALIZE_IMMEDIATE(/obj/effect/statclick/mticket_list)
|
|||||||
tgui_interact(usr.client.mob)
|
tgui_interact(usr.client.mob)
|
||||||
|
|
||||||
/datum/mentor_help/proc/TicketPanelLegacy()
|
/datum/mentor_help/proc/TicketPanelLegacy()
|
||||||
var/list/dat = list("<html><head><title>Ticket #[id]</title></head>")
|
var/list/dat = list()
|
||||||
var/ref_src = "\ref[src]"
|
var/ref_src = "\ref[src]"
|
||||||
dat += "<h4>Mentor Help Ticket #[id]: [LinkedReplyName(ref_src)]</h4>"
|
dat += "<h4>Mentor Help Ticket #[id]: [LinkedReplyName(ref_src)]</h4>"
|
||||||
dat += span_bold("State: ")
|
dat += span_bold("State: ")
|
||||||
@@ -294,8 +297,11 @@ INITIALIZE_IMMEDIATE(/obj/effect/statclick/mticket_list)
|
|||||||
dat += "<br>" + span_bold("Log:") + "<br><br>"
|
dat += "<br>" + span_bold("Log:") + "<br><br>"
|
||||||
for(var/I in _interactions)
|
for(var/I in _interactions)
|
||||||
dat += "[I]<br>"
|
dat += "[I]<br>"
|
||||||
dat += "</html>"
|
|
||||||
usr << browse(dat.Join(), "window=mhelp[id];size=620x480")
|
var/datum/browser/popup = new(usr, "mhelp[id]", "Mento Help [id]", 620, 480)
|
||||||
|
popup.add_head_content("<title>Ticket #[id]</title>")
|
||||||
|
popup.set_content(dat.Join())
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/datum/mentor_help/tgui_fallback(payload)
|
/datum/mentor_help/tgui_fallback(payload)
|
||||||
if(..())
|
if(..())
|
||||||
|
|||||||
@@ -410,7 +410,10 @@ var/list/_simple_mob_default_emotes = list(
|
|||||||
HTML += "<hr />"
|
HTML += "<hr />"
|
||||||
HTML +="<a href='byond://?src=\ref[src];flavor_change=done'>\[Done\]</a>"
|
HTML +="<a href='byond://?src=\ref[src];flavor_change=done'>\[Done\]</a>"
|
||||||
HTML += "<tt></body></html>"
|
HTML += "<tt></body></html>"
|
||||||
src << browse(HTML, "window=flavor_changes;size=430x300")
|
|
||||||
|
var/datum/browser/popup = new(src, "flavor_changes", "Change Flavortexts", 430, 300)
|
||||||
|
popup.set_content(HTML)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/mob/living/carbon/human/proc/toggle_tail(var/setting,var/message = 0)
|
/mob/living/carbon/human/proc/toggle_tail(var/setting,var/message = 0)
|
||||||
if(!tail_style || !tail_style.ani_state)
|
if(!tail_style || !tail_style.ani_state)
|
||||||
|
|||||||
@@ -537,7 +537,9 @@
|
|||||||
else
|
else
|
||||||
dat += span_bold("Primarily [u_attack.attack_name]") + " - <a href='byond://?src=\ref[src];default_attk=\ref[u_attack]'>set default</a><br/><br/><br/>"
|
dat += span_bold("Primarily [u_attack.attack_name]") + " - <a href='byond://?src=\ref[src];default_attk=\ref[u_attack]'>set default</a><br/><br/><br/>"
|
||||||
|
|
||||||
src << browse("<html>[dat]</html>", "window=checkattack")
|
var/datum/browser/popup = new(src, "checkattack")
|
||||||
|
popup.set_content(dat)
|
||||||
|
popup.open()
|
||||||
|
|
||||||
/mob/living/carbon/human/Topic(href, href_list)
|
/mob/living/carbon/human/Topic(href, href_list)
|
||||||
if(href_list["default_attk"])
|
if(href_list["default_attk"])
|
||||||
@@ -555,7 +557,6 @@
|
|||||||
/mob/living/carbon/human/proc/set_default_attack(var/datum/unarmed_attack/u_attack)
|
/mob/living/carbon/human/proc/set_default_attack(var/datum/unarmed_attack/u_attack)
|
||||||
default_attack = u_attack
|
default_attack = u_attack
|
||||||
|
|
||||||
|
|
||||||
/mob/living/carbon/human/proc/perform_cpr(var/mob/living/carbon/human/reviver)
|
/mob/living/carbon/human/proc/perform_cpr(var/mob/living/carbon/human/reviver)
|
||||||
// Check for sanity
|
// Check for sanity
|
||||||
if(!istype(reviver,/mob/living/carbon/human))
|
if(!istype(reviver,/mob/living/carbon/human))
|
||||||
|
|||||||
@@ -1,63 +0,0 @@
|
|||||||
/mob/living/carbon/human
|
|
||||||
var/datum/unarmed_attack/default_attack
|
|
||||||
|
|
||||||
/mob/living/carbon/human/verb/check_attacks()
|
|
||||||
set name = "Check Attacks"
|
|
||||||
set category = "IC.Game"
|
|
||||||
set src = usr
|
|
||||||
|
|
||||||
var/dat = span_bold(span_giant("Known Attacks")) + "<br/><br/>"
|
|
||||||
|
|
||||||
for(var/datum/unarmed_attack/u_attack in species.unarmed_attacks)
|
|
||||||
dat += span_bold("Primarily [u_attack.attack_name] ") + "<br/><br/><br/>"
|
|
||||||
|
|
||||||
src << browse("<html>[dat]</html>", "window=checkattack")
|
|
||||||
return
|
|
||||||
|
|
||||||
/mob/living/carbon/human/check_attacks()
|
|
||||||
var/dat = span_bold(span_giant("Known Attacks")) + "<br/><br/>"
|
|
||||||
|
|
||||||
if(default_attack)
|
|
||||||
dat += "Current default attack: [default_attack.attack_name] - <a href='byond://?src=\ref[src];default_attk=reset_attk'>reset</a><br/><br/>"
|
|
||||||
|
|
||||||
for(var/datum/unarmed_attack/u_attack in species.unarmed_attacks)
|
|
||||||
if(u_attack == default_attack)
|
|
||||||
dat += span_bold("Primarily [u_attack.attack_name]") + " - default - <a href='byond://?src=\ref[src];default_attk=reset_attk'>reset</a><br/><br/><br/>"
|
|
||||||
else
|
|
||||||
dat += span_bold("Primarily [u_attack.attack_name]") + " - <a href='byond://?src=\ref[src];default_attk=\ref[u_attack]'>set default</a><br/><br/><br/>"
|
|
||||||
|
|
||||||
src << browse("<html>[dat]</html>", "window=checkattack")
|
|
||||||
|
|
||||||
/mob/living/carbon/human/Topic(href, href_list)
|
|
||||||
if(href_list["default_attk"])
|
|
||||||
if(href_list["default_attk"] == "reset_attk")
|
|
||||||
set_default_attack(null)
|
|
||||||
else
|
|
||||||
var/datum/unarmed_attack/u_attack = locate(href_list["default_attk"])
|
|
||||||
if(u_attack && (u_attack in species.unarmed_attacks))
|
|
||||||
set_default_attack(u_attack)
|
|
||||||
check_attacks()
|
|
||||||
return 1
|
|
||||||
else
|
|
||||||
return ..()
|
|
||||||
|
|
||||||
/mob/living/carbon/human/proc/set_default_attack(var/datum/unarmed_attack/u_attack)
|
|
||||||
default_attack = u_attack
|
|
||||||
|
|
||||||
/datum/unarmed_attack
|
|
||||||
var/attack_name = "fist"
|
|
||||||
|
|
||||||
/datum/unarmed_attack
|
|
||||||
bite/attack_name = "bite"
|
|
||||||
bite/sharp/attack_name = "sharp bite"
|
|
||||||
bite/strong/attack_name = "strong bite"
|
|
||||||
punch/attack_name = "punch"
|
|
||||||
kick/attack_name = "kick"
|
|
||||||
stomp/attack_name = "stomp"
|
|
||||||
stomp/weak/attack_name = "weak stomp"
|
|
||||||
light_strike/attack_name = "light hit"
|
|
||||||
diona attack_name = "tendrils"
|
|
||||||
claws/attack_name = "claws"
|
|
||||||
claws/strong/attack_name = "strong claws"
|
|
||||||
slime_glomp/attack_name = "glomp"
|
|
||||||
bite/sharp/numbing/attack_name = "numbing bite"
|
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
status_flags = GODMODE|CANPUSH
|
status_flags = GODMODE|CANPUSH
|
||||||
has_huds = FALSE
|
has_huds = FALSE
|
||||||
blocks_emissive = FALSE
|
blocks_emissive = FALSE
|
||||||
|
no_vore = TRUE //Dummies don't need bellies.
|
||||||
|
|
||||||
/mob/living/carbon/human/dummy/Initialize(mapload)
|
/mob/living/carbon/human/dummy/Initialize(mapload)
|
||||||
. = ..()
|
. = ..()
|
||||||
@@ -148,3 +149,43 @@
|
|||||||
/mob/living/carbon/human/stok/Initialize(mapload)
|
/mob/living/carbon/human/stok/Initialize(mapload)
|
||||||
. = ..(mapload, SPECIES_MONKEY_UNATHI)
|
. = ..(mapload, SPECIES_MONKEY_UNATHI)
|
||||||
species.produceCopy(species.traits.Copy(),src,null,FALSE)
|
species.produceCopy(species.traits.Copy(),src,null,FALSE)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/sergal/Initialize(mapload)
|
||||||
|
h_style = "Sergal Plain"
|
||||||
|
. = ..(mapload, SPECIES_SERGAL)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/akula/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_AKULA)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/nevrean/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_NEVREAN)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/xenochimera/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_XENOCHIMERA)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/spider/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_VASILISSAN)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/vulpkanin/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_VULPKANIN)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/protean/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_PROTEAN)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/alraune/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_ALRAUNE)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/shadekin/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_SHADEKIN)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/altevian/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_ALTEVIAN)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/lleill/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_LLEILL)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/hanner/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_HANNER)
|
||||||
|
|
||||||
|
/mob/living/carbon/human/sparkledog/Initialize(mapload)
|
||||||
|
. = ..(mapload, SPECIES_SPARKLE)
|
||||||
|
|||||||
@@ -1,42 +0,0 @@
|
|||||||
/mob/living/carbon/human/dummy
|
|
||||||
no_vore = TRUE //Dummies don't need bellies.
|
|
||||||
|
|
||||||
/mob/living/carbon/human/sergal/Initialize(mapload)
|
|
||||||
h_style = "Sergal Plain"
|
|
||||||
. = ..(mapload, SPECIES_SERGAL)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/akula/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_AKULA)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/nevrean/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_NEVREAN)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/xenochimera/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_XENOCHIMERA)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/spider/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_VASILISSAN)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/vulpkanin/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_VULPKANIN)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/protean/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_PROTEAN)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/alraune/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_ALRAUNE)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/shadekin/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_SHADEKIN)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/altevian/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_ALTEVIAN)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/lleill/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_LLEILL)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/hanner/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_HANNER)
|
|
||||||
|
|
||||||
/mob/living/carbon/human/sparkledog/Initialize(mapload)
|
|
||||||
. = ..(mapload, SPECIES_SPARKLE)
|
|
||||||
@@ -1083,7 +1083,7 @@
|
|||||||
to_chat(src, span_notice("You will [trait_injection_verb] your targets."))
|
to_chat(src, span_notice("You will [trait_injection_verb] your targets."))
|
||||||
return
|
return
|
||||||
if(choice == "Chemical Refresher")
|
if(choice == "Chemical Refresher")
|
||||||
var/output = {""} + span_bold("Chemical Refresher!") + {"<HR>
|
var/output = {"<HR>
|
||||||
"} + span_bold("Options for venoms") + {"<BR>
|
"} + span_bold("Options for venoms") + {"<BR>
|
||||||
<BR>
|
<BR>
|
||||||
"} + span_bold("Size Chemicals") + {"<BR>
|
"} + span_bold("Size Chemicals") + {"<BR>
|
||||||
@@ -1112,7 +1112,10 @@
|
|||||||
You can also bite synthetics, but due to how synths work, they won't have anything injected into them.
|
You can also bite synthetics, but due to how synths work, they won't have anything injected into them.
|
||||||
<br>
|
<br>
|
||||||
"}
|
"}
|
||||||
src << browse("<html>[output]</html>","window=chemicalrefresher")
|
|
||||||
|
var/datum/browser/popup = new(src, "chemicalrefresher", "Chemical Refresher")
|
||||||
|
popup.set_content(output)
|
||||||
|
popup.open()
|
||||||
return
|
return
|
||||||
else
|
else
|
||||||
var/list/targets = list() //IF IT IS NOT BROKEN. DO NOT FIX IT. AND KEEP COPYPASTING IT (Pointing Rick Dalton: "That's my code!" ~CL)
|
var/list/targets = list() //IF IT IS NOT BROKEN. DO NOT FIX IT. AND KEEP COPYPASTING IT (Pointing Rick Dalton: "That's my code!" ~CL)
|
||||||
|
|||||||
@@ -297,138 +297,3 @@
|
|||||||
inserted_battery.battery_effect.ToggleActivate()
|
inserted_battery.battery_effect.ToggleActivate()
|
||||||
src.visible_message(span_bold("[name]") + " states, \"Battery dump completed.\"")
|
src.visible_message(span_bold("[name]") + " states, \"Battery dump completed.\"")
|
||||||
icon_state = "incubator"
|
icon_state = "incubator"
|
||||||
/* //This is old and unused.
|
|
||||||
/obj/machinery/artifact_harvester/Topic(href, href_list)
|
|
||||||
|
|
||||||
if (href_list["harvest"])
|
|
||||||
if(!inserted_battery)
|
|
||||||
src.visible_message(span_bold("[src]") + " states, \"Cannot harvest. No battery inserted.\"")
|
|
||||||
|
|
||||||
else if(inserted_battery.stored_charge >= inserted_battery.capacity)
|
|
||||||
src.visible_message(span_bold("[src]") + " states, \"Cannot harvest. battery is full.\"")
|
|
||||||
|
|
||||||
else
|
|
||||||
|
|
||||||
//locate artifact on analysis pad
|
|
||||||
cur_artifact = null
|
|
||||||
var/articount = 0
|
|
||||||
var/obj/machinery/artifact/analysed
|
|
||||||
for(var/obj/A in get_turf(owned_scanner))
|
|
||||||
analysed = A
|
|
||||||
articount++
|
|
||||||
|
|
||||||
if(articount <= 0)
|
|
||||||
var/message = span_bold("[src]") + " states, \"Cannot harvest. No noteworthy energy signature isolated.\""
|
|
||||||
src.visible_message(message)
|
|
||||||
|
|
||||||
else if(analysed && analysed.being_used)
|
|
||||||
src.visible_message(span_bold("[src]") + " states, \"Cannot harvest. Source already being harvested.\"")
|
|
||||||
|
|
||||||
else
|
|
||||||
if(articount > 1)
|
|
||||||
state("Cannot harvest. Too many artifacts on the pad.")
|
|
||||||
else if(analysed)
|
|
||||||
cur_artifact = analysed
|
|
||||||
|
|
||||||
//if both effects are active, we can't harvest either
|
|
||||||
var/datum/component/artifact_master/ScannedMaster = analysed.GetComponent(/datum/component/artifact_master)
|
|
||||||
if(ScannedMaster && istype(ScannedMaster))
|
|
||||||
active_effects = ScannedMaster.get_all_effects()
|
|
||||||
var/list/active_effects = ScannedMaster.artifact_id.get_active_effects()
|
|
||||||
|
|
||||||
if(active_effects.len > 1)
|
|
||||||
src.visible_message(span_bold("[src]") + " states, \"Cannot harvest. Source is emitting conflicting energy signatures.\"")
|
|
||||||
else if(!active_effects.len)
|
|
||||||
src.visible_message(span_bold("[src]") + " states, \"Cannot harvest. No energy emitting from source.\"")
|
|
||||||
|
|
||||||
else
|
|
||||||
//see if we can clear out an old effect
|
|
||||||
//delete it when the ids match to account for duplicate ids having different effects
|
|
||||||
if(inserted_battery.battery_effect && inserted_battery.stored_charge <= 0)
|
|
||||||
qdel(inserted_battery.battery_effect)
|
|
||||||
inserted_battery.battery_effect = null
|
|
||||||
|
|
||||||
//
|
|
||||||
var/datum/artifact_effect/source_effect
|
|
||||||
var/datum/artifact_effect/active_effect = active_effects[1]
|
|
||||||
|
|
||||||
//if we already have charge in the battery, we can only recharge it from the source artifact
|
|
||||||
if(inserted_battery.stored_charge > 0)
|
|
||||||
var/battery_matches_primary_id = 0
|
|
||||||
if(inserted_battery.battery_effect && inserted_battery.battery_effect.artifact_id == cur_artifact.artifact_master.artifact_id)
|
|
||||||
battery_matches_primary_id = 1
|
|
||||||
if(battery_matches_primary_id && active_effect.activated)
|
|
||||||
//we're good to recharge the primary effect!
|
|
||||||
source_effect = active_effect
|
|
||||||
|
|
||||||
if(!source_effect)
|
|
||||||
src.visible_message(span_bold("[src]") + " states, \"Cannot harvest. Battery is charged with a different energy signature.\"")
|
|
||||||
else
|
|
||||||
//we're good to charge either
|
|
||||||
if(active_effect.activated)
|
|
||||||
//charge the primary effect
|
|
||||||
source_effect = active_effect
|
|
||||||
|
|
||||||
if(source_effect)
|
|
||||||
harvesting = 1
|
|
||||||
update_use_power(USE_POWER_ACTIVE)
|
|
||||||
cur_artifact.anchored = 1
|
|
||||||
cur_artifact.being_used = 1
|
|
||||||
icon_state = "incubator_on"
|
|
||||||
var/message = span_bold("[src]") + " states, \"Beginning energy harvesting.\""
|
|
||||||
src.visible_message(message)
|
|
||||||
last_process = world.time
|
|
||||||
|
|
||||||
//duplicate the artifact's effect datum
|
|
||||||
if(!inserted_battery.battery_effect)
|
|
||||||
var/effecttype = source_effect.type
|
|
||||||
var/datum/artifact_effect/E = new effecttype(inserted_battery)
|
|
||||||
|
|
||||||
//duplicate it's unique settings
|
|
||||||
for(var/varname in list("chargelevelmax","artifact_id","effect","effectrange","trigger"))
|
|
||||||
E.vars[varname] = source_effect.vars[varname]
|
|
||||||
|
|
||||||
//copy the new datum into the battery
|
|
||||||
inserted_battery.battery_effect = E
|
|
||||||
inserted_battery.stored_charge = 0
|
|
||||||
|
|
||||||
if (href_list["stopharvest"])
|
|
||||||
if(harvesting)
|
|
||||||
if(harvesting < 0 && inserted_battery.battery_effect && inserted_battery.battery_effect.activated)
|
|
||||||
inserted_battery.battery_effect.ToggleActivate()
|
|
||||||
harvesting = 0
|
|
||||||
cur_artifact.anchored = 0
|
|
||||||
cur_artifact.being_used = 0
|
|
||||||
cur_artifact = null
|
|
||||||
src.visible_message(span_bold("[name]") + " states, \"Energy harvesting interrupted.\"")
|
|
||||||
icon_state = "incubator"
|
|
||||||
|
|
||||||
if (href_list["ejectbattery"])
|
|
||||||
src.inserted_battery.loc = src.loc
|
|
||||||
src.inserted_battery = null
|
|
||||||
|
|
||||||
if (href_list["drainbattery"])
|
|
||||||
if(inserted_battery)
|
|
||||||
if(inserted_battery.battery_effect && inserted_battery.stored_charge > 0)
|
|
||||||
if(tgui_alert(usr, "This action will dump all charge, safety gear is recommended before proceeding","Warning",list("Continue","Cancel")) == "Continue")
|
|
||||||
if(!inserted_battery.battery_effect.activated)
|
|
||||||
inserted_battery.battery_effect.ToggleActivate(1)
|
|
||||||
last_process = world.time
|
|
||||||
harvesting = -1
|
|
||||||
update_use_power(USE_POWER_ACTIVE)
|
|
||||||
icon_state = "incubator_on"
|
|
||||||
var/message = span_bold("[src]") + " states, \"Warning, battery charge dump commencing.\""
|
|
||||||
src.visible_message(message)
|
|
||||||
else
|
|
||||||
var/message = span_bold("[src]") + " states, \"Cannot dump energy. Battery is drained of charge already.\""
|
|
||||||
src.visible_message(message)
|
|
||||||
else
|
|
||||||
var/message = span_bold("[src]") + " states, \"Cannot dump energy. No battery inserted.\""
|
|
||||||
src.visible_message(message)
|
|
||||||
|
|
||||||
if(href_list["close"])
|
|
||||||
usr << browse(null, "window=artharvester")
|
|
||||||
usr.unset_machine(src)
|
|
||||||
|
|
||||||
updateDialog()
|
|
||||||
*/
|
|
||||||
|
|||||||
@@ -3341,7 +3341,6 @@
|
|||||||
#include "code\modules\mob\living\carbon\human\human_powers_YW.dm"
|
#include "code\modules\mob\living\carbon\human\human_powers_YW.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\human_resist.dm"
|
#include "code\modules\mob\living\carbon\human\human_resist.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\human_species.dm"
|
#include "code\modules\mob\living\carbon\human\human_species.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\human_species_vr.dm"
|
|
||||||
#include "code\modules\mob\living\carbon\human\inventory.dm"
|
#include "code\modules\mob\living\carbon\human\inventory.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\life.dm"
|
#include "code\modules\mob\living\carbon\human\life.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\life_vr.dm"
|
#include "code\modules\mob\living\carbon\human\life_vr.dm"
|
||||||
|
|||||||
Reference in New Issue
Block a user