mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-14 09:35:30 +01:00
[MDB IGNORE] Lavaland Mineral Rework: Yapmining 2026 (#95682)
This commit is contained in:
@@ -13,8 +13,8 @@
|
||||
mob_biotypes = MOB_ORGANIC|MOB_BUG|MOB_MINING
|
||||
friendly_verb_continuous = "harmlessly rolls into"
|
||||
friendly_verb_simple = "harmlessly roll into"
|
||||
maxHealth = 45
|
||||
health = 45
|
||||
maxHealth = 175
|
||||
health = 175
|
||||
melee_damage_lower = 0
|
||||
melee_damage_upper = 0
|
||||
attack_verb_continuous = "barrels into"
|
||||
@@ -49,16 +49,26 @@
|
||||
else
|
||||
can_lay_eggs = FALSE
|
||||
|
||||
var/list/food_types = string_list(list(/obj/item/stack/ore))
|
||||
// Rarer ores heal us a bit depending on the rarity
|
||||
var/static/list/food_types = list(
|
||||
/obj/item/stack/ore = 0,
|
||||
/obj/item/stack/ore/gold = 5,
|
||||
/obj/item/stack/ore/uranium = 5,
|
||||
/obj/item/stack/ore/diamond = 15,
|
||||
/obj/item/stack/ore/bluespace_crystal = 20,
|
||||
/obj/item/stack/ore/bananium = 30,
|
||||
)
|
||||
|
||||
var/static/list/innate_actions = list(
|
||||
/datum/action/cooldown/mob_cooldown/spit_ore = BB_SPIT_ABILITY,
|
||||
/datum/action/cooldown/mob_cooldown/burrow = BB_BURROW_ABILITY,
|
||||
)
|
||||
|
||||
grant_actions_by_list(innate_actions)
|
||||
|
||||
AddElement(/datum/element/ore_collecting)
|
||||
AddElement(/datum/element/basic_eating, food_types = food_types, add_to_contents = TRUE)
|
||||
AddElement(/datum/element/wall_tearer, allow_reinforced = FALSE)
|
||||
AddComponent(/datum/component/proficient_miner, 0.05, TRUE) // Speedy boi
|
||||
AddComponent(/datum/component/ai_listen_to_weather)
|
||||
AddComponent(\
|
||||
/datum/component/appearance_on_aggro,\
|
||||
@@ -81,10 +91,10 @@
|
||||
SIGNAL_HANDLER
|
||||
|
||||
if(stat != CONSCIOUS)
|
||||
return COMPONENT_BULLET_PIERCED
|
||||
return NONE
|
||||
|
||||
/// High penetration bullets should still go through. No goldgrub can save you from the colossus' death bolts.
|
||||
if(prob(hitting_projectile.armour_penetration))
|
||||
/// Reflects PKA/PKC shots and plasma cutter beams, unless they have high armor penetration
|
||||
if(prob(hitting_projectile.armour_penetration) || (hitting_projectile.armor_flag != BOMB && hitting_projectile.armor_flag != ENERGY))
|
||||
return NONE
|
||||
|
||||
visible_message(span_danger("[hitting_projectile] is repelled by [source]'s girth!"))
|
||||
|
||||
@@ -44,9 +44,9 @@
|
||||
/datum/action/cooldown/mob_cooldown/burrow/Activate()
|
||||
var/obj/effect/dummy/phased_mob/grub_burrow/holder = null
|
||||
var/turf/current_loc = get_turf(owner)
|
||||
var/mob/living/grub = owner
|
||||
|
||||
if(!do_after(owner, 3 SECONDS, target = current_loc))
|
||||
owner.balloon_alert(owner, "need to stay still!")
|
||||
if(!do_after(owner, 2.5 SECONDS, target = current_loc, extra_checks = CALLBACK(src, PROC_REF(health_check), grub.health)))
|
||||
return
|
||||
|
||||
if(get_turf(owner) != current_loc)
|
||||
@@ -72,6 +72,10 @@
|
||||
StartCooldown()
|
||||
return TRUE
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/burrow/proc/health_check(health)
|
||||
var/mob/living/grub = owner
|
||||
return grub.health >= health
|
||||
|
||||
/obj/effect/dummy/phased_mob/grub_burrow
|
||||
|
||||
/obj/effect/dummy/phased_mob/grub_burrow/phased_check(mob/living/user, direction)
|
||||
|
||||
@@ -71,7 +71,7 @@ GLOBAL_LIST_EMPTY(raptor_population)
|
||||
/obj/item/food/meat/slab/xeno = -15,
|
||||
/obj/item/food/meat/steak = 50,
|
||||
/obj/item/food/grown/ash_flora = 10,
|
||||
/obj/item/fish = 15,
|
||||
/obj/item/fish = 25,
|
||||
/obj/item/organ = 25,
|
||||
)
|
||||
/// Inheritance datum we store our genetic data in
|
||||
|
||||
Reference in New Issue
Block a user