Skip to content
This repository has been archived by the owner on Jan 22, 2020. It is now read-only.

Commit

Permalink
Merge pull request #832 from MistakeNot4892/pipboys
Browse files Browse the repository at this point in the history
Backported Europa wrist computers.
  • Loading branch information
ItsAnJonth committed Feb 14, 2019
2 parents 5f0c2fd + 6036920 commit ec395be
Show file tree
Hide file tree
Showing 9 changed files with 116 additions and 83 deletions.
4 changes: 0 additions & 4 deletions code/game/objects/items.dm
Expand Up @@ -350,10 +350,6 @@ var/list/global/slot_flags_enumeration = list(
if(slot_belt, slot_wear_id)
if(slot == slot_belt && (item_flags & ITEM_FLAG_IS_BELT))
return 1
else if(!H.w_uniform && (slot_w_uniform in mob_equip))
if(!disable_warning)
to_chat(H, "<span class='warning'>You need a jumpsuit before you can attach this [name].</span>")
return 0
if(slot_l_store, slot_r_store)
if(!H.w_uniform && (slot_w_uniform in mob_equip))
if(!disable_warning)
Expand Down
Expand Up @@ -98,7 +98,6 @@

/obj/item/modular_computer/on_update_icon()
icon_state = icon_state_unpowered

overlays.Cut()
if(bsod || updating)
overlays.Add("bsod")
Expand Down
Expand Up @@ -293,7 +293,7 @@
to_chat(user, "The time [stationtime2text()] is displayed in the corner of the screen.")

if(card_slot && card_slot.stored_card)
to_chat(user, "The [card_slot.stored_card] is inserted into it.")
to_chat(user, "\The [card_slot.stored_card] is inserted into it.")

/obj/item/modular_computer/MouseDrop(var/atom/over_object)
var/mob/M = usr
Expand Down
136 changes: 64 additions & 72 deletions code/modules/modular_computers/computers/subtypes/dev_pda.dm
Expand Up @@ -34,82 +34,74 @@

/obj/item/weapon/storage/box/PDAs/Initialize()
. = ..()

new /obj/item/modular_computer/pda(src)
new /obj/item/modular_computer/pda(src)
new /obj/item/modular_computer/pda(src)
new /obj/item/modular_computer/pda(src)
new /obj/item/modular_computer/pda(src)

// PDA types
/obj/item/modular_computer/pda/medical
icon_state = "pda-m"
icon_state_unpowered = "pda-m"

/obj/item/modular_computer/pda/chemistry
icon_state = "pda-m"
icon_state_unpowered = "pda-m"

/obj/item/modular_computer/pda/engineering
icon_state = "pda-e"
icon_state_unpowered = "pda-e"

/obj/item/modular_computer/pda/security
icon_state = "pda-s"
icon_state_unpowered = "pda-s"

/obj/item/modular_computer/pda/forensics
icon_state = "pda-s"
icon_state_unpowered = "pda-s"

/obj/item/modular_computer/pda/science
icon_state = "pda-nt"
icon_state_unpowered = "pda-nt"

/obj/item/modular_computer/pda/heads
name = "command PDA"
icon_state = "pda-h"
icon_state_unpowered = "pda-h"

/obj/item/modular_computer/pda/heads/paperpusher
stored_pen = /obj/item/weapon/pen/fancy

/obj/item/modular_computer/pda/heads/hop
icon_state = "pda-hop"
icon_state_unpowered = "pda-hop"

/obj/item/modular_computer/pda/heads/hos
icon_state = "pda-hos"
icon_state_unpowered = "pda-hos"

/obj/item/modular_computer/pda/heads/ce
icon_state = "pda-ce"
icon_state_unpowered = "pda-ce"

/obj/item/modular_computer/pda/heads/cmo
icon_state = "pda-cmo"
icon_state_unpowered = "pda-cmo"

/obj/item/modular_computer/pda/heads/rd
icon_state = "pda-rd"
icon_state_unpowered = "pda-rd"

/obj/item/modular_computer/pda/captain
icon_state = "pda-c"
icon_state_unpowered = "pda-c"

/obj/item/modular_computer/pda/ert
icon_state = "pda-h"
icon_state_unpowered = "pda-h"

/obj/item/modular_computer/pda/cargo
icon_state = "pda-sup"
icon_state_unpowered = "pda-sup"

/obj/item/modular_computer/pda/syndicate
icon_state = "pda-syn"
icon_state_unpowered = "pda-syn"
/obj/item/modular_computer/pda/wrist
name = "wrist computer"
desc = "A wrist-mounted modular personal computer. Very stylish."
icon = 'icons/obj/wristcomp.dmi'
icon_state = "wc_base"
color = COLOR_GUNMETAL
item_state_slots = list(slot_wear_id_str = "wc_base")
var/stripe_color

/obj/item/modular_computer/pda/wrist/attack_hand(var/mob/user)
if(ishuman(user))
var/mob/living/carbon/human/H = user
if(H.wear_id == src)
attack_self(user)
return
. = ..()

/obj/item/modular_computer/pda/roboticist
icon_state = "pda-robot"
icon_state_unpowered = "pda-robot"
/obj/item/modular_computer/pda/wrist/MouseDrop(var/obj/over_object)
if(!usr.incapacitated() && loc == usr && over_object && ishuman(usr) && usr.unEquip(src))
if(over_object.name == "r_hand")
usr.put_in_r_hand(src)
else if(over_object.name == "l_hand")
usr.put_in_l_hand(src)
else
return
add_fingerprint(usr)

/obj/item/modular_computer/pda/wrist/get_mob_overlay(var/mob/user_mob, var/slot)
var/image/ret = ..()
if(slot == slot_wear_id_str)
if(enabled)
var/image/I = image(icon = ret.icon, icon_state = "wc_screen")
I.appearance_flags |= RESET_COLOR
I.color = (bsod || updating) ? "#0000ff" : "#00ff00"
ret.add_overlay(I)
else
ret.add_overlay(image(icon = ret.icon, icon_state = "wc_screen_off"))
if(stripe_color)
var/image/I = image(icon = ret.icon, icon_state = "wc_stripe")
I.appearance_flags |= RESET_COLOR
I.color = stripe_color
add_overlay(I)
return ret

/obj/item/modular_computer/pda/wrist/on_update_icon()
cut_overlays()
if(enabled)
set_light(light_strength)
var/image/I = image(icon = icon, icon_state = "wc_screen")
I.appearance_flags |= RESET_COLOR
I.color = (bsod || updating) ? "#0000ff" : "#00ff00"
add_overlay(I)
else
set_light(0)
var/image/I = image(icon = icon, icon_state = "wc_screen_off")
add_overlay(I)
if(stripe_color)
var/image/I = image(icon = icon, icon_state = "wc_stripe")
I.appearance_flags |= RESET_COLOR
I.color = stripe_color
add_overlay(I)

var/mob/living/carbon/human/H = loc
if(istype(H) && H.wear_id == src)
H.update_inv_wear_id()
Binary file modified icons/mob/onmob/onmob_id.dmi
Binary file not shown.
Binary file added icons/obj/wristcomp.dmi
Binary file not shown.
12 changes: 8 additions & 4 deletions maps/cassini/jobs/_job_closets.dm
Expand Up @@ -35,7 +35,8 @@
return list(
/obj/item/clothing/under/lower/pants/beige,
/obj/item/clothing/under/upper/shirt/beige,
/obj/item/clothing/under/jumpsuit/cassini
/obj/item/clothing/under/jumpsuit/cassini,
/obj/item/modular_computer/pda/wrist/cassini
)

/obj/structure/closet/cassini/empty/WillContain()
Expand Down Expand Up @@ -64,7 +65,8 @@
return list(
/obj/item/clothing/under/jumpsuit/cassini/utilities,
/obj/item/weapon/storage/belt/utility/full,
/obj/item/clothing/gloves/insulated
/obj/item/clothing/gloves/insulated,
/obj/item/modular_computer/pda/wrist/cassini_utilities
)

/obj/structure/closet/secure_closet/cassini/police
Expand All @@ -83,7 +85,8 @@
/obj/item/device/flash,
/obj/item/weapon/handcuffs,
/obj/item/weapon/handcuffs,
/obj/item/weapon/handcuffs
/obj/item/weapon/handcuffs,
/obj/item/modular_computer/pda/wrist/cassini_police
)

