From 6980602e248da01babe6a5b6962ed0e46866ee11 Mon Sep 17 00:00:00 2001 From: "mport2004@gmail.com" Date: Tue, 9 Aug 2011 06:21:57 +0000 Subject: [PATCH] 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 --- code/defines/obj/supplypacks.dm | 36 +- code/defines/obj/weapon.dm | 91 - code/game/machinery/autolathe.dm | 2 +- .../objects/items/weapons/flamethrower.dm | 501 ++--- code/game/objects/items/weapons/guns_new.dm | 14 +- code/game/objects/items/weapons/tools.dm | 32 +- code/game/objects/radio/signaler.dm | 2 + code/game/objects/tank.dm | 128 +- code/modules/admin/admin.dm | 35 +- code/modules/admin/admin_verbs.dm | 1686 +++-------------- code/modules/admin/banjob.dm | 18 +- code/modules/admin/verbs/changetemperature.dm | 16 - code/modules/admin/verbs/randomverbs.dm | 2 +- code/modules/assembly/holder.dm | 1 + .../modules/mob/living/silicon/robot/robot.dm | 133 +- .../power/singularity/field_generator.dm | 2 +- icons/changelog.html | 11 + icons/effects/effects.dmi | Bin 188742 -> 188746 bytes icons/mob/hivebot.dmi | Bin 0 -> 11278 bytes icons/mob/robots.dmi | Bin 53301 -> 56311 bytes icons/obj/assemblies.dmi | Bin 15751 -> 15134 bytes icons/obj/flamethrower.dmi | Bin 0 -> 859 bytes icons/obj/weapons.dmi | Bin 17871 -> 16642 bytes tgstation.dme | 1 - 24 files changed, 715 insertions(+), 1996 deletions(-) delete mode 100644 code/modules/admin/verbs/changetemperature.dm create mode 100644 icons/obj/flamethrower.dmi diff --git a/code/defines/obj/supplypacks.dm b/code/defines/obj/supplypacks.dm index 847c1cb24f2..7b85697c1a1 100644 --- a/code/defines/obj/supplypacks.dm +++ b/code/defines/obj/supplypacks.dm @@ -285,22 +285,38 @@ containertype = "/obj/crate" containername = "Glass sheets crate" - - /datum/supply_packs/engineering name = "Engineering crate" - contains = list("/obj/item/weapon/storage/toolbox/electrical", + contains = list("/obj/item/weapon/storage/toolbox/mechanical", "/obj/item/weapon/storage/toolbox/electrical", - "/obj/item/clothing/head/helmet/welding", - "/obj/item/clothing/head/helmet/welding", - "/obj/item/weapon/cell", // -- TLE - "/obj/item/weapon/cell", "/obj/item/clothing/gloves/yellow", - "/obj/item/clothing/gloves/yellow") - cost = 5 + "/obj/item/weapon/storage/toolbox/utilitybelt", + "/obj/item/clothing/suit/hazardvest", + "/obj/item/clothing/head/helmet/hardhat") + cost = 10 containertype = "/obj/crate" containername = "Engineering crate" +/datum/supply_packs/powercell + name = "Power cell crate" + contains = list("/obj/item/weapon/storage/toolbox/electrical", + "/obj/item/weapon/cable_coil", + "/obj/item/weapon/cable_coil", + "/obj/item/weapon/cell", + "/obj/item/weapon/cell", + "/obj/item/weapon/cell/high") + cost = 10 + containertype = "/obj/crate" + containername = "Power cell crate" + +/datum/supply_packs/waterfueltank + name = "Water/Fuel tank crate" + contains = list("/obj/reagent_dispensers/watertank", + "/obj/reagent_dispensers/fueltank") + cost = 15 + containertype = "/obj/crate" + containername = "Water/Fuel tank crate" + /datum/supply_packs/engine name = "Emitter crate" contains = list("/obj/machinery/emitter", @@ -403,7 +419,7 @@ /datum/supply_packs/eweapons name = "Experimental weapons crate" - contains = list("/obj/item/weapon/flamethrower", + contains = list("/obj/item/weapon/flamethrower/full", "/obj/item/weapon/tank/plasma", "/obj/item/weapon/tank/plasma", "/obj/item/weapon/tank/plasma", diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 3037207fa68..e9dd58894a2 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -1489,97 +1489,6 @@ Total SMES charging rate should not exceed total power generation rate, or an ov icon_state = "wood_tableparts" flags = null -/obj/item/weapon/tank - name = "tank" - icon = 'tank.dmi' - - var/datum/gas_mixture/air_contents = null - var/distribute_pressure = ONE_ATMOSPHERE - flags = FPRINT | TABLEPASS | CONDUCT | ONBACK - - pressure_resistance = ONE_ATMOSPHERE*5 - - force = 5.0 - throwforce = 10.0 - throw_speed = 1 - throw_range = 4 - var/volume = 70 - -/obj/item/weapon/tank/anesthetic - name = "Gas Tank (Sleeping Agent)" - desc = "Seriously, who uses this anymore?" - icon_state = "anesthetic" - item_state = "an_tank" - -/obj/item/weapon/tank/jetpack - name = "Jetpack (Oxygen)" - desc = "A pack of jets it appears." - icon_state = "jetpack0" - var/on = 0.0 - w_class = 4.0 - item_state = "jetpack" - var/datum/effects/system/ion_trail_follow/ion_trail - distribute_pressure = ONE_ATMOSPHERE*O2STANDARD - //volume = 140 //jetpack sould be larger, but then it will never deplete -rastaf0 - -/obj/item/weapon/tank/jetpack/void_jetpack - name = "Void Jetpack (oxygen)" - desc = "It works well in a void." - icon_state = "voidjetpack0" - item_state = "jetpack" - -/obj/item/weapon/tank/jetpack/black_jetpack - name = "Black Jetpack (oxygen)" - desc = "A black model of jetpacks." - icon_state = "black_jetpack0" - item_state = "black_jetpack" - -/obj/item/weapon/tank/oxygen - name = "Gas Tank (Oxygen)" - desc = "A tank of oxygen" - icon_state = "oxygen" - distribute_pressure = ONE_ATMOSPHERE*O2STANDARD - -/obj/item/weapon/tank/oxygen/yellow - name = "Gas Tank (Oxygen)" - desc = "A tank of oxygen meant for firefighters." - icon_state = "oxygen_f" - -/obj/item/weapon/tank/oxygen/red - name = "Gas Tank (Oxygen)" - desc = "A tank of oxygen meant for firefighters." - icon_state = "oxygen_fr" - -/obj/item/weapon/tank/air - name = "Gas Tank (Air Mix)" - desc = "Mixed anyone?" - icon_state = "oxygen" - -/obj/item/weapon/tank/plasma - name = "Gas Tank (BIOHAZARD)" - desc = "Contains dangerous plasma. Do not inhale." - icon_state = "plasma" - -/obj/item/weapon/tank/emergency_oxygen - name = "Emergency Oxygen Tank" - desc = "Used for emergencies. Contains very little oxygen, so try to conserve it until you actualy need it." - icon_state = "emergency" - flags = FPRINT | TABLEPASS | ONBELT | CONDUCT - w_class = 2.0 - force = 4.0 - distribute_pressure = ONE_ATMOSPHERE*O2STANDARD - volume = 3 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011) - -/obj/item/weapon/tank/emergency_oxygen/engi - icon_state = "emergency_engi" - name = "Engineering Emergency Oxygen Tank" - volume = 6 //Engineers are always superior. -errorage (dangercon 2011) - -/obj/item/weapon/tank/emergency_oxygen/double - icon_state = "emergency_double" - name = "Double Emergency Oxygen Tank" - volume = 10 //These have the same emoung of gas in them as air tanks, but can be worn on your belt -errorage (dangercon 2011) - /obj/item/weapon/teleportation_scroll name = "Teleportation Scroll" desc = "A scroll for moving around." diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 7956aafbdc3..3deaa8b00fc 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -250,7 +250,7 @@ var/global/list/autolathe_recipes = list( \ ) var/global/list/autolathe_recipes_hidden = list( \ - new /obj/item/weapon/flamethrower(), \ + new /obj/item/weapon/flamethrower/full(), \ new /obj/item/device/igniter(), \ new /obj/item/device/timer(), \ new /obj/item/weapon/rcd(), \ diff --git a/code/game/objects/items/weapons/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm index 8742e50df1d..f765b01cd2e 100644 --- a/code/game/objects/items/weapons/flamethrower.dm +++ b/code/game/objects/items/weapons/flamethrower.dm @@ -1,45 +1,19 @@ -/* -CONTAINS: -GETLINEEEEEEEEEEEEEEEEEEEEE -(well not really but it should) - -*/ -/obj/item/assembly/weld_rod - desc = "A welding torch with metal rods attached to the flame tip." - name = "Welder/Rods Assembly" - icon_state = "welder-rods" - item_state = "welder" - var/obj/item/weapon/weldingtool/part1 = null - var/obj/item/stack/rods/part2 = null - var/status = null - flags = FPRINT | TABLEPASS| CONDUCT - force = 3.0 - throwforce = 5.0 - throw_speed = 1 - throw_range = 5 - w_class = 2.0 - -/obj/item/assembly/w_r_ignite - desc = "A welding torch and igniter connected by metal rods." - name = "Welder/Rods/Igniter Assembly" - icon_state = "welder-rods-igniter" - item_state = "welder" - var/obj/item/weapon/weldingtool/part1 = null - var/obj/item/stack/rods/part2 = null - var/obj/item/device/igniter/part3 = null - var/status = null - flags = FPRINT | TABLEPASS| CONDUCT - force = 3.0 - throwforce = 5.0 - throw_speed = 1 - throw_range = 5 - w_class = 2.0 +/obj/item/weapon/flamethrower/full/New(var/loc) + ..() + weldtool = new/obj/item/weapon/weldingtool(src) + weldtool.status = 0 + igniter = new/obj/item/device/igniter(src) + igniter.secured = 0 + src.status = 1 + update_icon() + return + -//TODO:Change this over to a slightly better build system /obj/item/weapon/flamethrower name = "flamethrower" - icon_state = "flamethrower" + icon = 'flamethrower.dmi' + icon_state = "flamethrowerbase" item_state = "flamethrower_0" desc = "You are a firestarter!" flags = FPRINT | TABLEPASS| CONDUCT @@ -48,300 +22,195 @@ GETLINEEEEEEEEEEEEEEEEEEEEE throw_speed = 1 throw_range = 5 w_class = 3.0 - var/processing = 0 - var/operating = 0 - var/throw_amount = 100 - var/lit = 0 //on or off - var/turf/previousturf = null - var/obj/item/weapon/weldingtool/part1 = null - var/obj/item/stack/rods/part2 = null - var/obj/item/device/igniter/part3 = null - var/obj/item/weapon/tank/plasma/part4 = null m_amt = 500 origin_tech = "combat=1;plasmatech=1" + var + status = 0 + throw_amount = 100 + lit = 0 //on or off + operating = 0//cooldown + turf/previousturf = null + obj/item/weapon/weldingtool/weldtool = null + obj/item/device/igniter/igniter = null + obj/item/weapon/tank/plasma/ptank = null -// PantsNote: Dumping this shit in here until I'm sure it works. - -/obj/item/assembly/weld_rod/Del() - //src.part1 = null - del(src.part1) - //src.part2 = null - del(src.part2) - ..() - return - -/obj/item/assembly/w_r_ignite/Del() - - //src.part1 = null - del(src.part1) - //src.part2 = null - del(src.part2) - //src.part3 = null - del(src.part3) - ..() - return - -/obj/item/weapon/flamethrower/Del() - - //src.part1 = null - del(src.part1) - //src.part2 = null - del(src.part2) - //src.part3 = null - del(src.part3) - //src.part4 = null - del(src.part4) - ..() - return - -/obj/item/assembly/weld_rod/attackby(obj/item/weapon/W as obj, mob/user as mob) - ..() - if (istype(W, /obj/item/weapon/wrench) ) - var/turf/T = src.loc - if (ismob(T)) - T = T.loc - src.part1.loc = T - src.part2.loc = T - src.part1.master = null - src.part2.master = null - src.part1 = null - src.part2 = null - - del(src) - - if (istype(W, /obj/item/device/igniter)) - var/obj/item/device/igniter/I = W - if (!( I.secured )) - return - var/obj/item/assembly/weld_rod/S = src - var/obj/item/assembly/w_r_ignite/R = new /obj/item/assembly/w_r_ignite( user ) - R.part1 = S.part1 - S.part1.loc = R - S.part1.master = R - R.part2 = S.part2 - S.part2.loc = R - S.part2.master = R - S.layer = initial(S.layer) - if (user.client) - user.client.screen -= S - if (user.r_hand == S) - user.u_equip(S) - user.r_hand = R - else - user.u_equip(S) - user.l_hand = R - I.master = R - I.layer = initial(I.layer) - user.u_equip(I) - if (user.client) - user.client.screen -= I - I.loc = R - src.loc = R - R.part3 = I - R.layer = 20 - R.loc = user - S.part1 = null - S.part2 = null - //S = null - del(S) - - src.add_fingerprint(user) - return - -/obj/item/assembly/w_r_ignite/attackby(obj/item/weapon/W as obj, mob/user as mob) - ..() - if ((istype(W, /obj/item/weapon/wrench) && !( src.status ))) - var/turf/T = src.loc - if (ismob(T)) - T = T.loc - src.part1.loc = T - src.part2.loc = T - src.part3.loc = T - src.part1.master = null - src.part2.master = null - src.part3.holder = null - src.part1 = null - src.part2 = null - src.part3 = null - - del(src) - return - if (istype(W, /obj/item/weapon/screwdriver)) - src.status = !( src.status ) - if (src.status) - user.show_message("\blue The igniter is now secured!", 1) - src.icon_state = "flamethrower" - else - user.show_message("\blue The igniter is now unsecured!", 1) - src.icon_state = "flamethrower" - src.add_fingerprint(user) + Del() + if(src.weldtool) + del(src.weldtool) + if(src.igniter) + del(src.igniter) + if(src.ptank) + del(src.ptank) + ..() return -/obj/item/weapon/flamethrower/process() - if(!lit) - processing_items.Remove(src) - return null - var/turf/location = src.loc - if(istype(location, /mob/)) - var/mob/M = location - if(M.l_hand == src || M.r_hand == src) - location = M.loc - - if(isturf(location)) //start a fire if possible - location.hotspot_expose(700, 2) - -/obj/item/weapon/flamethrower/attackby(obj/item/W as obj, mob/user as mob) - ..() - if(user.stat || user.restrained() || user.lying) + process() + if(!lit) + processing_items.Remove(src) + return null + var/turf/location = src.loc + if(istype(location, /mob/)) + var/mob/M = location + if(M.l_hand == src || M.r_hand == src) + location = M.loc + if(isturf(location)) //start a fire if possible + location.hotspot_expose(700, 2) return - if (istype(W,/obj/item/weapon/tank/plasma)) - if(src.part4) - user << "\red There appears to already be a plasma tank loaded in the flamethrower!" - return - src.part4 = W - W.loc = src - if (user.client) - user.client.screen -= W - user.u_equip(W) - lit = 0 - force = 3 - damtype = "brute" - icon_state = "flamethrower0" - item_state = "flamethrower_0" - else if (istype(W, /obj/item/device/analyzer) && get_dist(user, src) <= 1 && src.part4) - var/obj/item/weapon/icon = src - - for (var/mob/O in viewers(user, null)) - O << "\red [user] has used the analyzer on \icon[icon]" - - var/pressure = src.part4.air_contents.return_pressure() - - var/total_moles = src.part4.air_contents.total_moles() - - user << "\blue Results of analysis of \icon[icon]" - if (total_moles>0) - var/o2_concentration = src.part4.air_contents.oxygen/total_moles - var/n2_concentration = src.part4.air_contents.nitrogen/total_moles - var/co2_concentration = src.part4.air_contents.carbon_dioxide/total_moles - var/plasma_concentration = src.part4.air_contents.toxins/total_moles - - var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+plasma_concentration) - - user << "\blue Pressure: [round(pressure,0.1)] kPa" - user << "\blue Nitrogen: [round(n2_concentration*100)]%" - user << "\blue Oxygen: [round(o2_concentration*100)]%" - user << "\blue CO2: [round(co2_concentration*100)]%" - user << "\blue Plasma: [round(plasma_concentration*100)]%" - if(unknown_concentration>0.01) - user << "\red Unknown: [round(unknown_concentration*100)]%" - user << "\blue Temperature: [round(src.part4.air_contents.temperature-T0C)]°C" - else - user << "\blue Tank is empty!" - -// PantsNote: Flamethrower disassmbly. - else if (istype(W, /obj/item/weapon/screwdriver)) - var/obj/item/weapon/flamethrower/S = src - if (( S.part4 )) - return - var/obj/item/assembly/w_r_ignite/R = new /obj/item/assembly/w_r_ignite( user ) - R.part1 = S.part1 - S.part1.loc = R - S.part1.master = R - R.part2 = S.part2 - S.part2.loc = R - S.part2.master = R - R.part3 = S.part3 - S.part3.loc = R - S.part3.holder = R - S.layer = initial(S.layer) - if (user.client) - user.client.screen -= S - if (user.r_hand == S) - user.u_equip(S) - user.r_hand = R - else - user.u_equip(S) - user.l_hand = R - src.master = R - src.layer = initial(src.layer) - user.u_equip(src) - if (user.client) - user.client.screen -= src - src.loc = R - R.layer = 20 - R.loc = user - S.part1 = null - S.part2 = null - S.part3 = null - //S = null - del(S) - user << "\blue The igniter is now unsecured!" - else return ..() - return - -/obj/item/weapon/flamethrower/Topic(href,href_list[]) - if (href_list["close"]) - usr.machine = null - usr << browse(null, "window=flamethrower") - return - if(usr.stat || usr.restrained() || usr.lying) - return - usr.machine = src - if (href_list["light"]) - if(!src.part4) return - if(src.part4.air_contents.toxins < 1) return - lit = !(lit) + update_icon() + src.overlays = null + if(igniter) + src.overlays += "+igniter[src.status]" + if(ptank) + src.overlays += "+ptank" if(lit) - icon_state = "flamethrower1" + src.overlays += "+lit" item_state = "flamethrower_1" - force = 17 - damtype = "fire" - processing_items.Add(src) else - icon_state = "flamethrower0" item_state = "flamethrower_0" + return + + + attackby(obj/item/W as obj, mob/user as mob) + if(user.stat || user.restrained() || user.lying) return + if(iswrench(W) && (!src.status))//Taking this apart + var/turf/T = src.loc + if (ismob(T)) + T = T.loc + if(weldtool) + src.weldtool.loc = T + src.weldtool = null + if(igniter) + src.igniter.loc = T + src.igniter = null + if(ptank) + src.ptank.loc = T + src.ptank = null + new/obj/item/stack/rods(T,1) + spawn(0) + del(src) + return + + if((isscrewdriver(W))&&(igniter)&&(!lit)) + src.status = (!src.status) + if (src.status) + user.show_message("\blue The igniter is now secured!", 1) + else + user.show_message("\blue The igniter is now unsecured!", 1) + update_icon() + return + + if(istype(W, /obj/item/device/igniter)) + var/obj/item/device/igniter/I = W + if(I.secured) return 0 + user.remove_from_mob(I) + I.loc = src + igniter = I + update_icon() + return + + if(istype(W,/obj/item/weapon/tank/plasma)) + if(src.ptank) + user << "\red There appears to already be a plasma tank loaded in the flamethrower!" + return + src.ptank = W + W.loc = src + if (user.client) + user.client.screen -= W + user.u_equip(W) + lit = 0 force = 3 damtype = "brute" - if (href_list["amount"]) - src.throw_amount = src.throw_amount + text2num(href_list["amount"]) - src.throw_amount = max(50,min(5000,src.throw_amount)) - if (href_list["remove"]) - if(!src.part4) return - var/obj/item/weapon/tank/plasma/A = src.part4 - A.loc = get_turf(src) - A.layer = initial(A.layer) - src.part4 = null - lit = 0 - force = 3 - damtype = "brute" - icon_state = "flamethrower" - item_state = "flamethrower_0" - usr.machine = null - usr << browse(null, "window=flamethrower") - for(var/mob/M in viewers(1, src.loc)) - if ((M.client && M.machine == src)) - src.attack_self(M) - return + update_icon() + return + if((istype(W, /obj/item/device/analyzer)) && (get_dist(user, src) <= 1) && (src.ptank)) + var/obj/item/weapon/icon = src + for (var/mob/O in viewers(user, null)) + O << "\red [user] has used the analyzer on \icon[icon]" + var/pressure = src.ptank.air_contents.return_pressure() + var/total_moles = src.ptank.air_contents.total_moles() -/obj/item/weapon/flamethrower/attack_self(mob/user as mob) - if(user.stat || user.restrained() || user.lying) + user << "\blue Results of analysis of \icon[icon]" + if (total_moles>0) + var/o2_concentration = src.ptank.air_contents.oxygen/total_moles + var/n2_concentration = src.ptank.air_contents.nitrogen/total_moles + var/co2_concentration = src.ptank.air_contents.carbon_dioxide/total_moles + var/plasma_concentration = src.ptank.air_contents.toxins/total_moles + + var/unknown_concentration = 1-(o2_concentration+n2_concentration+co2_concentration+plasma_concentration) + + user << "\blue Pressure: [round(pressure,0.1)] kPa" + user << "\blue Nitrogen: [round(n2_concentration*100)]%" + user << "\blue Oxygen: [round(o2_concentration*100)]%" + user << "\blue CO2: [round(co2_concentration*100)]%" + user << "\blue Plasma: [round(plasma_concentration*100)]%" + if(unknown_concentration>0.01) + user << "\red Unknown: [round(unknown_concentration*100)]%" + user << "\blue Temperature: [round(src.ptank.air_contents.temperature-T0C)]°C" + else + user << "\blue Tank is empty!" + return + ..() return - user.machine = src - if (!src.part4) - user << "\red Attach a plasma tank first!" + + + attack_self(mob/user as mob) + if(user.stat || user.restrained() || user.lying) return + user.machine = src + if (!src.ptank) + user << "\red Attach a plasma tank first!" + return + var/dat = text("Flamethrower ([lit ? "Lit" : "Unlit"])
\n Tank Pressure: [src.ptank.air_contents.return_pressure()]
\nAmount to throw: - - - [src.throw_amount] + + +
\nRemove plasmatank - Close
") + user << browse(dat, "window=flamethrower;size=600x300") + onclose(user, "flamethrower") return - var/dat = text("Flamethrower ([lit ? "Lit" : "Unlit"])
\n Tank Pressure: [src.part4.air_contents.return_pressure()]
\nAmount to throw: - - - [src.throw_amount] + + +
\nRemove plasmatank - Close
") - user << browse(dat, "window=flamethrower;size=600x300") - onclose(user, "flamethrower") - return -// gets this from turf.dm turf/dblclick + Topic(href,href_list[]) + if (href_list["close"]) + usr.machine = null + usr << browse(null, "window=flamethrower") + return + if(usr.stat || usr.restrained() || usr.lying) return + usr.machine = src + if (href_list["light"]) + if(!src.ptank) return + if(src.ptank.air_contents.toxins < 1) return + if(!src.status) return + lit = !(lit) + if(lit) + force = 17 + damtype = "fire" + processing_items.Add(src) + else + force = 3 + damtype = "brute" + if (href_list["amount"]) + src.throw_amount = src.throw_amount + text2num(href_list["amount"]) + src.throw_amount = max(50,min(5000,src.throw_amount)) + if (href_list["remove"]) + if(!src.ptank) return + var/obj/item/weapon/tank/plasma/A = src.ptank + A.loc = get_turf(src) + A.layer = initial(A.layer) + src.ptank = null + lit = 0 + force = 3 + damtype = "brute" + usr.machine = null + usr << browse(null, "window=flamethrower") + for(var/mob/M in viewers(1, src.loc)) + if ((M.client && M.machine == src)) + src.attack_self(M) + update_icon() + return + + +//Called from turf.dm turf/dblclick /obj/item/weapon/flamethrower/proc/flame_turf(turflist) if(!lit || operating) return operating = 1 @@ -353,9 +222,7 @@ GETLINEEEEEEEEEEEEEEEEEEEEE continue //so we don't burn the tile we be standin on if(previousturf && LinkBlocked(previousturf, T)) break - ignite_turf(T) - sleep(1) previousturf = null operating = 0 @@ -364,15 +231,15 @@ GETLINEEEEEEEEEEEEEEEEEEEEE src.attack_self(M) return + /obj/item/weapon/flamethrower/proc/ignite_turf(turf/target) //TODO: DEFERRED Consider checking to make sure tank pressure is high enough before doing this... - //Transfer 5% of current tank air contents to turf - var/datum/gas_mixture/air_transfer = part4.air_contents.remove_ratio(0.05) + var/datum/gas_mixture/air_transfer = ptank.air_contents.remove_ratio(0.05) air_transfer.toxins = air_transfer.toxins * 5 // This is me not comprehending the air system. I realize this is retarded and I could probably make it work without fucking it up like this, but there you have it. -- TLE target.assume_air(air_transfer) - //Burn it based on transfered gas //target.hotspot_expose(part4.air_contents.temperature*2,300) - target.hotspot_expose((part4.air_contents.temperature*2) + 380,500) // -- More of my "how do I shot fire?" dickery. -- TLE - //location.hotspot_expose(1000,500,1) \ No newline at end of file + target.hotspot_expose((ptank.air_contents.temperature*2) + 380,500) // -- More of my "how do I shot fire?" dickery. -- TLE + //location.hotspot_expose(1000,500,1) + return \ No newline at end of file diff --git a/code/game/objects/items/weapons/guns_new.dm b/code/game/objects/items/weapons/guns_new.dm index 93335efe8d1..8d19948ac79 100644 --- a/code/game/objects/items/weapons/guns_new.dm +++ b/code/game/objects/items/weapons/guns_new.dm @@ -184,10 +184,12 @@ nodamage = 1 New() ..() - effects["radiation"] = 100 + effects["radiation"] = 20 + effectprob["radiation"] = 95 effects["drowsyness"] = 5 + effectprob["drowsyness"] = 10 effectmod["radiation"] = ADD - effectmod["drowsyness"] = ADD + effectmod["drowsyness"] = SET largebolt name = "largebolt" @@ -197,10 +199,12 @@ mobdamage = list(BRUTE = 10, BURN = 0, TOX = 10, OXY = 0, CLONE = 0) New() ..() - effects["radiation"] = 200 - effects["drowsyness"] = 15 + effects["radiation"] = 40 + effectprob["radiation"] = 95 + effects["drowsyness"] = 10 + effectprob["drowsyness"] = 25 effectmod["radiation"] = ADD - effectmod["drowsyness"] = ADD + effectmod["drowsyness"] = SET freeze name = "freeze beam" diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index b88decc49c6..f7e1d86fbe8 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -52,7 +52,7 @@ WELDINGTOOOL origin_tech = "engineering=1" var welding = 0 - status = 0 + status = 1 max_fuel = 20 @@ -72,41 +72,41 @@ WELDINGTOOOL attackby(obj/item/W as obj, mob/user as mob) - if (istype(W,/obj/item/weapon/screwdriver)) + if(istype(W,/obj/item/weapon/screwdriver)) + if(welding) + user << "\red Stop welding first!" + return status = !status - if (status) + if(status) user << "\blue You resecure the welder." else user << "\blue The welder can now be attached and modified." src.add_fingerprint(user) - else if (status == 1 && istype(W,/obj/item/stack/rods)) + return + + if((!status) && (istype(W,/obj/item/stack/rods))) var/obj/item/stack/rods/R = W R.use(1) - var/obj/item/assembly/weld_rod/F = new /obj/item/assembly/weld_rod( user ) + var/obj/item/weapon/flamethrower/F = new/obj/item/weapon/flamethrower(user.loc) src.loc = F - F.part1 = src + F.weldtool = src if (user.client) user.client.screen -= src if (user.r_hand == src) user.u_equip(src) - user.r_hand = F else user.u_equip(src) - user.l_hand = F - R.master = F src.master = F src.layer = initial(src.layer) user.u_equip(src) if (user.client) user.client.screen -= src src.loc = F - F.part2 = W - F.layer = 20 - R.layer = 20 - F.loc = user src.add_fingerprint(user) - else - ..() + return + + ..() + return process() @@ -196,7 +196,7 @@ WELDINGTOOOL //toggles the welder off and on toggle(var/message = 0) - if(status > 1) return + if(!status) return src.welding = !( src.welding ) if (src.welding) if (remove_fuel(1)) diff --git a/code/game/objects/radio/signaler.dm b/code/game/objects/radio/signaler.dm index b5068e11937..88400ab5468 100644 --- a/code/game/objects/radio/signaler.dm +++ b/code/game/objects/radio/signaler.dm @@ -78,9 +78,11 @@ if(isscrewdriver(W)) if(src.secured) Unsecure() + b_stat = 1 user.show_message("\blue The [src.name] can now be attached!") else Secure() + b_stat = 0 user.show_message("\blue The [src.name] is ready!") return else diff --git a/code/game/objects/tank.dm b/code/game/objects/tank.dm index 39a5e60ba1f..d8e9ac7a0de 100644 --- a/code/game/objects/tank.dm +++ b/code/game/objects/tank.dm @@ -1,3 +1,98 @@ + +/obj/item/weapon/tank + name = "tank" + icon = 'tank.dmi' + + var/datum/gas_mixture/air_contents = null + var/distribute_pressure = ONE_ATMOSPHERE + flags = FPRINT | TABLEPASS | CONDUCT | ONBACK + + pressure_resistance = ONE_ATMOSPHERE*5 + + force = 5.0 + throwforce = 10.0 + throw_speed = 1 + throw_range = 4 + var/volume = 70 + +/obj/item/weapon/tank/anesthetic + name = "Gas Tank (Sleeping Agent)" + desc = "Seriously, who uses this anymore?" + icon_state = "anesthetic" + item_state = "an_tank" + +/obj/item/weapon/tank/jetpack + name = "Jetpack (Oxygen)" + desc = "A pack of jets it appears." + icon_state = "jetpack0" + var/on = 0.0 + w_class = 4.0 + item_state = "jetpack" + var/datum/effects/system/ion_trail_follow/ion_trail + distribute_pressure = ONE_ATMOSPHERE*O2STANDARD + //volume = 140 //jetpack sould be larger, but then it will never deplete -rastaf0 + +/obj/item/weapon/tank/jetpack/void_jetpack + name = "Void Jetpack (oxygen)" + desc = "It works well in a void." + icon_state = "voidjetpack0" + item_state = "jetpack" + +/obj/item/weapon/tank/jetpack/black_jetpack + name = "Black Jetpack (oxygen)" + desc = "A black model of jetpacks." + icon_state = "black_jetpack0" + item_state = "black_jetpack" + +/obj/item/weapon/tank/oxygen + name = "Gas Tank (Oxygen)" + desc = "A tank of oxygen" + icon_state = "oxygen" + distribute_pressure = ONE_ATMOSPHERE*O2STANDARD + +/obj/item/weapon/tank/oxygen/yellow + name = "Gas Tank (Oxygen)" + desc = "A tank of oxygen meant for firefighters." + icon_state = "oxygen_f" + +/obj/item/weapon/tank/oxygen/red + name = "Gas Tank (Oxygen)" + desc = "A tank of oxygen meant for firefighters." + icon_state = "oxygen_fr" + +/obj/item/weapon/tank/air + name = "Gas Tank (Air Mix)" + desc = "Mixed anyone?" + icon_state = "oxygen" + +/obj/item/weapon/tank/plasma + name = "Gas Tank (BIOHAZARD)" + desc = "Contains dangerous plasma. Do not inhale." + icon_state = "plasma" + +/obj/item/weapon/tank/emergency_oxygen + name = "Emergency Oxygen Tank" + desc = "Used for emergencies. Contains very little oxygen, so try to conserve it until you actualy need it." + icon_state = "emergency" + flags = FPRINT | TABLEPASS | ONBELT | CONDUCT + w_class = 2.0 + force = 4.0 + distribute_pressure = ONE_ATMOSPHERE*O2STANDARD + volume = 3 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011) + +/obj/item/weapon/tank/emergency_oxygen/engi + icon_state = "emergency_engi" + name = "Engineering Emergency Oxygen Tank" + volume = 6 //Engineers are always superior. -errorage (dangercon 2011) + +/obj/item/weapon/tank/emergency_oxygen/double + icon_state = "emergency_double" + name = "Double Emergency Oxygen Tank" + volume = 10 //These have the same emoung of gas in them as air tanks, but can be worn on your belt -errorage (dangercon 2011) + + + + /obj/item/weapon/tank/blob_act() if(prob(50)) var/turf/location = src.loc @@ -389,32 +484,11 @@ ..() // PantsNote: More flamethrower assembly code. WOO! - if (istype(W, /obj/item/assembly/w_r_ignite)) - var/obj/item/assembly/w_r_ignite/S = W - if (!( S.status )) - return - var/obj/item/weapon/flamethrower/R = new - R.part1 = S.part1 - S.part1.loc = R - S.part1.master = R - - R.part2 = S.part2 - S.part2.loc = R - S.part2.master = R - - R.part3 = S.part3 - S.part3.loc = R - S.part3.master = R - - src.master = R - R.part4 = src - - user.put_in_hand(R) + if (istype(W, /obj/item/weapon/flamethrower)) + var/obj/item/weapon/flamethrower/F = W + if ((!F.status)||(F.ptank)) return + src.master = F + F.ptank = src user.before_take_item(src) - src.loc = R - - S.part1 = null - S.part2 = null - S.part3 = null - del(S) + src.loc = F return diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index a6586af4526..7c059493104 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -1,7 +1,6 @@ -var/showadminmessages = 1 + //////////////////////////////// /proc/message_admins(var/text, var/admin_ref = 0) - if(!showadminmessages) return var/rendered = "ADMIN LOG: [text]" 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 = "Pick Job to ban this guy from.
" 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 += "Captain " else jobs += "Captain " + + if(jobban_isbanned(M, "AI")) + jobs += "AI " + else + jobs += "AI " + if(jobban_isbanned(M, "Syndicate")) jobs += "
[dd_replacetext("Syndicate", " ", " ")] " else jobs += "
[dd_replacetext("Syndicate", " ", " ")] " + if(jobban_isbanned(M, "pAI")) jobs += "
pAI " 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 << "The GOONSAY channel has been enabled." - else - world << "The GOONSAY channel has been disabled." - 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" diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 2b769412ed1..fed6905d1ea 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -1,6 +1,23 @@ //GUYS REMEMBER TO ADD A += to UPDATE_ADMINS //AND A -= TO CLEAR_ADMIN_VERBS + + +//Some verbs that are still in the code but not used atm + // Debug +// verbs += /client/proc/radio_report //for radio debugging dont think its been used in a very long time +// verbs += /client/proc/air_status //does next to nothing +// verbs += /client/proc/restartcontroller //Can call via aproccall +// verbs += /client/proc/fix_next_move //has not been an issue in a very very long time +// verbs += /client/proc/Cell //More air things + + // Mapping helpers +// verbs += /client/proc/do_not_use_these +// verbs += /client/proc/camera_view +// verbs += /client/proc/sec_camera_report +// verbs += /client/proc/intercom_view +// verbs += /client/proc/enable_mapping_debug + /client/proc/update_admins(var/rank) if(!holder) @@ -27,441 +44,22 @@ deadchat = 1 holder.level = 6 - // Settings - verbs += /obj/admins/proc/view_txt_log - verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - verbs += /obj/admins/proc/toggle_aliens //toggle aliens - verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - - verbs += /client/proc/triple_ai //triple AIs~ --NEO - verbs += /client/proc/cmd_mass_modify_object_variables - // Admin "must have" - verbs += /client/proc/cmd_admin_list_occ - verbs += /client/proc/cmd_admin_mute - verbs += /client/proc/cmd_admin_pm - verbs += /client/proc/cmd_admin_direct_narrate // -- TLE - verbs += /client/proc/cmd_admin_say - verbs += /client/proc/cmd_admin_subtle_message - verbs += /client/proc/cmd_admin_world_narrate // -- TLE - verbs += /client/proc/get_admin_state - verbs += /client/proc/warn - verbs += /obj/admins/proc/announce //global announce - verbs += /obj/admins/proc/immreboot //immediate reboot - verbs += /obj/admins/proc/restart //restart - verbs += /obj/admins/proc/startnow //start now bitch - - // Debug - verbs += /client/proc/restartcontroller //exactly what it sounds like - verbs += /client/proc/atmosscan //for locating piping breaks - verbs += /client/proc/debug_variables - verbs += /client/proc/cmd_modify_object_variables - verbs += /client/proc/cmd_modify_ticker_variables - verbs += /client/proc/general_report - verbs += /client/proc/air_report - verbs += /client/proc/air_status - verbs += /client/proc/radio_report - verbs += /client/proc/reload_admins - verbs += /client/proc/kill_air // -- TLE - verbs += /client/proc/modifytemperature - verbs += /client/proc/callproc - verbs += /client/proc/Cell - verbs += /client/proc/cmd_debug_make_powernets - verbs += /client/proc/cmd_debug_del_all - verbs += /client/proc/cmd_debug_tog_aliens - verbs += /client/proc/Debug2 //debug toggle switch - verbs += /client/proc/fix_next_move - verbs += /client/proc/ticklag - - verbs += /proc/givetestverbs - verbs += /obj/admins/proc/spawn_atom - verbs += /obj/admins/proc/toggletintedweldhelmets - - // Mapping helpers -// verbs += /client/proc/do_not_use_these //-errorage -// verbs += /client/proc/camera_view //-errorage -// verbs += /client/proc/sec_camera_report //-errorage -// verbs += /client/proc/intercom_view //-errorage - verbs += /client/proc/enable_mapping_debug //-rastaf0 - - // Admin helpers - verbs += /client/proc/cmd_admin_attack_log - verbs += /client/proc/cmd_admin_check_contents - verbs += /client/proc/check_words // -- Urist - verbs += /client/proc/dsay - verbs += /client/proc/jobbans - verbs += /client/proc/toggle_view_range - - // Admin game intrusion - verbs += /client/proc/cmd_admin_remove_plasma - verbs += /client/proc/drop_bomb // -- TLE - - verbs += /client/proc/admin_call_shuttle // -- Skie - verbs += /client/proc/admin_cancel_shuttle // -- Skie - verbs += /client/proc/cmd_admin_create_centcom_report - verbs += /obj/admins/proc/vmode //start vote - verbs += /obj/admins/proc/votekill //abort vote - - verbs += /client/proc/give_spell - verbs += /obj/admins/proc/edit_memory - verbs += /obj/admins/proc/edit_player - verbs += /client/proc/cmd_admin_dress - //verbs += /client/proc/cmd_admin_alienize - //verbs += /client/proc/cmd_admin_changelinginize - //verbs += /client/proc/cmd_admin_abominize // -- TLE - //verbs += /client/proc/cmd_admin_monkeyize - //verbs += /client/proc/cmd_admin_robotize - //verbs += /client/proc/make_cultist // -- TLE - verbs += /client/proc/cmd_admin_ninjafy //N - //verbs += /client/proc/makepAI // -- TLE - verbs += /client/proc/respawn_character //N - - verbs += /client/proc/Getmob - verbs += /client/proc/sendmob - verbs += /client/proc/Jump - verbs += /client/proc/jumptokey - verbs += /client/proc/jumptomob - verbs += /client/proc/jumptoturf - //verbs += /client/proc/givedisease - - verbs += /client/proc/cmd_admin_add_freeform_ai_law - verbs += /client/proc/cmd_admin_add_random_ai_law - - verbs += /client/proc/secrets - verbs += /client/proc/cmd_admin_godmode - verbs += /client/proc/cmd_admin_rejuvenate - verbs += /client/proc/cmd_admin_grantfullaccess - verbs += /client/proc/cmd_admin_gib - verbs += /client/proc/cmd_admin_gib_self - verbs += /client/proc/cmd_admin_explosion - verbs += /client/proc/cmd_admin_emp - verbs += /client/proc/cmd_admin_delete - verbs += /client/proc/cmd_admin_drop_everything - verbs += /client/proc/cmd_admin_prison - verbs += /obj/admins/proc/unprison - verbs += /proc/togglebuildmode - - // Unnecessary commands - //verbs += /client/proc/funbutton - verbs += /client/proc/make_sound // -- TLE - verbs += /client/proc/object_talk // -- TLE - verbs += /client/proc/play_sound -// verbs += /client/proc/cuban_pete // -- Urist -// verbs += /client/proc/bananaphone // -- Darem -// verbs += /client/proc/honk_theme // -- Urist the Honky - verbs += /client/proc/only_one // muskets -// verbs += /client/proc/space_asshole // --Agouri :3 - verbs += /client/proc/strike_team //N -// verbs += /client/proc/syndicate_strike_team // Commented out until I can find a way to fix the shuttle timing -- Superxpdude - verbs += /client/proc/send_space_ninja //N - verbs += /client/proc/spawn_xeno //N - verbs += /proc/possess - verbs += /proc/release - verbs += /client/proc/unjobban_panel -// verbs += /obj/admins/proc/togglegoonsay -// verbs += /client/proc/grillify -// verbs += /client/proc/cmd_admin_list_admins -// verbs += /client/proc/getmobs if ("Game Admin") deadchat = 1 holder.level = 5 - // Settings - //verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/view_txt_log - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - verbs += /client/proc/cmd_mass_modify_object_variables - // Admin "must have" - verbs += /client/proc/cmd_admin_list_occ - verbs += /client/proc/cmd_admin_mute - verbs += /client/proc/cmd_admin_pm - verbs += /client/proc/cmd_admin_direct_narrate // -- TLE - verbs += /client/proc/cmd_admin_say - verbs += /client/proc/cmd_admin_subtle_message - verbs += /client/proc/cmd_admin_world_narrate // -- TLE - verbs += /client/proc/get_admin_state - verbs += /client/proc/warn - verbs += /obj/admins/proc/announce //global announce - verbs += /obj/admins/proc/immreboot //immediate reboot - verbs += /obj/admins/proc/restart //restart - verbs += /obj/admins/proc/startnow //start now bitch - - // Debug - verbs += /client/proc/restartcontroller //exactly what it sounds like - verbs += /client/proc/atmosscan //for locating piping breaks - verbs += /client/proc/debug_variables - verbs += /client/proc/cmd_modify_object_variables - verbs += /client/proc/cmd_modify_ticker_variables - verbs += /client/proc/general_report - verbs += /client/proc/air_report - verbs += /client/proc/air_status - verbs += /client/proc/radio_report - verbs += /client/proc/reload_admins - //verbs += /client/proc/kill_air // -- TLE - verbs += /client/proc/modifytemperature - verbs += /client/proc/callproc - verbs += /client/proc/Cell - verbs += /client/proc/cmd_debug_del_all - verbs += /client/proc/cmd_debug_tog_aliens - verbs += /client/proc/Debug2 //debug toggle switch - verbs += /client/proc/fix_next_move - verbs += /client/proc/ticklag - verbs += /proc/givetestverbs - verbs += /obj/admins/proc/spawn_atom - verbs += /obj/admins/proc/toggletintedweldhelmets - - // Admin helpers - verbs += /client/proc/cmd_admin_attack_log - verbs += /client/proc/cmd_admin_check_contents - verbs += /client/proc/check_words // -- Urist - verbs += /client/proc/dsay - verbs += /client/proc/jobbans - verbs += /client/proc/toggle_view_range - - // Admin game intrusion - verbs += /client/proc/cmd_admin_remove_plasma - verbs += /client/proc/drop_bomb // -- TLE - - verbs += /client/proc/admin_call_shuttle // -- Skie - verbs += /client/proc/admin_cancel_shuttle // -- Skie - verbs += /client/proc/cmd_admin_create_centcom_report - verbs += /obj/admins/proc/vmode //start vote - verbs += /obj/admins/proc/votekill //abort vote - - verbs += /client/proc/give_spell - verbs += /obj/admins/proc/edit_memory - verbs += /obj/admins/proc/edit_player - verbs += /client/proc/cmd_admin_dress - //verbs += /client/proc/cmd_admin_alienize - //verbs += /client/proc/cmd_admin_changelinginize - //verbs += /client/proc/cmd_admin_abominize // -- TLE - //verbs += /client/proc/cmd_admin_monkeyize - //verbs += /client/proc/cmd_admin_robotize - //verbs += /client/proc/make_cultist // -- TLE - verbs += /client/proc/cmd_admin_ninjafy //N - //verbs += /client/proc/makepAI // -- TLE - verbs += /client/proc/respawn_character //N - verbs += /client/proc/Getmob - verbs += /client/proc/sendmob - verbs += /client/proc/Jump - verbs += /client/proc/jumptokey - verbs += /client/proc/jumptomob - verbs += /client/proc/jumptoturf - - verbs += /client/proc/cmd_admin_add_freeform_ai_law - verbs += /client/proc/cmd_admin_add_random_ai_law - - verbs += /client/proc/secrets - verbs += /client/proc/cmd_admin_godmode - verbs += /client/proc/cmd_admin_rejuvenate - verbs += /client/proc/cmd_admin_grantfullaccess - verbs += /client/proc/cmd_admin_gib - verbs += /client/proc/cmd_admin_gib_self - verbs += /client/proc/cmd_admin_explosion - verbs += /client/proc/cmd_admin_emp - verbs += /client/proc/cmd_admin_delete - verbs += /client/proc/cmd_admin_drop_everything - verbs += /client/proc/cmd_admin_prison - verbs += /obj/admins/proc/unprison - verbs += /proc/togglebuildmode - - // Unnecessary commands - //verbs += /client/proc/funbutton - verbs += /client/proc/make_sound // -- TLE - //verbs += /client/proc/object_talk // -- TLE - verbs += /client/proc/play_sound -// verbs += /client/proc/cuban_pete // -- Urist -// verbs += /client/proc/honk_theme // -- Urist the Honky -// verbs += /client/proc/bananaphone - verbs += /client/proc/only_one // muskets -// verbs += /client/proc/space_asshole // --Agouri :3 - //verbs += /client/proc/strike_team //N - verbs += /client/proc/send_space_ninja //N - verbs += /client/proc/spawn_xeno //N - verbs += /proc/possess - verbs += /proc/release - - // Old and unused -// verbs += /obj/admins/proc/togglegoonsay -// verbs += /client/proc/grillify -// verbs += /client/proc/cmd_admin_list_admins -// verbs += /client/proc/getmobs if ("Badmin") deadchat = 1 holder.level = 4 - // Settings - //verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - - // Admin "must have" - //verbs += /client/proc/cmd_admin_list_occ - verbs += /client/proc/cmd_admin_mute - verbs += /client/proc/cmd_admin_pm - //verbs += /client/proc/cmd_admin_direct_narrate // -- TLE - verbs += /client/proc/cmd_admin_say - verbs += /client/proc/cmd_admin_subtle_message - //verbs += /client/proc/cmd_admin_world_narrate // -- TLE - //verbs += /client/proc/get_admin_state - verbs += /client/proc/warn - verbs += /obj/admins/proc/announce //global announce - verbs += /obj/admins/proc/immreboot //immediate reboot - verbs += /obj/admins/proc/restart //restart - verbs += /obj/admins/proc/startnow //start now bitch - - // Debug - verbs += /client/proc/debug_variables - verbs += /client/proc/cmd_modify_object_variables - verbs += /client/proc/cmd_modify_ticker_variables - verbs += /client/proc/general_report - verbs += /client/proc/air_report - verbs += /client/proc/air_status - verbs += /client/proc/radio_report - //verbs += /client/proc/kill_air // -- TLE - verbs += /client/proc/modifytemperature - //verbs += /client/proc/callproc - //verbs += /client/proc/Cell - //verbs += /client/proc/cmd_debug_del_all - //verbs += /client/proc/cmd_debug_tog_aliens - verbs += /client/proc/Debug2 //debug toggle switch - verbs += /client/proc/fix_next_move - //verbs += /client/proc/ticklag - //verbs += /proc/givetestverbs - //verbs += /obj/admins/proc/spawn_atom - verbs += /obj/admins/proc/toggletintedweldhelmets - - // Admin helpers - verbs += /client/proc/cmd_admin_attack_log - verbs += /client/proc/cmd_admin_check_contents - //verbs += /client/proc/check_words // -- Urist - verbs += /client/proc/dsay - verbs += /client/proc/jobbans - verbs += /client/proc/toggle_view_range - - // Admin game intrusion - verbs += /client/proc/cmd_admin_remove_plasma - //verbs += /client/proc/drop_bomb // -- TLE - - verbs += /client/proc/admin_call_shuttle // -- Skie - verbs += /client/proc/admin_cancel_shuttle // -- Skie - verbs += /client/proc/cmd_admin_create_centcom_report - verbs += /obj/admins/proc/vmode //start vote - verbs += /obj/admins/proc/votekill //abort vote - - verbs += /obj/admins/proc/edit_memory - verbs += /obj/admins/proc/edit_player - verbs += /client/proc/cmd_admin_dress - //verbs += /client/proc/cmd_admin_alienize - //verbs += /client/proc/cmd_admin_changelinginize - //verbs += /client/proc/cmd_admin_abominize // -- TLE - //verbs += /client/proc/cmd_admin_monkeyize - //verbs += /client/proc/cmd_admin_robotize - //verbs += /client/proc/make_cultist // -- TLE - //verbs += /client/proc/cmd_admin_ninjafy //N - verbs += /client/proc/respawn_character //N - - verbs += /client/proc/Getmob - verbs += /client/proc/sendmob - verbs += /client/proc/Jump - verbs += /client/proc/jumptokey - verbs += /client/proc/jumptomob - verbs += /client/proc/jumptoturf - - verbs += /client/proc/cmd_admin_add_freeform_ai_law - verbs += /client/proc/cmd_admin_add_random_ai_law - - verbs += /client/proc/secrets - verbs += /client/proc/cmd_admin_godmode - verbs += /client/proc/cmd_admin_rejuvenate - //verbs += /client/proc/cmd_admin_grantfullaccess - verbs += /client/proc/cmd_admin_gib - verbs += /client/proc/cmd_admin_gib_self - //verbs += /client/proc/cmd_admin_explosion - //verbs += /client/proc/cmd_admin_emp - verbs += /client/proc/cmd_admin_delete - verbs += /client/proc/cmd_admin_drop_everything - verbs += /client/proc/cmd_admin_prison - verbs += /obj/admins/proc/unprison - verbs += /proc/togglebuildmode - - // Unnecessary commands - //verbs += /client/proc/funbutton - //verbs += /client/proc/make_sound // -- TLE - //verbs += /client/proc/object_talk // -- TLE - verbs += /client/proc/play_sound - //verbs += /client/proc/cuban_pete // -- Urist - //verbs += /client/proc/bananaphone - //verbs += /client/proc/space_asshole // --Agouri :3 - //verbs += /client/proc/strike_team //N - //verbs += /client/proc/send_space_ninja //N - verbs += /client/proc/spawn_xeno //N - verbs += /proc/possess - verbs += /proc/release - verbs += /client/proc/unjobban_panel - // Old and unused -// verbs += /obj/admins/proc/togglegoonsay -// verbs += /client/proc/grillify -// verbs += /client/proc/cmd_admin_list_admins -// verbs += /client/proc/getmobs if ("Trial Admin") deadchat = 1 holder.level = 3 if(holder.state == 2) // if observing - // Settings - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling - - // Admin "must have" - // Debug verbs += /client/proc/debug_variables verbs += /client/proc/cmd_modify_object_variables @@ -482,568 +80,37 @@ verbs += /client/proc/cmd_admin_rejuvenate verbs += /client/proc/cmd_admin_drop_everything - // Settings - //verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - //verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - //verbs += /obj/admins/proc/toggleooc //toggle ooc - //verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - //verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - - // Admin "must have" - //verbs += /client/proc/cmd_admin_list_occ - verbs += /client/proc/cmd_admin_mute - verbs += /client/proc/cmd_admin_pm - //verbs += /client/proc/cmd_admin_direct_narrate // -- TLE - verbs += /client/proc/cmd_admin_say - verbs += /client/proc/cmd_admin_subtle_message - //verbs += /client/proc/cmd_admin_world_narrate // -- TLE - //verbs += /client/proc/get_admin_state - verbs += /client/proc/warn - verbs += /obj/admins/proc/announce //global announce - verbs += /obj/admins/proc/immreboot //immediate reboot - verbs += /obj/admins/proc/restart //restart - verbs += /obj/admins/proc/startnow //start now bitch - - // Debug - //verbs += /client/proc/debug_variables - //verbs += /client/proc/cmd_modify_object_variables - //verbs += /client/proc/cmd_modify_ticker_variables - verbs += /client/proc/general_report - verbs += /client/proc/air_report - verbs += /client/proc/air_status - verbs += /client/proc/radio_report - //verbs += /client/proc/kill_air // -- TLE - //verbs += /client/proc/modifytemperature - //verbs += /client/proc/callproc - //verbs += /client/proc/Cell - //verbs += /client/proc/cmd_debug_del_all - //verbs += /client/proc/cmd_debug_tog_aliens - //verbs += /client/proc/Debug2 //debug toggle switch - //verbs += /client/proc/fix_next_move - //verbs += /client/proc/ticklag - //verbs += /proc/givetestverbs - //verbs += /obj/admins/proc/spawn_atom - verbs += /obj/admins/proc/toggletintedweldhelmets - - // Admin helpers - verbs += /client/proc/cmd_admin_attack_log - verbs += /client/proc/cmd_admin_check_contents - //verbs += /client/proc/check_words // -- Urist - verbs += /client/proc/dsay - verbs += /client/proc/jobbans - //verbs += /client/proc/toggle_view_range - - // Admin game intrusion - verbs += /client/proc/cmd_admin_remove_plasma - //verbs += /client/proc/drop_bomb // -- TLE - - verbs += /client/proc/admin_call_shuttle // -- Skie - verbs += /client/proc/admin_cancel_shuttle // -- Skie - verbs += /client/proc/cmd_admin_create_centcom_report - verbs += /obj/admins/proc/vmode //start vote - verbs += /obj/admins/proc/votekill //abort vote - - verbs += /obj/admins/proc/edit_memory - verbs += /obj/admins/proc/edit_player - verbs += /client/proc/cmd_admin_dress - //verbs += /client/proc/cmd_admin_alienize - //verbs += /client/proc/cmd_admin_changelinginize - //verbs += /client/proc/cmd_admin_abominize // -- TLE - //verbs += /client/proc/cmd_admin_monkeyize - //verbs += /client/proc/cmd_admin_robotize - //verbs += /client/proc/make_cultist // -- TLE - //verbs += /client/proc/cmd_admin_ninjafy //N - verbs += /client/proc/respawn_character //N - - //verbs += /client/proc/Getmob - //verbs += /client/proc/sendmob - //verbs += /client/proc/Jump - //verbs += /client/proc/jumptokey - //verbs += /client/proc/jumptomob - //verbs += /client/proc/jumptoturf - - //verbs += /client/proc/cmd_admin_add_freeform_ai_law - verbs += /client/proc/cmd_admin_add_random_ai_law - - verbs += /client/proc/secrets - //verbs += /client/proc/cmd_admin_godmode - //verbs += /client/proc/cmd_admin_rejuvenate - //verbs += /client/proc/cmd_admin_grantfullaccess - //verbs += /client/proc/cmd_admin_gib - verbs += /client/proc/cmd_admin_gib_self - //verbs += /client/proc/cmd_admin_explosion - //verbs += /client/proc/cmd_admin_emp - //verbs += /client/proc/cmd_admin_delete - //verbs += /client/proc/cmd_admin_drop_everything - verbs += /client/proc/cmd_admin_prison - verbs += /obj/admins/proc/unprison - //verbs += /proc/togglebuildmode - - // Unnecessary commands - //verbs += /client/proc/funbutton - //verbs += /client/proc/make_sound // -- TLE - //verbs += /client/proc/object_talk // -- TLE - verbs += /client/proc/play_sound - //verbs += /client/proc/cuban_pete // -- Urist - //verbs += /client/proc/bananaphone - //verbs += /client/proc/space_asshole // --Agouri :3 - //verbs += /client/proc/strike_team //N - //verbs += /client/proc/send_space_ninja //N - verbs += /client/proc/spawn_xeno //N - verbs += /proc/possess - verbs += /proc/release - - // Old and unused -// verbs += /obj/admins/proc/togglegoonsay -// verbs += /client/proc/grillify -// verbs += /client/proc/cmd_admin_list_admins -// verbs += /client/proc/getmobs if ("Admin Candidate") holder.level = 2 - if(holder.state == 2) // if observing deadchat = 1 - // Settings verbs += /obj/admins/proc/toggleaban //abandon mob verbs += /client/proc/deadchat //toggles deadchat - - // Admin "must have" - - // Debug - // Admin helpers verbs += /client/proc/cmd_admin_attack_log verbs += /client/proc/cmd_admin_check_contents - // Admin game intrusion verbs += /client/proc/Jump verbs += /client/proc/jumptokey verbs += /client/proc/jumptomob - // Settings - //verbs += /client/proc/colorooc // -- Urist - //verbs += /obj/admins/proc/adjump //toggle admin jumping - //verbs += /obj/admins/proc/adrev //toggle admin revives - //verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - //verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - //verbs += /obj/admins/proc/toggleooc //toggle ooc - //verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - //verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - //verbs += /proc/toggle_adminmsg - - // Admin "must have" - //verbs += /client/proc/cmd_admin_list_occ - verbs += /client/proc/cmd_admin_mute - verbs += /client/proc/cmd_admin_pm - //verbs += /client/proc/cmd_admin_direct_narrate // -- TLE - verbs += /client/proc/cmd_admin_say - verbs += /client/proc/cmd_admin_subtle_message - //verbs += /client/proc/cmd_admin_world_narrate // -- TLE - //verbs += /client/proc/get_admin_state - verbs += /client/proc/warn - verbs += /obj/admins/proc/announce //global announce - verbs += /obj/admins/proc/immreboot //immediate reboot - verbs += /obj/admins/proc/restart //restart - verbs += /obj/admins/proc/startnow //start now bitch - - // Debug - //verbs += /client/proc/debug_variables - //verbs += /client/proc/cmd_modify_object_variables - //verbs += /client/proc/cmd_modify_ticker_variables - verbs += /client/proc/general_report - verbs += /client/proc/air_report - verbs += /client/proc/air_status - verbs += /client/proc/radio_report - //verbs += /client/proc/kill_air // -- TLE - //verbs += /client/proc/modifytemperature - //verbs += /client/proc/callproc - //verbs += /client/proc/Cell - //verbs += /client/proc/cmd_debug_del_all - //verbs += /client/proc/cmd_debug_tog_aliens - //verbs += /client/proc/Debug2 //debug toggle switch - //verbs += /client/proc/fix_next_move - //verbs += /client/proc/ticklag - //verbs += /proc/givetestverbs - //verbs += /obj/admins/proc/spawn_atom - verbs += /obj/admins/proc/toggletintedweldhelmets - - // Admin helpers - //verbs += /client/proc/cmd_admin_attack_log - //verbs += /client/proc/cmd_admin_check_contents - //verbs += /client/proc/check_words // -- Urist - verbs += /client/proc/dsay - verbs += /client/proc/jobbans - //verbs += /client/proc/toggle_view_range - - // Admin game intrusion - //verbs += /client/proc/cmd_admin_remove_plasma - //verbs += /client/proc/drop_bomb // -- TLE - - //verbs += /client/proc/admin_call_shuttle // -- Skie - //verbs += /client/proc/admin_cancel_shuttle // -- Skie - verbs += /client/proc/cmd_admin_create_centcom_report - verbs += /obj/admins/proc/vmode //start vote - verbs += /obj/admins/proc/votekill //abort vote - - //verbs += /obj/admins/proc/edit_memory - verbs += /obj/admins/proc/edit_player - //verbs += /client/proc/cmd_admin_alienize - //verbs += /client/proc/cmd_admin_changelinginize - //verbs += /client/proc/cmd_admin_abominize // -- TLE - //verbs += /client/proc/cmd_admin_monkeyize - //verbs += /client/proc/cmd_admin_robotize - //verbs += /client/proc/make_cultist // -- TLE - //verbs += /client/proc/cmd_admin_ninjafy //N - //verbs += /client/proc/respawn_character //N - - //verbs += /client/proc/Getmob - //verbs += /client/proc/sendmob - //verbs += /client/proc/Jump - //verbs += /client/proc/jumptokey - //verbs += /client/proc/jumptomob - //verbs += /client/proc/jumptoturf - - //verbs += /client/proc/cmd_admin_add_freeform_ai_law - verbs += /client/proc/cmd_admin_add_random_ai_law - - verbs += /client/proc/secrets - //verbs += /client/proc/cmd_admin_godmode - //verbs += /client/proc/cmd_admin_rejuvenate - //verbs += /client/proc/cmd_admin_grantfullaccess - //verbs += /client/proc/cmd_admin_gib - verbs += /client/proc/cmd_admin_gib_self - //verbs += /client/proc/cmd_admin_explosion - //verbs += /client/proc/cmd_admin_emp - //verbs += /client/proc/cmd_admin_delete - //verbs += /client/proc/cmd_admin_drop_everything - verbs += /client/proc/cmd_admin_prison - verbs += /obj/admins/proc/unprison - //verbs += /proc/togglebuildmode - - // Unnecessary commands - //verbs += /client/proc/funbutton - //verbs += /client/proc/make_sound // -- TLE - //verbs += /client/proc/object_talk // -- TLE - verbs += /client/proc/play_sound - //verbs += /client/proc/cuban_pete // -- Urist - //verbs += /client/proc/bananaphone - //verbs += /client/proc/space_asshole // --Agouri :3 - //verbs += /client/proc/strike_team //N - //verbs += /client/proc/send_space_ninja //N - //verbs += /client/proc/spawn_xeno //N - //verbs += /proc/possess - //verbs += /proc/release - verbs += /client/proc/unjobban_panel - // Old and unused -// verbs += /obj/admins/proc/togglegoonsay -// verbs += /client/proc/grillify -// verbs += /client/proc/cmd_admin_list_admins -// verbs += /client/proc/getmobs if ("Temporary Admin") holder.level = 1 - if(holder.state == 2) // if observing - // Settings - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - - // Admin "must have" - - // Debug - - // Admin helpers - verbs += /client/proc/cmd_admin_attack_log - verbs += /client/proc/cmd_admin_check_contents - - // Admin game intrusion - - // Settings - //verbs += /client/proc/colorooc // -- Urist - //verbs += /obj/admins/proc/adjump //toggle admin jumping - //verbs += /obj/admins/proc/adrev //toggle admin revives - //verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - //verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - //verbs += /obj/admins/proc/toggleooc //toggle ooc - //verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - //verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - //verbs += /proc/toggle_adminmsg - - // Admin "must have" - //verbs += /client/proc/cmd_admin_list_occ - verbs += /client/proc/cmd_admin_mute - verbs += /client/proc/cmd_admin_pm - //verbs += /client/proc/cmd_admin_direct_narrate // -- TLE - verbs += /client/proc/cmd_admin_say - verbs += /client/proc/cmd_admin_subtle_message - //verbs += /client/proc/cmd_admin_world_narrate // -- TLE - //verbs += /client/proc/get_admin_state - verbs += /client/proc/warn - verbs += /obj/admins/proc/announce //global announce - verbs += /obj/admins/proc/immreboot //immediate reboot - verbs += /obj/admins/proc/restart //restart - verbs += /obj/admins/proc/startnow //start now bitch - - // Debug - //verbs += /client/proc/debug_variables - //verbs += /client/proc/cmd_modify_object_variables - //verbs += /client/proc/cmd_modify_ticker_variables - verbs += /client/proc/general_report - verbs += /client/proc/air_report - verbs += /client/proc/air_status - verbs += /client/proc/radio_report - //verbs += /client/proc/kill_air // -- TLE - //verbs += /client/proc/modifytemperature - //verbs += /client/proc/callproc - //verbs += /client/proc/Cell - //verbs += /client/proc/cmd_debug_del_all - //verbs += /client/proc/cmd_debug_tog_aliens - //verbs += /client/proc/Debug2 //debug toggle switch - //verbs += /client/proc/fix_next_move - //verbs += /client/proc/ticklag - //verbs += /proc/givetestverbs - //verbs += /obj/admins/proc/spawn_atom - - // Admin helpers - //verbs += /client/proc/cmd_admin_attack_log - //verbs += /client/proc/cmd_admin_check_contents - //verbs += /client/proc/check_words // -- Urist - verbs += /client/proc/dsay - verbs += /client/proc/jobbans - //verbs += /client/proc/toggle_view_range - - // Admin game intrusion - //verbs += /client/proc/cmd_admin_remove_plasma - //verbs += /client/proc/drop_bomb // -- TLE - - //verbs += /client/proc/admin_call_shuttle // -- Skie - //verbs += /client/proc/admin_cancel_shuttle // -- Skie - verbs += /client/proc/cmd_admin_create_centcom_report - verbs += /obj/admins/proc/vmode //start vote - verbs += /obj/admins/proc/votekill //abort vote - - //verbs += /obj/admins/proc/edit_memory - verbs += /obj/admins/proc/edit_player - //verbs += /client/proc/cmd_admin_alienize - //verbs += /client/proc/cmd_admin_changelinginize - //verbs += /client/proc/cmd_admin_abominize // -- TLE - //verbs += /client/proc/cmd_admin_monkeyize - //verbs += /client/proc/cmd_admin_robotize - //verbs += /client/proc/make_cultist // -- TLE - //verbs += /client/proc/cmd_admin_ninjafy //N - //verbs += /client/proc/respawn_character //N - - //verbs += /client/proc/Getmob - //verbs += /client/proc/sendmob - //verbs += /client/proc/Jump - //verbs += /client/proc/jumptokey - //verbs += /client/proc/jumptomob - //verbs += /client/proc/jumptoturf - - //verbs += /client/proc/cmd_admin_add_freeform_ai_law - //verbs += /client/proc/cmd_admin_add_random_ai_law - - //verbs += /client/proc/secrets - //verbs += /client/proc/cmd_admin_godmode - //verbs += /client/proc/cmd_admin_rejuvenate - //verbs += /client/proc/cmd_admin_grantfullaccess - //verbs += /client/proc/cmd_admin_gib - verbs += /client/proc/cmd_admin_gib_self - //verbs += /client/proc/cmd_admin_explosion - //verbs += /client/proc/cmd_admin_emp - //verbs += /client/proc/cmd_admin_delete - //verbs += /client/proc/cmd_admin_drop_everything - verbs += /client/proc/cmd_admin_prison - verbs += /obj/admins/proc/unprison - //verbs += /proc/togglebuildmode - - // Unnecessary commands - //verbs += /client/proc/funbutton - //verbs += /client/proc/make_sound // -- TLE - //verbs += /client/proc/object_talk // -- TLE - //verbs += /client/proc/play_sound - //verbs += /client/proc/cuban_pete // -- Urist - //verbs += /client/proc/bananaphone - //verbs += /client/proc/space_asshole // --Agouri :3 - //verbs += /client/proc/strike_team //N - //verbs += /client/proc/send_space_ninja //N - //verbs += /client/proc/spawn_xeno //N - //verbs += /proc/possess - //verbs += /proc/release - - // Old and unused -// verbs += /obj/admins/proc/togglegoonsay -// verbs += /client/proc/grillify -// verbs += /client/proc/cmd_admin_list_admins -// verbs += /client/proc/getmobs if ("Moderator") holder.level = 0 - // Settings - //verbs += /client/proc/colorooc // -- Urist - //verbs += /obj/admins/proc/adjump //toggle admin jumping - //verbs += /obj/admins/proc/adrev //toggle admin revives - //verbs += /obj/admins/proc/adspawn //toggle admin item spawning - //verbs += /obj/admins/proc/delay //game start delay - //verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - //verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - - // Admin "must have" - //verbs += /client/proc/cmd_admin_list_occ - verbs += /client/proc/cmd_admin_mute - verbs += /client/proc/cmd_admin_pm - //verbs += /client/proc/cmd_admin_direct_narrate // -- TLE - verbs += /client/proc/cmd_admin_say - verbs += /client/proc/cmd_admin_subtle_message - //verbs += /client/proc/cmd_admin_world_narrate // -- TLE - //verbs += /client/proc/get_admin_state - verbs += /client/proc/warn - verbs += /obj/admins/proc/announce //global announce - //verbs += /obj/admins/proc/immreboot //immediate reboot - //verbs += /obj/admins/proc/restart //restart - verbs += /obj/admins/proc/startnow //start now bitch - - // Debug - //verbs += /client/proc/debug_variables - //verbs += /client/proc/cmd_modify_object_variables - //verbs += /client/proc/cmd_modify_ticker_variables - verbs += /client/proc/general_report - verbs += /client/proc/air_report - verbs += /client/proc/air_status - verbs += /client/proc/radio_report - //verbs += /client/proc/kill_air // -- TLE - //verbs += /client/proc/modifytemperature - //verbs += /client/proc/callproc - //verbs += /client/proc/Cell - //verbs += /client/proc/cmd_debug_del_all - //verbs += /client/proc/cmd_debug_tog_aliens - //verbs += /client/proc/Debug2 //debug toggle switch - //verbs += /client/proc/fix_next_move - //verbs += /client/proc/ticklag - //verbs += /proc/givetestverbs - //verbs += /obj/admins/proc/spawn_atom - - // Admin helpers - //verbs += /client/proc/cmd_admin_attack_log - //verbs += /client/proc/cmd_admin_check_contents - //verbs += /client/proc/check_words // -- Urist - verbs += /client/proc/dsay - verbs += /client/proc/jobbans - //verbs += /client/proc/toggle_view_range - - // Admin game intrusion - //verbs += /client/proc/cmd_admin_remove_plasma - //verbs += /client/proc/drop_bomb // -- TLE - - //verbs += /client/proc/admin_call_shuttle // -- Skie - //verbs += /client/proc/admin_cancel_shuttle // -- Skie - //verbs += /client/proc/cmd_admin_create_centcom_report - verbs += /obj/admins/proc/vmode //start vote - verbs += /obj/admins/proc/votekill //abort vote - - //verbs += /obj/admins/proc/edit_memory - verbs += /obj/admins/proc/edit_player - //verbs += /client/proc/cmd_admin_alienize - //verbs += /client/proc/cmd_admin_changelinginize - //verbs += /client/proc/cmd_admin_abominize // -- TLE - //verbs += /client/proc/cmd_admin_monkeyize - //verbs += /client/proc/cmd_admin_robotize - //verbs += /client/proc/make_cultist // -- TLE - //verbs += /client/proc/cmd_admin_ninjafy //N - //verbs += /client/proc/respawn_character //N - - //verbs += /client/proc/Getmob - //verbs += /client/proc/sendmob - //verbs += /client/proc/Jump - //verbs += /client/proc/jumptokey - //verbs += /client/proc/jumptomob - //verbs += /client/proc/jumptoturf - - //verbs += /client/proc/cmd_admin_add_freeform_ai_law - //verbs += /client/proc/cmd_admin_add_random_ai_law - - //verbs += /client/proc/secrets - //verbs += /client/proc/cmd_admin_godmode - //verbs += /client/proc/cmd_admin_rejuvenate - //verbs += /client/proc/cmd_admin_grantfullaccess - //verbs += /client/proc/cmd_admin_gib - verbs += /client/proc/cmd_admin_gib_self - //verbs += /client/proc/cmd_admin_explosion - //verbs += /client/proc/cmd_admin_emp - //verbs += /client/proc/cmd_admin_delete - //verbs += /client/proc/cmd_admin_drop_everything - verbs += /client/proc/cmd_admin_prison - verbs += /obj/admins/proc/unprison - //verbs += /proc/togglebuildmode - - // Unnecessary commands - //verbs += /client/proc/funbutton - //verbs += /client/proc/make_sound // -- TLE - //verbs += /client/proc/object_talk // -- TLE - //verbs += /client/proc/play_sound - //verbs += /client/proc/cuban_pete // -- Urist - //verbs += /client/proc/bananaphone - //verbs += /client/proc/space_asshole // --Agouri :3 - //verbs += /client/proc/strike_team //N - //verbs += /client/proc/send_space_ninja //N - //verbs += /client/proc/spawn_xeno //N - //verbs += /proc/possess - //verbs += /proc/release - verbs += /client/proc/unjobban_panel - // Old and unused -// verbs += /obj/admins/proc/togglegoonsay -// verbs += /client/proc/grillify -// verbs += /client/proc/cmd_admin_list_admins -// verbs += /client/proc/getmobs if ("Admin Observer") holder.level = -1 - verbs += /client/proc/cmd_admin_say - verbs += /client/proc/cmd_admin_gib_self + if ("Banned") + holder.level = -2 del(src) return @@ -1051,181 +118,252 @@ del(holder) return - if (holder) + if (holder)//Slightly easier to edit way of granting powers holder.owner = src - if (holder.level > -1) - verbs += /client/proc/stealthadmin + if (holder.level >= 6)//Game Master******************************************************************** + + verbs += /client/proc/colorooc + verbs += /obj/admins/proc/toggle_aliens //toggle aliens + verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas + verbs += /obj/admins/proc/adjump + verbs += /client/proc/triple_ai + verbs += /client/proc/get_admin_state + verbs += /client/proc/reload_admins + verbs += /client/proc/kill_air + verbs += /client/proc/cmd_debug_make_powernets + verbs += /client/proc/object_talk + verbs += /client/proc/strike_team + + + if (holder.level >= 5)//Game Admin******************************************************************** + verbs += /obj/admins/proc/view_txt_log + verbs += /client/proc/cmd_mass_modify_object_variables + verbs += /client/proc/cmd_admin_list_open_jobs + verbs += /client/proc/cmd_admin_direct_narrate + verbs += /client/proc/cmd_admin_world_narrate + verbs += /client/proc/callproc + verbs += /client/proc/cmd_debug_del_all + verbs += /client/proc/cmd_debug_tog_aliens + verbs += /client/proc/ticklag + verbs += /obj/admins/proc/spawn_atom + verbs += /client/proc/check_words + verbs += /client/proc/drop_bomb + verbs += /client/proc/give_spell + verbs += /client/proc/cmd_admin_ninjafy + verbs += /client/proc/cmd_admin_grantfullaccess + verbs += /client/proc/cmd_admin_explosion + verbs += /client/proc/cmd_admin_emp + verbs += /client/proc/cmd_admin_drop_everything + verbs += /client/proc/make_sound + verbs += /client/proc/only_one + verbs += /client/proc/send_space_ninja + + + if (holder.level >= 4)//Badmin******************************************************************** + verbs += /obj/admins/proc/adrev //toggle admin revives + verbs += /obj/admins/proc/adspawn //toggle admin item spawning + verbs += /client/proc/debug_variables + verbs += /client/proc/cmd_modify_object_variables + verbs += /client/proc/cmd_modify_ticker_variables + verbs += /client/proc/Debug2 //debug toggle switch + verbs += /client/proc/toggle_view_range + verbs += /client/proc/Getmob + verbs += /client/proc/sendmob + verbs += /client/proc/Jump + verbs += /client/proc/jumptokey + verbs += /client/proc/jumptomob + verbs += /client/proc/jumptoturf + verbs += /client/proc/cmd_admin_add_freeform_ai_law + verbs += /client/proc/cmd_admin_add_random_ai_law + verbs += /client/proc/cmd_admin_godmode + verbs += /client/proc/cmd_admin_rejuvenate + verbs += /client/proc/cmd_admin_gib + verbs += /client/proc/cmd_admin_delete + verbs += /proc/togglebuildmode + verbs += /client/proc/togglebuildmodeself + verbs += /client/proc/hide_most_verbs + + + if (holder.level >= 3)//Trial Admin******************************************************************** + verbs += /client/proc/cmd_admin_remove_plasma + verbs += /client/proc/admin_call_shuttle + verbs += /client/proc/admin_cancel_shuttle + verbs += /obj/admins/proc/show_traitor_panel + verbs += /client/proc/cmd_admin_dress + verbs += /client/proc/respawn_character + verbs += /client/proc/spawn_xeno + verbs += /proc/possess + verbs += /proc/release + + + if (holder.level >= 2)//Admin Candidate******************************************************************** + verbs += /client/proc/cmd_admin_add_random_ai_law + verbs += /client/proc/secrets + verbs += /client/proc/play_sound + verbs += /client/proc/stealth + + + if (holder.level >= 1)//Temp Admin******************************************************************** + verbs += /client/proc/cmd_admin_attack_log + verbs += /client/proc/cmd_admin_check_contents + verbs += /obj/admins/proc/delay //game start delay + verbs += /obj/admins/proc/immreboot //immediate reboot + verbs += /obj/admins/proc/restart //restart + verbs += /client/proc/cmd_admin_create_centcom_report + + + if (holder.level >= 0)//Mod******************************************************************** + verbs += /obj/admins/proc/toggleAI //Toggle the AI + verbs += /obj/admins/proc/toggleenter //Toggle enterting + verbs += /obj/admins/proc/toggleguests //Toggle guests entering + verbs += /obj/admins/proc/toggleooc //toggle ooc + verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc + verbs += /obj/admins/proc/voteres //toggle votes + verbs += /client/proc/deadchat //toggles deadchat + verbs += /client/proc/cmd_admin_mute + verbs += /client/proc/cmd_admin_pm + verbs += /client/proc/cmd_admin_subtle_message + verbs += /client/proc/warn + verbs += /obj/admins/proc/announce + verbs += /obj/admins/proc/startnow + verbs += /client/proc/dsay verbs += /client/proc/admin_play verbs += /client/proc/admin_observe - verbs += /client/proc/voting verbs += /client/proc/game_panel - verbs += /client/proc/unban_panel verbs += /client/proc/player_panel + verbs += /client/proc/unban_panel + verbs += /client/proc/jobbans + verbs += /client/proc/unjobban_panel + verbs += /obj/admins/proc/vmode + verbs += /obj/admins/proc/votekill + verbs += /client/proc/voting + verbs += /obj/admins/proc/edit_player + verbs += /client/proc/cmd_admin_prison + verbs += /obj/admins/proc/unprison + verbs += /client/proc/hide_verbs + verbs += /client/proc/general_report + verbs += /client/proc/air_report + + + if (holder.level >= -1)//Admin Observer + verbs += /client/proc/cmd_admin_say + verbs += /client/proc/cmd_admin_gib_self - if(holder.level > 1) - verbs += /client/proc/stealth /client/proc/clear_admin_verbs() deadchat = 0 - // Verbs manager - verbs -= /client/proc/stealthadmin - verbs -= /client/proc/unstealthadmin - - // Settings - verbs -= /obj/admins/proc/view_txt_log - verbs -= /client/proc/colorooc // -- Urist - verbs -= /obj/admins/proc/adjump //toggle admin jumping - verbs -= /obj/admins/proc/adrev //toggle admin revives - verbs -= /obj/admins/proc/adspawn //toggle admin item spawning - verbs -= /obj/admins/proc/delay //game start delay - verbs -= /obj/admins/proc/toggleaban //abandon mob - verbs -= /obj/admins/proc/toggleAI //Toggle the AI - verbs -= /obj/admins/proc/toggleenter //Toggle enterting - verbs -= /obj/admins/proc/toggleguests //Toggle guests entering - verbs -= /obj/admins/proc/toggleooc //toggle ooc - verbs -= /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs -= /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - verbs -= /obj/admins/proc/toggle_aliens + verbs -= /client/proc/hide_verbs + verbs -= /client/proc/hide_most_verbs + verbs -= /client/proc/show_verbs + verbs -= /client/proc/colorooc + verbs -= /obj/admins/proc/toggle_aliens //toggle aliens verbs -= /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs -= /obj/admins/proc/voteres //toggle votes - verbs -= /client/proc/deadchat //toggles deadchat - verbs -= /proc/toggle_adminmsg - - // Admin "must have" - verbs -= /client/proc/cmd_admin_list_occ - verbs -= /client/proc/cmd_admin_mute - verbs -= /client/proc/cmd_admin_pm - verbs -= /client/proc/cmd_admin_direct_narrate // -- TLE - //verbs -= /client/proc/cmd_admin_say - verbs -= /client/proc/cmd_admin_subtle_message - verbs -= /client/proc/cmd_admin_world_narrate // -- TLE + verbs -= /obj/admins/proc/adjump + verbs -= /client/proc/triple_ai verbs -= /client/proc/get_admin_state - verbs -= /client/proc/warn - verbs -= /obj/admins/proc/announce //global announce - verbs -= /obj/admins/proc/immreboot //immediate reboot - verbs -= /obj/admins/proc/restart //restart - verbs -= /obj/admins/proc/startnow //start now bitch - - // Debug - verbs -= /client/proc/debug_variables - verbs -= /client/proc/cmd_modify_object_variables - verbs -= /client/proc/cmd_modify_ticker_variables - verbs -= /client/proc/general_report - verbs -= /client/proc/air_report - verbs -= /client/proc/air_status - verbs -= /client/proc/radio_report - verbs -= /client/proc/kill_air // -- TLE - verbs -= /client/proc/modifytemperature + verbs -= /client/proc/reload_admins + verbs -= /client/proc/kill_air + verbs -= /client/proc/cmd_debug_make_powernets + verbs -= /client/proc/object_talk + verbs -= /client/proc/strike_team + verbs -= /obj/admins/proc/view_txt_log + verbs -= /client/proc/cmd_mass_modify_object_variables + verbs -= /client/proc/cmd_admin_list_open_jobs + verbs -= /client/proc/cmd_admin_direct_narrate + verbs -= /client/proc/cmd_admin_world_narrate verbs -= /client/proc/callproc verbs -= /client/proc/Cell verbs -= /client/proc/cmd_debug_del_all verbs -= /client/proc/cmd_debug_tog_aliens - verbs -= /client/proc/Debug2 //debug toggle switch - verbs -= /client/proc/fix_next_move verbs -= /client/proc/ticklag - verbs -= /proc/givetestverbs verbs -= /obj/admins/proc/spawn_atom - verbs -= /obj/admins/proc/toggletintedweldhelmets - verbs -= /client/proc/atmosscan - verbs -= /client/proc/restartcontroller - verbs -= /client/proc/enable_mapping_debug - verbs -= /client/proc/do_not_use_these - verbs -= /client/proc/camera_view - verbs -= /client/proc/sec_camera_report - verbs -= /client/proc/intercom_view - - - // Admin helpers - verbs -= /client/proc/cmd_admin_attack_log - verbs -= /client/proc/cmd_admin_check_contents - verbs -= /client/proc/check_words // -- Urist - verbs -= /client/proc/dsay - verbs -= /client/proc/jobbans - verbs -= /client/proc/toggle_view_range - - // Admin game intrusion - verbs -= /client/proc/cmd_admin_remove_plasma - verbs -= /client/proc/drop_bomb // -- TLE - - verbs -= /client/proc/admin_call_shuttle // -- Skie - verbs -= /client/proc/admin_cancel_shuttle // -- Skie - verbs -= /client/proc/cmd_admin_create_centcom_report - verbs -= /obj/admins/proc/vmode //start vote - verbs -= /obj/admins/proc/votekill //abort vote - + verbs -= /client/proc/check_words + verbs -= /client/proc/drop_bomb verbs -= /client/proc/give_spell - verbs -= /obj/admins/proc/edit_memory - verbs -= /obj/admins/proc/edit_player - verbs -= /client/proc/cmd_admin_dress - //verbs -= /client/proc/cmd_admin_alienize - //verbs -= /client/proc/cmd_admin_changelinginize - //verbs -= /client/proc/cmd_admin_abominize // -- TLE - //verbs -= /client/proc/cmd_admin_monkeyize - //verbs -= /client/proc/cmd_admin_robotize - //verbs -= /client/proc/make_cultist // -- TLE - verbs -= /client/proc/cmd_admin_ninjafy //N - //verbs -= /client/proc/makepAI - verbs -= /client/proc/respawn_character //N - + verbs -= /client/proc/cmd_admin_ninjafy + verbs -= /client/proc/cmd_admin_grantfullaccess + verbs -= /client/proc/cmd_admin_explosion + verbs -= /client/proc/cmd_admin_emp + verbs -= /client/proc/cmd_admin_drop_everything + verbs -= /client/proc/make_sound + verbs -= /client/proc/only_one + verbs -= /client/proc/send_space_ninja + verbs -= /obj/admins/proc/adrev //toggle admin revives + verbs -= /obj/admins/proc/adspawn //toggle admin item spawning + verbs -= /client/proc/debug_variables + verbs -= /client/proc/cmd_modify_object_variables + verbs -= /client/proc/cmd_modify_ticker_variables + verbs -= /client/proc/Debug2 //debug toggle switch + verbs -= /client/proc/toggle_view_range verbs -= /client/proc/Getmob verbs -= /client/proc/sendmob verbs -= /client/proc/Jump verbs -= /client/proc/jumptokey verbs -= /client/proc/jumptomob verbs -= /client/proc/jumptoturf - verbs -= /client/proc/cmd_admin_add_freeform_ai_law verbs -= /client/proc/cmd_admin_add_random_ai_law - - verbs -= /client/proc/secrets verbs -= /client/proc/cmd_admin_godmode verbs -= /client/proc/cmd_admin_rejuvenate - verbs -= /client/proc/cmd_admin_grantfullaccess verbs -= /client/proc/cmd_admin_gib - verbs -= /client/proc/cmd_admin_gib_self - verbs -= /client/proc/cmd_admin_explosion - verbs -= /client/proc/cmd_admin_emp verbs -= /client/proc/cmd_admin_delete - verbs -= /client/proc/cmd_admin_drop_everything - verbs -= /client/proc/cmd_admin_prison - verbs -= /obj/admins/proc/unprison verbs -= /proc/togglebuildmode - verbs -= /client/proc/cmd_mass_modify_object_variables - - verbs -= /client/proc/triple_ai - verbs -= /client/proc/only_one - // Unnecessary commands - //verbs -= /client/proc/funbutton - verbs -= /client/proc/make_sound // -- TLE - verbs -= /client/proc/object_talk // -- TLE - verbs -= /client/proc/play_sound -// verbs -= /client/proc/cuban_pete // -- Urist -// verbs -= /client/proc/honk_theme // -- Urist the Honky -// verbs -= /client/proc/bananaphone // -- Darem -// verbs -= /client/proc/space_asshole // --Agouri :3 - verbs -= /client/proc/strike_team //N - verbs -= /client/proc/send_space_ninja //N - verbs -= /client/proc/spawn_xeno //N + verbs -= /client/proc/togglebuildmodeself + verbs -= /client/proc/cmd_admin_remove_plasma + verbs -= /client/proc/admin_call_shuttle + verbs -= /client/proc/admin_cancel_shuttle + verbs -= /obj/admins/proc/show_traitor_panel + verbs -= /client/proc/cmd_admin_dress + verbs -= /client/proc/respawn_character + verbs -= /client/proc/spawn_xeno verbs -= /proc/possess verbs -= /proc/release + verbs -= /client/proc/cmd_admin_add_random_ai_law + verbs -= /client/proc/secrets + verbs -= /client/proc/play_sound + verbs -= /client/proc/stealth + verbs -= /client/proc/cmd_admin_attack_log + verbs -= /client/proc/cmd_admin_check_contents + verbs -= /obj/admins/proc/delay //game start delay + verbs -= /obj/admins/proc/immreboot //immediate reboot + verbs -= /obj/admins/proc/restart //restart + verbs -= /client/proc/cmd_admin_create_centcom_report + verbs -= /obj/admins/proc/toggleAI //Toggle the AI + verbs -= /obj/admins/proc/toggleenter //Toggle enterting + verbs -= /obj/admins/proc/toggleguests //Toggle guests entering + verbs -= /obj/admins/proc/toggleooc //toggle ooc + verbs -= /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc + verbs -= /obj/admins/proc/voteres //toggle votes + verbs -= /client/proc/deadchat //toggles deadchat + verbs -= /client/proc/cmd_admin_mute + verbs -= /client/proc/cmd_admin_pm + verbs -= /client/proc/cmd_admin_say + verbs -= /client/proc/cmd_admin_subtle_message + verbs -= /client/proc/warn + verbs -= /obj/admins/proc/announce + verbs -= /obj/admins/proc/startnow + verbs -= /client/proc/dsay + verbs -= /client/proc/admin_play + verbs -= /client/proc/admin_observe + verbs -= /client/proc/game_panel + verbs -= /client/proc/player_panel + verbs -= /client/proc/unban_panel + verbs -= /client/proc/jobbans verbs -= /client/proc/unjobban_panel -// verbs -= /obj/admins/proc/togglegoonsay -// verbs -= /client/proc/grillify -// verbs -= /client/proc/cmd_admin_list_admins -// verbs -= /client/proc/getmobs + verbs -= /obj/admins/proc/vmode + verbs -= /obj/admins/proc/votekill + verbs -= /client/proc/voting + verbs -= /obj/admins/proc/edit_player + verbs -= /client/proc/cmd_admin_prison + verbs -= /obj/admins/proc/unprison + verbs -= /client/proc/hide_verbs + verbs -= /client/proc/general_report + verbs -= /client/proc/air_report + verbs -= /client/proc/cmd_admin_say + verbs -= /client/proc/cmd_admin_gib_self + return - if(holder) - holder.level = 0 - holder.owner = src - - verbs -= /client/proc/admin_play - verbs -= /client/proc/admin_observe - verbs -= /client/proc/voting - verbs -= /client/proc/game_panel - verbs -= /client/proc/unban_panel - verbs -= /client/proc/player_panel - verbs -= /client/proc/stealth /client/proc/admin_observe() set category = "Admin" @@ -1233,13 +371,9 @@ if(!holder) alert("You are not an admin") return -/* - if(!mob.start) - alert("You cannot observe while in the starting position") - return -*/ + verbs -= /client/proc/admin_play - spawn( 1200 ) //change this to 1200 + spawn( 1200 ) verbs += /client/proc/admin_play var/rank = holder.rank clear_admin_verbs() @@ -1256,7 +390,7 @@ alert("You are not an admin") return verbs -= /client/proc/admin_observe - spawn( 1200 ) //change this to 1200 + spawn( 1200 ) verbs += /client/proc/admin_observe var/rank = holder.rank clear_admin_verbs() @@ -1278,7 +412,6 @@ else src << "[M.key] is undefined - [M.client.holder.state]" -//admin client procs ported over from mob.dm /client/proc/player_panel() set name = "Player Panel" @@ -1314,46 +447,13 @@ if (holder) holder.Secrets() return -/* -/client/proc/goons() - set name = "Goons" - set category = "Admin" - if (holder) - holder.goons() - return -/client/proc/beta_testers() - set name = "Testers" - set category = "Admin" - if (holder) - holder.beta_testers() - return -*/ /client/proc/voting() set name = "Voting" set category = "Admin" if (holder) holder.Voting() -/* This thing does nothing but crash the server. -/client/proc/funbutton() - set category = "Fun" - set name = "Boom Boom Boom Shake The Room" - if(!authenticated || !holder) - src << "Only administrators may use this command." - return - if(alert("BLOW EVERYTHING UP?",,"Yes","No")=="Yes") - for(var/turf/simulated/floor/T in world) - if(prob(4) && T.z == 1 && istype(T)) - spawn(50+rand(0,3000)) - explosion(T, rand(1,5), rand(1,6), rand(3,10), 0) - - usr << "\blue Blowing up station ..." - - log_admin("[key_name(usr)] has used boom boom boom shake the room") - message_admins("[key_name_admin(usr)] has used boom boom boom shake the room", 1) -*/ - /client/proc/colorooc() set category = "Fun" set name = "OOC Text Color" @@ -1404,24 +504,13 @@ message_admins("\blue [ckey] warned [M.ckey], resulting in a [AUTOBATIME] minute autoban.") del(M.client) - //del(M) + /client/proc/drop_bomb() // Some admin dickery that can probably be done better -- TLE set category = "Special Verbs" set name = "Drop Bomb" set desc = "Cause an explosion of varying strength at your location." - // Old code - mostly leaving in for legacy reasons. Remove it if you like. - /* - set desc = "Spawn a plasma tank with overloaded pressure. Will trigger explosion on next air cycle." - var/bomb_strength = input("Enter a value greater than 299:", "Blowing Shit Up", 300) as num - if(bomb_strength < 300) - return - if(!mob) - return - message_admins("\blue [ckey] dropping a plasma bomb at [bomb_strength] strength.") - var/obj/item/weapon/tank/plasma/P = new(mob.loc) - P.air_contents.toxins = bomb_strength - */ + var/turf/epicenter = mob.loc var/list/choices = list("Small Bomb", "Medium Bomb", "Big Bomb", "Custom Bomb") var/choice = input("What size explosion would you like to produce?") in choices @@ -1441,15 +530,7 @@ var/flash_range = input("Flash range (in tiles):") as num explosion(epicenter, devastation_range, heavy_impact_range, light_impact_range, flash_range) message_admins("\blue [ckey] creating an admin explosion at [epicenter.loc].") -/* -/client/proc/check_words() // -- Urist - set category = "Special Verbs" - set name = "Check Rune Words" - set desc = "Check the rune-word meaning" - if(!wordtravel) - runerandom() - usr << "[wordtravel] is travel, [wordblood] is blood, [wordjoin] is join, [wordhell] is Hell, [worddestr] is destroy, [wordtech] is technology, [wordself] is self, [wordsee] is see" -*/ + /client/proc/give_spell(mob/T as mob in world) // -- Urist set category = "Fun" set name = "Give Spell" @@ -1468,6 +549,12 @@ for (var/mob/V in hearers(O)) V.show_message(message, 2) +/client/proc/togglebuildmodeself() + set name = "Toggle Build Mode Self" + set category = "Special Verbs" + if(src.mob) + togglebuildmode(src.mob) + /client/proc/object_talk(var/msg as text) // -- TLE set category = "Special Verbs" set name = "oSay" @@ -1489,272 +576,65 @@ kill_air = 1 usr << "Disabled air processing." -/* -/client/proc/givedisease(var/mob/living/carbon/M in world) - set category = "Debug" - set name = "Give disease 2.0" - set desc = "Does what it says on the tin" - infect_mob_random(M) - message_admins("\blue [src.ckey] infected [M.real_name]([M.ckey]) with a random disease 2.0") -*/ - - - -/client/proc/unstealthadmin() +/client/proc/show_verbs() set name = "Toggle admin verb visibility" set category = "Admin" - src << "Here's your rightclick admin verbs back" + src << "Restoring admin verbs back" - verbs -= /client/proc/unstealthadmin var/temp = deadchat + clear_admin_verbs() update_admins(holder.rank) deadchat = temp -/client/proc/stealthadmin() - set name = "Toggle admin verb visibility" +/client/proc/hide_most_verbs()//Allows you to keep some functionality while hiding some verbs + set name = "Toggle most admin verb visibility" set category = "Admin" - src << "Hiding your rightclick admin verbs so you can play without 'accidentally' gibbing someone" + src << "Hiding most admin verbs" var/temp = deadchat - clear_admin_verbs() - deadchat = temp + verbs -= /client/proc/hide_verbs + verbs -= /client/proc/hide_most_verbs + verbs += /client/proc/show_verbs - verbs += /client/proc/unstealthadmin + if(holder.level >= 6)//Game Master******************************************************************** + verbs += /client/proc/colorooc - switch (holder.rank) - if ("Game Master") //Former Host - // Settings - //verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - verbs += /obj/admins/proc/toggle_aliens - verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg + if(holder.level >= 4)//Badmin******************************************************************** + verbs += /client/proc/debug_variables + verbs += /client/proc/cmd_modify_object_variables + verbs += /client/proc/Jump + verbs += /client/proc/jumptoturf + verbs += /client/proc/togglebuildmodeself - // Admin "must have" + verbs += /client/proc/dsay + verbs += /client/proc/admin_play + verbs += /client/proc/admin_observe + verbs += /client/proc/game_panel + verbs += /client/proc/player_panel + verbs += /client/proc/cmd_admin_subtle_message + verbs += /client/proc/cmd_admin_gib_self - // Debug - - // Admin helpers - - // Admin game intrusion - - // Unnecessary commands - - // Old and unused - - if ("Game Admin") //Former Coder - // Settings - //verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - - // Admin "must have" - - // Debug - - // Admin helpers - - // Admin game intrusion - - // Unnecessary commands - - // Old and unused - - if ("Badmin") //Former Shit Guy - // Settings - //verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - - // Admin "must have" - - // Debug - - // Admin helpers - - // Admin game intrusion - - // Unnecessary commands - - // Old and unused - - if ("Trial Admin") //Former Primary Administrator - if(holder.state == 2) // if observing - // Settings - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling - - // Settings - //verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - //verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - //verbs += /obj/admins/proc/toggleooc //toggle ooc - //verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - //verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - - // Admin "must have" - - // Debug - - // Admin helpers - - // Admin game intrusion - - // Unnecessary commands - - // Old and unused - - if ("Admin Candidate") //Removed the 'Administrator' rank, has same rights as Trial Admin (Expected that these will be set manually each round) - if(holder.state == 2) // if observing - // Settings - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - verbs += /obj/admins/proc/toggletraitorscaling - - // Settings - //verbs += /client/proc/colorooc // -- Urist - verbs += /obj/admins/proc/adjump //toggle admin jumping - verbs += /obj/admins/proc/adrev //toggle admin revives - verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - //verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - //verbs += /obj/admins/proc/toggleooc //toggle ooc - //verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - //verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg + verbs += /client/proc/deadchat //toggles deadchat + verbs += /obj/admins/proc/toggleooc //toggle ooc + verbs += /client/proc/cmd_admin_say//asay + return - if ("Temporary Admin") //Former Secondary Administrator - if(holder.state == 2) // if observing - // Settings - verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc +/client/proc/hide_verbs() + set name = "Toggle admin verb visibility" + set category = "Admin" + src << "Hiding almost all admin verbs" - // Settings - //verbs += /client/proc/colorooc // -- Urist - //verbs += /obj/admins/proc/adjump //toggle admin jumping - //verbs += /obj/admins/proc/adrev //toggle admin revives - //verbs += /obj/admins/proc/adspawn //toggle admin item spawning - verbs += /obj/admins/proc/delay //game start delay - //verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - //verbs += /obj/admins/proc/toggleooc //toggle ooc - //verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - //verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - //verbs += /proc/toggle_adminmsg + var/temp = deadchat + clear_admin_verbs() + deadchat = temp + verbs -= /client/proc/hide_verbs + verbs -= /client/proc/hide_most_verbs + verbs += /client/proc/show_verbs - // Admin "must have" - - // Debug - - // Admin helpers - - // Admin game intrusion - - // Unnecessary commands - - // Old and unused - - if ("Moderator") //Former Moderator - // Settings - //verbs += /client/proc/colorooc // -- Urist - //verbs += /obj/admins/proc/adjump //toggle admin jumping - //verbs += /obj/admins/proc/adrev //toggle admin revives - //verbs += /obj/admins/proc/adspawn //toggle admin item spawning - //verbs += /obj/admins/proc/delay //game start delay - //verbs += /obj/admins/proc/toggleaban //abandon mob - verbs += /obj/admins/proc/toggleAI //Toggle the AI - verbs += /obj/admins/proc/toggleenter //Toggle enterting - verbs += /obj/admins/proc/toggleguests //Toggle guests entering - verbs += /obj/admins/proc/toggleooc //toggle ooc - verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc - //verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling - //verbs += /obj/admins/proc/toggle_aliens - //verbs += /obj/admins/proc/toggle_space_ninja //toggle ninjas - verbs += /obj/admins/proc/voteres //toggle votes - verbs += /client/proc/deadchat //toggles deadchat - verbs += /proc/toggle_adminmsg - - // Admin "must have" - - // Debug - - // Admin helpers - - // Admin game intrusion - - // Unnecessary commands - - // Old and unused - - if ("Admin Observer") //Former Filthy Xeno + verbs += /client/proc/deadchat //toggles deadchat + verbs += /obj/admins/proc/toggleooc //toggle ooc + verbs += /client/proc/cmd_admin_say//asay + return diff --git a/code/modules/admin/banjob.dm b/code/modules/admin/banjob.dm index 45c59385666..b445ac408d4 100644 --- a/code/modules/admin/banjob.dm +++ b/code/modules/admin/banjob.dm @@ -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) diff --git a/code/modules/admin/verbs/changetemperature.dm b/code/modules/admin/verbs/changetemperature.dm deleted file mode 100644 index aacc70600ce..00000000000 --- a/code/modules/admin/verbs/changetemperature.dm +++ /dev/null @@ -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 -*/ \ No newline at end of file diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index 1c105a0ee5b..350e97dfa8e 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -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" diff --git a/code/modules/assembly/holder.dm b/code/modules/assembly/holder.dm index 397deb7c12d..f3c7a780eeb 100644 --- a/code/modules/assembly/holder.dm +++ b/code/modules/assembly/holder.dm @@ -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 diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 741f40b8ba5..7a0dd4caddc 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -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] : [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] : [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() diff --git a/code/modules/power/singularity/field_generator.dm b/code/modules/power/singularity/field_generator.dm index 238cc255b74..b351e05dff8 100644 --- a/code/modules/power/singularity/field_generator.dm +++ b/code/modules/power/singularity/field_generator.dm @@ -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 diff --git a/icons/changelog.html b/icons/changelog.html index 16b0170672e..37e3ecc3a9b 100644 --- a/icons/changelog.html +++ b/icons/changelog.html @@ -45,6 +45,17 @@ Stuff which is in development and not yet visible to players or just code relate (is. code improvements for expandability, etc.) should not be listed here. They should be listed in the changelog upon commit tho. Thanks. --> +9 August 2011. +
    +
  • Mport updated: +
      +
    • Cyborgs once again have open cover/cell icons.
    • +
    • To override a cyborg's laws you must emag it when the cover is open.
    • +
    • Emags can unlock a cyborgs cover.
    • +
    • Xbow radiation damage has been lowered from 100 to 20 a hit
    • +
    +
+ 5 August 2011.
  • Mport updated: diff --git a/icons/effects/effects.dmi b/icons/effects/effects.dmi index a6c994d7d9672c925e5674d8e7e0438d12626dfd..e99ff69e066051d917354b36c22d0121ee9d22d3 100644 GIT binary patch delta 160 zcmV;R0AK&c!VAj63y>rMLa`gHXjwj3OYml#Y5(BYSF_rTF^I1KKIRt0 zY7m9-vBHRTd8|jmZ5~Z5z3tIo!t{K41j@ah+3Wj?t=`u0AERX);SVG@mV<2qhiw7@ zw`~Ff3&8=qw|TrMK(QtN0ZAZ?xp${tv@9R2CU`f_w105yt6goz7{qq~AM*=h zIf%meSYgD%Jk}%OHjgHj-uCD(VR}Ai!ZUk)U$NEOI{pJP*A$>?=9}GvZvuyJ0s*&g z0s;%c0lBw(!vYHr1@!dvXw|oj(gKYO2cDjuP}NdRw;|pF6$2D2hR)*S9wMOt0000< KMNUMnLSTY8TSZO) diff --git a/icons/mob/hivebot.dmi b/icons/mob/hivebot.dmi index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..e39e11faa98035e74653808d3fb29c70f6532a18 100644 GIT binary patch literal 11278 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
    pAMCyZoQkZSZs{YD`8UyXd7uQF(n?QP?ldAX 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 delta 11436 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 WI(O8U9QfTUNdB#gOu3YC!2bZN`U;Bx literal 15751 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 literal 0 HcmV?d00001 diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index 9f8cf6b29debf0caf1934c3c95a3a26494da93ce..d9b8c702bee2a63f9f5a7b0531a807dd83fec932 100644 GIT binary patch literal 16642 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 eN~ecXd;TA|fqclCqNB?I0000