upstream-merge-27951

This commit is contained in:
LetterJay
2017-06-11 02:11:34 -05:00
parent a8b71089ae
commit c760c52817
7 changed files with 27 additions and 16 deletions
+12 -9
View File
@@ -21,8 +21,8 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
/datum/round_event/immovable_rod/start()
var/startside = pick(GLOB.cardinal)
var/turf/startT = spaceDebrisStartLoc(startside, ZLEVEL_STATION)
var/turf/endT = spaceDebrisFinishLoc(startside, ZLEVEL_STATION)
var/turf/startT = spaceDebrisStartLoc(startside, ZLEVEL_STATION)
var/turf/endT = spaceDebrisFinishLoc(startside, ZLEVEL_STATION)
new /obj/effect/immovablerod(startT, endT)
/obj/effect/immovablerod
@@ -82,13 +82,8 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
if(clong.density)
clong.ex_act(2)
else if(ismob(clong))
if(ishuman(clong))
var/mob/living/carbon/human/H = clong
H.visible_message("<span class='danger'>[H.name] is penetrated by an immovable rod!</span>" , "<span class='userdanger'>The rod penetrates you!</span>" , "<span class ='danger'>You hear a CLANG!</span>")
H.adjustBruteLoss(160)
if(clong.density || prob(10))
clong.ex_act(2)
else if(isliving(clong))
penetrate(clong)
else if(istype(clong, type))
var/obj/effect/immovablerod/other = clong
visible_message("<span class='danger'>[src] collides with [other]!\
@@ -98,3 +93,11 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
smoke.start()
qdel(src)
qdel(other)
/obj/effect/immovablerod/proc/penetrate(mob/living/L)
L.visible_message("<span class='danger'>[L] is penetrated by an immovable rod!</span>" , "<span class='userdanger'>The rod penetrates you!</span>" , "<span class ='danger'>You hear a CLANG!</span>")
if(ishuman(L))
var/mob/living/carbon/human/H = L
H.adjustBruteLoss(160)
if(L && (L.density || prob(10)))
L.ex_act(2)
+3 -3
View File
@@ -71,12 +71,12 @@
if(!bounds)
return
//initialize things that are normally initialized after map load
initTemplateBounds(bounds)
if(!SSmapping.loading_ruins) //Will be done manually during mapping ss init
repopulate_sorted_areas()
//initialize things that are normally initialized after map load
initTemplateBounds(bounds)
log_game("[name] loaded at at [T.x],[T.y],[T.z]")
return TRUE
@@ -42,6 +42,9 @@
/datum/computer_file/program/card_mod/New()
..()
change_position_cooldown = config.id_console_jobslot_delay
addtimer(CALLBACK(src, .proc/SetConfigCooldown), 0)
/datum/computer_file/program/card_mod/proc/SetConfigCooldown()
/datum/computer_file/program/card_mod/event_idremoved(background, slot)
@@ -284,7 +284,7 @@
/obj/machinery/chem_dispenser/constructable/RefreshParts()
var/time = 0
var/i
+ for(var/obj/item/weapon/stock_parts/cell/P in component_parts)
for(var/obj/item/weapon/stock_parts/cell/P in component_parts)
cell = P
for(var/obj/item/weapon/stock_parts/matter_bin/M in component_parts)
time += M.rating
@@ -17,6 +17,7 @@
var/obj/effect/immovablerod/wizard/W = new(start, get_ranged_target_turf(M, M.dir, (15 + spell_level * 3)))
W.wizard = M
W.max_distance += spell_level * 3 //You travel farther when you upgrade the spell
W.damage_bonus += spell_level * 20 //You do more damage when you upgrade the spell
W.start_turf = start
M.forceMove(W)
M.notransform = 1
@@ -26,6 +27,7 @@
/obj/effect/immovablerod/wizard
var/max_distance = 13
var/damage_bonus = 0
var/mob/living/wizard
var/turf/start_turf
notify = FALSE
@@ -41,3 +43,7 @@
wizard.notransform = 0
wizard.forceMove(get_turf(src))
return ..()
/obj/effect/immovablerod/wizard/penetrate(mob/living/L)
L.visible_message("<span class='danger'>[L] is penetrated by an immovable rod!</span>" , "<span class='userdanger'>The rod penetrates you!</span>" , "<span class ='danger'>You hear a CLANG!</span>")
L.adjustBruteLoss(70 + damage_bonus)