/obj/structure/closet/secure_closet/cassini/medical
Expand All @@ -93,5 +96,6 @@
/obj/structure/closet/secure_closet/cassini/medical/WillContain()
return list(
/obj/item/clothing/under/jumpsuit/cassini/medical,
/obj/item/clothing/gloves/nitrile
/obj/item/clothing/gloves/nitrile,
/obj/item/modular_computer/pda/wrist/cassini_medical
)
34 changes: 33 additions & 1 deletion maps/cassini/jobs/_job_clothing.dm
Expand Up @@ -84,4 +84,36 @@

/obj/item/clothing/suit/armor/vest/police
name = "police vest"
icon_state = "policevest"
icon_state = "policevest"

// wrist comps
/obj/item/modular_computer/pda/wrist/cassini
color = COLOR_CASSINI
stripe_color = COLOR_TEAL

/obj/item/modular_computer/pda/wrist/cassini_police
color = COLOR_POLICE
stripe_color = COLOR_POLICE_LIGHT

/obj/item/modular_computer/pda/wrist/cassini_police/manager
stripe_color = COLOR_GOLD

/obj/item/modular_computer/pda/wrist/cassini/admin
stripe_color = COLOR_OFF_WHITE

/obj/item/modular_computer/pda/wrist/cassini/manager
stripe_color = COLOR_GOLD

