Fixed bugs involving wrapping yourself in a closet. Added a new centcom uniform sprite, and added checks to keep them looking pretty. Added a cancel button to deathsquad button. Adjusted admin spawnable complete uniforms, so that centcom officials look pimp'n. Added a layer of internal armor (special invisible exosuit) that spawns on centcom officials. Centcom berets are no longer space helmets. Added missing reactive teleport armor sprite and fixed it's functionality.

This commit is contained in:
SkyMarshal
2012-01-11 18:13:02 -07:00
parent 3d9658178a
commit a47b399c32
18 changed files with 81 additions and 39 deletions
+20 -11
View File
@@ -674,11 +674,13 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
if("centcom official")
M.equip_if_possible(new /obj/item/clothing/under/rank/centcom_officer(M), M.slot_w_uniform)
M.equip_if_possible(new /obj/item/clothing/shoes/black(M), M.slot_shoes)
M.equip_if_possible(new /obj/item/clothing/gloves/black(M), M.slot_gloves)
M.equip_if_possible(new /obj/item/clothing/gloves/white(M), M.slot_gloves)
M.equip_if_possible(new /obj/item/device/radio/headset/heads/hop(M), M.slot_ears)
M.equip_if_possible(new /obj/item/clothing/glasses/sunglasses(M), M.slot_glasses)
M.equip_if_possible(new /obj/item/weapon/gun/energy(M), M.slot_belt)
M.equip_if_possible(new /obj/item/weapon/pen(M), M.slot_l_store)
var/obj/item/clothing/suit/storage/armoredundersuit/K = new(M)
var/obj/item/clothing/glasses/sunglasses/V = new(M)
V.loc = K
M.equip_if_possible(K, M.slot_wear_suit)
M.equip_if_possible(new /obj/item/weapon/gun/energy(M), M.slot_s_store)
var/obj/item/device/pda/heads/pda = new(M)
pda.owner = M.real_name
@@ -687,27 +689,33 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
M.equip_if_possible(pda, M.slot_r_store)
M.equip_if_possible(new /obj/item/weapon/clipboard(M), M.slot_l_hand)
var/obj/item/weapon/clipboard/G = new(M)
G.pen = new /obj/item/weapon/pen(G)
M.equip_if_possible(G, M.slot_l_store)
var/obj/item/weapon/card/id/W = new(M)
W.name = "[M.real_name]'s ID Card"
W.icon_state = "centcom"
W.item_state = "id_inv"
W.access = get_all_accesses()
W.access += list("VIP Guest","Custodian","Thunderdome Overseer","Intel Officer","Medical Officer","Death Commando","Research Officer")
W.assignment = "CentCom Review Official"
W.registered = M.real_name
W.over = 0
M.equip_if_possible(W, M.slot_wear_id)
if("centcom commander")
M.equip_if_possible(new /obj/item/clothing/under/rank/centcom_commander(M), M.slot_w_uniform)
M.equip_if_possible(new /obj/item/clothing/suit/armor/bulletproof(M), M.slot_wear_suit)
var/obj/item/clothing/suit/storage/armoredundersuit/K = new(M)
var/obj/item/clothing/glasses/eyepatch/G = new(M)
G.loc = K
M.equip_if_possible(K, M.slot_wear_suit)
M.equip_if_possible(new /obj/item/clothing/shoes/swat(M), M.slot_shoes)
M.equip_if_possible(new /obj/item/clothing/gloves/swat(M), M.slot_gloves)
M.equip_if_possible(new /obj/item/clothing/gloves/white(M), M.slot_gloves)
M.equip_if_possible(new /obj/item/device/radio/headset/heads/captain(M), M.slot_ears)
M.equip_if_possible(new /obj/item/clothing/glasses/eyepatch(M), M.slot_glasses)
M.equip_if_possible(new /obj/item/clothing/mask/cigarette/cigar/cohiba(M), M.slot_wear_mask)
M.equip_if_possible(new /obj/item/clothing/head/centhat(M), M.slot_head)
M.equip_if_possible(new /obj/item/weapon/gun/projectile/mateba(M), M.slot_belt)
M.equip_if_possible(new /obj/item/weapon/gun/projectile/mateba(M), M.slot_s_store)
M.equip_if_possible(new /obj/item/weapon/zippo(M), M.slot_r_store)
M.equip_if_possible(new /obj/item/ammo_magazine/a357(M), M.slot_l_store)
@@ -718,17 +726,18 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
W.access += get_all_centcom_access()
W.assignment = "CentCom Commanding Officer"
W.registered = M.real_name
W.over = 0
M.equip_if_possible(W, M.slot_wear_id)
if("special ops officer")
M.equip_if_possible(new /obj/item/clothing/under/syndicate/combat(M), M.slot_w_uniform)
M.equip_if_possible(new /obj/item/clothing/suit/armor/swat/officer(M), M.slot_wear_suit)
M.equip_if_possible(new /obj/item/clothing/suit/storage/officer(M), M.slot_wear_suit)
M.equip_if_possible(new /obj/item/clothing/shoes/combat(M), M.slot_shoes)
M.equip_if_possible(new /obj/item/clothing/gloves/combat(M), M.slot_gloves)
M.equip_if_possible(new /obj/item/device/radio/headset/heads/captain(M), M.slot_ears)
M.equip_if_possible(new /obj/item/clothing/glasses/thermal/eyepatch(M), M.slot_glasses)
M.equip_if_possible(new /obj/item/clothing/mask/cigarette/cigar/havanian(M), M.slot_wear_mask)
M.equip_if_possible(new /obj/item/clothing/head/helmet/space/deathsquad/beret(M), M.slot_head)
M.equip_if_possible(new /obj/item/clothing/head/deathsquad/beret(M), M.slot_head)
M.equip_if_possible(new /obj/item/weapon/gun/energy/pulse_rifle/M1911(M), M.slot_belt)
M.equip_if_possible(new /obj/item/weapon/zippo(M), M.slot_r_store)
M.equip_if_possible(new /obj/item/weapon/storage/backpack/satchel(M), M.slot_back)
+1 -1
View File
@@ -24,7 +24,7 @@ var/global/sent_strike_team = 0
var/input = null
while(!input)
input = input(src, "Please specify which mission the death commando squad shall undertake.", "Specify Mission", "")
input = input(src, "Please specify which mission the death commando squad shall undertake.", "Specify Mission", "") as text|null
if(!input)
if(alert("Error, no mission set. Do you want to exit the setup process?",,"Yes","No")=="Yes")
return
@@ -7,11 +7,11 @@
/obj/item/clothing/head/helmet/space/deathsquad/beret
/*/obj/item/clothing/head/helmet/space/deathsquad/beret
name = "officer's beret"
desc = "An armored beret commonly used by special operations officers."
icon_state = "beret_badge"
armor = list(melee = 65, bullet = 55, laser = 35,energy = 20, bomb = 30, bio = 30, rad = 30)
armor = list(melee = 65, bullet = 55, laser = 35,energy = 20, bomb = 30, bio = 30, rad = 30)*/
+20 -4
View File
@@ -48,13 +48,29 @@
slowdown = 1
armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 0, rad = 0)
/obj/item/clothing/suit/armor/swat/officer
/obj/item/clothing/suit/storage/officer
name = "officer jacket"
desc = "An armored jacket used in special operations."
icon_state = "detective"
item_state = "det_suit"
gas_transfer_coefficient = 0.01
permeability_coefficient = 0.01
heat_transfer_coefficient = 0.02
protective_temperature = 1000
flags = FPRINT | TABLEPASS | SUITSPACE
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
slowdown = 1
armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 0, rad = 0)
/obj/item/clothing/suit/storage/armoredundersuit
name = "armoured undersuit"
desc = "An layer of armor that attaches to clothing, outfitted with pockets."
icon_state = "invisible"
item_state = "invisible"
body_parts_covered = UPPER_TORSO|LOWER_TORSO
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/pepperspray,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/policetaperoll)
armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0)
@@ -880,7 +880,8 @@
overlays += image("icon" = stain_icon, "layer" = MOB_LAYER)
if (wear_id)
overlays += image("icon" = 'mob.dmi', "icon_state" = "id[!lying ? null : "2"]", "layer" = MOB_LAYER)
if(wear_id.over)
overlays += image("icon" = 'mob.dmi', "icon_state" = "id[!lying ? null : "2"]", "layer" = MOB_LAYER)
if (client)
client.screen -= hud_used.intents
@@ -954,7 +955,8 @@
var/t1 = s_store.item_state
if (!t1)
t1 = s_store.icon_state
overlays += image("icon" = 'belt_mirror.dmi', "icon_state" = text("[][]", t1, (!( lying ) ? null : "2")), "layer" = MOB_LAYER)
if(!istype(wear_suit, /obj/item/clothing/suit/storage/armoredundersuit))
overlays += image("icon" = 'belt_mirror.dmi', "icon_state" = text("[][]", t1, (!( lying ) ? null : "2")), "layer" = MOB_LAYER)
s_store.screen_loc = ui_sstore1
if (h_store)
@@ -63,14 +63,12 @@ emp_act
if(I.IsShield() && (prob(35)))
visible_message("\red <B>The reactive teleport system flings [src] clear of [attack_text]!</B>")
var/list/turfs = new/list()
for(var/turf/T in orange(6))
for(var/turf/T in orange(6,src))
if(istype(T,/turf/space)) continue
if(T.density) continue
if(T.x>world.maxx-6 || T.x<6) continue
if(T.y>world.maxy-6 || T.y<6) continue
turfs += T
if(!turfs.len) turfs += pick(/turf in orange(6))
else
if(!turfs.len)
turfs += pick(/turf in orange(6,src))
visible_message("\red <B>The reactive teleport system malfunctions!</B>")
var/turf/picked = pick(turfs)
if(!isturf(picked)) return
+10 -3
View File
@@ -8,11 +8,11 @@
var/sortTag = null
flags = FPRINT
mouse_drag_pointer = MOUSE_ACTIVE_POINTER
var/examtext = null
var/examtext = null
var/label_x = 0
var/tag_x = 0
var/tag_x = 0
var/waswelded = 0
attack_hand(mob/user as mob)
return unwrap()
@@ -87,6 +87,13 @@
..()
return
relaymove(mob/user as mob)
for(var/obj/structure/closet/F in src)
user.loc = F
F.contents += user
F.opened = 0
break
/obj/item/smallDelivery
desc = "A small wrapped package."
name = "small parcel"