Merge remote-tracking branch 'ParadiseSS13/master' into brutal-part1

This commit is contained in:
AffectedArc07
2021-03-11 18:41:17 +00:00
1118 changed files with 25570 additions and 65816 deletions
+2 -12
View File
@@ -70,23 +70,13 @@
//Pod turfs and objects
//Window
/obj/structure/window/shuttle/survival_pod
/obj/structure/window/full/shuttle/survival_pod
name = "pod window"
icon = 'icons/obj/smooth_structures/pod_window.dmi'
icon_state = "smooth"
dir = FULLTILE_WINDOW_DIR
max_integrity = 100
fulltile = TRUE
flags = PREVENT_CLICK_UNDER
reinf = TRUE
heat_resistance = 1600
armor = list("melee" = 50, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 100)
smooth = SMOOTH_MORE
canSmoothWith = list(/turf/simulated/wall/mineral/titanium/survival, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/shuttle/survival_pod)
explosion_block = 3
level = 3
glass_type = /obj/item/stack/sheet/titaniumglass
glass_amount = 2
canSmoothWith = list(/turf/simulated/wall/mineral/titanium/survival, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/full/shuttle/survival_pod)
/obj/structure/window/reinforced/survival_pod
name = "pod window"
@@ -64,7 +64,7 @@
to_chat(user, "<span class='notice'>You emag [src].</span>")
var/turf/T = get_turf(src)
do_sparks(5, 0, T)
playsound(T, "sparks", 50, 1)
playsound(T, "sparks", 50, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
/obj/effect/portal/jaunt_tunnel
name = "jaunt tunnel"
@@ -181,7 +181,7 @@
/obj/item/lava_staff/New()
. = ..()
banned_turfs = typecacheof(list(/turf/space/transit, /turf/unsimulated))
banned_turfs = typecacheof(list(/turf/space/transit, /turf/simulated/wall, /turf/simulated/mineral))
/obj/item/lava_staff/afterattack(atom/target, mob/user, proximity_flag, click_parameters)
..()
@@ -217,7 +217,7 @@
if(H.stat == DEAD)
H.set_species(/datum/species/shadow)
H.revive()
H.mutations |= NOCLONE //Free revives, but significantly limits your options for reviving except via the crystal
ADD_TRAIT(H, TRAIT_BADDNA, MAGIC_TRAIT) //Free revives, but significantly limits your options for reviving except via the crystal
H.grab_ghost(force = TRUE)
/obj/machinery/anomalous_crystal/helpers //Lets ghost spawn as helpful creatures that can only heal people slightly. Incredibly fragile and they can't converse with humans
@@ -335,7 +335,7 @@
if(ishuman(user))
var/mobcheck = 0
for(var/mob/living/simple_animal/A in range(1, src))
if(A.melee_damage_upper > 5 || A.mob_size >= MOB_SIZE_LARGE || A.ckey || A.stat)
if(A.melee_damage_upper > 5 || A.mob_size >= MOB_SIZE_LARGE || A.ckey || A.stat || isbot(A))
break
var/obj/structure/closet/stasis/S = new /obj/structure/closet/stasis(A)
user.forceMove(S)
@@ -370,7 +370,7 @@
if(isliving(A) && holder_animal)
var/mob/living/L = A
L.notransform = 1
L.mutations |= MUTE
ADD_TRAIT(L, TRAIT_MUTE, STASIS_MUTE)
L.status_flags |= GODMODE
L.mind.transfer_to(holder_animal)
var/obj/effect/proc_holder/spell/targeted/exit_possession/P = new /obj/effect/proc_holder/spell/targeted/exit_possession
@@ -380,7 +380,7 @@
/obj/structure/closet/stasis/dump_contents(kill = 1)
STOP_PROCESSING(SSobj, src)
for(var/mob/living/L in src)
L.mutations -=MUTE
REMOVE_TRAIT(L, TRAIT_MUTE, STASIS_MUTE)
L.status_flags &= ~GODMODE
L.notransform = 0
if(holder_animal && !QDELETED(holder_animal))
+2 -2
View File
@@ -440,7 +440,7 @@
if(!is_station_level(z))
return
var/msg = "Now available in [get_area_name(src, TRUE) || "Unknown"]:"
var/list/msg = list("Now available in [get_area_name(src, TRUE) || "Unknown"]:")
var/mats_in_stock = list()
var/datum/component/material_container/materials = GetComponent(/datum/component/material_container)
for(var/MAT in materials.materials)
@@ -448,7 +448,7 @@
var/mineral_amount = M.amount / MINERAL_MATERIAL_AMOUNT
if(mineral_amount)
mats_in_stock += M.id
msg += "[capitalize(M.name)]: [mineral_amount] sheets"
msg.Add("[capitalize(M.name)]: [mineral_amount] sheets")
// No point sending a message if we're dry
if(!length(mats_in_stock))
+17 -9
View File
@@ -81,8 +81,11 @@
updateUsrDialog()
return
while(coinsToProduce > 0 && materials.use_amount_type(coin_mat, chosen))
create_coins(M.coin_type)
while(coinsToProduce > 0 && materials.can_use_amount(coin_mat, chosen))
if(!create_coins(M.coin_type))
visible_message("<span class='notice'>[src] stops printing to prevent an overflow.</span>")
break
materials.use_amount_type(coin_mat, chosen)
coinsToProduce--
newCoins++
updateUsrDialog()
@@ -95,10 +98,15 @@
/obj/machinery/mineral/mint/proc/create_coins(P)
var/turf/T = get_step(src,output_dir)
if(T)
var/obj/item/O = new P(src)
var/obj/item/storage/bag/money/M = locate(/obj/item/storage/bag/money, T)
if(!M)
M = new /obj/item/storage/bag/money(src)
unload_mineral(M)
O.forceMove(M)
if(!T)
return FALSE
var/obj/item/O = new P(src)
var/obj/item/storage/bag/money/M = locate(/obj/item/storage/bag/money, T)
if(!M)
M = new /obj/item/storage/bag/money(src)
unload_mineral(M)
else if(!M.can_be_inserted(O, FALSE)) // First coin will always fit. But will the Xth?
qdel(O)
return FALSE
O.forceMove(M)
return TRUE
+1 -1
View File
@@ -7,7 +7,7 @@
/datum/map_template/shelter/New()
. = ..()
blacklisted_turfs = typecacheof(list(/turf/simulated/wall, /turf/simulated/mineral, /turf/simulated/shuttle/wall))
blacklisted_turfs = typecacheof(list(/turf/simulated/wall, /turf/simulated/mineral))
whitelisted_turfs = list()
banned_areas = typecacheof(/area/shuttle)