diff --git a/_maps/map_files/shuttles/emergency_mil.dmm b/_maps/map_files/shuttles/emergency_mil.dmm new file mode 100644 index 00000000000..3bd1fa6a2d7 --- /dev/null +++ b/_maps/map_files/shuttles/emergency_mil.dmm @@ -0,0 +1,105 @@ +"aa" = (/turf/space,/area/space) +"ab" = (/obj/machinery/light/spot,/turf/space,/area/shuttle/escape) +"ac" = (/turf/space,/area/shuttle/escape) +"ad" = (/obj/machinery/porta_turret{check_access = 0; check_arrest = 0; check_weapons = 1; lethal = 1; name = "shuttle turret"},/turf/simulated/floor/plating/airless,/area/shuttle/escape) +"ae" = (/turf/space,/turf/simulated/shuttle/wall{dir = 2; icon_state = "swallc2"},/area/shuttle/escape) +"af" = (/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/escape) +"ag" = (/obj/structure/grille,/obj/structure/window/full/shuttle,/turf/simulated/floor/plating,/area/shuttle/escape) +"ah" = (/turf/space,/turf/simulated/shuttle/wall{dir = 2; icon_state = "swallc1"},/area/shuttle/escape) +"ai" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f6"; dir = 2},/area/shuttle/escape) +"aj" = (/turf/simulated/shuttle/wall{icon_state = "swallc4"},/area/shuttle/escape) +"ak" = (/obj/machinery/computer/communications,/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"al" = (/obj/machinery/computer/crew,/turf/simulated/shuttle/floor,/area/shuttle/escape) +"am" = (/obj/structure/table,/turf/simulated/shuttle/floor,/area/shuttle/escape) +"an" = (/obj/machinery/computer/security{network = list("SS13","Telecomms","Research Outpost","Mining Outpost")},/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"ao" = (/obj/machinery/computer/emergency_shuttle,/turf/simulated/shuttle/floor,/area/shuttle/escape) +"ap" = (/turf/simulated/shuttle/wall{icon_state = "swallc3"},/area/shuttle/escape) +"aq" = (/turf/space,/turf/simulated/shuttle/wall{tag = "icon-swall_f10"; icon_state = "swall_f10"; dir = 2},/area/shuttle/escape) +"ar" = (/turf/simulated/shuttle/wall{icon_state = "swall3"; dir = 2},/area/shuttle/escape) +"as" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor,/area/shuttle/escape) +"at" = (/turf/simulated/shuttle/floor,/area/shuttle/escape) +"au" = (/obj/structure/stool/bed/chair/comfy/brown{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"av" = (/obj/structure/stool/bed/chair/comfy/teal{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"aw" = (/obj/structure/stool/bed/chair/comfy/red{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"ax" = (/obj/structure/stool/bed/chair/comfy/blue{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"ay" = (/obj/machinery/computer/robotics,/turf/simulated/shuttle/floor,/area/shuttle/escape) +"az" = (/obj/structure/stool/bed/chair/comfy/beige{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"aA" = (/obj/structure/stool/bed/chair/comfy/purp{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"aB" = (/turf/simulated/shuttle/wall{tag = "icon-swall7"; icon_state = "swall7"; dir = 2},/area/shuttle/escape) +"aC" = (/turf/simulated/shuttle/wall{icon_state = "swall14"; dir = 2},/area/shuttle/escape) +"aD" = (/obj/machinery/door/airlock/glass_command{name = "Escape Shuttle Cockpit"; req_access_txt = "19"},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"aE" = (/turf/simulated/shuttle/wall{icon_state = "swall11"; dir = 2},/area/shuttle/escape) +"aF" = (/obj/structure/stool/bed/chair,/turf/simulated/shuttle/floor4,/area/shuttle/escape) +"aG" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/obj/structure/stool/bed/chair,/turf/simulated/shuttle/floor4,/area/shuttle/escape) +"aH" = (/obj/structure/grille,/obj/structure/window/full/shuttle{icon_state = "16"},/turf/simulated/floor/plating,/area/shuttle/escape) +"aI" = (/turf/simulated/floor/plating,/area/shuttle/escape) +"aJ" = (/obj/machinery/atmospherics/unary/cryo_cell,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHWEST)"; icon_state = "whiteblue"; dir = 9},/area/shuttle/escape) +"aK" = (/obj/machinery/atmospherics/unary/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen{name = "Canister: \[O2] (CRYO)"},/obj/item/weapon/wrench,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/shuttle/escape) +"aL" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1},/area/shuttle/escape) +"aM" = (/obj/machinery/sleeper,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (NORTHEAST)"; icon_state = "whiteblue"; dir = 5},/area/shuttle/escape) +"aN" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/turf/simulated/shuttle/floor4,/area/shuttle/escape) +"aO" = (/turf/simulated/shuttle/floor4,/area/shuttle/escape) +"aP" = (/obj/structure/grille,/obj/structure/window/full/shuttle{icon_state = "8"},/turf/simulated/floor/plating,/area/shuttle/escape) +"aQ" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/shuttle/escape) +"aR" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"},/turf/simulated/floor/plasteel{icon_state = "white"},/area/shuttle/escape) +"aS" = (/turf/simulated/floor/plasteel{icon_state = "white"},/area/shuttle/escape) +"aT" = (/obj/machinery/vending/wallmed1{layer = 3.3; name = "Emergency NanoMed"; pixel_x = 28; pixel_y = 0; req_access_txt = "0"},/obj/machinery/sleeper,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/shuttle/escape) +"aU" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (WEST)"; icon_state = "whiteblue"; dir = 8},/area/shuttle/escape) +"aV" = (/obj/item/device/radio/intercom{dir = 4; name = "station intercom (General)"; pixel_x = 28},/obj/structure/stool/bed/roller,/turf/simulated/floor/plasteel{dir = 4; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/shuttle/escape) +"aW" = (/obj/machinery/door/airlock/shuttle{aiControlDisabled = 1; hackProof = 1; id_tag = "s_docking_airlock"; name = "Shuttle Hatch"},/turf/simulated/floor/plating,/area/shuttle/escape) +"aX" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape) +"aY" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{dir = 1},/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHWEST)"; icon_state = "whiteblue"; dir = 10},/area/shuttle/escape) +"aZ" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 6},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/shuttle/escape) +"ba" = (/turf/simulated/floor/plasteel{dir = 2; icon_state = "whiteblue"; tag = "icon-whitehall (WEST)"},/area/shuttle/escape) +"bb" = (/obj/machinery/light/spot{tag = "icon-tube1 (EAST)"; icon_state = "tube1"; dir = 4},/obj/structure/stool/bed/roller,/turf/simulated/floor/plasteel{tag = "icon-whiteblue (SOUTHEAST)"; icon_state = "whiteblue"; dir = 6},/area/shuttle/escape) +"bc" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access_txt = "2"},/turf/simulated/floor/plating,/area/shuttle/escape) +"bd" = (/obj/structure/noticeboard,/turf/simulated/shuttle/wall{icon_state = "swall12"; dir = 2},/area/shuttle/escape) +"be" = (/obj/structure/grille,/obj/structure/window/full/shuttle{icon_state = "15"},/turf/simulated/floor/plating,/area/shuttle/escape) +"bf" = (/obj/machinery/door/airlock/glass_command{name = "Escape Shuttle Cockpit"; req_access_txt = "19"},/turf/simulated/floor/plating,/area/shuttle/escape) +"bg" = (/obj/machinery/door/airlock/glass_medical{id_tag = "ShuttleMedbay"; name = "Shuttle Medbay"; req_access_txt = "5"},/turf/simulated/floor/plating,/area/shuttle/escape) +"bh" = (/obj/docking_port/mobile/emergency{dir = 4; dwidth = 11; height = 13; timid = 1; width = 24},/obj/machinery/door/airlock/shuttle{aiControlDisabled = 1; hackProof = 1; id_tag = "s_docking_airlock"; name = "Shuttle Hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"bi" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/turf/simulated/floor/plating,/area/shuttle/escape) +"bj" = (/obj/item/device/radio/intercom{dir = 8; name = "station intercom (General)"; pixel_x = -28},/obj/machinery/light/spot{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor/plating,/area/shuttle/escape) +"bk" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor/plating,/area/shuttle/escape) +"bl" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor/plating,/area/shuttle/escape) +"bm" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/light/spot{tag = "icon-tube1 (EAST)"; icon_state = "tube1"; dir = 4},/turf/simulated/floor/plating,/area/shuttle/escape) +"bn" = (/obj/machinery/light/spot{tag = "icon-tube1 (WEST)"; icon_state = "tube1"; dir = 8},/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor/plating,/area/shuttle/escape) +"bo" = (/obj/machinery/light/spot{tag = "icon-tube1 (EAST)"; icon_state = "tube1"; dir = 4},/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor/plating,/area/shuttle/escape) +"bp" = (/obj/machinery/door/airlock/shuttle{aiControlDisabled = 1; hackProof = 1; id_tag = "s_docking_airlock"; name = "Shuttle Hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape) +"bq" = (/obj/machinery/door/airlock/shuttle{aiControlDisabled = 1; hackProof = 1; id_tag = "s_docking_airlock"; name = "Shuttle Hatch"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape) +"br" = (/mob/living/simple_animal/bot/secbot,/turf/simulated/floor/plating,/area/shuttle/escape) +"bs" = (/obj/machinery/recharge_station,/turf/simulated/floor/plating,/area/shuttle/escape) +"bt" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f5"; dir = 2},/area/shuttle/escape) +"bu" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/simulated/floor/plating/airless,/area/shuttle/escape) +"bv" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/shuttle/escape) +"bw" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "swall_f9"; dir = 2},/area/shuttle/escape) +"bx" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/shuttle/escape) +"by" = (/turf/simulated/floor/plating/airless,/area/shuttle/escape) +"bz" = (/obj/machinery/porta_turret{check_access = 0; check_arrest = 0; check_weapons = 1; lethal = 1; name = "shuttle turret"},/obj/machinery/light/spot{tag = "icon-tube1 (NORTH)"; icon_state = "tube1"; dir = 1},/turf/simulated/floor/plating/airless,/area/shuttle/escape) + +(1,1,1) = {" +aaaaaaaaabacacacabaaaaaaaa +aaabadaeafafagafafahadabaa +aiafafajakalamanaoapafafaq +arasatatauavatawaxatatayar +arazatatatatatatatatataAar +aBafafafafaCaDaCafafafafaE +araFaGaFaFaHaIaHaJaKaLaMar +araNaOaOaOaPaIaPaQaRaSaTar +araOaOaOaOaPaIaPaUaSaSaVar +aWaOaOaXaXaPaIaPaYaZbabbag +aBafbcafbdbebfbeafafbgafaE +bhaIaIaIaIaIaIaIaIaIaIbiar +arbjaIbkblaIaIaIbkblaIbmar +arblaIbkblaIaIaIbkblaIbkar +arblaIbkblaIaIaIbkblaIbkar +arblaIbkblaIaIaIbkblaIbkar +arbnaIbkblaIaIaIbkblaIboar +bpaIaIaIaIaIaIaIaIaIaIbiar +agaIaIbkblaIaIaIbkblaIaIag +bqaIaIbkblaIaIaIbkblaIbrar +arblaIbkblaIbsaIbkblaIbkar +arbnaIbkblaIbsaIbkblaIboar +btaCbubuaCafafafaCbvbvaCbw +aabtbxbxajbybzbyapbxbxbwaa +"} diff --git a/code/_globalvars/lists/reagents.dm b/code/_globalvars/lists/reagents.dm index fcd4dacdc2b..a4aa4b93c4f 100644 --- a/code/_globalvars/lists/reagents.dm +++ b/code/_globalvars/lists/reagents.dm @@ -44,7 +44,7 @@ var/list/drinks = list("beer2","hot_coco","orangejuice","tomatojuice","limejuice "vodkatonic","ginfizz","bahama_mama","singulo","sbiten","devilskiss","red_mead", "mead","iced_beer","grog","aloe","andalusia","alliescocktail","soy_latte", "cafe_latte","acidspit","amasec","neurotoxin","hippiesdelight","bananahonk", - "silencer","changelingsting","irishcarbomb","syndicatebomb","erikasurprise","driestmartini") + "silencer","changelingsting","irishcarbomb","syndicatebomb","erikasurprise","driestmartini", "flamingmoe") //Random chem blacklist var/global/list/blocked_chems = list("polonium", "initropidril", "concentrated_initro", diff --git a/code/datums/shuttles.dm b/code/datums/shuttles.dm index 3d0f877a3aa..d20255bc57c 100644 --- a/code/datums/shuttles.dm +++ b/code/datums/shuttles.dm @@ -45,6 +45,13 @@ description = "Features include: areas for each department, and a small bar." admin_notes = "Designed to reduce chaos. Each dept requires dept access." +/datum/map_template/shuttle/emergency/military + suffix = "mil" + name = "emergency shuttle (military)" + description = "Troop transport with point defense turrets." + admin_notes = "Designed to ensure a safe evacuation during xeno outbreaks." + + /datum/map_template/shuttle/emergency/clown suffix = "clown" name = "Snappop(tm)!" diff --git a/code/game/gamemodes/changeling/powers/fakedeath.dm b/code/game/gamemodes/changeling/powers/fakedeath.dm index dc7454ff7eb..7cd29c55021 100644 --- a/code/game/gamemodes/changeling/powers/fakedeath.dm +++ b/code/game/gamemodes/changeling/powers/fakedeath.dm @@ -13,13 +13,13 @@ to_chat(user, "We begin our stasis, preparing energy to arise once more.") - user.status_flags |= FAKEDEATH //play dead - user.update_canmove() - if(user.stat != DEAD) user.emote("deathgasp") user.timeofdeath = world.time + user.status_flags |= FAKEDEATH //play dead + user.update_canmove() + spawn(800) if(user && user.mind && user.mind.changeling && user.mind.changeling.purchasedpowers) to_chat(user, "We are ready to regenerate.") diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 7a85467667e..6e085df1a5c 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -155,7 +155,8 @@ var/bomb_set ..() /obj/machinery/nuclearbomb/attack_ghost(mob/user as mob) - attack_hand(user) + if(extended) + attack_hand(user) /obj/machinery/nuclearbomb/attack_hand(mob/user as mob) if(extended) diff --git a/code/game/objects/items/weapons/paint.dm b/code/game/objects/items/weapons/paint.dm index dc5c4d048b5..03eef999c59 100644 --- a/code/game/objects/items/weapons/paint.dm +++ b/code/game/objects/items/weapons/paint.dm @@ -18,6 +18,8 @@ /obj/item/weapon/reagent_containers/glass/paint/afterattack(turf/simulated/target, mob/user, proximity) if(!proximity) return + if(!is_open_container()) + return if(istype(target) && reagents.total_volume >= 5) user.visible_message("[target] has been splashed with something by [user]!") spawn(5) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index db1c39aeb1a..004cf77a990 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -347,10 +347,12 @@ var/list/admin_verbs_snpc = list( if(mob.invisibility == INVISIBILITY_OBSERVER) mob.invisibility = initial(mob.invisibility) to_chat(mob, "Invisimin off. Invisibility reset.") + mob.add_to_all_human_data_huds() //TODO: Make some kind of indication for the badmin that they are currently invisible else mob.invisibility = INVISIBILITY_OBSERVER to_chat(mob, "Invisimin on. You are now as invisible as a ghost.") + mob.remove_from_all_data_huds() /client/proc/player_panel() set name = "Player Panel" diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index ff0c6092702..d8d22e27c86 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -1203,3 +1203,13 @@ item_state = "fethasnecklace" item_color = "fethasnecklace" slot_flags = SLOT_MASK | SLOT_TIE + +/obj/item/weapon/bedsheet/fluff/hugosheet //HugoLuman: Dan Martinez + name = "Cosmic space blankie" + desc = "Made from the dreams of space children everywhere." + icon = 'icons/obj/custom_items.dmi' + lefthand_file = 'icons/mob/inhands/fluff_lefthand.dmi' + righthand_file = 'icons/mob/inhands/fluff_righthand.dmi' + icon_state = "sheetcosmos" + item_state = "sheetcosmos" + item_color = "sheetcosmos" diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 3dc48f3df1a..80bd78b05df 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -1,6 +1,6 @@ /mob/living/carbon/human/emote(var/act,var/m_type=1,var/message = null,var/force) - if(stat == DEAD) + if((stat == DEAD) || (status_flags & FAKEDEATH)) return // No screaming bodies var/param = null diff --git a/html/changelog.html b/html/changelog.html index 5430bfe3767..a96ba9290cb 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,18 @@ -->
+

05 September 2017

+

Kyep updated:

+ + +

04 September 2017

+

Kyep updated:

+ +

03 September 2017

Birdtalon updated: