mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-20 11:34:19 +01:00
Bug fixes, implements new copying/faxing system from Bay
This commit is contained in:
@@ -639,7 +639,7 @@
|
||||
if (href_list["selectUIBlock"] && href_list["selectUISubblock"]) // This chunk of code updates selected block / sub-block based on click
|
||||
var/select_block = text2num(href_list["selectUIBlock"])
|
||||
var/select_subblock = text2num(href_list["selectUISubblock"])
|
||||
if ((select_block <= 13) && (select_block >= 1))
|
||||
if ((select_block <= DNA_UI_LENGTH) && (select_block >= 1))
|
||||
src.selected_ui_block = select_block
|
||||
if ((select_subblock <= DNA_BLOCK_SIZE) && (select_subblock >= 1))
|
||||
src.selected_ui_subblock = select_subblock
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
mode = M
|
||||
|
||||
proc/announce_directives()
|
||||
for (var/obj/machinery/faxmachine/fax in world)
|
||||
for (var/obj/machinery/photocopier/faxmachine/fax in world)
|
||||
if (fax.department == "Captain's Office")
|
||||
var/obj/item/weapon/paper/directive_x = new(fax.loc)
|
||||
directive_x.name = "emergency action message"
|
||||
|
||||
@@ -63,6 +63,10 @@
|
||||
if("Mortician")
|
||||
H.equip_or_collect(new /obj/item/clothing/under/rank/medical/mortician(H), slot_w_uniform)
|
||||
H.equip_or_collect(new /obj/item/clothing/suit/storage/labcoat/mortician(H), slot_wear_suit)
|
||||
if(H.backbag != 1)
|
||||
H.equip_or_collect(new /obj/item/weapon/autopsy_scanner(H.back), slot_in_backpack)
|
||||
H.equip_or_collect(new /obj/item/device/mass_spectrometer(H.back), slot_in_backpack)
|
||||
H.equip_or_collect(new /obj/item/weapon/storage/box/bodybags(H.back), slot_in_backpack)
|
||||
if("Surgeon")
|
||||
H.equip_or_collect(new /obj/item/clothing/under/rank/medical/blue(H), slot_w_uniform)
|
||||
H.equip_or_collect(new /obj/item/clothing/suit/storage/labcoat(H), slot_wear_suit)
|
||||
|
||||
@@ -49,12 +49,12 @@
|
||||
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
|
||||
dir = pick(WEST,EAST,SOUTH,NORTH)
|
||||
var/node_connect = dir
|
||||
|
||||
initialize_directions = dir
|
||||
for(var/obj/machinery/atmospherics/target in get_step(src,node_connect))
|
||||
if(target.initialize_directions & get_dir(target,src))
|
||||
node = target
|
||||
break
|
||||
|
||||
build_network()
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/atmospherics/unary/cold_sink/freezer/update_icon()
|
||||
@@ -184,12 +184,12 @@
|
||||
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
|
||||
dir = pick(WEST,EAST,SOUTH,NORTH)
|
||||
var/node_connect = dir
|
||||
|
||||
initialize_directions = dir
|
||||
for(var/obj/machinery/atmospherics/target in get_step(src,node_connect))
|
||||
if(target.initialize_directions & get_dir(target,src))
|
||||
node = target
|
||||
break
|
||||
|
||||
build_network()
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/atmospherics/unary/heat_reservoir/heater/update_icon()
|
||||
|
||||
@@ -106,8 +106,9 @@
|
||||
holding_text = {"<BR><B>Tank Pressure</B>: [holding.air_contents.return_pressure()] KPa<BR>
|
||||
<A href='?src=\ref[src];remove_tank=1'>Remove Tank</A><BR>
|
||||
"}
|
||||
var/pumppressure = max(0,air_contents.return_pressure())
|
||||
var/output_text = {"<TT><B>[name]</B><BR>
|
||||
Pressure: [air_contents.return_pressure()] KPa<BR>
|
||||
Pressure: [pumppressure] KPa<BR>
|
||||
Port Status: [(connected_port)?("Connected"):("Disconnected")]
|
||||
[holding_text]
|
||||
<BR>
|
||||
|
||||
@@ -195,7 +195,7 @@
|
||||
spawn(30)
|
||||
src.eject_wait = 0
|
||||
|
||||
var/mob/living/carbon/human/H = new /mob/living/carbon/human(src, delay_ready_dna=1)
|
||||
var/mob/living/carbon/human/H = new /mob/living/carbon/human(src, R.dna.species)
|
||||
occupant = H
|
||||
|
||||
if(!R.dna.real_name) //to prevent null names
|
||||
|
||||
@@ -325,10 +325,10 @@
|
||||
scantemp = "<span class=\"bad\">Error: Subject's brain is not responding to scanning stimuli.</span>"
|
||||
nanomanager.update_uis(src)
|
||||
return
|
||||
if ((!subject.ckey) || (!subject.client))
|
||||
scantemp = "<span class=\"bad\">Error: Mental interface failure.</span>"
|
||||
nanomanager.update_uis(src)
|
||||
return
|
||||
//if ((!subject.ckey) || (!subject.client))
|
||||
//scantemp = "<span class=\"bad\">Error: Mental interface failure.</span>"
|
||||
//nanomanager.update_uis(src)
|
||||
//return
|
||||
if ((M_NOCLONE in subject.mutations) && src.scanner.scan_level < 2)
|
||||
scantemp = "<span class=\"bad\">Error: Mental interface failure.</span>"
|
||||
nanomanager.update_uis(src)
|
||||
|
||||
@@ -354,7 +354,8 @@
|
||||
if (src.product_records.len == 0)
|
||||
dat += "<font color = 'red'>No product loaded!</font>"
|
||||
else
|
||||
var/list/display_records = src.product_records
|
||||
var/list/display_records = list()
|
||||
display_records += src.product_records
|
||||
|
||||
if(src.extended_inventory)
|
||||
display_records += src.hidden_records
|
||||
|
||||
@@ -396,6 +396,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
if(user.r_hand == src || user.l_hand == src)
|
||||
if(!lit)
|
||||
lit = 1
|
||||
w_class = 4
|
||||
icon_state = icon_on
|
||||
item_state = icon_on
|
||||
if(istype(src, /obj/item/weapon/lighter/zippo) )
|
||||
@@ -413,6 +414,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
|
||||
processing_objects.Add(src)
|
||||
else
|
||||
lit = 0
|
||||
w_class = 1
|
||||
icon_state = icon_off
|
||||
item_state = icon_off
|
||||
if(istype(src, /obj/item/weapon/lighter/zippo) )
|
||||
|
||||
@@ -112,6 +112,25 @@ var/last_chew = 0
|
||||
|
||||
/obj/item/weapon/handcuffs/cyborg
|
||||
dispenser = 1
|
||||
|
||||
/obj/item/weapon/handcuffs/cyborg/attack(mob/living/carbon/C as mob, mob/user as mob)
|
||||
if(!C.handcuffed)
|
||||
var/turf/p_loc = user.loc
|
||||
var/turf/p_loc_m = C.loc
|
||||
playsound(src.loc, 'sound/weapons/handcuffs.ogg', 30, 1, -2)
|
||||
user.visible_message("\red <B>[user] is trying to put handcuffs on [C]!</B>")
|
||||
|
||||
if (ishuman(C))
|
||||
var/mob/living/carbon/human/H = C
|
||||
if (!H.has_organ_for_slot(slot_handcuffed))
|
||||
user << "\red \The [H] needs at least two wrists before you can cuff them together!"
|
||||
return
|
||||
|
||||
spawn(30)
|
||||
if(!C) return
|
||||
if(p_loc == user.loc && p_loc_m == C.loc)
|
||||
C.handcuffed = new /obj/item/weapon/handcuffs(C)
|
||||
C.update_inv_handcuffed()
|
||||
|
||||
/obj/item/weapon/handcuffs/pinkcuffs
|
||||
name = "fluffy pink handcuffs"
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
icon_state = "plasticbag"
|
||||
item_state = "plasticbag"
|
||||
slot_flags = SLOT_HEAD|SLOT_BELT
|
||||
|
||||
throwforce = 0
|
||||
w_class = 4
|
||||
max_w_class = 2
|
||||
storage_slots = 21
|
||||
@@ -91,6 +91,8 @@
|
||||
if(is_equipped() && head)
|
||||
if(ishuman(loc))
|
||||
var/mob/living/carbon/human/H = loc
|
||||
if(H.internal)
|
||||
return
|
||||
H.losebreath += 1
|
||||
else
|
||||
head = 0
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
var/status = 0 //whether the thing is on or not
|
||||
var/obj/item/weapon/cell/high/bcell = null
|
||||
var/mob/foundmob = "" //Used in throwing proc.
|
||||
var/hitcost = 1500 //oh god why do power cells carry so much charge? We probably need to make a distinction between "industrial" sized power cells for APCs and power cells for everything else.
|
||||
var/hitcost = 1000 //oh god why do power cells carry so much charge? We probably need to make a distinction between "industrial" sized power cells for APCs and power cells for everything else.
|
||||
var/allowharm = 1 // Allow or disallow harming with the stunbaton
|
||||
|
||||
/obj/item/weapon/melee/baton/suicide_act(mob/user)
|
||||
@@ -219,6 +219,9 @@
|
||||
..()
|
||||
|
||||
//secborg stun baton module
|
||||
/obj/item/weapon/melee/baton/robot
|
||||
hitcost = 500
|
||||
|
||||
/obj/item/weapon/melee/baton/robot/attack_self(mob/user)
|
||||
//try to find our power cell
|
||||
var/mob/living/silicon/robot/R = loc
|
||||
|
||||
@@ -339,6 +339,7 @@
|
||||
if (src.welding)
|
||||
if (remove_fuel(1))
|
||||
usr << "\blue You switch the [src] on."
|
||||
src.w_class = 4
|
||||
src.force = 15
|
||||
src.damtype = "fire"
|
||||
src.icon_state = "welder1"
|
||||
@@ -352,6 +353,7 @@
|
||||
usr << "\blue You switch the [src] off."
|
||||
else
|
||||
usr << "\blue The [src] shuts off!"
|
||||
src.w_class = 2
|
||||
src.force = 3
|
||||
src.damtype = "brute"
|
||||
src.icon_state = "welder"
|
||||
|
||||
@@ -145,6 +145,7 @@
|
||||
else
|
||||
new /obj/item/clothing/tie/storage/webbing(src)
|
||||
new /obj/item/clothing/suit/fire/firefighter(src)
|
||||
new /obj/item/clothing/head/hardhat/red(src)
|
||||
new /obj/item/device/flashlight(src)
|
||||
new /obj/item/weapon/extinguisher(src)
|
||||
new /obj/item/device/radio/headset/headset_eng(src)
|
||||
|
||||
@@ -35,7 +35,10 @@
|
||||
/obj/structure/transit_tube/station/Bumped(mob/AM as mob|obj)
|
||||
if(!pod_moving && icon_state == "open" && istype(AM, /mob))
|
||||
for(var/obj/structure/transit_tube_pod/pod in loc)
|
||||
if(!pod.moving && pod.dir in directions())
|
||||
if(pod.contents.len)
|
||||
AM << "<span class=The pod is already occupied.</span>"
|
||||
return
|
||||
else if(!pod.moving && pod.dir in directions())
|
||||
AM.loc = pod
|
||||
return
|
||||
|
||||
@@ -96,19 +99,29 @@
|
||||
|
||||
|
||||
/obj/structure/transit_tube/station/proc/launch_pod()
|
||||
if(launch_cooldown >= world.time)
|
||||
return
|
||||
for(var/obj/structure/transit_tube_pod/pod in loc)
|
||||
if(!pod.moving && turn(pod.dir, (reverse_launch ? 180 : 0)) in directions())
|
||||
spawn(0)
|
||||
if(!pod.moving && pod.dir in directions())
|
||||
spawn(5)
|
||||
pod_moving = 1
|
||||
close_animation()
|
||||
sleep(CLOSE_DURATION + 2)
|
||||
|
||||
//reverse directions for automated cycling
|
||||
var/turf/next_loc = get_step(loc, pod.dir)
|
||||
var/obj/structure/transit_tube/nexttube
|
||||
for(var/obj/structure/transit_tube/tube in next_loc)
|
||||
if(tube.has_entrance(pod.dir))
|
||||
nexttube = tube
|
||||
break
|
||||
if(!nexttube)
|
||||
pod.dir = turn(pod.dir, 180)
|
||||
|
||||
if(icon_state == "closed" && pod)
|
||||
pod.follow_tube(reverse_launch)
|
||||
pod.follow_tube()
|
||||
|
||||
pod_moving = 0
|
||||
return 1
|
||||
return 0
|
||||
|
||||
return
|
||||
|
||||
/obj/structure/transit_tube/station/process()
|
||||
if(!pod_moving)
|
||||
|
||||
Reference in New Issue
Block a user