Skip to content

Commit

Permalink
changes
Browse files Browse the repository at this point in the history
  • Loading branch information
ihatethisengine committed Dec 23, 2023
1 parent 331af0a commit 5623f3c
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 3 deletions.
8 changes: 7 additions & 1 deletion code/modules/cm_aliens/structures/special/pylon_core.dm
Original file line number Diff line number Diff line change
Expand Up @@ -179,9 +179,9 @@
activated = TRUE
addtimer(CALLBACK(src, PROC_REF(give_larva)), XENO_PYLON_ACTIVATION_COOLDOWN, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_LOOP|TIMER_DELETE_ME)

/// Looped proc via timer to give larva after time
#define ENDGAME_LARVA_CAP_MULTIPLIER 0.4
#define LARVA_ADDITION_MULTIPLIER 0.10
/// Looped proc via timer to give larva after time
/obj/effect/alien/resin/special/pylon/endgame/proc/give_larva()
if(!activated)
return
Expand All @@ -207,8 +207,14 @@
if(!is_ground_level(turf?.z))
groundside_humans_weighted_count += GLOB.RoleAuthority.calculate_role_weight(job)
if(real_total_xeno_count > (groundside_humans_weighted_count * ENDGAME_LARVA_CAP_MULTIPLIER))
if(!linked_hive.hit_larva_pylon_limit)
linked_hive.hit_larva_pylon_limit = TRUE
xeno_announcement(SPAN_XENOANNOUNCE("Our numbers are huge! We will not get more unless we lose numbers or talls get more."), hivenumber, XENO_GENERAL_ANNOUNCE)

Check failure on line 212 in code/modules/cm_aliens/structures/special/pylon_core.dm

View workflow job for this annotation

GitHub Actions / Run Linters

undefined var: "hivenumber"
return

if(linked_hive.hit_larva_pylon_limit)
linked_hive.hit_larva_pylon_limit = FALSE
xeno_announcement(SPAN_XENOANNOUNCE("We need numbers! Pylons will provide larvae again."), hivenumber, XENO_GENERAL_ANNOUNCE)

Check failure on line 217 in code/modules/cm_aliens/structures/special/pylon_core.dm

View workflow job for this annotation

GitHub Actions / Run Linters

undefined var: "hivenumber"
linked_hive.partial_larva += real_total_xeno_count * LARVA_ADDITION_MULTIPLIER
linked_hive.convert_partial_larva_to_full_larva()
linked_hive.hive_ui.update_burrowed_larva()
Expand Down
2 changes: 2 additions & 0 deletions code/modules/mob/living/carbon/xenomorph/hive_status.dm
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,8 @@
var/hardcore = FALSE
/// Set to false if you want to prevent getting burrowed larva from latejoin marines
var/latejoin_burrowed = TRUE
/// If hit limit of larva from pylons, to prevent the message spamming
var/hit_larva_pylon_limit = FALSE

var/list/hive_inherant_traits

Expand Down
8 changes: 6 additions & 2 deletions code/modules/shuttle/computers/dropship_computer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,8 @@
hijack(xeno)
return

#define HIJACK_EVILUTION_BUFF 10
#define HIJACK_EVILUTION_TIME 3 MINUTES
/obj/structure/machinery/computer/shuttle/dropship/flight/proc/hijack(mob/user, force = FALSE)
// select crash location
var/turf/source_turf = get_turf(src)
Expand Down Expand Up @@ -301,11 +303,13 @@
var/datum/hive_status/hive = GLOB.hive_datum[hivenumber]
hive.abandon_on_hijack()
var/original_evilution = hive.evolution_bonus
hive.override_evilution(10, TRUE)
hive.override_evilution(HIJACK_EVILUTION_BUFF, TRUE)
if(hive.living_xeno_queen)
var/datum/action/xeno_action/onclick/grow_ovipositor/ovi_ability = get_xeno_action_by_type(hive.living_xeno_queen, /datum/action/xeno_action/onclick/grow_ovipositor)
ovi_ability.reduce_cooldown(ovi_ability.xeno_cooldown)
addtimer(CALLBACK(hive, TYPE_PROC_REF(/datum/hive_status, override_evilution), original_evilution, FALSE), 3 MINUTES)
addtimer(CALLBACK(hive, TYPE_PROC_REF(/datum/hive_status, override_evilution), original_evilution, FALSE), HIJACK_EVILUTION_TIME)
#undef HIJACK_EVILUTION_BUFF
#undef HIJACK_EVILUTION_TIME

// Notify the yautja too so they stop the hunt
message_all_yautja("The serpent Queen has commanded the landing shuttle to depart.")
Expand Down

0 comments on commit 5623f3c

Please sign in to comment.