mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-29 15:08:02 +01:00
Merge branch 'master' of git://github.com/Baystation12/Baystation12 into TGUpdates
This commit is contained in:
@@ -51,4 +51,12 @@ obj/machinery/atmospherics/binary/passive_gate
|
||||
network1.update = 1
|
||||
|
||||
if(network2)
|
||||
network2.update = 1
|
||||
network2.update = 1
|
||||
|
||||
attack_ai(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
attack_hand(mob/user as mob)
|
||||
src.on = !src.on
|
||||
src.update_icon()
|
||||
return
|
||||
@@ -335,3 +335,97 @@ obj/machinery/atmospherics/tvalve
|
||||
"You hear ratchet.")
|
||||
new /obj/item/pipe(loc, make_from=src)
|
||||
del(src)
|
||||
|
||||
obj/machinery/atmospherics/tvalve/mirrored
|
||||
icon_state = "tvalvem0"
|
||||
|
||||
New()
|
||||
switch(dir)
|
||||
if(NORTH)
|
||||
initialize_directions = SOUTH|NORTH|WEST
|
||||
if(SOUTH)
|
||||
initialize_directions = NORTH|SOUTH|EAST
|
||||
if(EAST)
|
||||
initialize_directions = WEST|EAST|NORTH
|
||||
if(WEST)
|
||||
initialize_directions = EAST|WEST|SOUTH
|
||||
..()
|
||||
|
||||
initialize()
|
||||
var/node1_dir
|
||||
var/node2_dir
|
||||
var/node3_dir
|
||||
|
||||
node1_dir = turn(dir, 180)
|
||||
node2_dir = turn(dir, 90)
|
||||
node3_dir = dir
|
||||
|
||||
for(var/obj/machinery/atmospherics/target in get_step(src,node1_dir))
|
||||
if(target.initialize_directions & get_dir(target,src))
|
||||
node1 = target
|
||||
break
|
||||
for(var/obj/machinery/atmospherics/target in get_step(src,node2_dir))
|
||||
if(target.initialize_directions & get_dir(target,src))
|
||||
node2 = target
|
||||
break
|
||||
for(var/obj/machinery/atmospherics/target in get_step(src,node3_dir))
|
||||
if(target.initialize_directions & get_dir(target,src))
|
||||
node3 = target
|
||||
break
|
||||
|
||||
update_icon(animation)
|
||||
if(animation)
|
||||
flick("tvalvem[src.state][!src.state]",src)
|
||||
else
|
||||
icon_state = "tvalvem[state]"
|
||||
|
||||
digital // can be controlled by AI
|
||||
name = "digital switching valve"
|
||||
desc = "A digitally controlled valve."
|
||||
icon = 'digital_valve.dmi'
|
||||
|
||||
attack_ai(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
attack_hand(mob/user as mob)
|
||||
if(!src.allowed(user))
|
||||
user << "\red Access denied."
|
||||
return
|
||||
..()
|
||||
|
||||
//Radio remote control
|
||||
|
||||
proc
|
||||
set_frequency(new_frequency)
|
||||
radio_controller.remove_object(src, frequency)
|
||||
frequency = new_frequency
|
||||
if(frequency)
|
||||
radio_connection = radio_controller.add_object(src, frequency, RADIO_ATMOSIA)
|
||||
|
||||
var/frequency = 0
|
||||
var/id = null
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
initialize()
|
||||
..()
|
||||
if(frequency)
|
||||
set_frequency(frequency)
|
||||
|
||||
receive_signal(datum/signal/signal)
|
||||
if(!signal.data["tag"] || (signal.data["tag"] != id))
|
||||
return 0
|
||||
|
||||
switch(signal.data["command"])
|
||||
if("valve_open")
|
||||
if(!state)
|
||||
go_to_side()
|
||||
|
||||
if("valve_close")
|
||||
if(state)
|
||||
go_straight()
|
||||
|
||||
if("valve_toggle")
|
||||
if(state)
|
||||
go_straight()
|
||||
else
|
||||
go_to_side()
|
||||
@@ -1015,10 +1015,22 @@ obj/machinery/atmospherics/pipe
|
||||
volume = 35
|
||||
|
||||
dir = SOUTH
|
||||
initialize_directions = SOUTH
|
||||
initialize_directions = NORTH
|
||||
|
||||
var/obj/machinery/atmospherics/node
|
||||
|
||||
New()
|
||||
..()
|
||||
switch(dir)
|
||||
if(SOUTH)
|
||||
initialize_directions = NORTH
|
||||
if(NORTH)
|
||||
initialize_directions = SOUTH
|
||||
if(WEST)
|
||||
initialize_directions = EAST
|
||||
if(EAST)
|
||||
initialize_directions = WEST
|
||||
|
||||
hide(var/i)
|
||||
if(level == 1 && istype(loc, /turf/simulated))
|
||||
invisibility = i ? 101 : 0
|
||||
|
||||
@@ -275,6 +275,8 @@ var/datum/cameranet/cameranet = new()
|
||||
/mob/living/silicon/ai/New()
|
||||
..()
|
||||
eyeobj.ai = src
|
||||
spawn(20)
|
||||
freelook()
|
||||
|
||||
/mob/living/silicon/ai/death(gibbed)
|
||||
if(client && client.eye == eyeobj)
|
||||
@@ -293,6 +295,7 @@ var/datum/cameranet/cameranet = new()
|
||||
client.eye = src
|
||||
for(var/datum/camerachunk/c in eyeobj.visibleCameraChunks)
|
||||
c.remove(eyeobj)
|
||||
freelook()
|
||||
else
|
||||
if(!eyeobj) //if it got deleted somehow (like an admin trying to fix things <.<')
|
||||
eyeobj = new()
|
||||
@@ -300,6 +303,7 @@ var/datum/cameranet/cameranet = new()
|
||||
eyeobj.loc = loc
|
||||
cameranet.visibility(eyeobj)
|
||||
cameraFollow = null
|
||||
|
||||
/mob/aiEye/Move()
|
||||
. = ..()
|
||||
if(.)
|
||||
@@ -360,4 +364,8 @@ var/datum/cameranet/cameranet = new()
|
||||
if(!C.status || C.stat == 2)
|
||||
continue
|
||||
return 1
|
||||
return 0
|
||||
return 0
|
||||
|
||||
/mob/living/silicon/ai/switchCamera(atom/A)
|
||||
eyeobj.loc = A.loc
|
||||
return
|
||||
@@ -1,7 +1,7 @@
|
||||
//copy pastad freezer
|
||||
//remove this shit when someonething better is done
|
||||
/obj/machinery/atmospherics/unary/heat_reservoir/heater
|
||||
name = "Heat Regulatorer"
|
||||
name = "Heat Regulator"
|
||||
icon = 'Cryogenic2.dmi'
|
||||
icon_state = "freezer_0"
|
||||
density = 1
|
||||
|
||||
@@ -19,6 +19,7 @@ Buildable meters
|
||||
#define PIPE_GAS_MIXER 14
|
||||
#define PIPE_MTVALVE 15
|
||||
#define PIPE_MANIFOLD4W 16
|
||||
#define PIPE_CAP 17
|
||||
|
||||
/obj/item/pipe
|
||||
name = "pipe"
|
||||
@@ -72,6 +73,8 @@ Buildable meters
|
||||
src.pipe_type = PIPE_MTVALVE
|
||||
else if(istype(make_from, /obj/machinery/atmospherics/pipe/manifold))
|
||||
src.pipe_type = PIPE_MANIFOLD4W
|
||||
else if(istype(make_from, /obj/machinery/atmospherics/pipe/cap))
|
||||
src.pipe_type = PIPE_CAP
|
||||
else
|
||||
src.pipe_type = pipe_type
|
||||
src.dir = dir
|
||||
@@ -101,6 +104,7 @@ Buildable meters
|
||||
"gas mixer", \
|
||||
"t-valve", \
|
||||
"4-way manifold", \
|
||||
"pipe cap", \
|
||||
)
|
||||
name = nlist[pipe_type+1] + " fitting"
|
||||
var/list/islist = list( \
|
||||
@@ -121,6 +125,7 @@ Buildable meters
|
||||
"mixer", \
|
||||
"mtvalve", \
|
||||
"manifold4w", \
|
||||
"cap", \
|
||||
)
|
||||
icon_state = islist[pipe_type + 1]
|
||||
|
||||
@@ -187,6 +192,8 @@ Buildable meters
|
||||
return flip|cw|acw
|
||||
if(PIPE_GAS_FILTER, PIPE_GAS_MIXER,PIPE_MTVALVE)
|
||||
return dir|flip|cw
|
||||
if(PIPE_CAP)
|
||||
return flip
|
||||
return 0
|
||||
|
||||
/obj/item/pipe/proc/get_pdir() //endpoints for regular pipes
|
||||
@@ -510,6 +517,16 @@ Buildable meters
|
||||
V.node3.initialize()
|
||||
V.node3.build_network()
|
||||
|
||||
if(PIPE_CAP)
|
||||
var/obj/machinery/atmospherics/pipe/cap/C = new(src.loc)
|
||||
C.dir = dir
|
||||
C.initialize_directions = pipe_dir
|
||||
C.initialize()
|
||||
C.build_network()
|
||||
if(C.node)
|
||||
C.node.initialize()
|
||||
C.node.build_network()
|
||||
|
||||
playsound(src.loc, 'Ratchet.ogg', 50, 1)
|
||||
user.visible_message( \
|
||||
"[user] fastens the [src].", \
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
var/dat = {"
|
||||
<b>Regular pipes:</b><BR>
|
||||
<A href='?src=\ref[src];make=0;dir=1'>Pipe</A><BR>
|
||||
<A href='?src=\ref[src];make=17;dir=1'>Pipe Cap</A><BR>``
|
||||
<A href='?src=\ref[src];make=1;dir=5'>Bent Pipe</A><BR>
|
||||
<A href='?src=\ref[src];make=5;dir=1'>Manifold</A><BR>
|
||||
<A href='?src=\ref[src];make=16;dir=1'>4-Way Manifold</A><BR>
|
||||
@@ -33,9 +34,6 @@
|
||||
<A href='?src=\ref[src];make=2;dir=1'>Pipe</A><BR>
|
||||
<A href='?src=\ref[src];make=3;dir=5'>Bent Pipe</A><BR>
|
||||
<A href='?src=\ref[src];make=6;dir=1'>Junction</A><BR>
|
||||
<b>Insulated pipes:</b><BR>
|
||||
<A href='?src=\ref[src];make=11;dir=1'>Pipe</A><BR>
|
||||
<A href='?src=\ref[src];make=12;dir=5'>Bent Pipe</A><BR>
|
||||
"}
|
||||
|
||||
|
||||
|
||||
@@ -109,6 +109,10 @@
|
||||
|
||||
if(S.reagents.has_reagent("plasma", 5))
|
||||
|
||||
log_attack("<font color='red'>[user.name] ([user.ckey]) injected a power cell with plasma.</font>")
|
||||
log_admin("ATTACK: [user] ([user.ckey]) injected a power cell with plasma.")
|
||||
message_admins("ATTACK: [user] ([user.ckey]) injected a power cell with plasma.")
|
||||
|
||||
rigged = 1
|
||||
|
||||
S.reagents.clear_reagents()
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
brightness = 3
|
||||
desc = "A small lighting fixture."
|
||||
light_type = /obj/item/weapon/light/bulb
|
||||
|
||||
|
||||
/obj/machinery/light/small/spot
|
||||
brightness = 5
|
||||
|
||||
@@ -532,6 +532,10 @@
|
||||
|
||||
if(S.reagents.has_reagent("plasma", 5))
|
||||
|
||||
log_attack("<font color='red'>[user.name] ([user.ckey]) injected a light with plasma.</font>")
|
||||
log_admin("ATTACK: [user] ([user.ckey]) injected a light with plasma.")
|
||||
message_admins("ATTACK: [user] ([user.ckey]) injected a light with plasma.")
|
||||
|
||||
rigged = 1
|
||||
|
||||
S.reagents.clear_reagents()
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 20 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 25 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 16 KiB |
+547
-690
File diff suppressed because it is too large
Load Diff
+8092
-8123
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user