/obj/item/modular_computer/pda/wrist/cassini_utilities
color = COLOR_WARM_YELLOW
stripe_color = COLOR_ORANGE

/obj/item/modular_computer/pda/wrist/cassini_utilities/manager
stripe_color = COLOR_GOLD

/obj/item/modular_computer/pda/wrist/cassini_medical
color = COLOR_OFF_WHITE
stripe_color = COLOR_BLUE_GRAY

/obj/item/modular_computer/pda/wrist/cassini_medical/manager
stripe_color = COLOR_GOLD
10 changes: 10 additions & 0 deletions maps/cassini/jobs/_job_outfits.dm
Expand Up @@ -4,24 +4,30 @@
uniform_upper = /obj/item/clothing/under/upper/shirt/beige
uniform_over = /obj/item/clothing/under/jumpsuit/cassini
id_type = /obj/item/weapon/card/id/cassini
pda_type = /obj/item/modular_computer/pda/wrist/cassini
pda_slot = slot_belt

/decl/hierarchy/outfit/job/cassini/clerk
name = "Cassini Clerk"
id_type = /obj/item/weapon/card/id/cassini/admin
uniform_over = /obj/item/clothing/under/jumpsuit/cassini/admin
pda_type = /obj/item/modular_computer/pda/wrist/cassini/admin

/decl/hierarchy/outfit/job/cassini/clerk/administrator
name = "Cassini Administrator"
uniform_over = /obj/item/clothing/under/jumpsuit/cassini/admin/manager
pda_type = /obj/item/modular_computer/pda/wrist/cassini/manager

/decl/hierarchy/outfit/job/cassini/utilities
name = "Cassini Utilities"
uniform_over = /obj/item/clothing/under/jumpsuit/cassini/utilities
id_type = /obj/item/weapon/card/id/cassini/utilities
pda_type = /obj/item/modular_computer/pda/wrist/cassini_utilities

/decl/hierarchy/outfit/job/cassini/utilities/chief
name = "Cassini General Foreman"
uniform_over = /obj/item/clothing/under/jumpsuit/cassini/utilities/manager
pda_type = /obj/item/modular_computer/pda/wrist/cassini_utilities/manager

/decl/hierarchy/outfit/job/cassini/utilities/construction
name = "Cassini Construction Worker"
Expand All @@ -33,18 +39,22 @@
uniform_upper = /obj/item/clothing/under/upper/longsleeve/police
head = /obj/item/clothing/head/police_cap
uniform_accessories = list(/obj/item/clothing/accessory/police_badge)
pda_type = /obj/item/modular_computer/pda/wrist/cassini_police

/decl/hierarchy/outfit/job/cassini/police/chief
name = "Cassini Chief of Police"
head = /obj/item/clothing/head/police_hat
uniform_accessories = list(/obj/item/clothing/accessory/black_tie, /obj/item/clothing/accessory/police_badge)
uniform_over = /obj/item/clothing/under/jumpsuit/cassini/police/manager
pda_type = /obj/item/modular_computer/pda/wrist/cassini_police/manager

/decl/hierarchy/outfit/job/cassini/medical
name = "Cassini Physician"
uniform_over = /obj/item/clothing/under/jumpsuit/cassini/medical
id_type = /obj/item/weapon/card/id/cassini/medical
pda_type = /obj/item/modular_computer/pda/wrist/cassini_medical

/decl/hierarchy/outfit/job/cassini/medical/chief
name = "Cassini Chief Physician"
uniform_over = /obj/item/clothing/under/jumpsuit/cassini/medical/manager
pda_type = /obj/item/modular_computer/pda/wrist/cassini_medical/manager

0 comments on commit ec395be

Please sign in to comment.