Merge remote-tracking branch 'upstream/master' into universal-damage

# Conflicts:
#	code/game/machinery/machinery.dm
#	code/game/objects/items.dm
#	code/game/objects/structures.dm
#	code/game/objects/structures/inflatable.dm
#	code/game/objects/structures/mirror.dm
#	code/modules/clothing/spacesuits/hardsuit.dm
#	code/modules/clothing/suits/wiz_robe.dm
#	code/modules/mob/living/carbon/alien/alien_defense.dm
#	code/modules/mob/living/carbon/slime/slime.dm
#	code/modules/mob/living/simple_animal/friendly/slime.dm
This commit is contained in:
Fox McCloud
2019-09-28 00:16:11 -04:00
375 changed files with 4142 additions and 3725 deletions
@@ -32,12 +32,12 @@
return ..()
/obj/item/twohanded/kinetic_crusher/examine(mob/living/user)
..()
to_chat(user, "<span class='notice'>Mark a large creature with the destabilizing force, then hit them in melee to do <b>[force + detonation_damage]</b> damage.</span>")
to_chat(user, "<span class='notice'>Does <b>[force + detonation_damage + backstab_bonus]</b> damage if the target is backstabbed, instead of <b>[force + detonation_damage]</b>.</span>")
. = ..()
. += "<span class='notice'>Mark a large creature with the destabilizing force, then hit them in melee to do <b>[force + detonation_damage]</b> damage.</span>"
. += "<span class='notice'>Does <b>[force + detonation_damage + backstab_bonus]</b> damage if the target is backstabbed, instead of <b>[force + detonation_damage]</b>.</span>"
for(var/t in trophies)
var/obj/item/crusher_trophy/T = t
to_chat(user, "<span class='notice'>It has \a [T] attached, which causes [T.effect_desc()].</span>")
. += "<span class='notice'>It has \a [T] attached, which causes [T.effect_desc()].</span>"
/obj/item/twohanded/kinetic_crusher/attackby(obj/item/I, mob/living/user)
if(iscrowbar(I))
@@ -191,8 +191,8 @@
var/denied_type = /obj/item/crusher_trophy
/obj/item/crusher_trophy/examine(mob/living/user)
..()
to_chat(user, "<span class='notice'>Causes [effect_desc()] when attached to a kinetic crusher.</span>")
. = ..()
. += "<span class='notice'>Causes [effect_desc()] when attached to a kinetic crusher.</span>"
/obj/item/crusher_trophy/proc/effect_desc()
return "errors"
@@ -59,11 +59,11 @@
malfunctioning = 1
/obj/item/lazarus_injector/examine(mob/user)
..(user)
. = ..()
if(!loaded)
to_chat(user, "<span class='info'>[src] is empty.</span>")
. += "<span class='info'>[src] is empty.</span>"
if(malfunctioning)
to_chat(user, "<span class='info'>The display on [src] seems to be flickering.</span>")
. += "<span class='info'>The display on [src] seems to be flickering.</span>"
/*********************Mob Capsule*************************/
@@ -36,9 +36,9 @@ GLOBAL_LIST_INIT(marker_beacon_colors, list(
update_icon()
/obj/item/stack/marker_beacon/examine(mob/user)
..()
to_chat(user, "<span class='notice'>Use in-hand to place a [singular_name].</span>")
to_chat(user, "<span class='notice'>Alt-click to select a color. Current color is [picked_color].</span>")
. = ..()
. += "<span class='notice'>Use in-hand to place a [singular_name].</span>"
. += "<span class='notice'>Alt-click to select a color. Current color is [picked_color].</span>"
/obj/item/stack/marker_beacon/update_icon()
icon_state = "[initial(icon_state)][lowertext(picked_color)]"
@@ -93,8 +93,8 @@ GLOBAL_LIST_INIT(marker_beacon_colors, list(
qdel(src)
/obj/structure/marker_beacon/examine(mob/user)
..()
to_chat(user, "<span class='notice'>Alt-click to select a color. Current color is [picked_color].</span>")
. = ..()
. += "<span class='notice'>Alt-click to select a color. Current color is [picked_color].</span>"
/obj/structure/marker_beacon/update_icon()
while(!picked_color || !GLOB.marker_beacon_colors[picked_color])
@@ -27,8 +27,8 @@
/obj/item/survivalcapsule/examine(mob/user)
. = ..()
get_template()
to_chat(user, "This capsule has the [template.name] stored.")
to_chat(user, template.description)
. += "This capsule has the [template.name] stored."
. += template.description
/obj/item/survivalcapsule/attack_self()
// Can't grab when capsule is New() because templates aren't loaded then
+2 -2
View File
@@ -14,8 +14,8 @@ GLOBAL_LIST_EMPTY(total_extraction_beacons)
var/max_force_fulton = MOVE_FORCE_STRONG
/obj/item/extraction_pack/examine(mob/user)
..()
to_chat(user, "It has [uses_left] use\s remaining.")
. = ..()
. += "It has [uses_left] use\s remaining."
/obj/item/extraction_pack/attack_self(mob/user)
var/list/possible_beacons = list()
@@ -27,8 +27,8 @@
var/friendly_fire_check = FALSE //if the blasts we make will consider our faction against the faction of hit targets
/obj/item/hierophant_club/examine(mob/user)
..()
to_chat(user, "<span class='hierophant_warning'>The[beacon ? " beacon is not currently":"re is a beacon"] attached.</span>")
. = ..()
. += "<span class='hierophant_warning'>The[beacon ? " beacon is not currently":"re is a beacon"] attached.</span>"
/obj/item/hierophant_club/suicide_act(mob/living/user)
atom_say("Xverwpsgexmrk...")
@@ -114,6 +114,9 @@
if(user.is_in_active_hand(src) && user.is_in_inactive_hand(src)) //you need to hold the staff to teleport
to_chat(user, "<span class='warning'>You need to hold the club in your hands to [beacon ? "teleport with it":"detach the beacon"]!</span>")
return
if(is_in_teleport_proof_area(user))
to_chat(user, "<span class='warning'>[src] sparks and fizzles.</span>")
return
if(!beacon || QDELETED(beacon))
if(isturf(user.loc))
user.visible_message("<span class='hierophant_warning'>[user] starts fiddling with [src]'s pommel...</span>", \
@@ -312,6 +312,10 @@
to_chat(user, "[src] fizzles uselessly.")
return
if(is_in_teleport_proof_area(user) || is_in_teleport_proof_area(linked))
to_chat(user, "<span class='warning'>[src] sparks and fizzles.</span>")
return
var/datum/effect_system/smoke_spread/smoke = new
smoke.set_up(1, 0, user.loc)
smoke.start()
+2 -2
View File
@@ -275,8 +275,8 @@
..()
/obj/item/card/mining_point_card/examine(mob/user)
..(user)
to_chat(user, "There's [points] points on the card.")
. = ..()
. += "There's [points] points on the card."
/**********************Conscription Kit**********************/
+3 -1
View File
@@ -322,6 +322,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
var/string_attached
var/list/sideslist = list("heads","tails")
var/cmineral = null
var/name_by_cmineral = TRUE
var/cooldown = 0
var/credits = 10
@@ -330,7 +331,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
pixel_y = rand(0,8)-8
icon_state = "coin_[cmineral]_[sideslist[1]]"
if(cmineral)
if(cmineral && name_by_cmineral)
name = "[cmineral] coin"
/obj/item/coin/gold
@@ -405,6 +406,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
desc = "A novelty coin that helps the heart know what hard evidence cannot prove."
sideslist = list("valid", "salad")
credits = 20
name_by_cmineral = FALSE
/obj/item/coin/antagtoken/syndicate
name = "syndicate coin"