upstream-merge-27951
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user