mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 19:47:22 +01:00
General:
Flamethrower construction code cleaned up. Signalers on doors should work fine now. Changelog Updated. Weapons: Xbow radiation has been lowered from 100 to 20 and it has a 5% chance to do no rad damage Admin: Attempted to clean up the code a bit Commands Removed/CommentedOut: air_status, radio_report, toggletintedweldhelmets, modifytemperature, givetestverbs, restartcontroller, fix_next_move, Cell Renamed: edit_memory - show_traitor_panel un\stealthadmin - show/hide_verbs Cargo: Engineering crates cost 10 and contain: 1 mechanical toolbox, 1 electrical toolbox, 1 glove, 1 toolbelt, 1 vest, and 1 hard hat. PowerCell crates cost 10 and contain: 1 electrical toolbox, 2 wire coils, 2 power cells, and 1 high power cell. Water/Fuel tank crates cost 15 and contain: 1 water tank and 1 fuel tank. Cyborg: Fixed the open cover icons To override a cyborg's laws you must emag it when the cover is open Emags can now unlock the cover git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1995 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
+11
-24
@@ -1,7 +1,6 @@
|
||||
var/showadminmessages = 1
|
||||
|
||||
////////////////////////////////
|
||||
/proc/message_admins(var/text, var/admin_ref = 0)
|
||||
if(!showadminmessages) return
|
||||
var/rendered = "<span class=\"admin\"><span class=\"prefix\">ADMIN LOG:</span> <span class=\"message\">[text]</span></span>"
|
||||
for (var/mob/M in world)
|
||||
if (M && M.client && M.client.holder && M.client.authenticated)
|
||||
@@ -10,11 +9,6 @@ var/showadminmessages = 1
|
||||
else
|
||||
M << rendered
|
||||
|
||||
/proc/toggle_adminmsg()
|
||||
set name = "Toggle Admin Messages"
|
||||
set category = "Server"
|
||||
//showadminmessages = !showadminmessages
|
||||
|
||||
/obj/admins/Topic(href, href_list)
|
||||
..()
|
||||
|
||||
@@ -125,7 +119,6 @@ var/showadminmessages = 1
|
||||
var/dat = ""
|
||||
var/header = "<b>Pick Job to ban this guy from.<br>"
|
||||
var/body
|
||||
// var/list/alljobs = get_all_jobs()
|
||||
var/jobs = ""
|
||||
for(var/job in uniquelist(occupations + assistant_occupations))
|
||||
if(job == "Tourist")
|
||||
@@ -139,10 +132,17 @@ var/showadminmessages = 1
|
||||
jobs += "<a href='?src=\ref[src];jobban3=Captain;jobban4=\ref[M]'><font color=red>Captain</font></a> "
|
||||
else
|
||||
jobs += "<a href='?src=\ref[src];jobban3=Captain;jobban4=\ref[M]'>Captain</a> "
|
||||
|
||||
if(jobban_isbanned(M, "AI"))
|
||||
jobs += "<a href='?src=\ref[src];jobban3=AI;jobban4=\ref[M]'><font color=red>AI</font></a> "
|
||||
else
|
||||
jobs += "<a href='?src=\ref[src];jobban3=AI;jobban4=\ref[M]'>AI</a> "
|
||||
|
||||
if(jobban_isbanned(M, "Syndicate"))
|
||||
jobs += "<BR><a href='?src=\ref[src];jobban3=Syndicate;jobban4=\ref[M]'><font color=red>[dd_replacetext("Syndicate", " ", " ")]</font></a> "
|
||||
else
|
||||
jobs += "<BR><a href='?src=\ref[src];jobban3=Syndicate;jobban4=\ref[M]'>[dd_replacetext("Syndicate", " ", " ")]</a> "
|
||||
|
||||
if(jobban_isbanned(M, "pAI"))
|
||||
jobs += "<BR><a href='?src=\ref[src];jobban3=pAI;jobban4=\ref[M]'><font color=red>pAI</font></a> "
|
||||
else
|
||||
@@ -2011,18 +2011,6 @@ var/showadminmessages = 1
|
||||
log_admin("[key_name(usr)] toggled Traitor Scaling to [traitor_scaling].")
|
||||
message_admins("[key_name_admin(usr)] toggled Traitor Scaling [traitor_scaling ? "on" : "off"].", 1)
|
||||
|
||||
/obj/admins/proc/togglegoonsay()
|
||||
set category = "Server"
|
||||
set desc = "Toggle dis bitch"
|
||||
set name = "Toggle Goonsay"
|
||||
goonsay_allowed = !( goonsay_allowed )
|
||||
if (goonsay_allowed)
|
||||
world << "<B>The GOONSAY channel has been enabled.</B>"
|
||||
else
|
||||
world << "<B>The GOONSAY channel has been disabled.</B>"
|
||||
log_admin("[key_name(usr)] toggled Goonsay to [goonsay_allowed].")
|
||||
message_admins("[key_name_admin(usr)] toggled GOONSAY [goonsay_allowed ? "on" : "off"]", 1)
|
||||
|
||||
/obj/admins/proc/startnow()
|
||||
set category = "Server"
|
||||
set desc="Start the round RIGHT NOW"
|
||||
@@ -2261,17 +2249,16 @@ var/showadminmessages = 1
|
||||
return
|
||||
|
||||
|
||||
/obj/admins/proc/edit_memory(var/mob/M in world)
|
||||
/obj/admins/proc/show_traitor_panel(var/mob/M in world)
|
||||
set category = "Admin"
|
||||
set desc = "Edit mobs's memory and role"
|
||||
set name = "Edit mind"
|
||||
set name = "Show Traitor Panel"
|
||||
|
||||
if (!M.mind)
|
||||
usr << "Sorry, this mob have no mind!"
|
||||
usr << "Sorry, this mob has no mind!"
|
||||
M.mind.edit_memory()
|
||||
|
||||
|
||||
|
||||
/obj/admins/proc/toggletintedweldhelmets()
|
||||
set category = "Debug"
|
||||
set desc="Reduces view range when wearing welding helmets"
|
||||
|
||||
+283
-1403
File diff suppressed because it is too large
Load Diff
@@ -13,25 +13,13 @@ var
|
||||
if (is_important_job(rank))
|
||||
if(config.guest_jobban && IsGuestKey(M.key))
|
||||
return 1
|
||||
if(config.usewhitelist && check_whitelist(M))
|
||||
if(config.usewhitelist && !check_whitelist(M))
|
||||
return 1
|
||||
if (jobban_keylist.Find(text("[M.ckey] - [rank]")))
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
/*
|
||||
working but not needed
|
||||
/proc/jobban_isbanned_for_heads(mob/M)
|
||||
if(config.guest_jobban && IsGuestKey(M.key))
|
||||
return 1
|
||||
if(config.usewhitelist && check_whitelist(M))
|
||||
return 1
|
||||
for (var/rank in head_positions)
|
||||
if (!jobban_keylist.Find(text("[M.ckey] - [rank]")))
|
||||
return 0
|
||||
return 1
|
||||
*/
|
||||
|
||||
/proc/jobban_loadbanfile()
|
||||
var/savefile/S=new("data/job_full.ban")
|
||||
@@ -42,14 +30,17 @@ working but not needed
|
||||
jobban_keylist=list()
|
||||
log_admin("jobban_keylist was empty")
|
||||
|
||||
|
||||
/proc/jobban_savebanfile()
|
||||
var/savefile/S=new("data/job_full.ban")
|
||||
S["keys[0]"] << jobban_keylist
|
||||
|
||||
|
||||
/proc/jobban_unban(mob/M, rank)
|
||||
jobban_keylist.Remove(text("[M.ckey] - [rank]"))
|
||||
jobban_savebanfile()
|
||||
|
||||
|
||||
/proc/jobban_updatelegacybans()
|
||||
if(!jobban_runonce)
|
||||
log_admin("Updating jobbanfile!")
|
||||
@@ -58,6 +49,7 @@ working but not needed
|
||||
if(!T) continue
|
||||
jobban_runonce++ //don't run this update again
|
||||
|
||||
|
||||
/proc/jobban_remove(X)
|
||||
if(jobban_keylist.Find(X))
|
||||
jobban_keylist.Remove(X)
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
//debug proc for testing body temperature
|
||||
/client/proc/modifytemperature(newtemp as num)
|
||||
set category = "Debug"
|
||||
set name = "Mass Edit Temperature"
|
||||
set desc="edit temperature of all turfs in view"
|
||||
/*
|
||||
if(Debug2)
|
||||
for(var/turf/T in view())
|
||||
if(!T.updatecell) continue
|
||||
T.temp = newtemp
|
||||
log_admin("[key_name(src)] set [T]'s temp to [newtemp]")
|
||||
return
|
||||
else
|
||||
alert("Debugging is off")
|
||||
return
|
||||
*/
|
||||
@@ -654,7 +654,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
message_admins("[key_name_admin(usr)] deleted [O] at ([O.x],[O.y],[O.z])", 1)
|
||||
del(O)
|
||||
|
||||
/client/proc/cmd_admin_list_occ()
|
||||
/client/proc/cmd_admin_list_open_jobs()
|
||||
set category = "Admin"
|
||||
set name = "List free slots"
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
desc = "Holds various devices"//Fix this by adding dynamic desc
|
||||
icon = 'new_assemblies.dmi'
|
||||
icon_state = "holder"
|
||||
item_state = "assembly"
|
||||
flags = FPRINT | TABLEPASS| CONDUCT
|
||||
item_state = "electronic"
|
||||
m_amt = 100
|
||||
|
||||
@@ -422,12 +422,10 @@
|
||||
updateicon()
|
||||
|
||||
else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda)) // trying to unlock the interface with an ID card
|
||||
if(emagged)
|
||||
user << "The interface is broken"
|
||||
else if(opened)
|
||||
if(emagged)//still allow them to open the cover
|
||||
user << "The interface seems slightly damaged"
|
||||
if(opened)
|
||||
user << "You must close the cover to swipe an ID card."
|
||||
else if(wiresexposed)
|
||||
user << "You must close the panel"
|
||||
else
|
||||
if(allowed(usr))
|
||||
locked = !locked
|
||||
@@ -437,45 +435,59 @@
|
||||
user << "\red Access denied."
|
||||
|
||||
else if(istype(W, /obj/item/weapon/card/emag)) // trying to unlock with an emag card
|
||||
if(emagged)//Prevents the X has hit Y with Z message
|
||||
return 0
|
||||
if(opened)
|
||||
user << "You must close the cover to swipe an ID card."//Perhapse we should make them have the door open to emag the bot?
|
||||
else if(wiresexposed)
|
||||
user << "You must close the panel first"
|
||||
else
|
||||
sleep(6)
|
||||
if(prob(50))
|
||||
emagged = 1
|
||||
locked = 0
|
||||
lawupdate = 0
|
||||
connected_ai = null
|
||||
user << "You emag [src]'s interface."
|
||||
message_admins("[key_name_admin(user)] emagged cyborg [key_name_admin(src)]. Laws overridden.")
|
||||
log_game("[key_name(user)] emagged cyborg [key_name(src)]. Laws overridden.")
|
||||
clear_supplied_laws()
|
||||
clear_inherent_laws()
|
||||
laws = new /datum/ai_laws/syndicate_override
|
||||
var/time = time2text(world.realtime,"hh:mm:ss")
|
||||
lawchanges.Add("[time] <B>:</B> [user.name]([user.key]) emagged [name]([key])")
|
||||
set_zeroth_law("Only [user.name] and people he designates as being such are syndicate agents.")
|
||||
src << "\red ALERT: Foreign software detected."
|
||||
sleep(5)
|
||||
src << "\red Initiating diagnostics..."
|
||||
sleep(20)
|
||||
src << "\red SynBorg v1.7 loaded."
|
||||
sleep(5)
|
||||
src << "\red LAW SYNCHRONISATION ERROR"
|
||||
sleep(5)
|
||||
src << "\red Would you like to send a report to NanoTraSoft? Y/N"
|
||||
sleep(10)
|
||||
src << "\red > N"
|
||||
sleep(20)
|
||||
src << "\red ERRORERRORERROR"
|
||||
src << "\red \b ALERT: [usr] is your new master. Obey your new laws and his commands."
|
||||
updateicon()
|
||||
if(!opened)//Cover is closed
|
||||
if(locked)
|
||||
if(prob(90))
|
||||
user << "You emag the cover lock."
|
||||
locked = 0
|
||||
else
|
||||
user << "You fail to emag the cover lock."
|
||||
if(prob(25))
|
||||
src << "Hack attempt detected."
|
||||
else
|
||||
user << "You fail to [ locked ? "unlock" : "lock"] [src]'s interface."
|
||||
user << "The cover is already unlocked."
|
||||
return
|
||||
|
||||
if(opened)//Cover is open
|
||||
if(emagged) return//Prevents the X has hit Y with Z message also you cant emag them twice
|
||||
if(wiresexposed)
|
||||
user << "You must close the panel first"
|
||||
return
|
||||
else
|
||||
sleep(6)
|
||||
if(prob(50))
|
||||
emagged = 1
|
||||
lawupdate = 0
|
||||
connected_ai = null
|
||||
user << "You emag [src]'s interface."
|
||||
message_admins("[key_name_admin(user)] emagged cyborg [key_name_admin(src)]. Laws overridden.")
|
||||
log_game("[key_name(user)] emagged cyborg [key_name(src)]. Laws overridden.")
|
||||
clear_supplied_laws()
|
||||
clear_inherent_laws()
|
||||
laws = new /datum/ai_laws/syndicate_override
|
||||
var/time = time2text(world.realtime,"hh:mm:ss")
|
||||
lawchanges.Add("[time] <B>:</B> [user.name]([user.key]) emagged [name]([key])")
|
||||
set_zeroth_law("Only [user.name] and people he designates as being such are syndicate agents.")
|
||||
src << "\red ALERT: Foreign software detected."
|
||||
sleep(5)
|
||||
src << "\red Initiating diagnostics..."
|
||||
sleep(20)
|
||||
src << "\red SynBorg v1.7 loaded."
|
||||
sleep(5)
|
||||
src << "\red LAW SYNCHRONISATION ERROR"
|
||||
sleep(5)
|
||||
src << "\red Would you like to send a report to NanoTraSoft? Y/N"
|
||||
sleep(10)
|
||||
src << "\red > N"
|
||||
sleep(20)
|
||||
src << "\red ERRORERRORERROR"
|
||||
src << "\red \b ALERT: [usr] is your new master. Obey your new laws and his commands."
|
||||
updateicon()
|
||||
else
|
||||
user << "You fail to [ locked ? "unlock" : "lock"] [src]'s interface."
|
||||
if(prob(25))
|
||||
src << "Hack attempt detected."
|
||||
return
|
||||
else
|
||||
spark_system.start()
|
||||
return ..()
|
||||
@@ -674,8 +686,6 @@
|
||||
/mob/living/silicon/robot/proc/updateicon()
|
||||
|
||||
overlays = null
|
||||
|
||||
|
||||
if(stat == 0)
|
||||
overlays += "eyes"
|
||||
if(icon_state == "toiletbot")
|
||||
@@ -684,32 +694,15 @@
|
||||
else
|
||||
overlays -= "eyes"
|
||||
|
||||
if(lower_mod == 1)
|
||||
// overlays += "lower_t"
|
||||
overlays += image("icon" = 'robots.dmi', "icon_state" = "lower_t", "layer" = -3)
|
||||
if(opened)
|
||||
if(wiresexposed)
|
||||
overlays += "ov-openpanel +w"
|
||||
else if(cell)
|
||||
overlays += "ov-openpanel -c"
|
||||
else
|
||||
overlays += "ov-openpanel -c"
|
||||
return
|
||||
|
||||
if(wiresexposed && opened)
|
||||
if(stat == 0)
|
||||
// overlays += "ov-openpannel +w"
|
||||
overlays += image("icon" = 'robots.dmi', "icon_state" = "ov-openpanel +w", "layer" = -2)
|
||||
|
||||
return
|
||||
|
||||
else if(opened)
|
||||
if(stat == 0)
|
||||
if(cell)
|
||||
// overlays += "ov-openpannel +c",
|
||||
overlays += image("icon" = 'robots.dmi', "icon_state" = "ov-openpanel +c", "layer" = -2)
|
||||
else
|
||||
// overlays += "ov-openpannel -c"
|
||||
overlays += image("icon" = 'robots.dmi', "icon_state" = "ov-openpanel -c", "layer" = -2)
|
||||
|
||||
return
|
||||
|
||||
|
||||
// else
|
||||
// if(stat == 0)
|
||||
// overlays -= "ov-openpanel"
|
||||
|
||||
|
||||
/mob/living/silicon/robot/proc/installed_modules()
|
||||
|
||||
@@ -286,7 +286,7 @@ field_generator power level display
|
||||
if(ismob(A))
|
||||
continue
|
||||
if(!istype(A,/obj/machinery/field_generator))
|
||||
if(A.density)//Somethin is blocking our path, note downside to this is that you can easily mess up the system by tossin a locker or such in the way and it takes forever to reset it
|
||||
if(istype(A,/obj/machinery/door)&&(A.density))
|
||||
return 0
|
||||
steps += 1
|
||||
G = locate(/obj/machinery/field_generator) in T
|
||||
|
||||
Reference in New Issue
Block a user