mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 21:18:37 +01:00
Add's support for population limits on keep_me_secure component (Loneop event balance change) (#87657)
This is used to set the nuke disk's safety factor from applying on very low pop player counts, as it's unlikely the disk can be secured. I don't believe this precludes the event from being randomly chosen, but it makes sure it wont be a certainty on very low pop when the disk hasn't been secured from lack of players Just to clarify this applies only at 9 population or lower. ## Why It's Good For The Game On very very low pop, the disk is often unsecured, and.. more importantly, a lone op is likely to have a very high chance of easily succeeding as there is not enough crew to upkeep a watch on the relevant areas. This event is fun on higher populations, and needing to protect the disk makes sense, but on very lowpop, I think it doens't quite work as designed, as instead it just means a lot of low pop rounds will end due to a loneop spawning if there's any ghosts about at all. ## Changelog 🆑 oranges balance: Nuclear disk no longer needs to be secured at sub 10 population /🆑
This commit is contained in:
@@ -14,13 +14,16 @@
|
||||
var/turf/last_secured_location
|
||||
/// The last world time the parent moved.
|
||||
var/last_move
|
||||
/// Living population must be above this amount for security checks to apply.
|
||||
var/min_pop_limit
|
||||
|
||||
/datum/component/keep_me_secure/Initialize(secured_callback, unsecured_callback)
|
||||
/datum/component/keep_me_secure/Initialize(secured_callback, unsecured_callback, min_pop_limit)
|
||||
if(!isitem(parent))
|
||||
return COMPONENT_INCOMPATIBLE
|
||||
|
||||
src.secured_callback = secured_callback
|
||||
src.unsecured_callback = unsecured_callback
|
||||
src.min_pop_limit = min_pop_limit
|
||||
|
||||
/datum/component/keep_me_secure/Destroy(force)
|
||||
secured_callback = null
|
||||
@@ -41,6 +44,9 @@
|
||||
|
||||
/// Returns whether the game is supposed to consider the parent "secure".
|
||||
/datum/component/keep_me_secure/proc/is_secured()
|
||||
if(living_player_count() < src.min_pop_limit)
|
||||
return TRUE
|
||||
|
||||
var/obj/item/item_parent = parent
|
||||
if (last_secured_location == get_turf(item_parent))
|
||||
return FALSE
|
||||
|
||||
Reference in New Issue
Block a user