mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-02-07 07:09:10 +00:00
Adds a new mecha-fauna to lavaland. Ready to TM (#17999)
* pain * more progress * progress continues * more progress™️ * saving progress while I swap brances * leg moving working for real, woo * more saving as power goes out * eeven more * fix transfer * More changes, closer to pr ready * final stuff for night backup * almost done™️ * almost done * Final changes to get ready for posting * Update code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> * new sprite * Loot added (minus crusher loot) * Apply suggestions from code review Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> * Defines, loot, and requested changes, oh my! * Apply suggestions from code review Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com> * sound, bluespace charge improvements, more text * Update code/game/gamemodes/nuclear/pinpointer.dm Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com> * WOOO CRUSHER ITEM * don't code when dead tired kids * Update code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com> * Makes crusher loot work, reworks shield for mecha fauna * Names it, lets it spawn, buffs it, should be ready. * Adds better sprites. * pick to rand * Buff, prevent cheese. * Merge conflict hook test * double checking to see if I installed it or not, think I need to manual * fixes the merge issue * makes gibtonite not yeet the mechafauna as much. * fixes hostile/hostile fuckup * fix most beam issues * extra qdel insurance but it should be good * fixes chasm issues, beep on self destruct, extra bluspace charge * Shrinks the kaboom. * spelling + beam fix * Apply suggestions from code review Co-authored-by: Charlie <69320440+hal9000PR@users.noreply.github.com> * late_initialize, var names, and styling, oh my! * attacl Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com> Co-authored-by: Charlie <69320440+hal9000PR@users.noreply.github.com>
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
var/backstab_bonus = 30
|
||||
var/light_on = FALSE
|
||||
var/brightness_on = 5
|
||||
var/adaptive_damage_bonus = 0
|
||||
|
||||
/obj/item/twohanded/kinetic_crusher/Destroy()
|
||||
QDEL_LIST(trophies)
|
||||
@@ -68,7 +69,16 @@
|
||||
if(!C)
|
||||
C = target.apply_status_effect(STATUS_EFFECT_CRUSHERDAMAGETRACKING)
|
||||
var/target_health = target.health
|
||||
var/temp_force_bonus = 0
|
||||
var/datum/status_effect/adaptive_learning/A = target.has_status_effect(STATUS_EFFECT_ADAPTIVELEARNING)
|
||||
if(!A && adaptive_damage_bonus)
|
||||
A = target.apply_status_effect(STATUS_EFFECT_ADAPTIVELEARNING)
|
||||
if(A)
|
||||
temp_force_bonus = A.bonus_damage
|
||||
A.bonus_damage = min((A.bonus_damage + adaptive_damage_bonus), 20)
|
||||
force += temp_force_bonus
|
||||
..()
|
||||
force -= temp_force_bonus
|
||||
for(var/t in trophies)
|
||||
if(!QDELETED(target))
|
||||
var/obj/item/crusher_trophy/T = t
|
||||
@@ -445,3 +455,23 @@
|
||||
|
||||
/obj/effect/temp_visual/hierophant/wall/crusher
|
||||
duration = 75
|
||||
|
||||
/obj/item/crusher_trophy/adaptive_intelligence_core
|
||||
name = "adaptive inteligence core"
|
||||
desc = "Seems to be one of the cores from a massive robot. Suitable as a trophy for a kinetic crusher."
|
||||
icon_state = "adaptive_core"
|
||||
denied_type = /obj/item/crusher_trophy/adaptive_intelligence_core
|
||||
bonus_value = 2
|
||||
|
||||
/obj/item/crusher_trophy/adaptive_intelligence_core/effect_desc()
|
||||
return "melee hits deal <b>[bonus_value]</b> more damage per hit after hitting a target, up to <b>[bonus_value * 10]</b> extra damage to that target"
|
||||
|
||||
/obj/item/crusher_trophy/adaptive_intelligence_core/add_to(obj/item/twohanded/kinetic_crusher/H, mob/living/user)
|
||||
. = ..()
|
||||
if(.)
|
||||
H.adaptive_damage_bonus += bonus_value
|
||||
|
||||
/obj/item/crusher_trophy/adaptive_intelligence_core/remove_from(obj/item/twohanded/kinetic_crusher/H, mob/living/user)
|
||||
. = ..()
|
||||
if(.)
|
||||
H.adaptive_damage_bonus -= bonus_value
|
||||
|
||||
38
code/modules/mining/lavaland/loot/ancient_loot.dm
Normal file
38
code/modules/mining/lavaland/loot/ancient_loot.dm
Normal file
@@ -0,0 +1,38 @@
|
||||
/obj/structure/closet/crate/necropolis/ancient
|
||||
name = "ancient supply cache"
|
||||
|
||||
/obj/structure/closet/crate/necropolis/ancient/populate_contents()
|
||||
new /obj/item/pinpointer/tendril(src) // in pinpointers, with the rest of them
|
||||
var/list/common_ore = list(
|
||||
/obj/item/stack/ore/uranium,
|
||||
/obj/item/stack/ore/silver,
|
||||
/obj/item/stack/ore/gold,
|
||||
/obj/item/stack/ore/plasma,
|
||||
/obj/item/stack/ore/titanium
|
||||
)
|
||||
|
||||
for(var/res in common_ore)
|
||||
var/obj/item/stack/R = new res(src)
|
||||
R.amount = rand(15, 30)
|
||||
|
||||
var/list/rare_ore = list(
|
||||
/obj/item/stack/ore/diamond,
|
||||
/obj/item/stack/ore/bluespace_crystal,
|
||||
/obj/item/stack/sheet/mineral/abductor // few ruins of it often spawn, should be fine.
|
||||
)
|
||||
|
||||
for(var/res in rare_ore)
|
||||
var/obj/item/stack/R = new res(src)
|
||||
R.amount = rand(10, 15) //ash drakes drop 5, this is perfectly fine
|
||||
|
||||
|
||||
/obj/structure/closet/crate/necropolis/ancient/ex_act(severity)
|
||||
return
|
||||
|
||||
/obj/structure/closet/crate/necropolis/ancient/crusher
|
||||
name = "alloyed ancient supply cache"
|
||||
|
||||
/obj/structure/closet/crate/necropolis/ancient/crusher/populate_contents()
|
||||
. = ..()
|
||||
new /obj/item/crusher_trophy/adaptive_intelligence_core(src)
|
||||
|
||||
Reference in New Issue
Block a user