Adds more persistent photo albums (#45898)

* album

* more slots

* new icon for old photos
This commit is contained in:
Mickyan
2019-08-17 00:42:58 -07:00
committed by Rob Bailey
parent 694aa90ac0
commit a5b04e360c
11 changed files with 98 additions and 31 deletions
+19 -13
View File
@@ -13401,13 +13401,6 @@
/area/crew_quarters/bar)
"aEZ" = (
/obj/structure/table/wood,
/obj/item/storage/fancy/cigarettes/cigars{
pixel_y = 6
},
/obj/item/storage/fancy/cigarettes/cigars/cohiba{
pixel_y = 3
},
/obj/item/storage/fancy/cigarettes/cigars/havana,
/obj/item/radio/intercom{
pixel_y = 26
},
@@ -13421,6 +13414,14 @@
/obj/effect/turf_decal/tile/neutral{
dir = 8
},
/obj/item/storage/photo_album/bar{
pixel_x = -6;
pixel_y = 6
},
/obj/item/storage/fancy/cigarettes/cigars/havana,
/obj/item/storage/fancy/cigarettes/cigars/cohiba{
pixel_y = 3
},
/turf/open/floor/plasteel/dark,
/area/crew_quarters/bar)
"aFa" = (
@@ -17199,7 +17200,6 @@
/turf/open/floor/plating,
/area/security/prison)
"aMf" = (
/obj/structure/easel,
/obj/machinery/computer/security/telescreen/entertainment{
pixel_y = 32
},
@@ -17207,11 +17207,18 @@
/obj/machinery/light/small{
dir = 1
},
/obj/item/canvas/twentythreeXtwentythree,
/obj/item/canvas/twentythreeXtwentythree,
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/structure/table,
/obj/item/storage/photo_album/prison{
pixel_x = 4;
pixel_y = 4
},
/obj/item/camera{
pixel_x = -2;
pixel_y = -2
},
/turf/open/floor/plasteel,
/area/security/prison)
"aMg" = (
@@ -64898,10 +64905,10 @@
/area/library)
"cqQ" = (
/obj/structure/table/wood,
/obj/item/storage/briefcase,
/obj/structure/window/reinforced{
dir = 8
},
/obj/item/storage/photo_album/library,
/turf/open/floor/plasteel/grimy,
/area/library)
"cqR" = (
@@ -113705,8 +113712,7 @@
/area/chapel/office)
"efZ" = (
/obj/structure/table/wood,
/obj/item/folder/red,
/obj/item/pen,
/obj/item/storage/photo_album/chapel,
/turf/open/floor/plasteel/grimy,
/area/chapel/office)
"ega" = (
+11 -9
View File
@@ -456,10 +456,15 @@
/turf/open/floor/plasteel/freezer,
/area/security/prison)
"abj" = (
/obj/structure/easel,
/obj/item/canvas/twentythreeXtwentythree,
/obj/item/canvas/twentythreeXtwentythree,
/obj/effect/decal/cleanable/dirt,
/obj/structure/table,
/obj/item/storage/photo_album/prison{
pixel_x = 6;
pixel_y = 6
},
/obj/item/camera{
pixel_x = -4
},
/turf/open/floor/plasteel,
/area/security/prison)
"abk" = (
@@ -771,6 +776,7 @@
dir = 1
},
/obj/structure/table/reinforced,
/obj/item/storage/photo_album/bar,
/turf/open/floor/plasteel,
/area/crew_quarters/bar)
"abV" = (
@@ -65640,14 +65646,10 @@
/turf/open/floor/plasteel/grimy,
/area/chapel/office)
"cMG" = (
/obj/item/paper_bin{
pixel_x = -2;
pixel_y = 8
},
/obj/item/pen,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/structure/table/wood,
/obj/structure/cable,
/obj/item/storage/photo_album/chapel,
/turf/open/floor/plasteel/grimy,
/area/chapel/office)
"cMH" = (
@@ -74657,7 +74659,7 @@
/area/vacant_room/commissary)
"qLf" = (
/obj/structure/table/wood,
/obj/item/storage/photo_album,
/obj/item/storage/photo_album/library,
/turf/open/floor/engine/cult,
/area/library)
"rbG" = (
+13 -2
View File
@@ -17415,6 +17415,17 @@
},
/turf/open/floor/plasteel/white,
/area/centcom/holding)
"Qd" = (
/obj/structure/table/wood,
/obj/item/storage/photo_album/syndicate{
pixel_x = 4;
pixel_y = 4
},
/obj/item/camera{
pixel_x = -2
},
/turf/open/floor/wood,
/area/syndicate_mothership/control)
"Qe" = (
/turf/open/ai_visible,
/area/ai_multicam_room)
@@ -36553,7 +36564,7 @@ sg
tf
pZ
rf
vv
vx
wn
tQ
ng
@@ -36810,7 +36821,7 @@ sh
sh
pZ
pZ
vx
Qd
wo
tZ
ng
+18 -3
View File
@@ -122,7 +122,7 @@
/datum/quirk/photographer
name = "Photographer"
desc = "You know how to handle a camera, shortening the delay between each shot."
desc = "You carry your camera and personal photo album everywhere you go and can snap photos faster."
value = 1
mob_trait = TRAIT_PHOTOGRAPHER
gain_text = "<span class='notice'>You know everything about photography.</span>"
@@ -131,9 +131,24 @@
/datum/quirk/photographer/on_spawn()
var/mob/living/carbon/human/H = quirk_holder
var/obj/item/storage/photo_album/photo_album = new(get_turf(H))
var/list/album_slots = list (
"backpack" = SLOT_IN_BACKPACK,
"hands" = SLOT_HANDS
)
H.equip_in_one_of_slots(photo_album, album_slots , qdel_on_fail = TRUE)
photo_album.persistence_id = "personal_[H.mind.key]" // this is a persistent album, the ID is tied to the account's key to avoid tampering
photo_album.persistence_load()
photo_album.name = "\improper [H.real_name]'s photo album"
var/obj/item/camera/camera = new(get_turf(H))
H.put_in_hands(camera)
H.equip_to_slot(camera, SLOT_NECK)
var/list/camera_slots = list (
"neck" = SLOT_NECK,
"left pocket" = SLOT_L_STORE,
"right pocket" = SLOT_R_STORE,
"backpack" = SLOT_IN_BACKPACK,
"hands" = SLOT_HANDS
)
H.equip_in_one_of_slots(camera, camera_slots , qdel_on_fail = TRUE)
H.regenerate_icons()
/datum/quirk/selfaware
+1 -1
View File
@@ -82,7 +82,7 @@
/proc/load_photo_from_disk(id, location)
var/datum/picture/P = load_picture_from_disk(id)
if(istype(P))
var/obj/item/photo/p = new(location, P)
var/obj/item/photo/old/p = new(location, P)
return p
/proc/load_picture_from_disk(id)
@@ -15,6 +15,7 @@
flags_1 = CONDUCT_1
slot_flags = ITEM_SLOT_NECK
materials = list(/datum/material/iron = 50, /datum/material/glass = 150)
custom_price = 80
var/flash_enabled = TRUE
var/state_on = "camera"
var/state_off = "camera_off"
+29 -1
View File
@@ -3,6 +3,7 @@
*/
/obj/item/storage/photo_album
name = "photo album"
desc = "A big book used to store photos and mementos."
icon = 'icons/obj/items_and_weapons.dmi'
icon_state = "album"
item_state = "briefcase"
@@ -48,28 +49,55 @@
for(var/i in ids)
if(i in current_ids)
continue
var/obj/item/photo/P = load_photo_from_disk(i)
var/obj/item/photo/old/P = load_photo_from_disk(i)
if(istype(P))
if(!SEND_SIGNAL(src, COMSIG_TRY_STORAGE_INSERT, P, null, TRUE, TRUE))
qdel(P)
/obj/item/storage/photo_album/HoS
name = "photo album (Head of Security)"
persistence_id = "HoS"
/obj/item/storage/photo_album/RD
name = "photo album (Research Director)"
persistence_id = "RD"
/obj/item/storage/photo_album/HoP
name = "photo album (Head of Personnel)"
persistence_id = "HoP"
/obj/item/storage/photo_album/Captain
name = "photo album (Captain)"
persistence_id = "Captain"
/obj/item/storage/photo_album/CMO
name = "photo album (Chief Medical Officer)"
persistence_id = "CMO"
/obj/item/storage/photo_album/QM
name = "photo album (Quartermaster)"
persistence_id = "QM"
/obj/item/storage/photo_album/CE
name = "photo album (Chief Engineer)"
persistence_id = "CE"
/obj/item/storage/photo_album/bar
name = "photo album (Bar)"
persistence_id = "bar"
/obj/item/storage/photo_album/syndicate
name = "photo album (Syndicate)"
persistence_id = "syndicate"
/obj/item/storage/photo_album/library
name = "photo album (Library)"
persistence_id = "library"
obj/item/storage/photo_album/chapel
name = "photo album (Chapel)"
persistence_id = "chapel"
obj/item/storage/photo_album/prison
name = "photo album (Prison)"
persistence_id = "prison"
+1 -1
View File
@@ -99,7 +99,7 @@
load_from_id(data[persistence_id])
/obj/structure/sign/picture_frame/proc/load_from_id(id)
var/obj/item/photo/P = load_photo_from_disk(id)
var/obj/item/photo/old/P = load_photo_from_disk(id)
if(istype(P))
if(istype(framed))
framed.forceMove(drop_location())
+3
View File
@@ -91,3 +91,6 @@
if((loc == usr || loc.loc && loc.loc == usr) && usr.stat == CONSCIOUS && !usr.incapacitated())
name = "photo[(n_name ? text("- '[n_name]'") : null)]"
add_fingerprint(usr)
/obj/item/photo/old
icon_state = "photo_old"
+2 -1
View File
@@ -7,7 +7,8 @@
/obj/item/storage/pill_bottle/dice = 10,
/obj/item/toy/cards/deck/cas = 3,
/obj/item/toy/cards/deck/cas/black = 3,
/obj/item/hourglass = 2)
/obj/item/hourglass = 2,
/obj/item/camera = 3)
contraband = list(/obj/item/dice/fudge = 9)
refill_canister = /obj/item/vending_refill/games
default_price = 10
Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

After

Width:  |  Height:  |  Size: 93 KiB