mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 12:37:26 +01:00
Merge pull request #159 from SkyMarshal/master
Yet again, many changes in a pull request.
This commit is contained in:
@@ -16,7 +16,7 @@ var/list/CustomItemList = list(
|
||||
var/path = Entry[3]
|
||||
var/obj/item/Item = new path()
|
||||
|
||||
if(istype(M.back,/obj/item/weapon/storage) && M.back:len < M.back:storage_slots) // Try to place it in something on the mob's back first
|
||||
if(istype(M.back,/obj/item/weapon/storage) && M.back:contents.len < M.back:storage_slots) // Try to place it in something on the mob's back first
|
||||
Item.loc = M.back
|
||||
ok = 1
|
||||
else
|
||||
|
||||
@@ -106,7 +106,7 @@
|
||||
breaktape(null, user)
|
||||
|
||||
/obj/item/policetape/proc/breaktape(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(!W || !is_cut(W))
|
||||
if(!W || (!is_sharp(W) && src.allowed(user)) ||(!is_cut(W) && !src.allowed(user)))
|
||||
user << "You can't break the tape with that!"
|
||||
return
|
||||
user.show_viewers(text("\blue [] breaks the police tape!", user))
|
||||
|
||||
@@ -45,4 +45,5 @@
|
||||
H.equip_if_possible(new /obj/item/clothing/suit/armor/vest(H), H.slot_wear_suit)
|
||||
H.equip_if_possible(new /obj/item/clothing/head/helmet(H), H.slot_head)
|
||||
H.equip_if_possible(new /obj/item/weapon/storage/id_kit(H), H.slot_in_backpack)
|
||||
H.equip_if_possible(new /obj/item/clothing/gloves/blue(H), H.slot_gloves)
|
||||
return 1
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
new /obj/item/weapon/gun/energy/gun(src)
|
||||
new /obj/item/device/flash(src)
|
||||
new /obj/item/clothing/glasses/sunglasses(src)
|
||||
new /obj/item/clothing/gloves/blue(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
var/access_security = 0
|
||||
var/access_engine = 0
|
||||
var/access_medical = 0
|
||||
var/access_manifest = 0
|
||||
var/access_manifest = 1
|
||||
var/access_clown = 0
|
||||
var/access_mime = 0
|
||||
var/access_janitor = 0
|
||||
@@ -55,7 +55,6 @@
|
||||
icon_state = "cart-s"
|
||||
access_security = 1
|
||||
access_medical = 1
|
||||
access_manifest = 1
|
||||
|
||||
|
||||
janitor
|
||||
@@ -107,13 +106,11 @@
|
||||
head
|
||||
name = "Easy-Record DELUXE"
|
||||
icon_state = "cart-h"
|
||||
access_manifest = 1
|
||||
access_status_display = 1
|
||||
|
||||
hop
|
||||
name = "HumanResources9001"
|
||||
icon_state = "cart-h"
|
||||
access_manifest = 1
|
||||
access_status_display = 1
|
||||
access_quartermaster = 1
|
||||
|
||||
@@ -125,7 +122,6 @@
|
||||
hos
|
||||
name = "R.O.B.U.S.T. DELUXE"
|
||||
icon_state = "cart-hos"
|
||||
access_manifest = 1
|
||||
access_status_display = 1
|
||||
access_security = 1
|
||||
|
||||
@@ -137,21 +133,18 @@
|
||||
ce
|
||||
name = "Power-On DELUXE"
|
||||
icon_state = "cart-ce"
|
||||
access_manifest = 1
|
||||
access_status_display = 1
|
||||
access_engine = 1
|
||||
|
||||
cmo
|
||||
name = "Med-U DELUXE"
|
||||
icon_state = "cart-cmo"
|
||||
access_manifest = 1
|
||||
access_status_display = 1
|
||||
access_medical = 1
|
||||
|
||||
rd
|
||||
name = "Signal Ace DELUXE"
|
||||
icon_state = "cart-rd"
|
||||
access_manifest = 1
|
||||
access_status_display = 1
|
||||
access_reagent_scanner = 1
|
||||
|
||||
@@ -164,7 +157,6 @@
|
||||
name = "Value-PAK Cartridge"
|
||||
desc = "Now with 200% more value!"
|
||||
icon_state = "cart-c"
|
||||
access_manifest = 1
|
||||
access_engine = 1
|
||||
access_security = 1
|
||||
access_medical = 1
|
||||
@@ -175,6 +167,7 @@
|
||||
name = "Detomatix Cartridge"
|
||||
icon_state = "cart"
|
||||
access_remote_door = 1
|
||||
access_manifest = 0
|
||||
remote_door_id = "syndicate" //Make sure this matches the syndicate shuttle's shield/door id!!
|
||||
var/shock_charges = 4
|
||||
|
||||
|
||||
@@ -1718,15 +1718,23 @@ datum
|
||||
if(method == TOUCH)
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
if(M:wear_mask)
|
||||
|
||||
M << "\red Your mask protects you from the pepperspray!"
|
||||
return
|
||||
if(M:glasses)
|
||||
if(M.job in security_positions)
|
||||
M:emote("me",1,"glares at you as the pepperspray drips off the lenses!")
|
||||
M << "\red Your glasses protect you from most of the pepperspray, and your training takes care of the rest!"
|
||||
M.eye_blurry = max(M.eye_blurry, 10)
|
||||
M << "\red Your glasses protect you from most of the pepperspray!"
|
||||
M:emote("scream")
|
||||
M.eye_blurry = max(M.eye_blurry, 20)
|
||||
M.eye_blind = max(M.eye_blind, 4)
|
||||
return
|
||||
if(M.job in security_positions)
|
||||
M:emote("me",1,"shakes off most of the pepper spray's effects, at least they were trained!")
|
||||
M << "\red Your training protects you from most of the pepperspray!"
|
||||
M.eye_blurry = max(M.eye_blurry, 20)
|
||||
M.eye_blind = max(M.eye_blind, 4)
|
||||
M:emote("scream")
|
||||
M << "\red You're sprayed directly in the eyes with pepperspray!"
|
||||
M.eye_blurry = max(M.eye_blurry, 5)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//Lallander was here
|
||||
/mob/living/carbon/human/whisper(message as text)
|
||||
//Figured it out. If you use say :w (message) it HTML encodes it, THEN passes it to the whisper code, which does so again. Jeez. --SkyMarshal
|
||||
message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
|
||||
|
||||
if (!message)
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
if(dongle.translate_hive) return 1
|
||||
|
||||
/mob/living/say(var/message)
|
||||
var/message_old = message
|
||||
message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
|
||||
|
||||
if (!message)
|
||||
@@ -220,7 +221,7 @@
|
||||
|
||||
//I see no reason to restrict such way of whispering
|
||||
if ("whisper")
|
||||
whisper(message)
|
||||
whisper(message_old)
|
||||
return
|
||||
|
||||
if ("binary")
|
||||
@@ -296,6 +297,7 @@
|
||||
var/turf/T = get_turf(src)
|
||||
listening = hearers(message_range, T)
|
||||
var/list/V = view(message_range, T)
|
||||
var/list/W = V
|
||||
//find mobs in lockers, cryo, intellicards, brains, MMIs, and so on.
|
||||
for (var/mob/M in world)
|
||||
if (!M.client)
|
||||
@@ -311,9 +313,15 @@
|
||||
if (M.client && M.client.ghost_ears)
|
||||
listening|=M
|
||||
|
||||
for (var/obj/O in ((V | contents)-used_radios)) //radio in pocket could work, radio in backpack wouldn't --rastaf0
|
||||
for (var/obj/O in ((W | contents)-used_radios))
|
||||
W |= O
|
||||
|
||||
for (var/mob/M in W)
|
||||
W |= M.contents
|
||||
|
||||
for (var/obj/O in W) //radio in pocket could work, radio in backpack wouldn't --rastaf0
|
||||
spawn (0)
|
||||
if (O)
|
||||
if(O && !istype(O.loc, /obj/item/weapon/storage))
|
||||
O.hear_talk(src, message)
|
||||
|
||||
if(isbrain(src))//For brains to properly talk if they are in an MMI..or in a brain. Could be extended to other mobs I guess.
|
||||
|
||||
@@ -734,7 +734,7 @@
|
||||
"aof" = (/turf/simulated/floor{dir = 8; icon_state = "carpetside"},/area/security/detectives_office)
|
||||
"aog" = (/obj/structure/table/woodentable,/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/weapon/paper,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/turf/simulated/floor{dir = 2; icon_state = "carpet"},/area/security/detectives_office)
|
||||
"aoh" = (/turf/simulated/floor{dir = 2; icon_state = "carpetcorner"},/area/security/detectives_office)
|
||||
"aoi" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor{icon_state = "carpetside"},/area/security/detectives_office)
|
||||
"aoi" = (/turf/simulated/floor{icon_state = "carpetside"},/area/security/detectives_office)
|
||||
"aoj" = (/turf/simulated/floor{dir = 6; icon_state = "carpetside"},/area/security/detectives_office)
|
||||
"aok" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/briefcase,/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office)
|
||||
"aol" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/simulated/floor{icon_state = "wood"},/area/lawoffice)
|
||||
|
||||
Reference in New Issue
Block a user