Merge pull request #2748 from SkyMarshal/bleeding-edge-freeze
Centcom now has sexy uniforms and IDs. Emag now looks like modified standard ID card again.
@@ -1291,6 +1291,7 @@
|
|||||||
#include "code\WorkInProgress\Mini\ATM.dm"
|
#include "code\WorkInProgress\Mini\ATM.dm"
|
||||||
#include "code\WorkInProgress\Mini\atmos_control.dm"
|
#include "code\WorkInProgress\Mini\atmos_control.dm"
|
||||||
#include "code\WorkInProgress\Ported\policetape.dm"
|
#include "code\WorkInProgress\Ported\policetape.dm"
|
||||||
|
#include "code\WorkInProgress\SkyMarshal\officer_stuff.dm"
|
||||||
#include "code\WorkInProgress\SkyMarshal\Ultralight_procs.dm"
|
#include "code\WorkInProgress\SkyMarshal\Ultralight_procs.dm"
|
||||||
#include "code\WorkInProgress\Susan\susan_desert_turfs.dm"
|
#include "code\WorkInProgress\Susan\susan_desert_turfs.dm"
|
||||||
#include "code\WorkInProgress\virus2\analyser.dm"
|
#include "code\WorkInProgress\virus2\analyser.dm"
|
||||||
|
|||||||
43
code/WorkInProgress/SkyMarshal/officer_stuff.dm
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
// Reference: http://www.teuse.net/personal/harrington/hh_bible.htm
|
||||||
|
// http://www.trmn.org/portal/images/uniforms/rmn/rmn_officer_srv_dress_lrg.png
|
||||||
|
|
||||||
|
/obj/item/clothing/head/beret/centcom/officer
|
||||||
|
name = "officers beret"
|
||||||
|
desc = "A black beret adorned with the shield—a silver kite shield with an engraved sword—of the NanoTrasen security forces, announcing to the world that the wearer is a defender of NanoTrasen."
|
||||||
|
icon_state = "centcomofficerberet"
|
||||||
|
flags = FPRINT | TABLEPASS
|
||||||
|
|
||||||
|
/obj/item/clothing/head/beret/centcom/captain
|
||||||
|
name = "captains beret"
|
||||||
|
desc = "A white beret adorned with the shield—a cobalt kite shield with an engraved sword—of the NanoTrasen security forces, worn only by those captaining a vessel of the NanoTrasen Navy."
|
||||||
|
icon_state = "centcomcaptain"
|
||||||
|
flags = FPRINT | TABLEPASS
|
||||||
|
|
||||||
|
/obj/item/clothing/shoes/centcom
|
||||||
|
name = "dress shoes"
|
||||||
|
desc = "They appear impeccably polished."
|
||||||
|
icon_state = "laceups"
|
||||||
|
|
||||||
|
/obj/item/clothing/under/rank/centcom/representative
|
||||||
|
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Ensign\" and bears \"N.C.V. Fearless CV-286\" on the left shounder."
|
||||||
|
name = "\improper NanoTrasen Navy Uniform"
|
||||||
|
icon_state = "officer"
|
||||||
|
item_state = "g_suit"
|
||||||
|
color = "officer"
|
||||||
|
displays_id = 0
|
||||||
|
|
||||||
|
/obj/item/clothing/under/rank/centcom/officer
|
||||||
|
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Lieutenant Commander\" and bears \"N.C.V. Fearless CV-286\" on the left shounder."
|
||||||
|
name = "\improper NanoTrasen Officers Uniform"
|
||||||
|
icon_state = "officer"
|
||||||
|
item_state = "g_suit"
|
||||||
|
color = "officer"
|
||||||
|
displays_id = 0
|
||||||
|
|
||||||
|
/obj/item/clothing/under/rank/centcom/captain
|
||||||
|
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Captain\" and bears \"N.C.V. Fearless CV-286\" on the left shounder."
|
||||||
|
name = "\improper NanoTrasen Captains Uniform"
|
||||||
|
icon_state = "centcom"
|
||||||
|
item_state = "dg_suit"
|
||||||
|
color = "centcom"
|
||||||
|
displays_id = 0
|
||||||
@@ -547,13 +547,14 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
|||||||
"assassin",
|
"assassin",
|
||||||
"death commando",
|
"death commando",
|
||||||
"syndicate commando",
|
"syndicate commando",
|
||||||
"centcom official",
|
|
||||||
"centcom commander",
|
|
||||||
"special ops officer",
|
"special ops officer",
|
||||||
"blue wizard",
|
"blue wizard",
|
||||||
"red wizard",
|
"red wizard",
|
||||||
"marisa wizard",
|
"marisa wizard",
|
||||||
"emergency rescue team",
|
"emergency rescue team",
|
||||||
|
"nanotrasen representative",
|
||||||
|
"nanotrasen officer",
|
||||||
|
"nanotrasen captain"
|
||||||
)
|
)
|
||||||
var/dresscode = input("Select dress for [M]", "Robust quick dress shop") as null|anything in dresspacks
|
var/dresscode = input("Select dress for [M]", "Robust quick dress shop") as null|anything in dresspacks
|
||||||
if (isnull(dresscode))
|
if (isnull(dresscode))
|
||||||
@@ -742,54 +743,79 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
|||||||
if("syndicate commando")
|
if("syndicate commando")
|
||||||
M.equip_syndicate_commando()
|
M.equip_syndicate_commando()
|
||||||
|
|
||||||
if("centcom official")
|
if("nanotrasen representative")
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom_officer(M), slot_w_uniform)
|
M.equip_if_possible(new /obj/item/clothing/under/rank/centcom/representative(M), slot_w_uniform)
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
|
M.equip_if_possible(new /obj/item/clothing/shoes/centcom(M), slot_shoes)
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(M), slot_gloves)
|
M.equip_if_possible(new /obj/item/clothing/gloves/white(M), slot_gloves)
|
||||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/hop(M), slot_ears)
|
M.equip_if_possible(new /obj/item/device/radio/headset/heads/hop(M), slot_ears)
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(M), slot_glasses)
|
|
||||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/gun(M), slot_belt)
|
|
||||||
M.equip_to_slot_or_del(new /obj/item/weapon/pen(M), slot_l_store)
|
|
||||||
|
|
||||||
var/obj/item/device/pda/heads/pda = new(M)
|
var/obj/item/device/pda/heads/pda = new(M)
|
||||||
pda.owner = M.real_name
|
pda.owner = M.real_name
|
||||||
pda.ownjob = "CentCom Review Official"
|
pda.ownjob = "NanoTrasen Navy Representative"
|
||||||
pda.name = "PDA-[M.real_name] ([pda.ownjob])"
|
pda.name = "PDA-[M.real_name] ([pda.ownjob])"
|
||||||
|
|
||||||
M.equip_to_slot_or_del(pda, slot_r_store)
|
M.equip_if_possible(pda, slot_r_store)
|
||||||
|
M.equip_if_possible(new /obj/item/clothing/glasses/sunglasses(M), slot_l_store)
|
||||||
M.equip_to_slot_or_del(new /obj/item/weapon/clipboard(M), slot_l_hand)
|
M.equip_if_possible(new /obj/item/weapon/clipboard(M), slot_belt)
|
||||||
|
|
||||||
var/obj/item/weapon/card/id/W = new(M)
|
var/obj/item/weapon/card/id/W = new(M)
|
||||||
W.name = "[M.real_name]'s ID Card"
|
W.name = "[M.real_name]'s ID Card"
|
||||||
W.icon_state = "centcom"
|
W.icon_state = "centcom"
|
||||||
|
W.item_state = "id_inv"
|
||||||
W.access = get_all_accesses()
|
W.access = get_all_accesses()
|
||||||
W.access += list("VIP Guest","Custodian","Thunderdome Overseer","Intel Officer","Medical Officer","Death Commando","Research Officer")
|
W.access += list("VIP Guest","Custodian","Thunderdome Overseer","Intel Officer","Medical Officer","Death Commando","Research Officer")
|
||||||
W.assignment = "CentCom Review Official"
|
W.assignment = "NanoTrasen Navy Representative"
|
||||||
W.registered_name = M.real_name
|
W.registered_name = M.real_name
|
||||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
M.equip_if_possible(W, slot_wear_id)
|
||||||
|
|
||||||
if("centcom commander")
|
if("nanotrasen officer")
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom_commander(M), slot_w_uniform)
|
M.equip_if_possible(new /obj/item/clothing/under/rank/centcom/officer(M), slot_w_uniform)
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/bulletproof(M), slot_wear_suit)
|
M.equip_if_possible(new /obj/item/clothing/shoes/centcom(M), slot_shoes)
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/swat(M), slot_shoes)
|
M.equip_if_possible(new /obj/item/clothing/gloves/white(M), slot_gloves)
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/swat(M), slot_gloves)
|
M.equip_if_possible(new /obj/item/device/radio/headset/heads/captain(M), slot_ears)
|
||||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(M), slot_ears)
|
M.equip_if_possible(new /obj/item/clothing/head/beret/centcom/officer(M), slot_head)
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/eyepatch(M), slot_glasses)
|
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/mask/cigarette/cigar/cohiba(M), slot_wear_mask)
|
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/centhat(M), slot_head)
|
|
||||||
M.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/mateba(M), slot_belt)
|
|
||||||
M.equip_to_slot_or_del(new /obj/item/weapon/lighter/zippo(M), slot_r_store)
|
|
||||||
M.equip_to_slot_or_del(new /obj/item/ammo_magazine/a357(M), slot_l_store)
|
|
||||||
|
|
||||||
var/obj/item/weapon/card/id/W = new(M)
|
var/obj/item/device/pda/heads/pda = new(M)
|
||||||
|
pda.owner = M.real_name
|
||||||
|
pda.ownjob = "NanoTrasen Navy Officer"
|
||||||
|
pda.name = "PDA-[M.real_name] ([pda.ownjob])"
|
||||||
|
|
||||||
|
M.equip_if_possible(pda, slot_r_store)
|
||||||
|
M.equip_if_possible(new /obj/item/clothing/glasses/sunglasses(M), slot_l_store)
|
||||||
|
M.equip_if_possible(new /obj/item/weapon/gun/energy(M), slot_belt)
|
||||||
|
|
||||||
|
var/obj/item/weapon/card/id/centcom/W = new(M)
|
||||||
W.name = "[M.real_name]'s ID Card"
|
W.name = "[M.real_name]'s ID Card"
|
||||||
W.icon_state = "centcom"
|
|
||||||
W.access = get_all_accesses()
|
W.access = get_all_accesses()
|
||||||
W.access += get_all_centcom_access()
|
W.access += get_all_centcom_access()
|
||||||
W.assignment = "CentCom Commanding Officer"
|
W.assignment = "NanoTrasen Navy Officer"
|
||||||
W.registered_name = M.real_name
|
W.registered_name = M.real_name
|
||||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
M.equip_if_possible(W, slot_wear_id)
|
||||||
|
|
||||||
|
|
||||||
|
if("nanotrasen captain")
|
||||||
|
M.equip_if_possible(new /obj/item/clothing/under/rank/centcom/captain(M), slot_w_uniform)
|
||||||
|
M.equip_if_possible(new /obj/item/clothing/shoes/centcom(M), slot_shoes)
|
||||||
|
M.equip_if_possible(new /obj/item/clothing/gloves/white(M), slot_gloves)
|
||||||
|
M.equip_if_possible(new /obj/item/device/radio/headset/heads/captain(M), slot_ears)
|
||||||
|
M.equip_if_possible(new /obj/item/clothing/head/beret/centcom/captain(M), slot_head)
|
||||||
|
|
||||||
|
var/obj/item/device/pda/heads/pda = new(M)
|
||||||
|
pda.owner = M.real_name
|
||||||
|
pda.ownjob = "NanoTrasen Navy Captain"
|
||||||
|
pda.name = "PDA-[M.real_name] ([pda.ownjob])"
|
||||||
|
|
||||||
|
M.equip_if_possible(pda, slot_r_store)
|
||||||
|
M.equip_if_possible(new /obj/item/clothing/glasses/sunglasses(M), slot_l_store)
|
||||||
|
M.equip_if_possible(new /obj/item/weapon/gun/energy(M), slot_belt)
|
||||||
|
|
||||||
|
var/obj/item/weapon/card/id/centcom/W = new(M)
|
||||||
|
W.name = "[M.real_name]'s ID Card"
|
||||||
|
W.access = get_all_accesses()
|
||||||
|
W.access += get_all_centcom_access()
|
||||||
|
W.assignment = "NanoTrasen Navy Captain"
|
||||||
|
W.registered_name = M.real_name
|
||||||
|
M.equip_if_possible(W, slot_wear_id)
|
||||||
|
|
||||||
if("emergency rescue team")
|
if("emergency rescue team")
|
||||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom_officer(M), slot_w_uniform)
|
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/centcom_officer(M), slot_w_uniform)
|
||||||
|
|||||||
@@ -156,6 +156,7 @@ BLIND // can't see anything
|
|||||||
3 = Report location
|
3 = Report location
|
||||||
*/
|
*/
|
||||||
var/obj/item/clothing/tie/hastie = null
|
var/obj/item/clothing/tie/hastie = null
|
||||||
|
var/displays_id = 1
|
||||||
|
|
||||||
/obj/item/clothing/under/attackby(obj/item/I, mob/user)
|
/obj/item/clothing/under/attackby(obj/item/I, mob/user)
|
||||||
if(!hastie && istype(I, /obj/item/clothing/tie))
|
if(!hastie && istype(I, /obj/item/clothing/tie))
|
||||||
|
|||||||
@@ -560,9 +560,13 @@ proc/get_damage_icon_part(damage_state, body_part)
|
|||||||
|
|
||||||
/mob/living/carbon/human/update_inv_wear_id(var/update_icons=1)
|
/mob/living/carbon/human/update_inv_wear_id(var/update_icons=1)
|
||||||
if(wear_id)
|
if(wear_id)
|
||||||
overlays_lying[ID_LAYER] = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "id2")
|
|
||||||
overlays_standing[ID_LAYER] = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "id")
|
|
||||||
wear_id.screen_loc = ui_id //TODO
|
wear_id.screen_loc = ui_id //TODO
|
||||||
|
if(w_uniform && w_uniform:displays_id)
|
||||||
|
overlays_lying[ID_LAYER] = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "id2")
|
||||||
|
overlays_standing[ID_LAYER] = image("icon" = 'icons/mob/mob.dmi', "icon_state" = "id")
|
||||||
|
else
|
||||||
|
overlays_lying[ID_LAYER] = null
|
||||||
|
overlays_standing[ID_LAYER] = null
|
||||||
else
|
else
|
||||||
overlays_lying[ID_LAYER] = null
|
overlays_lying[ID_LAYER] = null
|
||||||
overlays_standing[ID_LAYER] = null
|
overlays_standing[ID_LAYER] = null
|
||||||
@@ -873,4 +877,4 @@ proc/get_damage_icon_part(damage_state, body_part)
|
|||||||
#undef R_HAND_LAYER
|
#undef R_HAND_LAYER
|
||||||
#undef TAIL_LAYER
|
#undef TAIL_LAYER
|
||||||
#undef TARGETED_LAYER
|
#undef TARGETED_LAYER
|
||||||
#undef TOTAL_LAYERS
|
#undef TOTAL_LAYERS
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 124 KiB After Width: | Height: | Size: 125 KiB |
|
Before Width: | Height: | Size: 234 KiB After Width: | Height: | Size: 232 KiB |
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.6 KiB |
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 47 KiB |