mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-14 02:43:16 +00:00
* Adds a modular bitrunning map, changes safehouse spawns (#79937) ## About The Pull Request Primarily, this adds one new map to bitrunning that uses modular rooms. <details> <summary>pictures</summary>    </details> I also added in some changes: - Safehouses are now loaded using the modular map system rather than the bespoke solution qservers had. - Lowers the difficulty of psyker shuffle (which I felt was a little too nightmarish) and boosts its rewards. ## Why It's Good For The Game New maps More integration with prior systems ## Changelog 🆑 add: Added a new modular bitrunning domain - Starfront Saloon. balance: Psyker shuffle domain was made slightly easier and has been given more rewards. /🆑 * Adds a modular bitrunning map, changes safehouse spawns * Linterpass minus Milsim * readds Milsim --------- Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com> Co-authored-by: Zergspower <Griffinj88@yahoo.com>
74 lines
2.5 KiB
Plaintext
74 lines
2.5 KiB
Plaintext
/obj/effect/landmark/bitrunning
|
|
name = "Generic bitrunning effect"
|
|
icon = 'icons/effects/bitrunning.dmi'
|
|
icon_state = "crate"
|
|
|
|
/// In case you want to gate the crate behind a special condition.
|
|
/obj/effect/landmark/bitrunning/loot_signal
|
|
name = "Mysterious aura"
|
|
|
|
/// Where the exit hololadder spawns
|
|
/obj/effect/landmark/bitrunning/hololadder_spawn
|
|
name = "Bitrunning hololadder spawn"
|
|
icon_state = "hololadder"
|
|
|
|
/// Where the crates need to be taken
|
|
/obj/effect/landmark/bitrunning/cache_goal_turf
|
|
name = "Bitrunning goal turf"
|
|
icon_state = "goal"
|
|
|
|
/// Where you want the crate to spawn
|
|
/obj/effect/landmark/bitrunning/cache_spawn
|
|
name = "Bitrunning crate spawn"
|
|
icon_state = "crate"
|
|
|
|
///Swaps the locations of an encrypted crate in the area with another randomly selected crate.
|
|
///Randomizes names, so you have to inspect crates manually.
|
|
/obj/effect/landmark/bitrunning/crate_replacer
|
|
name = "Bitrunning Goal Crate Randomizer"
|
|
icon_state = "crate"
|
|
|
|
/obj/effect/landmark/bitrunning/crate_replacer/Initialize(mapload)
|
|
. = ..()
|
|
|
|
#ifdef UNIT_TESTS
|
|
return
|
|
#endif
|
|
|
|
var/list/crate_list = list()
|
|
var/obj/structure/closet/crate/secure/bitrunning/encrypted/encrypted_crate
|
|
var/area/my_area = get_area(src)
|
|
|
|
for(var/turf/area_turf as anything in my_area.get_contained_turfs())
|
|
for(var/obj/structure/closet/crate/crate_to_check in area_turf)
|
|
if(istype(crate_to_check, /obj/structure/closet/crate/secure/bitrunning/encrypted))
|
|
encrypted_crate = crate_to_check
|
|
crate_to_check.desc += span_hypnophrase(" This feels like the crate we're looking for!")
|
|
else
|
|
crate_list += crate_to_check
|
|
crate_to_check.name = "Unidentified Crate"
|
|
|
|
if(!encrypted_crate)
|
|
stack_trace("Bitrunning Goal Crate Randomizer failed to find an encrypted crate to swap positions for.")
|
|
return
|
|
if(!length(crate_list))
|
|
stack_trace("Bitrunning Goal Crate Randomizer failed to find any NORMAL crates to swap positions for.")
|
|
return
|
|
|
|
var/original_location = encrypted_crate.loc
|
|
var/obj/structure/closet/crate/selected_crate = pick(crate_list)
|
|
|
|
encrypted_crate.abstract_move(selected_crate.loc)
|
|
selected_crate.abstract_move(original_location)
|
|
|
|
/// A location for mobs to spawn.
|
|
/obj/effect/landmark/bitrunning/mob_segment
|
|
name = "Bitrunning modular mob segment"
|
|
icon_state = "mob_segment"
|
|
|
|
/// Bitrunning safehouses. Typically 7x6 rooms with a single entrance.
|
|
/obj/modular_map_root/safehouse
|
|
config_file = "strings/modular_maps/safehouse.toml"
|
|
icon = 'icons/effects/bitrunning.dmi'
|
|
icon_state = "safehouse"
|