Jack Rost updates:

-more dismantable consoles:
--Teleporter
--Supply ordering console
--Supply shuttle console
--Power Monitor
-new circuit boards (both constructable and destructable)
--Supply ordering console (programming 2)
--Supply shuttle console (programming 3)
--Outpost Status Display(programming 2)
--Operating Computer (programming 2, biotech 2)
-R&D Console circuit now requires programming 4 (was 6).


Balagi updates:
-Trash bag: works as mining satchels but for trash.
-Started redesign computers code
-fixed candles sprites
-trashbag now has "in hands" sprite
-fixed emagging supply shuttle console

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1883 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
rastaf.zero@gmail.com
2011-07-18 19:17:58 +00:00
parent 6bc651f9ab
commit 4f7030a426
24 changed files with 295 additions and 427 deletions

View File

@@ -45,6 +45,14 @@
user << "You can't place that item inside the disposal unit."
return
if(istype(I, /obj/item/weapon/trashbag))
user << "\blue You empty the bag."
for (var/obj/item/trash/O in I.contents)
I.contents -= O
O.loc = src
I.update_icon()
return
var/obj/item/weapon/grab/G = I
if(istype(G)) // handle grabbed mob
if(ismob(G.affecting))

View File

@@ -3,6 +3,8 @@
icon = 'computer.dmi'
density = 1
anchored = 1.0
var/obj/item/weapon/circuitboard/circuit = null //if circuit==null, computer can't disassemble
/*
/obj/machinery/computer/airtunnel
name = "Air Tunnel Control"
@@ -16,6 +18,7 @@
anchored = 1.0
icon = 'computer.dmi'
icon_state = "comm"
circuit = "/obj/item/weapon/circuitboard/operating"
var/mob/living/carbon/human/victim = null
@@ -31,6 +34,7 @@
desc = "Does not support Pin ball."
icon = 'computer.dmi'
icon_state = "arcade"
circuit = "/obj/item/weapon/circuitboard/arcade"
var/enemy_name = "Space Villian"
var/temp = "Winners Don't Use Spacedrugs" //Temporary message, for attack messages, etc
var/player_hp = 30 //Player health/attack points
@@ -44,6 +48,7 @@
name = "AI Upload"
desc = "It is said that you can upload silly laws to AI's with this."
icon_state = "command"
circuit = "/obj/item/weapon/circuitboard/aiupload"
var/mob/living/silicon/ai/current = null
var/opened = 0
@@ -61,6 +66,7 @@
name = "Station Alert Computer"
desc = "Alert. Alert. ALERT!!!"
icon_state = "alert:0"
circuit = "/obj/item/weapon/circuitboard/stationalert"
var/alarms = list("Fire"=list(), "Atmosphere"=list(), "Power"=list())
/obj/machinery/computer/atmos_alert
@@ -86,6 +92,7 @@
name = "Identification Computer"
desc = "You can use this to change ID's. YOU ARE GOD!"
icon_state = "id"
circuit = "/obj/item/weapon/circuitboard/card"
var/obj/item/weapon/card/id/scan = null
var/obj/item/weapon/card/id/modify = null
var/authenticated = 0.0
@@ -97,6 +104,7 @@
/obj/machinery/computer/card/centcom
name = "CentCom Identification Computer"
desc = "You are the Gods's God."
circuit = "/obj/item/weapon/circuitboard/card/centcom"
req_access = list(access_cent_captain)
/obj/machinery/computer/communications
@@ -104,6 +112,7 @@
desc = "This can be used for various important functions. Still under developement."
icon_state = "comm"
req_access = list(access_heads)
circuit = "/obj/item/weapon/circuitboard/communications"
var/prints_intercept = 1
var/authenticated = 0
var/list/messagetitle = list()
@@ -167,6 +176,7 @@
desc = "This can be used to check medical records."
icon_state = "dna"
req_access = list(access_medical)
circuit = "/obj/item/weapon/circuitboard/med_data"
var/obj/item/weapon/card/id/scan = null
var/authenticated = null
var/rank = null
@@ -246,6 +256,7 @@
desc = "Beepsky. ARREST!!!"
icon_state = "security"
req_access = list(access_security)
circuit = "/obj/item/weapon/circuitboard/secure_data"
var/obj/item/weapon/card/id/scan = null
var/authenticated = null
var/rank = null
@@ -265,6 +276,7 @@
name = "Security Cameras"
desc = "Better than Television."
icon_state = "cameras"
circuit = "/obj/item/weapon/circuitboard/security"
var/obj/machinery/camera/current = null
var/last_pic = 1.0
var/network = "SS13"
@@ -277,6 +289,7 @@
icon_state = "telescreen"
network = "thunder"
density = 0
circuit = null
/obj/machinery/computer/security/wooden_tv
name = "Security Cameras"
@@ -288,6 +301,7 @@
desc = "It's better than reality TV."
icon_state = "miningcameras"
network = "MINE"
circuit = "/obj/item/weapon/circuitboard/mining"
/obj/machinery/computer/shuttle
name = "Shuttle"
@@ -316,4 +330,34 @@
use_power = 1
idle_power_usage = 250
active_power_usage = 500
circuit = "/obj/item/weapon/circuitboard/crew"
var/list/tracked = list( )
/obj/machinery/computer/robotics
name = "Robotics Control"
icon = 'computer.dmi'
icon_state = "robot"
req_access = list(access_robotics)
circuit = "/obj/item/weapon/circuitboard/robotics"
var/id = 0.0
var/temp = null
var/status = 0
var/timeleft = 60
var/stop = 0.0
var/screen = 0 // 0 - Main Menu, 1 - Cyborg Status, 2 - Kill 'em All! -- In text
/obj/machinery/computer/prisoner
name = "Prisoner Management"
icon = 'computer.dmi'
icon_state = "explosive"
req_access = list(access_armory)
circuit = "/obj/item/weapon/circuitboard/prisoner"
var/id = 0.0
var/temp = null
var/status = 0
var/timeleft = 60
var/stop = 0.0
var/screen = 0 // 0 - No Access Denied, 1 - Access allowed
var/malf_access = 0

View File

@@ -16,7 +16,6 @@
return
interact(user)
/obj/machinery/computer/operating/proc/interact(mob/user)
if ( (get_dist(src, user) > 1 ) || (stat & (BROKEN|NOPOWER)) )
if (!istype(user, /mob/living/silicon))

View File

@@ -1,34 +1,3 @@
/obj/machinery/computer/arcade/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/arcade/M = new /obj/item/weapon/circuitboard/arcade( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/arcade/M = new /obj/item/weapon/circuitboard/arcade( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/computer/arcade/New()
..()
var/name_action

View File

@@ -20,38 +20,6 @@ Atmos alert computer
return
interact(user)
/obj/machinery/computer/station_alert/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var /obj/item/weapon/circuitboard/stationalert/M = new /obj/item/weapon/circuitboard/stationalert( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/stationalert/M = new /obj/item/weapon/circuitboard/stationalert( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/computer/station_alert/proc/interact(mob/user)
usr.machine = src
var/dat = "<HEAD><TITLE>Current Station Alerts</TITLE><META HTTP-EQUIV='Refresh' CONTENT='10'></HEAD><BODY>\n"

View File

@@ -141,6 +141,22 @@
name = "Circuit board (Mech Bay Power Control Console)"
build_path = "/obj/machinery/computer/mech_bay_power_console"
origin_tech = "programming=2;powerstorage=3"
/obj/item/weapon/circuitboard/ordercomp
name = "Circuit board (Supply ordering console)"
build_path = "/obj/machinery/computer/ordercomp"
origin_tech = "programming=2"
/obj/item/weapon/circuitboard/supplycomp
name = "Circuit board (Supply shuttle console)"
build_path = "/obj/machinery/computer/supplycomp"
origin_tech = "programming=3"
/obj/item/weapon/circuitboard/operating
name = "Circuit board (Operating Computer)"
build_path = "/obj/machinery/computer/operating"
origin_tech = "programming=2;biotech=2"
/obj/item/weapon/circuitboard/mining
name = "Circuit board (Outpost Status Display)"
build_path = "/obj/machinery/computer/security/mining"
origin_tech = "programming=2"
/obj/computerframe/attackby(obj/item/P as obj, mob/user as mob)

View File

@@ -156,37 +156,6 @@
AL.open()
AL.lockdownbyai = 0
/obj/machinery/computer/communications/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/communications/M = new /obj/item/weapon/circuitboard/communications( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/communications/M = new /obj/item/weapon/circuitboard/communications( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/computer/communications/attack_ai(var/mob/user as mob)
return src.attack_hand(user)

View File

@@ -92,41 +92,35 @@ Pod/Blast Doors computer
icon_state += "b"
stat |= BROKEN
/obj/machinery/computer/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver) && circuit)
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/M = new circuit( A )
A.circuit = M
A.anchored = 1
for (var/obj/C in src)
C.loc = src.loc
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
new /obj/item/weapon/shard( src.loc )
A.state = 3
A.icon_state = "3"
else
user << "\blue You disconnect the monitor."
A.state = 4
A.icon_state = "4"
del(src)
else
src.attack_hand(user)
return
/obj/machinery/computer/security/New()
..()
verbs -= /obj/machinery/computer/security/verb/station_map
/obj/machinery/computer/security/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( loc )
new /obj/item/weapon/shard( loc )
var/obj/item/weapon/circuitboard/security/M = new /obj/item/weapon/circuitboard/security( A )
for (var/obj/C in src)
C.loc = loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( loc )
var/obj/item/weapon/circuitboard/security/M = new /obj/item/weapon/circuitboard/security( A )
for (var/obj/C in src)
C.loc = loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
attack_hand(user)
return
/obj/machinery/computer/security/attack_ai(var/mob/user as mob)
return attack_hand(user)
@@ -139,8 +133,6 @@ Pod/Blast Doors computer
user.reset_view(current)
return 1
/obj/machinery/computer/card/attack_ai(var/mob/user as mob)
return attack_hand(user)
@@ -295,38 +287,6 @@ Pod/Blast Doors computer
updateUsrDialog()
return
/obj/machinery/computer/card/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
var/card_path = text2path("/obj/item/weapon/circuitboard/card[istype(src,/obj/machinery/computer/card/centcom)?"/centcom":""]")
if (stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( loc )
new /obj/item/weapon/shard( loc )
var/obj/item/weapon/circuitboard/card/M = new card_path( A )
for (var/obj/C in src)
C.loc = loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( loc )
var/obj/item/weapon/circuitboard/card/M = new card_path( A )
for (var/obj/C in src)
C.loc = loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
attack_hand(user)
return
/obj/datacore/proc/manifest()
for(var/mob/living/carbon/human/H in world)
if (!isnull(H.mind) && (H.mind.assigned_role != "MODE"))

View File

@@ -1,34 +1,3 @@
/obj/machinery/computer/crew/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/crew/M = new /obj/item/weapon/circuitboard/crew( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/crew/M = new /obj/item/weapon/circuitboard/crew( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/computer/crew
New()
tracked = list()

View File

@@ -1,51 +1,3 @@
/obj/machinery/computer/prisoner
name = "Prisoner Management"
icon = 'computer.dmi'
icon_state = "explosive"
req_access = list(access_armory)
var/id = 0.0
var/temp = null
var/status = 0
var/timeleft = 60
var/stop = 0.0
var/screen = 0 // 0 - No Access Denied, 1 - Access allowed
var/malf_access = 0
/obj/machinery/computer/prisoner/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/prisoner/M = new /obj/item/weapon/circuitboard/prisoner( A )
for (var/obj/C in src)
C.loc = src.loc
M.id = src.id
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/prisoner/M = new /obj/item/weapon/circuitboard/prisoner( A )
for (var/obj/C in src)
C.loc = src.loc
M.id = src.id
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
//else
src.attack_hand(user)
return
/obj/machinery/computer/prisoner/attack_ai(var/mob/user as mob)
user << "\red Access Denied"
if(user.icon_state == "ai-malf" && malf_access == 0)

View File

@@ -1,34 +1,3 @@
/obj/machinery/computer/med_data/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/med_data/M = new /obj/item/weapon/circuitboard/med_data( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/med_data/M = new /obj/item/weapon/circuitboard/med_data( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/computer/med_data/attack_ai(user as mob)
return src.attack_hand(user)

View File

@@ -18,6 +18,36 @@ var/reportingpower = 0 //this tracks whether this power monitoring computer is
return
interact(user)
/obj/machinery/power/monitor/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/powermonitor/M = new /obj/item/weapon/circuitboard/powermonitor( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/powermonitor/M = new /obj/item/weapon/circuitboard/powermonitor( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/power/monitor/proc/interact(mob/user)

View File

@@ -1,50 +1,3 @@
/obj/machinery/computer/robotics
name = "Robotics Control"
icon = 'computer.dmi'
icon_state = "robot"
req_access = list(access_robotics)
var/id = 0.0
var/temp = null
var/status = 0
var/timeleft = 60
var/stop = 0.0
var/screen = 0 // 0 - Main Menu, 1 - Cyborg Status, 2 - Kill 'em All! -- In text
/obj/machinery/computer/robotics/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/robotics/M = new /obj/item/weapon/circuitboard/robotics( A )
for (var/obj/C in src)
C.loc = src.loc
M.id = src.id
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/robotics/M = new /obj/item/weapon/circuitboard/robotics( A )
for (var/obj/C in src)
C.loc = src.loc
M.id = src.id
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
//else
src.attack_hand(user)
return
/obj/machinery/computer/robotics/attack_ai(var/mob/user as mob)
return src.attack_hand(user)

View File

@@ -1,34 +1,3 @@
/obj/machinery/computer/secure_data/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( loc )
new /obj/item/weapon/shard( loc )
var/obj/item/weapon/circuitboard/secure_data/M = new /obj/item/weapon/circuitboard/secure_data( A )
for (var/obj/C in src)
C.loc = loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( loc )
var/obj/item/weapon/circuitboard/secure_data/M = new /obj/item/weapon/circuitboard/secure_data( A )
for (var/obj/C in src)
C.loc = loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
attack_hand(user)
return
/obj/machinery/computer/secure_data/attack_ai(mob/user as mob)
return attack_hand(user)

View File

@@ -25,6 +25,37 @@
else
src.attack_hand()
/obj/machinery/computer/teleporter/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/teleporter/M = new /obj/item/weapon/circuitboard/teleporter( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/teleporter/M = new /obj/item/weapon/circuitboard/teleporter( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/computer/teleporter/attack_paw()
src.attack_hand()

View File

@@ -128,6 +128,7 @@
anchored = 1
icon = 'mech_bay.dmi'
icon_state = "recharge_comp"
circuit = "/obj/item/weapon/circuitboard/mech_bay_power_console"
var/autostart = 1
var/voltage = 45
var/turf/simulated/floor/mech_bay_recharge_floor/recharge_floor
@@ -171,37 +172,6 @@
if(recharge_port)
recharge_port.stop_charge()
attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/mech_bay_power_console/M = new /obj/item/weapon/circuitboard/mech_bay_power_console( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/mech_bay_power_console/M = new /obj/item/weapon/circuitboard/mech_bay_power_console( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
attack_hand(mob/user as mob)
if(..()) return
var/output = "<html><head><title>[src.name]</title></head><body>"

View File

@@ -3,39 +3,11 @@
icon = 'computer.dmi'
icon_state = "mecha"
req_access = list(access_robotics)
circuit = "/obj/item/weapon/circuitboard/mecha_control"
var/list/located = list()
var/screen = 0
var/stored_data
attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/mecha_control/M = new /obj/item/weapon/circuitboard/mecha_control( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/mecha_control/M = new /obj/item/weapon/circuitboard/mecha_control( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
return
attack_ai(var/mob/user as mob)
return src.attack_hand(user)

View File

@@ -27,6 +27,8 @@
light()
else if(istype(W, /obj/item/weapon/match) && W:lit)
light()
else if(istype(W, /obj/item/candle) && W:lit)
light()
@@ -63,6 +65,7 @@
lit = 0
update_icon()
sd_SetLuminosity(0)
user.sd_SetLuminosity(user.luminosity - CANDLE_LUM)
/obj/item/candle/pickup(mob/user)
if(lit)

View File

@@ -46,3 +46,61 @@
name = "candle"
icon = 'candle.dmi'
icon_state = "candle4"
/obj/item/trash/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
if (istype(W, /obj/item/weapon/trashbag))
var/obj/item/weapon/trashbag/S = W
if (S.mode == 1)
for (var/obj/item/trash/O in locate(src.x,src.y,src.z))
if (S.contents.len < S.capacity)
S.contents += O;
else
user << "\blue The bag is full."
break
user << "\blue You pick up all trash."
else
if (S.contents.len < S.capacity)
S.contents += src;
else
user << "\blue The bag is full."
S.update_icon()
return
/obj/item/weapon/trashbag
icon = 'trash.dmi'
icon_state = "trashbag0"
item_state = "trashbag"
name = "Trash bag"
var/mode = 0; //0 = pick one at a time, 1 = pick all on tile
var/capacity = 25; //the number of trash it can carry.
flags = FPRINT | TABLEPASS | ONBELT
w_class = 1
/obj/item/weapon/trashbag/update_icon()
if(contents.len == 0)
icon_state = "trashbag0"
else if(contents.len < 12)
icon_state = "trashbag1"
else if(contents.len < 25)
icon_state = "trashbag2"
else icon_state = "trashbag3"
/obj/item/weapon/trashbag/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
if (istype(W, /obj/item/trash))
var/obj/item/trash/O = W
src.contents += O;
return
/obj/item/weapon/trashbag/verb/toggle_mode()
set name = "Switch Bag Method"
set category = "Object"
mode = !mode
switch (mode)
if(1)
usr << "The bag now picks up all trash in a tile at once."
if(0)
usr << "The bag now picks up one trash at a time."

View File

@@ -111,6 +111,15 @@ datum
materials = list("$glass" = 2000, "acid" = 20)
build_path = "/obj/item/weapon/circuitboard/med_data"
operating
name = "Circuit Design (Operating Computer)"
desc = "Allows for the construction of circuit boards used to build an operating computer console."
id = "operating"
req_tech = list("programming" = 2, "biotech" = 2)
build_type = IMPRINTER
materials = list("$glass" = 2000, "acid" = 20)
build_path = "/obj/item/weapon/circuitboard/operating"
pandemic
name = "Circuit Design (PanD.E.M.I.C. 2200)"
desc = "Allows for the construction of circuit boards used to build a PanD.E.M.I.C. 2200 console."
@@ -266,7 +275,7 @@ datum
mechapower
name = "Circuit Design (Mech Bay Power Control Console)"
desc = "Allows for the construction of circuit boards used to build an mech bay power control console."
desc = "Allows for the construction of circuit boards used to build a mech bay power control console."
id = "mechapower"
req_tech = list("programming" = 2, "powerstorage" = 3)
build_type = IMPRINTER
@@ -275,13 +284,40 @@ datum
rdconsole
name = "Circuit Design (R&D Console)"
desc = "Allows for the construction of circuit boards used to build an new R&D console."
desc = "Allows for the construction of circuit boards used to build a new R&D console."
id = "rdconsole"
req_tech = list("programming" = 6)
req_tech = list("programming" = 4)
build_type = IMPRINTER
materials = list("$glass" = 2000, "acid" = 20)
build_path = "/obj/item/weapon/circuitboard/rdconsole"
ordercomp
name = "Circuit Design (Supply ordering console)"
desc = "Allows for the construction of circuit boards used to build a Supply ordering console."
id = "ordercomp"
req_tech = list("programming" = 2)
build_type = IMPRINTER
materials = list("$glass" = 2000, "acid" = 20)
build_path = "/obj/item/weapon/circuitboard/ordercomp"
supplycomp
name = "Circuit Design (Supply shuttle console)"
desc = "Allows for the construction of circuit boards used to build a Supply shuttle console."
id = "supplycomp"
req_tech = list("programming" = 3)
build_type = IMPRINTER
materials = list("$glass" = 2000, "acid" = 20)
build_path = "/obj/item/weapon/circuitboard/supplycomp"
mining
name = "Circuit Design (Outpost Status Display)"
desc = "Allows for the construction of circuit boards used to build an outpost status display console."
id = "mining"
req_tech = list("programming" = 2)
build_type = IMPRINTER
materials = list("$glass" = 2000, "acid" = 20)
build_path = "/obj/item/weapon/circuitboard/mining"
///////////////////////////////////
//////////AI Module Disks//////////
///////////////////////////////////

View File

@@ -74,6 +74,7 @@ var/ordernum=0
icon = 'computer.dmi'
icon_state = "supply"
req_access = list(access_cargo)
circuit = "/obj/item/weapon/circuitboard/supplycomp"
var/temp = null
var/hacked = 0
@@ -81,6 +82,7 @@ var/ordernum=0
name = "Supply ordering console"
icon = 'computer.dmi'
icon_state = "request"
circuit = "/obj/item/weapon/circuitboard/ordercomp"
var/temp = null
/obj/marker/supplymarker
@@ -208,31 +210,18 @@ var/ordernum=0
return
/obj/machinery/computer/ordercomp/attackby(I as obj, user as mob)
return src.attack_hand(user)
/obj/machinery/computer/ordercomp/attack_ai(var/mob/user as mob)
return src.attack_hand(user)
/obj/machinery/computer/ordercomp/attack_paw(var/mob/user as mob)
return src.attack_hand(user)
/obj/machinery/computer/supplycomp/attackby(I as obj, user as mob)
return src.attack_hand(user)
/obj/machinery/computer/supplycomp/attack_ai(var/mob/user as mob)
return src.attack_hand(user)
/obj/machinery/computer/supplycomp/attack_paw(var/mob/user as mob)
return src.attack_hand(user)
/obj/machinery/computer/supplycomp/attackby(I as obj, user as mob)
if(istype(I,/obj/item/weapon/card/emag) && !hacked)
user << "\blue Special supplies unlocked."
src.hacked = 1
else
return src.attack_hand(user)
/obj/machinery/computer/ordercomp/attack_hand(var/mob/user as mob)
if(..())
return
@@ -365,6 +354,41 @@ var/ordernum=0
onclose(user, "computer")
return
/obj/machinery/computer/supplycomp/attackby(I as obj, user as mob)
if(istype(I,/obj/item/weapon/card/emag) && !hacked)
user << "\blue Special supplies unlocked."
src.hacked = 1
return
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/supplycomp/M = new /obj/item/weapon/circuitboard/supplycomp( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/computerframe/A = new /obj/computerframe( src.loc )
var/obj/item/weapon/circuitboard/supplycomp/M = new /obj/item/weapon/circuitboard/supplycomp( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/computer/supplycomp/Topic(href, href_list)
if(..())
return

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@@ -41,7 +41,6 @@
#define FILE_DIR "code/game/gamemodes/revolution"
#define FILE_DIR "code/game/gamemodes/sandbox"
#define FILE_DIR "code/game/gamemodes/traitor"
#define FILE_DIR "code/game/gamemodes/traitor_pair"
#define FILE_DIR "code/game/gamemodes/wizard"
#define FILE_DIR "code/game/jobs"
#define FILE_DIR "code/game/machinery"