Cult 3.0 (#20662)
* altar stuff * bloodstone * dance * objectives * Early fixes * some fixes * conflicts etc
@@ -63,6 +63,7 @@
|
||||
#define GREET_CONVERTED "converted"
|
||||
#define GREET_PAMPHLET "pamphlet"
|
||||
#define GREET_SOULSTONE "soulstone"
|
||||
#define GREET_SOULBLADE "soulblade"
|
||||
#define GREET_RESURRECT "resurrect"
|
||||
|
||||
|
||||
@@ -131,6 +132,8 @@
|
||||
|
||||
#define MAX_TALISMAN_PER_TOME 5
|
||||
|
||||
#define SACRIFICE_CHANGE_COOLDOWN 30 MINUTES
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// -- Objectives flags
|
||||
|
||||
@@ -1491,6 +1491,7 @@ var/proccalls = 1
|
||||
#define HOLOMAP_FILTER_VOX 16
|
||||
#define HOLOMAP_FILTER_STATIONMAP 32
|
||||
#define HOLOMAP_FILTER_STATIONMAP_STRATEGIC 64//features markers over the captain's office, the armory, the SMES
|
||||
#define HOLOMAP_FILTER_CULT 128//bloodstone locators
|
||||
|
||||
#define HOLOMAP_AREACOLOR_COMMAND "#447FC299"
|
||||
#define HOLOMAP_AREACOLOR_SECURITY "#AE121299"
|
||||
@@ -1509,11 +1510,16 @@ var/proccalls = 1
|
||||
#define HOLOMAP_EXTRA_STATIONMAPSMALL_SOUTH "stationmapsmallsouth"
|
||||
#define HOLOMAP_EXTRA_STATIONMAPSMALL_EAST "stationmapsmalleast"
|
||||
#define HOLOMAP_EXTRA_STATIONMAPSMALL_WEST "stationmapsmallwest"
|
||||
#define HOLOMAP_EXTRA_CULTMAP "cultmap"
|
||||
|
||||
#define HOLOMAP_MARKER_SMES "smes"
|
||||
#define HOLOMAP_MARKER_DISK "diskspawn"
|
||||
#define HOLOMAP_MARKER_SKIPJACK "skipjack"
|
||||
#define HOLOMAP_MARKER_SYNDISHUTTLE "syndishuttle"
|
||||
#define HOLOMAP_MARKER_BLOODSTONE "bloodstone"
|
||||
#define HOLOMAP_MARKER_BLOODSTONE_BROKEN "bloodstone-broken"
|
||||
#define HOLOMAP_MARKER_BLOODSTONE_ANCHOR "bloodstone-narsie"
|
||||
|
||||
|
||||
#define DEFAULT_BLOOD "#A10808"
|
||||
|
||||
|
||||
@@ -96,6 +96,9 @@
|
||||
blade.forceMove(A.loc)
|
||||
A.blade = null
|
||||
playsound(A.loc, 'sound/weapons/blade1.ogg', 50, 1)
|
||||
if (A.is_locking(A.lock_type))
|
||||
var/mob/M = A.get_locked(A.lock_type)[1]
|
||||
A.unlock_atom(M)
|
||||
A.update_icon()
|
||||
else
|
||||
return 0
|
||||
|
||||
@@ -142,10 +142,51 @@
|
||||
|
||||
//////////////////////////////////////////////
|
||||
// //
|
||||
// CULT (LEGACY) ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// BLOOD CULT ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// //
|
||||
//////////////////////////////////////////////
|
||||
|
||||
/datum/dynamic_ruleset/roundstart/bloodcult
|
||||
name = "Blood Cult"
|
||||
role_category = ROLE_CULTIST
|
||||
protected_from_jobs = list("Merchant")
|
||||
restricted_from_jobs = list("AI", "Cyborg", "Mobile MMI", "Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Chaplain", "Head of Personnel", "Internal Affairs Agent", "Chaplain")
|
||||
enemy_jobs = list("AI", "Cyborg", "Security Officer","Detective","Head of Security", "Captain", "Chaplain")
|
||||
required_enemies = list(2,2,1,1,1,1,1,0,0,0)
|
||||
required_candidates = 4
|
||||
weight = 4
|
||||
cost = 25
|
||||
requirements = list(90,80,60,30,20,10,10,10,10,10)
|
||||
var/cultist_cap = list(2,2,3,4,4,4,4,4,4,4)
|
||||
|
||||
/datum/dynamic_ruleset/roundstart/bloodcult/execute()
|
||||
//if ready() did its job, candidates should have 4 or more members in it
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (!cult)
|
||||
cult = ticker.mode.CreateFaction(/datum/faction/bloodcult, null, 1)
|
||||
|
||||
var/indice_pop = min(10,round(mode.roundstart_pop_ready/5)+1)
|
||||
var/cultists = cultist_cap[indice_pop]
|
||||
|
||||
for(var/cultists_number = 1 to cultists)
|
||||
if(candidates.len <= 0)
|
||||
break
|
||||
var/mob/M = pick(candidates)
|
||||
assigned += M
|
||||
candidates -= M
|
||||
var/datum/role/cultist/newCultist = new
|
||||
newCultist.AssignToRole(M.mind,1)
|
||||
cult.HandleRecruitedRole(newCultist)
|
||||
newCultist.Greet(GREET_ROUNDSTART)
|
||||
return 1
|
||||
|
||||
|
||||
//////////////////////////////////////////////
|
||||
// //
|
||||
// CULT (LEGACY) ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// //
|
||||
//////////////////////////////////////////////
|
||||
/*
|
||||
/datum/dynamic_ruleset/roundstart/cult_legacy
|
||||
name = "Cult (Legacy)"
|
||||
role_category = ROLE_LEGACY_CULTIST
|
||||
@@ -176,7 +217,7 @@
|
||||
legacy.HandleRecruitedRole(newCultist)
|
||||
newCultist.Greet(GREET_ROUNDSTART)
|
||||
return 1
|
||||
|
||||
*/
|
||||
|
||||
//////////////////////////////////////////////
|
||||
// //
|
||||
@@ -197,7 +238,7 @@
|
||||
var/operative_cap = list(2,2,3,3,4,5,5,5,5,5)
|
||||
|
||||
/datum/dynamic_ruleset/roundstart/nuclear/execute()
|
||||
//if ready() did its job, candidates should have 4 or more members in it
|
||||
//if ready() did its job, candidates should have 5 or more members in it
|
||||
var/datum/faction/syndicate/nuke_op/nuclear = find_active_faction_by_type(/datum/faction/syndicate/nuke_op)
|
||||
if (!nuclear)
|
||||
nuclear = ticker.mode.CreateFaction(/datum/faction/syndicate/nuke_op, null, 1)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//CULT 3.0 BY DEITY LINK (2018)
|
||||
//BASED ON THE ORIGINAL GAME MODE BY URIST MCDORF
|
||||
|
||||
var/veil_thickness = CULT_EPILOGUE//REMEMBER TO SET IT BACK TO CULT_PROLOGUE WHEN DONE TESTING
|
||||
var/veil_thickness = CULT_PROLOGUE
|
||||
|
||||
/client/proc/set_veil_thickness()
|
||||
set category = "Special Verbs"
|
||||
@@ -13,6 +13,9 @@ var/veil_thickness = CULT_EPILOGUE//REMEMBER TO SET IT BACK TO CULT_PROLOGUE WHE
|
||||
|
||||
veil_thickness = input(usr, "Enter a value (default = [CULT_PROLOGUE])", "Debug Veil Thickness", veil_thickness) as num
|
||||
|
||||
if (veil_thickness == CULT_ACT_III)
|
||||
spawn_bloodstones()
|
||||
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
for (var/datum/role/cultist/C in cult.members)
|
||||
@@ -21,6 +24,54 @@ var/veil_thickness = CULT_EPILOGUE//REMEMBER TO SET IT BACK TO CULT_PROLOGUE WHE
|
||||
for (var/obj/structure/cult/spire/S in cult_spires)
|
||||
S.upgrade()
|
||||
|
||||
/proc/spawn_bloodstones(var/turf/source = null)
|
||||
//Called at the beginning of ACT III, this is basically the cult's declaration of war on the crew
|
||||
//Spawns 4 structures, one in each quarters of the station
|
||||
//When spawning, those structures break and convert stuff around them, and add a wall layer in case of space exposure.
|
||||
var/list/places_to_spawn = list()
|
||||
for (var/i = 1 to 4)
|
||||
for (var/j = 10; j > 0; j--)
|
||||
var/turf/T = get_turf(pick(range(j*3,locate(map.center_x+j*4*(((round(i/2) % 2) == 0) ? -1 : 1 ),map.center_y+j*4*(((i % 2) == 0) ? -1 : 1 ),map.zMainStation))))
|
||||
if(!is_type_in_list(T,list(/turf/space,/turf/unsimulated,/turf/simulated/shuttle)))
|
||||
places_to_spawn += T
|
||||
break
|
||||
//A 5th bloodstone will spawn if a proper turf was given as arg (up to 100 tiles from the station center, and not in space
|
||||
if (source && !isspace(source.loc) && get_dist(locate(map.center_x,map.center_y,map.zMainStation),source)<100)
|
||||
places_to_spawn.Add(source)
|
||||
for (var/T in places_to_spawn)
|
||||
new /obj/structure/cult/bloodstone(T)
|
||||
|
||||
//Cultists can use those bloodstones to locate the rest of them, they work just like station holomaps
|
||||
var/i = 1
|
||||
for(var/obj/structure/cult/bloodstone/B in bloodstone_list)
|
||||
var/datum/holomap_marker/newMarker = new()
|
||||
newMarker.id = HOLOMAP_MARKER_BLOODSTONE
|
||||
newMarker.filter = HOLOMAP_FILTER_CULT
|
||||
newMarker.x = B.x
|
||||
newMarker.y = B.y
|
||||
newMarker.z = B.z
|
||||
holomap_markers[HOLOMAP_MARKER_BLOODSTONE+"_[i]"] = newMarker
|
||||
i++
|
||||
|
||||
var/icon/canvas = icon('icons/480x480.dmi', "cultmap")
|
||||
var/icon/map_base = icon(holoMiniMaps[map.zMainStation])
|
||||
map_base.Blend("#E30000",ICON_MULTIPLY)
|
||||
canvas.Blend(map_base,ICON_OVERLAY)
|
||||
for(var/marker in holomap_markers)
|
||||
var/datum/holomap_marker/holomarker = holomap_markers[marker]
|
||||
if(holomarker.z == map.zMainStation && holomarker.filter & HOLOMAP_FILTER_CULT)
|
||||
if(map.holomap_offset_x.len >= map.zMainStation)
|
||||
canvas.Blend(icon(holomarker.icon,holomarker.id), ICON_OVERLAY, holomarker.x-8+map.holomap_offset_x[map.zMainStation] , holomarker.y-8+map.holomap_offset_y[map.zMainStation])
|
||||
else
|
||||
canvas.Blend(icon(holomarker.icon,holomarker.id), ICON_OVERLAY, holomarker.x-8, holomarker.y-8)
|
||||
|
||||
extraMiniMaps |= HOLOMAP_EXTRA_CULTMAP
|
||||
extraMiniMaps[HOLOMAP_EXTRA_CULTMAP] = canvas
|
||||
|
||||
for(var/obj/structure/cult/bloodstone/B in bloodstone_list)
|
||||
B.holomap_datum = new /datum/station_holomap/cult()
|
||||
B.holomap_datum.initialize_holomap(B.loc)
|
||||
|
||||
//CULT_PROLOGUE Default thickness, only communication and raise structure runes enabled
|
||||
//CULT_ACT_I Altar raised. cultists can now convert.
|
||||
//CULT_ACT_II Cultist amount reached. cultists are now looking for the sacrifice
|
||||
@@ -39,8 +90,19 @@ var/veil_thickness = CULT_EPILOGUE//REMEMBER TO SET IT BACK TO CULT_PROLOGUE WHE
|
||||
Nar-Sie's goal is to tear open a breach through reality so he can pull the station into his realm and feast on the crew's blood and souls."
|
||||
roletype = /datum/role/cultist
|
||||
logo_state = "cult-logo"
|
||||
var/list/bloody_floors = list()//to replace later on
|
||||
hud_icons = list("cult-logo")
|
||||
var/list/bloody_floors = list()
|
||||
var/target_change = FALSE
|
||||
var/change_cooldown = 0
|
||||
var/cult_win = FALSE
|
||||
|
||||
/datum/faction/bloodcult/check_win()
|
||||
return cult_win
|
||||
|
||||
/datum/faction/bloodcult/proc/fail()
|
||||
if (cult_win || veil_thickness == CULT_MENDED)
|
||||
return
|
||||
progress(CULT_MENDED)
|
||||
|
||||
/datum/faction/bloodcult/AdminPanelEntry(var/datum/admins/A)
|
||||
var/list/dat = ..()
|
||||
@@ -53,15 +115,132 @@ var/veil_thickness = CULT_EPILOGUE//REMEMBER TO SET IT BACK TO CULT_PROLOGUE WHE
|
||||
|
||||
/datum/faction/bloodcult/OnPostSetup()
|
||||
initialize_cultwords()
|
||||
AppendObjective(/datum/objective/bloodcult_reunion)
|
||||
|
||||
//to recode later on
|
||||
/datum/faction/bloodcult/proc/is_sacrifice_target(var/datum/mind/M)
|
||||
/*
|
||||
for(var/datum/objective/target/sacrifice/S in GetObjectives())
|
||||
if(S.target == M)
|
||||
return TRUE
|
||||
*/
|
||||
return FALSE
|
||||
/datum/faction/bloodcult/process()
|
||||
..()
|
||||
if (change_cooldown)
|
||||
change_cooldown--
|
||||
if (change_cooldown <= 0)
|
||||
var/datum/objective/bloodcult_sacrifice/O = locate() in objective_holder.objectives
|
||||
if (!O.IsFulfilled())
|
||||
O.failed_targets += O.sacrifice_target
|
||||
spawn()
|
||||
if (O.replace_target())
|
||||
for(var/datum/role/cultist/C in members)
|
||||
var/mob/M = C.antag.current
|
||||
if (M)
|
||||
to_chat(M,"<span class='danger'>The sacrifice wasn't performed in time.</span><b> A new target has been assigned. [O.explanation_text]</b>")
|
||||
if (M == O.sacrifice_target)
|
||||
to_chat(M,"<b>There is no greater honor than purposefuly relinquishing your body for the coming of Nar-Sie, but you may wait for another target to be selected should you be afraid of death.</b>")
|
||||
else if (iscultist(O.sacrifice_target))
|
||||
to_chat(M,"<b>Chance has rolled its dice, and one of ours was selected. If for whatever reasons you do not want to take their life, you will have to wait for a new selection.</b>")
|
||||
if (target_change)
|
||||
change_cooldown = SACRIFICE_CHANGE_COOLDOWN
|
||||
|
||||
/datum/faction/bloodcult/proc/progress(var/new_act,var/A)
|
||||
//This proc is called to update the faction's current objectives, and veil thickness
|
||||
if (veil_thickness == CULT_MENDED)
|
||||
return//it's over, you lost
|
||||
|
||||
if (new_act == CULT_MENDED)
|
||||
veil_thickness = CULT_MENDED
|
||||
emergency_shuttle.shutdown = 0//The shuttle can be called once again.
|
||||
ticker.StopThematic()
|
||||
for (var/obj/structure/cult/bloodstone/B in bloodstone_list)
|
||||
B.takeDamage(1500)
|
||||
for (var/datum/role/cultist/C in members)
|
||||
//TODO: blood curse
|
||||
C.update_cult_hud()
|
||||
return
|
||||
|
||||
if (new_act <= veil_thickness)
|
||||
return
|
||||
|
||||
var/datum/objective/new_obj = null
|
||||
|
||||
switch(new_act)
|
||||
if (CULT_ACT_I)
|
||||
var/datum/objective/bloodcult_reunion/O = locate() in objective_holder.objectives
|
||||
if (O)
|
||||
O.altar_built = TRUE
|
||||
veil_thickness = CULT_ACT_I
|
||||
new_obj = new /datum/objective/bloodcult_followers
|
||||
if (CULT_ACT_II)
|
||||
var/datum/objective/bloodcult_followers/O = locate() in objective_holder.objectives
|
||||
if (O)
|
||||
O.conversions++
|
||||
if (O.conversions >= O.convert_target)
|
||||
veil_thickness = CULT_ACT_II
|
||||
new_obj = new /datum/objective/bloodcult_sacrifice
|
||||
if (CULT_ACT_III)
|
||||
var/datum/objective/bloodcult_sacrifice/O = locate() in objective_holder.objectives
|
||||
if (O)
|
||||
O.target_sacrificed = TRUE
|
||||
veil_thickness = CULT_ACT_III
|
||||
emergency_shuttle.force_shutdown()//No shuttle calls until the cult either wins or fails.
|
||||
ticker.StartThematic("endgame")
|
||||
spawn_bloodstones(A)
|
||||
new_obj = new /datum/objective/bloodcult_bloodbath
|
||||
if (CULT_ACT_IV)
|
||||
var/datum/objective/bloodcult_bloodbath/O = locate() in objective_holder.objectives
|
||||
if (O)
|
||||
veil_thickness = CULT_ACT_IV
|
||||
new_obj = new /datum/objective/bloodcult_tearinreality
|
||||
if (CULT_EPILOGUE)
|
||||
var/datum/objective/bloodcult_tearinreality/O = locate() in objective_holder.objectives
|
||||
if (O)
|
||||
O.NARSIE_HAS_RISEN = TRUE
|
||||
veil_thickness = CULT_EPILOGUE
|
||||
new_obj = new /datum/objective/bloodcult_feast
|
||||
|
||||
if (new_obj)
|
||||
AppendObjective(new_obj)
|
||||
for(var/datum/role/cultist/C in members)
|
||||
var/mob/M = C.antag.current
|
||||
if (M)
|
||||
to_chat(M,"<span class='danger'>[new_obj.name]</span><b>: [new_obj.explanation_text]</b>")
|
||||
if (istype(new_obj,/datum/objective/bloodcult_sacrifice))
|
||||
var/datum/objective/bloodcult_sacrifice/O = new_obj
|
||||
if (M == O.sacrifice_target)
|
||||
to_chat(M,"<b>There is no greater honor than purposefuly relinquishing your body for the coming of Nar-Sie, but you may wait for another target to be selected should you be afraid of death.</b>")
|
||||
else if (iscultist(O.sacrifice_target))
|
||||
to_chat(M,"<b>Chance has rolled its dice, and one of ours was selected. If for whatever reasons you do not want to take their life, you will have to wait for a new selection.</b>")
|
||||
|
||||
for (var/datum/role/cultist/C in members)
|
||||
C.update_cult_hud()
|
||||
|
||||
for (var/obj/structure/cult/spire/S in cult_spires)
|
||||
S.upgrade()
|
||||
|
||||
if (istype(new_obj,/datum/objective/bloodcult_bloodbath))
|
||||
var/datum/objective/bloodcult_bloodbath/O = new_obj
|
||||
O.max_bloodspill = max(O.max_bloodspill,bloody_floors.len)
|
||||
if (O.IsFulfilled())
|
||||
progress(CULT_ACT_IV)
|
||||
|
||||
/datum/faction/bloodcult/proc/add_bloody_floor(var/turf/T)
|
||||
if (!istype(T))
|
||||
return
|
||||
if(T && (T.z == map.zMainStation))//F I V E T I L E S
|
||||
if(!(locate("\ref[T]") in bloody_floors))
|
||||
bloody_floors += T
|
||||
bloody_floors[T] = T
|
||||
for (var/obj/structure/cult/bloodstone/B in bloodstone_list)
|
||||
B.update_icon()
|
||||
var/datum/objective/bloodcult_bloodbath/O = locate() in objective_holder.objectives
|
||||
if (O && !O.IsFulfilled())
|
||||
O.max_bloodspill = max(O.max_bloodspill,bloody_floors.len)
|
||||
if (O.IsFulfilled())
|
||||
progress(CULT_ACT_IV)
|
||||
|
||||
|
||||
/datum/faction/bloodcult/proc/remove_bloody_floor(var/turf/T)
|
||||
if (!istype(T))
|
||||
return
|
||||
for (var/obj/structure/cult/bloodstone/B in bloodstone_list)
|
||||
B.update_icon()
|
||||
bloody_floors -= T
|
||||
|
||||
/proc/is_convertable_to_cult(datum/mind/mind)
|
||||
if(!istype(mind))
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
|
||||
/datum/cult_ritual//placeholder, this will serve with cult building rituals, and stuff like the new Nar-Sie summoning
|
||||
|
||||
/obj/structure/cult
|
||||
density = 1
|
||||
anchored = 1
|
||||
@@ -10,6 +8,11 @@
|
||||
var/sound_damaged = null
|
||||
var/sound_destroyed = null
|
||||
var/conceal_cooldown = 0
|
||||
var/timeleft = 0
|
||||
var/timetotal = 0
|
||||
var/list/contributors = list()//list of cultists currently participating in the ritual
|
||||
var/image/progbar = null//progress bar
|
||||
var/cancelling = 3//check to abort the ritual if interrupted
|
||||
|
||||
/obj/structure/cult/proc/conceal()
|
||||
var/obj/structure/cult/concealed/C = new(loc)
|
||||
@@ -141,7 +144,9 @@
|
||||
// CULT ALTAR //Allows communication with Nar-Sie for advice and info on the Cult's current objective.
|
||||
// //ACT II : Allows Soulstone crafting, Used to sacrifice the target on the Station
|
||||
///////////////////////////ACT III : Can plant an empty Soul Blade in it to prompt observers to become the blade's shade
|
||||
|
||||
#define ALTARTASK_NONE 0
|
||||
#define ALTARTASK_GEM 1
|
||||
#define ALTARTASK_SACRIFICE 2
|
||||
|
||||
/obj/structure/cult/altar
|
||||
name = "altar"
|
||||
@@ -153,6 +158,9 @@
|
||||
sound_destroyed = 'sound/effects/stone_crumble.ogg'
|
||||
layer = TABLE_LAYER
|
||||
var/obj/item/weapon/melee/soulblade/blade = null
|
||||
var/lock_type = /datum/locking_category/buckle/bed
|
||||
var/altar_task = ALTARTASK_NONE
|
||||
var/gem_delay = 300
|
||||
|
||||
|
||||
/obj/structure/cult/altar/New()
|
||||
@@ -176,7 +184,9 @@
|
||||
..()
|
||||
|
||||
/obj/structure/cult/altar/attackby(var/obj/item/I, var/mob/user)
|
||||
if(istype(I,/obj/item/weapon/melee/soulblade))
|
||||
if (altar_task)
|
||||
return ..()
|
||||
if(istype(I,/obj/item/weapon/melee/soulblade) || (istype(I,/obj/item/weapon/melee/cultblade) && !istype(I,/obj/item/weapon/melee/cultblade/nocult)))
|
||||
if (blade)
|
||||
to_chat(user,"<span class='warning'>You must remove the blade planted on \the [src] first.</span>")
|
||||
return 1
|
||||
@@ -186,19 +196,58 @@
|
||||
I.forceMove(src)
|
||||
blade = I
|
||||
update_icon()
|
||||
var/mob/living/carbon/human/C = locate() in loc
|
||||
if (C && C.resting)
|
||||
C.unlock_from()
|
||||
C.update_canmove()
|
||||
lock_atom(C, lock_type)
|
||||
C.apply_damage(blade.force, BRUTE, LIMB_CHEST)
|
||||
if (C == user)
|
||||
user.visible_message("<span class='danger'>\The [user] holds \the [I] above their stomach and impale themselves on \the [src]! That's fucking brutal!</span>","<span class='danger'>You hold \the [I] above your stomach and impale yourself on \the [src]! That's fucking brutal!</span>")
|
||||
else
|
||||
user.visible_message("<span class='danger'>\The [user] holds \the [I] above \the [C]'s stomach and impale them on \the [src]!</span>","<span class='danger'>You hold \the [I] above \the [C]'s stomach and impale them on \the [src]!</span>")
|
||||
else
|
||||
to_chat(user, "You plant \the [blade] on top of \the [src]</span>")
|
||||
if (istype(blade))
|
||||
var/icon/logo_icon = icon('icons/logos.dmi', "shade-blade")
|
||||
for(var/mob/M in observers)
|
||||
if(!M.client || jobban_isbanned(M, ROLE_CULTIST) || M.client.is_afk())
|
||||
continue
|
||||
to_chat(M, "[bicon(logo_icon)]<span class='recruit'>\The [user] has planted a Soul Blade on an altar, opening a small crack in the veil that allows you to become the blade's resident shade. (<a href='?src=\ref[src];signup=\ref[M]'>Possess now!</a>)</span>[bicon(logo_icon)]")
|
||||
return 1
|
||||
if (istype(I, /obj/item/weapon/grab))
|
||||
if (blade)
|
||||
to_chat(user,"<span class='warning'>You must remove the blade planted on \the [src] first.</span>")
|
||||
return 1
|
||||
var/obj/item/weapon/grab/G = I
|
||||
if(iscarbon(G.affecting))
|
||||
var/mob/living/carbon/C = G.affecting
|
||||
C.unlock_from()
|
||||
if (!do_after(user,C,15))
|
||||
return
|
||||
if (ishuman(C))
|
||||
C.resting = 1
|
||||
C.update_canmove()
|
||||
C.forceMove(loc)
|
||||
returnToPool(G)
|
||||
to_chat(user, "<span class='warning'>You move \the [C] on top of \the [src]</span>")
|
||||
return 1
|
||||
..()
|
||||
|
||||
/obj/structure/cult/altar/update_icon()
|
||||
if (blade)
|
||||
if (blade.shade)
|
||||
icon_state = "altar-soulblade-full"
|
||||
else
|
||||
icon_state = "altar-soulblade"
|
||||
else
|
||||
icon_state = "altar"
|
||||
overlays.len = 0
|
||||
if (blade)
|
||||
var/image/I
|
||||
if (!istype(blade))
|
||||
I = image(icon, "altar-cultblade")
|
||||
else if (blade.shade)
|
||||
I = image(icon, "altar-soulblade-full")
|
||||
else
|
||||
I = image(icon, "altar-soulblade")
|
||||
I.plane = ABOVE_HUMAN_PLANE
|
||||
I.pixel_y = 3
|
||||
overlays.Add(I)
|
||||
var/image/I = image(icon, "altar_overlay")
|
||||
I.plane = ABOVE_HUMAN_PLANE
|
||||
overlays.Add(I)
|
||||
@@ -232,6 +281,8 @@
|
||||
return 0
|
||||
|
||||
/obj/structure/cult/altar/MouseDropTo(var/atom/movable/O, var/mob/user)
|
||||
if (altar_task)
|
||||
return
|
||||
if (!O.anchored && (istype(O, /obj/item) || user.get_active_hand() == O))
|
||||
if(!user.drop_item(O))
|
||||
return
|
||||
@@ -251,8 +302,13 @@
|
||||
var/mob/living/L = O
|
||||
if(!istype(L) || L.locked_to || L == user)
|
||||
return
|
||||
|
||||
if (blade)
|
||||
to_chat(user,"<span class='warning'>You must remove the blade planted on \the [src] first.</span>")
|
||||
return 1
|
||||
var/mob/living/carbon/C = O
|
||||
|
||||
if (!do_after(user,C,15))
|
||||
return
|
||||
C.unlock_from()
|
||||
|
||||
if (ishuman(C))
|
||||
@@ -265,6 +321,8 @@
|
||||
to_chat(user, "<span class='warning'>You move \the [O] on top of \the [src]</span>")
|
||||
|
||||
/obj/structure/cult/altar/conceal()
|
||||
if (blade || altar_task)
|
||||
return
|
||||
anim(location = loc,target = loc,a_icon = icon, flick_anim = "[icon_state]-conceal")
|
||||
for (var/mob/living/carbon/C in loc)
|
||||
Uncrossed(C)
|
||||
@@ -280,7 +338,81 @@
|
||||
.=..()
|
||||
if (!.)
|
||||
return
|
||||
if (altar_task)
|
||||
if (altar_task == ALTARTASK_SACRIFICE)
|
||||
if (user in contributors)
|
||||
return
|
||||
if (!user.checkTattoo(TATTOO_SILENT))
|
||||
if (prob(5))
|
||||
user.say("Let me show you the dance of my people!","C")
|
||||
else
|
||||
user.say("Barhah hra zar'garis!","C")
|
||||
contributors.Add(user)
|
||||
if (user.client)
|
||||
user.client.images |= progbar
|
||||
return
|
||||
if(is_locking(lock_type))
|
||||
var/choices = list(
|
||||
list("Remove Blade", "radial_altar_remove", "Transfer some of your blood to the blade to repair it and refuel its blood level, or you could just slash someone."),
|
||||
list("Sacrifice", "radial_altar_sacrifice", "Initiate the sacrifice ritual. The ritual can only proceed if the proper victim has been nailed to the altar."),
|
||||
)
|
||||
var/task = show_radial_menu(user,loc,choices,'icons/obj/cult_radial3.dmi',"radial-cult2")
|
||||
if (!is_locking(lock_type) || !Adjacent(user) || !task)
|
||||
return
|
||||
switch (task)
|
||||
if ("Remove Blade")
|
||||
var/mob/M = get_locked(lock_type)[1]
|
||||
if(M != user)
|
||||
if (do_after(user,src,20))
|
||||
M.visible_message("<span class='notice'>\The [M] was freed from \the [src] by \the [user]!</span>","You were freed from \the [src] by \the [user].")
|
||||
unlock_atom(M)
|
||||
if (blade)
|
||||
blade.forceMove(loc)
|
||||
blade.attack_hand(user)
|
||||
to_chat(user, "<span class='warning'>You remove \the [blade] from \the [src]</span>")
|
||||
blade = null
|
||||
playsound(loc, 'sound/weapons/blade1.ogg', 50, 1)
|
||||
update_icon()
|
||||
if ("Sacrifice")
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
var/datum/objective/bloodcult_sacrifice/O = locate() in cult.objective_holder.objectives
|
||||
if (O && is_locking(lock_type))
|
||||
var/mob/victim = get_locked(lock_type)[1]
|
||||
if (victim == O.sacrifice_target)
|
||||
altar_task = ALTARTASK_SACRIFICE
|
||||
timeleft = 30
|
||||
timetotal = timeleft
|
||||
update_icon()
|
||||
contributors.Add(user)
|
||||
update_progbar()
|
||||
if (user.client)
|
||||
user.client.images |= progbar
|
||||
var/image/I = image('icons/obj/cult.dmi',"build")
|
||||
I.pixel_y = 8
|
||||
src.overlays += I
|
||||
if (!user.checkTattoo(TATTOO_SILENT))
|
||||
if (prob(5))
|
||||
user.say("Let me show you the dance of my people!","C")
|
||||
else
|
||||
user.say("Barhah hra zar'garis!","C")
|
||||
if (user.client)
|
||||
user.client.images |= progbar
|
||||
safe_space()
|
||||
for(var/mob/M in range(src,40))
|
||||
if (M.z == z && M.client)
|
||||
if (get_dist(M,src)<=20)
|
||||
M.playsound_local(src, get_sfx("explosion"), 50, 1)
|
||||
shake_camera(M, 2, 1)
|
||||
else
|
||||
M.playsound_local(src, 'sound/effects/explosionfar.ogg', 50, 1)
|
||||
shake_camera(M, 1, 1)
|
||||
spawn()
|
||||
dance_start()
|
||||
else
|
||||
to_chat(user, "<span class='sinister'>This isn't the One.</span>")
|
||||
|
||||
else if (blade)
|
||||
blade.forceMove(loc)
|
||||
blade.attack_hand(user)
|
||||
to_chat(user, "You remove \the [blade] from \the [src]</span>")
|
||||
@@ -288,53 +420,195 @@
|
||||
playsound(loc, 'sound/weapons/blade1.ogg', 50, 1)
|
||||
update_icon()
|
||||
return
|
||||
var/dat = ""
|
||||
switch (menu)
|
||||
if ("default")
|
||||
dat = {"<body style="color:#FF0000" bgcolor="#110000"><dl>
|
||||
<dt><a href='?src=\ref[src];altar=commune' style="color:#FFFFFF"><b>Commune with Nar-Sie</b></a></dt>
|
||||
<dd>Should you need guidance, Nar-Sie can offer you some tips.</br>
|
||||
The tips can vary depending on the veil's thickness.</dd>"}
|
||||
if (veil_thickness >= CULT_ACT_II)
|
||||
dat += {"<dt><a href='?src=\ref[src];altar=soulstone' style="color:#FFFFFF"><b>Conjure Soulstone</b></a></dt>
|
||||
<dd>For a tribute of 60u of blood, this altar will conjure a soulstone over 30s.</br>
|
||||
Use them to capture the soul of a dead or critically injured enemy.</dd>"}
|
||||
else
|
||||
dat += {"<dt><b style="color:#666666">Conjure Soulstone - LOCKED (ACT II)</b></dt>
|
||||
</br>"}
|
||||
if (veil_thickness == CULT_ACT_II)
|
||||
dat += {"<dt><a href='?src=\ref[src];altar=sacrifice' style="color:#FFFFFF"><b>Offer in Sacrifice</b></a></dt>
|
||||
<dd>The body of the individual designated by Nar-Sie is the key to tear down the veil.</br>
|
||||
Place them on \the [name] first, but be prepared to oppose the crew openly.</dd>"}
|
||||
var/choices = list(
|
||||
list("Consult Roster", "radial_altar_roster", "Check the names and status of all of the cult's members."),
|
||||
list("Commune with Nar-Sie", "radial_altar_commune", "Obtain guidance from Nar-Sie to help you complete your objectives."),
|
||||
list("Conjure Soul Gem", "radial_altar_gem", "Order the altar to sculpt you a Soul Gem, to capture the soul of your enemies."),
|
||||
)
|
||||
var/task = show_radial_menu(user,loc,choices,'icons/obj/cult_radial3.dmi',"radial-cult2")
|
||||
if (is_locking(lock_type) || !Adjacent(user) || !task)
|
||||
return
|
||||
switch (task)
|
||||
if ("Consult Roster")
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (!cult)
|
||||
return
|
||||
var/dat = {"<body style="color:#FFFFFF" bgcolor="#110000"><ul>"}
|
||||
for (var/datum/role/cultist/C in cult.members)
|
||||
var/datum/mind/M = C.antag
|
||||
var/conversion = ""
|
||||
if (C.conversion.len > 0)
|
||||
conversion = pick(C.conversion)
|
||||
var/origin_text = ""
|
||||
switch (conversion)
|
||||
if ("converted")
|
||||
origin_text = "Converted by [C.conversion[conversion]]"
|
||||
if ("resurrected")
|
||||
origin_text = "Resurrected by [C.conversion[conversion]]"
|
||||
if ("soulstone")
|
||||
origin_text = "Soul captured by [C.conversion[conversion]]"
|
||||
if ("altar")
|
||||
origin_text = "Volunteer shade"
|
||||
else
|
||||
dat += {"<dt><b style="color:#666666">Offer in Sacrifice - LOCKED (ACT II only)</b></dt>
|
||||
</br>"}
|
||||
if (veil_thickness >= CULT_ACT_III)
|
||||
dat += {"<dt><a href='?src=\ref[src];altar=soulblade' style="color:#FFFFFF"><b>Conjure Soul into Blade</b></a></dt>
|
||||
<dd>Leave a soul blade on \the [name] to imbue it with the souls of the dead from hell.</br>
|
||||
It takes a while, but can be an alternative to capturing a soul by yourself.</dd>"}
|
||||
else
|
||||
dat += {"<dt><b style="color:#666666">Conjure Soul into Blade - LOCKED (ACT III)</b></dt>
|
||||
</br>"}
|
||||
dat += {"</dl></body>"}
|
||||
if ("commune")
|
||||
dat = {"<body style="color:#FF0000" bgcolor="#110000"><dl><dt>TODO ADD NARSIE TIPS FOR EACH ACTS</dt></dl></body>"}
|
||||
origin_text = "Founder"
|
||||
var/mob/living/carbon/H = C.antag.current
|
||||
var/extra = ""
|
||||
if (H && istype(H))
|
||||
if (H.isInCrit())
|
||||
extra = " - <span style='color:#FF0000'>CRITICAL</span>"
|
||||
else if (H.isDead())
|
||||
extra = " - <span style='color:#FF0000'>DEAD</span>"
|
||||
dat += "<li><b>[M.name]</b></li> - [origin_text][extra]"
|
||||
dat += {"</ul></body>"}
|
||||
user << browse("<TITLE>Cult Roster</TITLE>[dat]", "window=cultroster;size=500x300")
|
||||
onclose(user, "cultroster")
|
||||
if ("Commune with Nar-Sie")
|
||||
switch(veil_thickness)
|
||||
if (CULT_MENDED)
|
||||
to_chat(user, "...nothing but silence...")
|
||||
if (CULT_PROLOGUE)
|
||||
to_chat(user, "<span class='game say'><span class='danger'>Nar-Sie</span> murmurs, <span class='sinister'>How interesting...</span></span>")
|
||||
if (CULT_ACT_I)
|
||||
to_chat(user, "<span class='game say'><span class='danger'>Nar-Sie</span> murmurs, <span class='sinister'>The conversion rune is <span class='danger'>Join Blood Self</span>, but you now have many new runes at your disposal to help you in your task, therefore I recommend you first summon an Arcane Tome to easily scribe them. The rune that conjures a tome is <span class='danger'>See Blood Hell</span>.</span></span>")
|
||||
if (CULT_ACT_II)
|
||||
to_chat(user, "<span class='game say'><span class='danger'>Nar-Sie</span> murmurs, <span class='sinister'>To perform the sacrifice, you'll have to forge a cult blade first. It doesn't matter if the target is alive of not, lay their body down on the altar and plant the blade on their stomach. Next, touch the altar to perform the next step of the ritual. The more of you, the quicker it will be done.</span></span>")
|
||||
if (CULT_ACT_III)
|
||||
to_chat(user, "<span class='game say'><span class='danger'>Nar-Sie</span> murmurs, <span class='sinister'>The crew is now aware of our presence, prepare to draw blood. Your priority is to spill as much blood as you can all over the station, bloody trails left by foot steps count toward this goal. How you obtain the blood, I leave to your ambition, but remember that if the crew destroys every blood stones, you will be doomed.</span></span>")
|
||||
if (CULT_ACT_IV)
|
||||
to_chat(user, "<span class='game say'><span class='danger'>Nar-Sie</span> murmurs, <span class='sinister'>One of the blood stones has become my anchor in this plane, you can touch any other stone to locate it. Touch the anchor to perform the Tear Reality ritual before the crew breaks it.</span></span>")
|
||||
if (CULT_EPILOGUE)
|
||||
to_chat(user, "<span class='game say'><span class='danger'>Nar-Sie</span> murmurs, <span class='sinister'>Remarkable work, [user.real_name], I greatly enjoyed observing this game. Your work is over now, but I may have more in store for you in the future. In the meanwhile, bask in your victory.</span></span>")
|
||||
/* TODO: I'll finish that up someday
|
||||
var/dat = {"<body style="color:#FFFFFF" bgcolor="#110000"><ul>"}
|
||||
dat += {"</ul></body>"}
|
||||
user << browse("<TITLE>Nar-Sie's Tips</TITLE>[dat]", "window=narsietips;size=500x300")
|
||||
onclose(user, "narsietips")
|
||||
*/
|
||||
if ("Conjure Soul Gem")
|
||||
altar_task = ALTARTASK_GEM
|
||||
update_icon()
|
||||
overlays += "altar-soulstone1"
|
||||
spawn (gem_delay/3)
|
||||
update_icon()
|
||||
overlays += "altar-soulstone2"
|
||||
sleep (gem_delay/3)
|
||||
update_icon()
|
||||
overlays += "altar-soulstone3"
|
||||
sleep (gem_delay/3)
|
||||
altar_task = ALTARTASK_NONE
|
||||
update_icon()
|
||||
var/obj/item/device/soulstone/gem/gem = new (loc)
|
||||
gem.pixel_y = 4
|
||||
|
||||
/obj/structure/cult/altar/noncultist_act(var/mob/user)//Non-cultists can still remove blades planted on altars.
|
||||
if(iscultist(user))
|
||||
return 0
|
||||
if(is_locking(lock_type))
|
||||
var/mob/M = get_locked(lock_type)[1]
|
||||
if(M != user)
|
||||
if (do_after(user,src,20))
|
||||
M.visible_message("<span class='notice'>\The [M] was freed from \the [src] by \the [user]!</span>","You were freed from \the [src] by \the [user].")
|
||||
unlock_atom(M)
|
||||
if (blade)
|
||||
blade.forceMove(loc)
|
||||
blade.attack_hand(user)
|
||||
to_chat(user, "You remove \the [blade] from \the [src]</span>")
|
||||
blade = null
|
||||
playsound(loc, 'sound/weapons/blade1.ogg', 50, 1)
|
||||
update_icon()
|
||||
else if (blade)
|
||||
blade.forceMove(loc)
|
||||
blade.attack_hand(user)
|
||||
to_chat(user, "You remove \the [blade] from \the [src]</span>")
|
||||
blade = null
|
||||
playsound(loc, 'sound/weapons/blade1.ogg', 50, 1)
|
||||
update_icon()
|
||||
return
|
||||
else
|
||||
to_chat(user,"<span class='sinister'>You feel madness taking its toll, trying to figure out \the [name]'s purpose</span>")
|
||||
return 1
|
||||
|
||||
|
||||
user << browse("<TITLE>Cult Altar</TITLE>[dat]", "window=cultaltar;size=565x280")
|
||||
onclose(user, "cultaltar")
|
||||
|
||||
/obj/structure/cult/altar/Topic(href, href_list)
|
||||
switch (href_list["altar"])
|
||||
if ("commune")
|
||||
cultist_act(usr,"commune")
|
||||
if ("soulstone")
|
||||
to_chat(usr,"TODO: SPAWN A SOULSTONE")
|
||||
if ("sacrifice")
|
||||
to_chat(usr,"TODO: SACRIFICE")
|
||||
if ("soulblade")
|
||||
to_chat(usr,"TODO: IMBUE SOULBLADE")
|
||||
if(href_list["signup"])
|
||||
var/mob/M = usr
|
||||
if(!M || !isobserver(M))
|
||||
return
|
||||
var/obj/item/weapon/melee/soulblade/blade = locate() in src
|
||||
if (!blade || !istype(blade))
|
||||
to_chat(usr, "<span class='warning'>The Soul Blade was pulled off from \the [src]</span>")
|
||||
return
|
||||
if (blade.shade)
|
||||
to_chat(usr, "<span class='warning'>Another shade was faster, and is currently possessing the blade.</span>")
|
||||
return
|
||||
var/mob/living/simple_animal/shade/shadeMob = new(blade)
|
||||
shadeMob.status_flags |= GODMODE
|
||||
shadeMob.canmove = 0
|
||||
shadeMob.ckey = usr.ckey
|
||||
spawn()
|
||||
var/list/shade_names = list("Orenmir","Felthorn","Sparda","Vengeance","Klinge")
|
||||
shadeMob.real_name = pick(shade_names)
|
||||
shadeMob.real_name = copytext(sanitize(input(shadeMob, "You have no memories of your previous life, if you even had one. What name will you give yourself?", "Give yourself a new name", "[shadeMob.real_name]") as null|text),1,MAX_NAME_LEN)
|
||||
shadeMob.name = "[shadeMob.real_name] the Shade"
|
||||
if (shadeMob.mind)
|
||||
shadeMob.mind.name = shadeMob.real_name
|
||||
shadeMob.cancel_camera()
|
||||
shadeMob.give_blade_powers()
|
||||
blade.dir = NORTH
|
||||
blade.update_icon()
|
||||
update_icon()
|
||||
//Automatically makes them cultists
|
||||
var/datum/role/cultist/newCultist = new
|
||||
newCultist.AssignToRole(shadeMob.mind,1)
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (!cult)
|
||||
cult = ticker.mode.CreateFaction(/datum/faction/bloodcult, null, 1)
|
||||
cult.HandleRecruitedRole(newCultist)
|
||||
newCultist.OnPostSetup()
|
||||
newCultist.Greet(GREET_SOULBLADE)
|
||||
newCultist.conversion.Add("altar")
|
||||
|
||||
|
||||
/obj/structure/cult/altar/dance_start()//This is executed at the end of the sacrifice ritual
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
cult.change_cooldown = max(cult.change_cooldown,60 SECONDS)
|
||||
. = ..()//true if the ritual was successful
|
||||
altar_task = ALTARTASK_NONE
|
||||
update_icon()
|
||||
if (. && is_locking(lock_type))
|
||||
var/mob/M = get_locked(lock_type)[1]
|
||||
|
||||
if (istype(blade) && !blade.shade)//If an empty soul blade was the tool used for the ritual, let's make them its shade.
|
||||
var/mob/living/simple_animal/shade/new_shade = M.change_mob_type( /mob/living/simple_animal/shade , null, null, 1 )
|
||||
blade.forceMove(loc)
|
||||
blade.blood = blade.maxblood
|
||||
new_shade.forceMove(blade)
|
||||
blade.update_icon()
|
||||
blade = null
|
||||
new_shade.status_flags |= GODMODE
|
||||
new_shade.canmove = 0
|
||||
new_shade.name = "[M.real_name] the Shade"
|
||||
new_shade.real_name = "[M.real_name]"
|
||||
new_shade.give_blade_powers()
|
||||
playsound(get_turf(src), get_sfx("soulstone"), 50,1)
|
||||
else
|
||||
M.gib()
|
||||
var/turf/T = loc
|
||||
|
||||
cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
cult.progress(CULT_ACT_III,T)
|
||||
else
|
||||
message_admins("Blood Cult: A sacrifice was completed...but we cannot find the cult faction...")//failsafe in case of admin varedit fuckery
|
||||
qdel(src)
|
||||
|
||||
#undef ALTARTASK_NONE
|
||||
#undef ALTARTASK_GEM
|
||||
#undef ALTARTASK_SACRIFICE
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// //Spawned from the Raise Structure rune. Available from Act II, upgrades at each subsequent Act
|
||||
// CULT SPIRE //Can be used by cultists to acquire arcane tattoos. One of each tier.
|
||||
@@ -529,10 +803,7 @@ var/list/cult_spires = list()
|
||||
var/set_temperature = 50
|
||||
var/mob/forger = null
|
||||
var/template = null
|
||||
var/timeleft = 0
|
||||
var/timetotal = 0
|
||||
var/obj/effect/cult_ritual/forge/forging = null
|
||||
var/image/progbar = null//progress bar
|
||||
|
||||
|
||||
/obj/structure/cult/forge/New()
|
||||
@@ -687,7 +958,7 @@ var/list/cult_spires = list()
|
||||
return 1
|
||||
..()
|
||||
|
||||
/obj/structure/cult/forge/proc/update_progbar()
|
||||
/obj/structure/cult/proc/update_progbar()
|
||||
if (!progbar)
|
||||
progbar = image("icon" = 'icons/effects/doafter_icon.dmi', "loc" = src, "icon_state" = "prog_bar_0")
|
||||
progbar.pixel_z = WORLD_ICON_SIZE
|
||||
@@ -698,6 +969,14 @@ var/list/cult_spires = list()
|
||||
progbar.layer = HUD_ABOVE_ITEM_LAYER
|
||||
progbar.icon_state = "prog_bar_[round((100 - min(1, timeleft / timetotal) * 100), 10)]"
|
||||
|
||||
/obj/structure/cult/altar/update_progbar()
|
||||
if (!progbar)
|
||||
progbar = image("icon" = 'icons/effects/doafter_icon.dmi', "loc" = src, "icon_state" = "prog_bar_0")
|
||||
progbar.pixel_z = WORLD_ICON_SIZE
|
||||
progbar.plane = HUD_PLANE
|
||||
progbar.layer = HUD_ABOVE_ITEM_LAYER
|
||||
progbar.icon_state = "prog_bar_[round((100 - min(1, timeleft / timetotal) * 100), 10)]"
|
||||
|
||||
/obj/structure/cult/forge/cultist_act(var/mob/user,var/menu="default")
|
||||
.=..()
|
||||
if (!.)
|
||||
@@ -768,3 +1047,420 @@ var/list/cult_spires = list()
|
||||
I.layer = NARSIE_GLOW
|
||||
I.blend_mode = BLEND_ADD
|
||||
overlays += I
|
||||
|
||||
|
||||
/obj/structure/cult/pillar
|
||||
name = "obsidian pillar"
|
||||
icon_state = "pillar-enter"
|
||||
icon = 'icons/obj/cult_64x64.dmi'
|
||||
pixel_x = -16 * PIXEL_MULTIPLIER
|
||||
health = 300
|
||||
maxHealth = 300
|
||||
sound_damaged = 'sound/effects/stone_hit.ogg'
|
||||
sound_destroyed = 'sound/effects/stone_crumble.ogg'
|
||||
plane = EFFECTS_PLANE
|
||||
layer = BELOW_PROJECTILE_LAYER
|
||||
var/alt = 0
|
||||
|
||||
/obj/structure/cult/pillar/New()
|
||||
..()
|
||||
var/turf/T = loc
|
||||
for (var/obj/O in loc)
|
||||
if (O != src)
|
||||
O.ex_act(2)
|
||||
T.ChangeTurf(/turf/simulated/floor/engine/cult)
|
||||
T.turf_animation('icons/effects/effects.dmi',"cultfloor", 0, 0, MOB_LAYER-1, anim_plane = TURF_PLANE)
|
||||
for (var/obj/structure/S in T)
|
||||
if (S != src)
|
||||
qdel(S)
|
||||
for (var/obj/machinery/M in T)
|
||||
qdel(M)
|
||||
|
||||
/obj/structure/cult/pillar/Destroy()
|
||||
new /obj/effect/decal/cleanable/ash(loc)
|
||||
..()
|
||||
|
||||
|
||||
/obj/structure/cult/pillar/alt
|
||||
icon_state = "pillaralt-enter"
|
||||
alt = 1
|
||||
|
||||
/obj/structure/cult/pillar/update_icon()
|
||||
icon_state = "pillar[alt ? "alt": ""]2"
|
||||
overlays.len = 0
|
||||
if (health < maxHealth/3)
|
||||
icon_state = "pillar[alt ? "alt": ""]0"
|
||||
else if (health < 2*maxHealth/3)
|
||||
icon_state = "pillar[alt ? "alt": ""]1"
|
||||
|
||||
/obj/structure/cult/pillar/conceal()
|
||||
return
|
||||
|
||||
/obj/structure/cult/pillar/ex_act(var/severity)
|
||||
switch(severity)
|
||||
if (1)
|
||||
takeDamage(300)
|
||||
if (2)
|
||||
takeDamage(100)
|
||||
if (3)
|
||||
takeDamage(20)
|
||||
|
||||
var/list/bloodstone_list = list()
|
||||
|
||||
/obj/structure/cult/bloodstone
|
||||
name = "blood stone"
|
||||
icon_state = "bloodstone-enter1"
|
||||
icon = 'icons/obj/cult_64x64.dmi'
|
||||
pixel_x = -16 * PIXEL_MULTIPLIER
|
||||
health = 900
|
||||
maxHealth = 900
|
||||
sound_damaged = 'sound/effects/stone_hit.ogg'
|
||||
sound_destroyed = 'sound/effects/stone_crumble.ogg'
|
||||
plane = EFFECTS_PLANE
|
||||
layer = BELOW_PROJECTILE_LAYER
|
||||
light_color = "#FF0000"
|
||||
|
||||
var/list/watching_mobs = list()
|
||||
var/list/watcher_maps = list()
|
||||
var/datum/station_holomap/holomap_datum
|
||||
var/anchor = FALSE
|
||||
|
||||
/obj/structure/cult/bloodstone/New()
|
||||
..()
|
||||
bloodstone_list.Add(src)
|
||||
for (var/obj/O in loc)
|
||||
if (O != src)
|
||||
O.ex_act(2)
|
||||
safe_space()
|
||||
set_light(3)
|
||||
for(var/mob/M in player_list)
|
||||
if (M.z == z && M.client)
|
||||
if (get_dist(M,src)<=20)
|
||||
M.playsound_local(src, get_sfx("explosion"), 50, 1)
|
||||
shake_camera(M, 4, 1)
|
||||
else
|
||||
M.playsound_local(src, 'sound/effects/explosionfar.ogg', 50, 1)
|
||||
shake_camera(M, 1, 1)
|
||||
|
||||
spawn(10)
|
||||
var/list/pillars = list()
|
||||
icon_state = "bloodstone-enter2"
|
||||
for(var/mob/M in player_list)
|
||||
if (M.z == z && M.client)
|
||||
if (get_dist(M,src)<=20)
|
||||
M.playsound_local(src, get_sfx("explosion"), 50, 1)
|
||||
shake_camera(M, 4, 1)
|
||||
else
|
||||
M.playsound_local(src, 'sound/effects/explosionfar.ogg', 50, 1)
|
||||
shake_camera(M, 1, 1)
|
||||
var/turf/T1 = locate(x-2,y-2,z)
|
||||
pillars += new /obj/structure/cult/pillar(T1)
|
||||
var/turf/T2 = locate(x+2,y-2,z)
|
||||
pillars += new /obj/structure/cult/pillar/alt(T2)
|
||||
var/turf/T3 = locate(x-2,y+2,z)
|
||||
pillars += new /obj/structure/cult/pillar(T3)
|
||||
var/turf/T4 = locate(x+2,y+2,z)
|
||||
pillars += new /obj/structure/cult/pillar/alt(T4)
|
||||
sleep(10)
|
||||
icon_state = "bloodstone-enter3"
|
||||
for(var/mob/M in player_list)
|
||||
if (M.z == z && M.client)
|
||||
if (get_dist(M,src)<=20)
|
||||
M.playsound_local(src, get_sfx("explosion"), 50, 1)
|
||||
shake_camera(M, 4, 1)
|
||||
else
|
||||
M.playsound_local(src, 'sound/effects/explosionfar.ogg', 50, 1)
|
||||
shake_camera(M, 1, 1)
|
||||
for (var/obj/structure/cult/pillar/P in pillars)
|
||||
P.update_icon()
|
||||
|
||||
/obj/structure/cult/bloodstone/Destroy()
|
||||
bloodstone_list.Remove(src)
|
||||
new /obj/effect/decal/cleanable/ash(loc)
|
||||
new /obj/item/weapon/ectoplasm(loc)
|
||||
var/icon/updated_map = icon(extraMiniMaps[HOLOMAP_EXTRA_CULTMAP])
|
||||
var/datum/holomap_marker/holomarker = new()
|
||||
holomarker.id = HOLOMAP_MARKER_BLOODSTONE_BROKEN
|
||||
holomarker.filter = HOLOMAP_FILTER_CULT
|
||||
holomarker.x = src.x
|
||||
holomarker.y = src.y
|
||||
holomarker.z = src.z
|
||||
holomap_markers[HOLOMAP_MARKER_BLOODSTONE+"_\ref[src]"] = holomarker
|
||||
if(holomarker.z == map.zMainStation && holomarker.filter & HOLOMAP_FILTER_CULT)
|
||||
if(map.holomap_offset_x.len >= map.zMainStation)
|
||||
updated_map.Blend(icon(holomarker.icon,holomarker.id), ICON_OVERLAY, holomarker.x-8+map.holomap_offset_x[map.zMainStation] , holomarker.y-8+map.holomap_offset_y[map.zMainStation])
|
||||
else
|
||||
updated_map.Blend(icon(holomarker.icon,holomarker.id), ICON_OVERLAY, holomarker.x-8, holomarker.y-8)
|
||||
extraMiniMaps[HOLOMAP_EXTRA_CULTMAP] = updated_map
|
||||
for(var/obj/structure/cult/bloodstone/B in bloodstone_list)
|
||||
B.holomap_datum.initialize_holomap(B.loc)
|
||||
if (bloodstone_list.len <= 0 || anchor)
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
cult.fail()
|
||||
..()
|
||||
|
||||
/obj/structure/cult/bloodstone/cultist_act(var/mob/user)
|
||||
.=..()
|
||||
if (!.)
|
||||
return
|
||||
if(isliving(user))
|
||||
if(user in watching_mobs)
|
||||
stopWatching(user)
|
||||
else
|
||||
if (anchor)
|
||||
if (user in contributors)
|
||||
return
|
||||
if (!user.checkTattoo(TATTOO_SILENT))
|
||||
if (prob(5))
|
||||
user.say("Let me show you the dance of my people!","C")
|
||||
else
|
||||
user.say("Tok-lyr rqa'nap g'lt-ulotf!","C")
|
||||
contributors.Add(user)
|
||||
if (user.client)
|
||||
user.client.images |= progbar
|
||||
else if(user.hud_used && user.hud_used.holomap_obj)
|
||||
if(!("\ref[user]" in watcher_maps))
|
||||
watcher_maps["\ref[user]"] = image(holomap_datum.station_map)
|
||||
var/image/I = watcher_maps["\ref[user]"]
|
||||
I.loc = user.hud_used.holomap_obj
|
||||
I.alpha = 0
|
||||
animate(watcher_maps["\ref[user]"], alpha = 255, time = 5, easing = LINEAR_EASING)
|
||||
watching_mobs |= user
|
||||
user.client.images |= watcher_maps["\ref[user]"]
|
||||
user.callOnFace["\ref[src]"] = "checkPosition"
|
||||
|
||||
/obj/structure/cult/bloodstone/proc/checkPosition()
|
||||
for(var/mob/M in watching_mobs)
|
||||
if(get_dist(src,M) > 1)
|
||||
stopWatching(M)
|
||||
|
||||
/obj/structure/cult/bloodstone/proc/stopWatching(var/mob/user)
|
||||
if(!user)
|
||||
for(var/mob/M in watching_mobs)
|
||||
if(M.client)
|
||||
spawn(5)//we give it time to fade out
|
||||
M.client.images -= watcher_maps["\ref[M]"]
|
||||
M.callOnFace -= "\ref[src]"
|
||||
animate(watcher_maps["\ref[M]"], alpha = 0, time = 5, easing = LINEAR_EASING)
|
||||
|
||||
watching_mobs = list()
|
||||
else
|
||||
if(user.client)
|
||||
spawn(5)//we give it time to fade out
|
||||
if(!(user in watching_mobs))
|
||||
user.client.images -= watcher_maps["\ref[user]"]
|
||||
watcher_maps -= "\ref[user]"
|
||||
user.callOnFace -= "\ref[src]"
|
||||
animate(watcher_maps["\ref[user]"], alpha = 0, time = 5, easing = LINEAR_EASING)
|
||||
|
||||
watching_mobs -= user
|
||||
|
||||
/datum/station_holomap/cult/initialize_holomap(var/turf/T, var/isAI=null, var/mob/user=null)
|
||||
station_map = image(extraMiniMaps[HOLOMAP_EXTRA_CULTMAP])
|
||||
cursor = image('icons/holomap_markers.dmi', "bloodstone-here")
|
||||
if(map.holomap_offset_x.len >= T.z)
|
||||
cursor.pixel_x = (T.x-9+map.holomap_offset_x[T.z])*PIXEL_MULTIPLIER
|
||||
cursor.pixel_y = (T.y-9+map.holomap_offset_y[T.z])*PIXEL_MULTIPLIER
|
||||
else
|
||||
cursor.pixel_x = (T.x-9)*PIXEL_MULTIPLIER
|
||||
cursor.pixel_y = (T.y-9)*PIXEL_MULTIPLIER
|
||||
station_map.overlays |= cursor
|
||||
|
||||
/obj/structure/cult/bloodstone/update_icon()
|
||||
icon_state = "bloodstone-0"
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
var/datum/objective/bloodcult_bloodbath/O = locate() in cult.objective_holder.objectives
|
||||
if (O)
|
||||
icon_state = "bloodstone-[max(0,min(9,round(cult.bloody_floors.len*100/O.target_bloodspill/10)))]"
|
||||
overlays.len = 0
|
||||
var/image/I_base = image('icons/obj/cult_64x64.dmi',"bloodstone-base")
|
||||
I_base.appearance_flags |= RESET_COLOR//we don't want the stone to pulse
|
||||
overlays += I_base
|
||||
if (health < maxHealth/3)
|
||||
overlays.Add("bloodstone_damage2")
|
||||
else if (health < 2*maxHealth/3)
|
||||
overlays.Add("bloodstone_damage1")
|
||||
|
||||
/obj/structure/cult/bloodstone/proc/set_animate()
|
||||
animate(src, color = list(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0), time = 10, loop = -1)
|
||||
animate(color = list(1.125,0.06,0,0,0,1.125,0.06,0,0.06,0,1.125,0,0,0,0,1,0,0,0,0), time = 2)
|
||||
animate(color = list(1.25,0.12,0,0,0,1.25,0.12,0,0.12,0,1.25,0,0,0,0,1,0,0,0,0), time = 2)
|
||||
animate(color = list(1.375,0.19,0,0,0,1.375,0.19,0,0.19,0,1.375,0,0,0,0,1,0,0,0,0), time = 1.5)
|
||||
animate(color = list(1.5,0.27,0,0,0,1.5,0.27,0,0.27,0,1.5,0,0,0,0,1,0,0,0,0), time = 1.5)
|
||||
animate(color = list(1.625,0.35,0.06,0,0.06,1.625,0.35,0,0.35,0.06,1.625,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(1.75,0.45,0.12,0,0.12,1.75,0.45,0,0.45,0.12,1.75,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(1.875,0.56,0.19,0,0.19,1.875,0.56,0,0.56,0.19,1.875,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(2,0.67,0.27,0,0.27,2,0.67,0,0.67,0.27,2,0,0,0,0,1,0,0,0,0), time = 5)
|
||||
animate(color = list(1.875,0.56,0.19,0,0.19,1.875,0.56,0,0.56,0.19,1.875,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(1.75,0.45,0.12,0,0.12,1.75,0.45,0,0.45,0.12,1.75,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(1.625,0.35,0.06,0,0.06,1.625,0.35,0,0.35,0.06,1.625,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(1.5,0.27,0,0,0,1.5,0.27,0,0.27,0,1.5,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(1.375,0.19,0,0,0,1.375,0.19,0,0.19,0,1.375,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(1.25,0.12,0,0,0,1.25,0.12,0,0.12,0,1.25,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
animate(color = list(1.125,0.06,0,0,0,1.125,0.06,0,0.06,0,1.125,0,0,0,0,1,0,0,0,0), time = 1)
|
||||
update_icon()
|
||||
|
||||
/obj/structure/cult/bloodstone/conceal()
|
||||
return
|
||||
|
||||
/obj/structure/cult/bloodstone/takeDamage(var/damage)
|
||||
var/backup = (health > 666) + (health > 333)
|
||||
health -= damage
|
||||
if (health <= 0)
|
||||
if (sound_destroyed)
|
||||
playsound(get_turf(src), sound_destroyed, 100, 1)
|
||||
qdel(src)
|
||||
else
|
||||
if (backup > (health > 666) + (health > 333))
|
||||
summon_backup()
|
||||
update_icon()
|
||||
|
||||
/obj/structure/cult/bloodstone/proc/summon_backup()
|
||||
var/list/possible_floors = list()
|
||||
for (var/turf/simulated/floor/F in orange(1,src))
|
||||
possible_floors.Add(F)
|
||||
for (var/i = 1 to 2)
|
||||
var/turf/T = pick(possible_floors)
|
||||
if (T)
|
||||
possible_floors.Remove(T)
|
||||
new /obj/effect/cult_ritual/backup_spawn(T)
|
||||
|
||||
/obj/structure/cult/bloodstone/dance_start()
|
||||
while(src && loc && anchor)
|
||||
for (var/mob/M in contributors)
|
||||
if (!iscultist(M) || get_dist(src,M) > 1 || (M.stat != CONSCIOUS))
|
||||
if (M.client)
|
||||
M.client.images -= progbar
|
||||
contributors.Remove(M)
|
||||
continue
|
||||
if (contributors.len > 0)
|
||||
timeleft -= 1 + round(contributors.len/3)//Additional dancers will complete the ritual faster
|
||||
if (timeleft <= 0)
|
||||
break
|
||||
update_progbar()
|
||||
dance_step()
|
||||
sleep(3)
|
||||
dance_step()
|
||||
sleep(3)
|
||||
dance_step()
|
||||
sleep(6)
|
||||
else
|
||||
timeleft = min(timeleft+1,60)
|
||||
sleep(10)
|
||||
for (var/mob/M in contributors)
|
||||
if (M.client)
|
||||
M.client.images -= progbar
|
||||
contributors.Remove(M)
|
||||
anchor = FALSE
|
||||
for (var/obj/structure/teleportwarp/TW in src.loc)
|
||||
qdel(TW)
|
||||
new /obj/machinery/singularity/narsie/large(src.loc)
|
||||
stat_collection.cult_narsie_summoned = TRUE
|
||||
return 1
|
||||
|
||||
/obj/structure/cult/bloodstone/ex_act(var/severity)
|
||||
switch(severity)
|
||||
if (1)
|
||||
takeDamage(250)
|
||||
if (2)
|
||||
takeDamage(50)
|
||||
if (3)
|
||||
takeDamage(10)
|
||||
|
||||
/obj/structure/cult/proc/safe_space()
|
||||
for(var/turf/T in range(5,src))
|
||||
var/dist = cheap_pythag(T.x - src.x, T.y - src.y)
|
||||
if (dist <= 2.5)
|
||||
T.ChangeTurf(/turf/simulated/floor/engine/cult)
|
||||
T.turf_animation('icons/effects/effects.dmi',"cultfloor", 0, 0, MOB_LAYER-1, anim_plane = TURF_PLANE)
|
||||
for (var/obj/structure/S in T)
|
||||
if (!istype(S,/obj/structure/cult))
|
||||
qdel(S)
|
||||
for (var/obj/machinery/M in T)
|
||||
qdel(M)
|
||||
else if (dist <= 4.5)
|
||||
if (istype(T,/turf/space))
|
||||
T.ChangeTurf(/turf/simulated/floor/engine/cult)
|
||||
T.turf_animation('icons/effects/effects.dmi',"cultfloor", 0, 0, MOB_LAYER-1, anim_plane = TURF_PLANE)
|
||||
else
|
||||
T.cultify()
|
||||
else if (dist <= 5.5)
|
||||
if (istype(T,/turf/space))
|
||||
T.ChangeTurf(/turf/simulated/wall/cult)
|
||||
T.turf_animation('icons/effects/effects.dmi',"cultwall", 0, 0, MOB_LAYER-1, anim_plane = TURF_PLANE)
|
||||
else
|
||||
T.cultify()
|
||||
|
||||
//inspired from LoZ:Oracle of Seasons
|
||||
/obj/structure/cult/proc/dance_start()
|
||||
while(timeleft > 0)
|
||||
for (var/mob/M in contributors)
|
||||
if (!iscultist(M) || get_dist(src,M) > 1 || (M.stat != CONSCIOUS))
|
||||
if (M.client)
|
||||
M.client.images -= progbar
|
||||
contributors.Remove(M)
|
||||
continue
|
||||
if (contributors.len <= 0)
|
||||
return 0
|
||||
timeleft -= 1 + round(contributors.len/2)//Additional dancers will complete the ritual faster
|
||||
update_progbar()
|
||||
dance_step()
|
||||
sleep(3)
|
||||
dance_step()
|
||||
sleep(3)
|
||||
dance_step()
|
||||
sleep(6)
|
||||
for (var/mob/M in contributors)
|
||||
if (M.client)
|
||||
M.client.images -= progbar
|
||||
contributors.Remove(M)
|
||||
return 1
|
||||
|
||||
/obj/structure/cult/proc/dance_step()
|
||||
var/dance_move = pick("clock","counter","spin")
|
||||
|
||||
switch(dance_move)
|
||||
if ("clock")
|
||||
for (var/mob/M in contributors)
|
||||
switch (get_dir(src,M))
|
||||
if (NORTHWEST,NORTH)
|
||||
M.forceMove(get_step(M,EAST))
|
||||
M.dir = EAST
|
||||
if (NORTHEAST,EAST)
|
||||
M.forceMove(get_step(M,SOUTH))
|
||||
M.dir = SOUTH
|
||||
if (SOUTHEAST,SOUTH)
|
||||
M.forceMove(get_step(M,WEST))
|
||||
M.dir = WEST
|
||||
if (SOUTHWEST,WEST)
|
||||
M.forceMove(get_step(M,NORTH))
|
||||
M.dir = NORTH
|
||||
if ("counter")
|
||||
for (var/mob/M in contributors)
|
||||
switch (get_dir(src,M))
|
||||
if (NORTHEAST,NORTH)
|
||||
M.forceMove(get_step(M,WEST))
|
||||
M.dir = WEST
|
||||
if (SOUTHEAST,EAST)
|
||||
M.forceMove(get_step(M,NORTH))
|
||||
M.dir = NORTH
|
||||
if (SOUTHWEST,SOUTH)
|
||||
M.forceMove(get_step(M,EAST))
|
||||
M.dir = EAST
|
||||
if (NORTHWEST,WEST)
|
||||
M.forceMove(get_step(M,SOUTH))
|
||||
M.dir = SOUTH
|
||||
if ("spin")
|
||||
for (var/mob/M in contributors)
|
||||
spawn()
|
||||
M.dir = SOUTH
|
||||
sleep(0.75)
|
||||
M.dir = EAST
|
||||
sleep(0.75)
|
||||
M.dir = NORTH
|
||||
sleep(0.75)
|
||||
M.dir = WEST
|
||||
sleep(0.75)
|
||||
M.dir = SOUTH
|
||||
|
||||
@@ -377,3 +377,24 @@
|
||||
if (landing_animation)
|
||||
flick("cult_jaunt_land",landing_animation)
|
||||
qdel(src)
|
||||
|
||||
///////////////////////////////////////BLOODSTONE DEFENSES////////////////////////////////////////////////
|
||||
|
||||
/obj/effect/cult_ritual/backup_spawn
|
||||
name = "gateway"
|
||||
desc = "Something is coming through!"
|
||||
icon = 'icons/obj/cult.dmi'
|
||||
icon_state = "runetrigger-build"
|
||||
anchored = 1
|
||||
mouse_opacity = 1
|
||||
|
||||
/obj/effect/cult_ritual/backup_spawn/New()
|
||||
..()
|
||||
spawn (30)
|
||||
var/mobtype = pick(
|
||||
1;/mob/living/simple_animal/hostile/creature/cult,
|
||||
2;/mob/living/simple_animal/hostile/faithless/cult,
|
||||
3;/mob/living/simple_animal/hostile/scarybat/cult,
|
||||
)
|
||||
new mobtype(get_turf(src))
|
||||
qdel(src)
|
||||
|
||||
@@ -464,7 +464,17 @@ var/list/arcane_tomes = list()
|
||||
return
|
||||
|
||||
/obj/item/weapon/melee/cultblade/attack(var/mob/living/target, var/mob/living/carbon/human/user)
|
||||
if(!checkcult || iscultist(user))
|
||||
if(!checkcult)
|
||||
return ..()
|
||||
if (iscultist(user))
|
||||
if (ishuman(target) && target.resting)
|
||||
var/obj/structure/cult/altar/altar = locate() in target.loc
|
||||
if (altar)
|
||||
altar.attackby(src,user)
|
||||
return
|
||||
else
|
||||
return ..()
|
||||
else
|
||||
return ..()
|
||||
else
|
||||
user.Paralyse(5)
|
||||
@@ -588,13 +598,14 @@ var/list/arcane_tomes = list()
|
||||
|
||||
|
||||
/obj/item/weapon/melee/soulblade/attack_self(var/mob/user)
|
||||
if (!iscultist(user))
|
||||
to_chat(user,"<span class='warning'>There is a crimson gem encrusted into the blade, but you're not exactly sure how you could remove it.</span>")
|
||||
return
|
||||
|
||||
var/choices = list(
|
||||
list("Give Blood", "radial_giveblood", "Deity please add details"),
|
||||
list("Remove Gem", "radial_removegem", "Deity please add details"),
|
||||
list("Give Blood", "radial_giveblood", "Transfer some of your blood to the blade to repair it and refuel its blood level, or you could just slash someone."),
|
||||
list("Remove Gem", "radial_removegem", "Remove the soul gem from the blade."),
|
||||
)
|
||||
|
||||
if (!iscultist(user))
|
||||
choices = list(
|
||||
list("Remove Gem", "radial_removegem", "Remove the soul gem from the blade."),
|
||||
)
|
||||
|
||||
var/task = show_radial_menu(user,user,choices,'icons/obj/cult_radial.dmi',"radial-cult")//spawning on loc so we aren't offset by pixel_x/pixel_y, or affected by animate()
|
||||
@@ -636,6 +647,11 @@ var/list/arcane_tomes = list()
|
||||
if(affecting && affecting.take_damage(rand(force/2, force))) //random amount of damage between half of the blade's force and the full force of the blade.
|
||||
user.UpdateDamageIcon()
|
||||
return
|
||||
if (ishuman(target) && target.resting)
|
||||
var/obj/structure/cult/altar/altar = locate() in target.loc
|
||||
if (altar)
|
||||
altar.attackby(src,user)
|
||||
return
|
||||
..()
|
||||
if (!shade && istype(target, /mob/living/carbon))
|
||||
transfer_soul("VICTIM", target, user,1)
|
||||
@@ -1123,6 +1139,7 @@ var/list/arcane_tomes = list()
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (!cult)
|
||||
cult = ticker.mode.CreateFaction(/datum/faction/bloodcult, null, 1)
|
||||
cult.OnPostSetup()
|
||||
cult.HandleRecruitedRole(newCultist)
|
||||
newCultist.OnPostSetup()
|
||||
newCultist.Greet(GREET_PAMPHLET)
|
||||
|
||||
@@ -239,7 +239,10 @@
|
||||
/spell/aoe_turf/conjure/struct,
|
||||
/spell/aoe_turf/conjure/wall,
|
||||
/spell/aoe_turf/conjure/floor,
|
||||
/spell/aoe_turf/conjure/door,
|
||||
/spell/aoe_turf/conjure/pylon,
|
||||
/spell/aoe_turf/conjure/construct/lesser/alt,
|
||||
/spell/aoe_turf/conjure/soulstone,
|
||||
/spell/aoe_turf/conjure/hex,
|
||||
)
|
||||
var/mob/living/simple_animal/construct/heal_target = null
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
/datum/rune_spell/raisestructure/midcast(var/mob/add_cultist)
|
||||
if (add_cultist in contributors)
|
||||
return
|
||||
add_cultist.say(invocation,"C")
|
||||
invoke(add_cultist, invocation)
|
||||
contributors.Add(add_cultist)
|
||||
if (add_cultist.client)
|
||||
add_cultist.client.images |= progbar
|
||||
@@ -351,6 +351,12 @@
|
||||
|
||||
/datum/rune_spell/raisestructure/proc/success()
|
||||
new spawntype(spell_holder.loc)
|
||||
if (spawntype == /obj/structure/cult/altar)
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
cult.progress(CULT_ACT_I)
|
||||
else
|
||||
message_admins("Blood Cult: An altar was raised...but we cannot find the cult faction...")//failsafe in case of admin varedit fuckery
|
||||
qdel(spell_holder)//this will cause this datum to del as well
|
||||
|
||||
//RUNE II
|
||||
@@ -710,7 +716,6 @@
|
||||
//first lets check for a victim above
|
||||
for (var/mob/living/carbon/C in T)//all carbons can be converted...but only carbons. no cult silicons.
|
||||
if (!iscultist(C))
|
||||
//TODO: MOB NEEDS A MIND, leaving as is for now, so I can convert dummies to test stuff
|
||||
targets.Add(C)
|
||||
if (targets.len > 0)
|
||||
victim = pick(targets)
|
||||
@@ -885,6 +890,14 @@
|
||||
abort(RITUALABORT_REMOVED)
|
||||
return
|
||||
|
||||
//No matter the end result, counts as progress toward the cult's goals, as long as the victim was an actual player
|
||||
if (victim.mind)
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
cult.progress(CULT_ACT_II)
|
||||
else
|
||||
message_admins("Blood Cult: A conversion ritual occured...but we cannot find the cult faction...")//failsafe in case of admin varedit fuckery
|
||||
|
||||
switch (success)
|
||||
if (1)
|
||||
conversion.layer = BELOW_OBJ_LAYER
|
||||
@@ -950,6 +963,7 @@
|
||||
cult.HandleRecruitedRole(newCultist)
|
||||
newCultist.OnPostSetup()
|
||||
newCultist.Greet(GREET_CONVERTED)
|
||||
newCultist.conversion["converted"] = activator
|
||||
|
||||
/datum/rune_spell/conversion/Removed(var/mob/M)
|
||||
if (victim==M)
|
||||
@@ -1023,7 +1037,7 @@
|
||||
|
||||
playsound(spell_holder, 'sound/effects/stun_talisman.ogg', 25, 0, -5)
|
||||
if (prob(15))//for old times' sake
|
||||
invoke(activator,"Dream sign ''Evil sealing talisman'[pick("'","`")]!",1)
|
||||
invoke(activator,"Dream sign ''Evil sealing talisman''!",1)
|
||||
else
|
||||
invoke(activator,invocation,1)
|
||||
|
||||
@@ -1783,7 +1797,7 @@ var/list/blind_victims = list()
|
||||
/datum/rune_spell/summoncultist/midcast(var/mob/add_cultist)
|
||||
if (add_cultist in contributors)
|
||||
return
|
||||
add_cultist.say(invocation,"C")
|
||||
invoke(add_cultist, invocation)
|
||||
contributors.Add(add_cultist)
|
||||
if (add_cultist.client)
|
||||
add_cultist.client.images |= progbar
|
||||
@@ -1954,7 +1968,7 @@ var/list/blind_victims = list()
|
||||
|
||||
var/datum/cultword/W = cultwords[network]
|
||||
|
||||
activator.say("[W.rune]","C")
|
||||
invoke(activator, "[W.rune]")
|
||||
var/image/I_crystals = image('icons/obj/cult.dmi',"path_pad")
|
||||
I_crystals.plane = OBJ_PLANE
|
||||
I_crystals.layer = BELOW_TABLE_LAYER
|
||||
@@ -2060,7 +2074,7 @@ var/list/bloodcult_exitportals = list()
|
||||
|
||||
var/datum/cultword/W = cultwords[network]
|
||||
|
||||
activator.say("[W.rune]","C")
|
||||
invoke(activator, "[W.rune]")
|
||||
var/image/I_crystals = image('icons/obj/cult.dmi',"path_crystals")
|
||||
I_crystals.plane = OBJ_PLANE
|
||||
I_crystals.layer = BELOW_TABLE_LAYER
|
||||
@@ -2150,7 +2164,8 @@ var/list/bloodcult_exitportals = list()
|
||||
//RUNE XIX
|
||||
/datum/rune_spell/astraljourney
|
||||
name = "Astral Journey"
|
||||
desc = "Leave your body so you can converse with the dead and observe your targets."
|
||||
desc = "Leave your body so you can go spy on your enemies."
|
||||
desc_talisman = "Leave your body so you can go spy on your enemies."
|
||||
Act_restriction = CULT_ACT_II
|
||||
invocation = "Fwe'sh mah erl nyag r'ya!"
|
||||
word1 = /datum/cultword/hell
|
||||
@@ -2243,6 +2258,7 @@ var/list/bloodcult_exitportals = list()
|
||||
/datum/rune_spell/resurrect
|
||||
name = "Resurrect"
|
||||
desc = "Create a strong body for your fallen allies to inhabit."
|
||||
desc_talisman = "Create a strong body for your fallen allies to inhabit."
|
||||
Act_restriction = CULT_ACT_III
|
||||
invocation = "Pasnar val'keriam usinar. Savrae ines amutan. Yam'toth remium il'tarat!"
|
||||
word1 = /datum/cultword/blood
|
||||
@@ -2306,7 +2322,7 @@ var/list/bloodcult_exitportals = list()
|
||||
/datum/rune_spell/resurrect/midcast(var/mob/add_cultist)
|
||||
if (add_cultist in contributors)
|
||||
return
|
||||
add_cultist.say(invocation,"C")
|
||||
invoke(add_cultist, invocation)
|
||||
contributors.Add(add_cultist)
|
||||
if (add_cultist.client)
|
||||
add_cultist.client.images |= progbar
|
||||
@@ -2393,6 +2409,7 @@ var/list/bloodcult_exitportals = list()
|
||||
cult.HandleRecruitedRole(newCultist)
|
||||
newCultist.OnPostSetup()
|
||||
newCultist.Greet(GREET_RESURRECT)
|
||||
newCultist.conversion["resurrected"] = activator
|
||||
else
|
||||
for(var/mob/living/L in contributors)
|
||||
to_chat(activator, "<span class='warning'>Something went wrong with the ritual, the soul of the ghost appears to have vanished.</span>")
|
||||
|
||||
@@ -137,7 +137,7 @@ var/list/factions_with_hud_icons = list()
|
||||
if(!successful) //If one objective fails, then you did not win.
|
||||
win = 0
|
||||
count++
|
||||
if (count < objective_holder.objectives.len)
|
||||
if (count <= objective_holder.objectives.len)
|
||||
score_results += "<br>"
|
||||
if (count>1)
|
||||
if (win)
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
light_color = LIGHT_COLOR_RED
|
||||
var/last_check = 0
|
||||
|
||||
/*
|
||||
/obj/structure/cult_legacy/pylon/New()
|
||||
..()
|
||||
processing_objects.Add(src)
|
||||
@@ -31,7 +32,6 @@
|
||||
processing_objects.Remove(src)
|
||||
..()
|
||||
|
||||
|
||||
/obj/structure/cult_legacy/pylon/process()
|
||||
if(!isbroken && world.time > last_check + 3 SECONDS)
|
||||
last_check = world.time
|
||||
@@ -41,7 +41,7 @@
|
||||
src.visible_message("<span class='sinister'>\the [src] mends some of \the <EM>[C]'s</EM> wounds.</span>")
|
||||
make_tracker_effects(get_turf(src), C)
|
||||
C.health = min(C.maxHealth, C.health + 3) //Not quite as good as artificers
|
||||
|
||||
*/
|
||||
|
||||
/obj/structure/cult_legacy/pylon/attack_hand(mob/M as mob)
|
||||
attackpylon(M, 5)
|
||||
|
||||
@@ -52,14 +52,12 @@ var/global/list/narsie_list = list()
|
||||
world << sound('sound/effects/wind/wind_5_1.ogg')
|
||||
if(narnar)
|
||||
narsie_spawn_animation()
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
cult.progress(CULT_EPILOGUE)
|
||||
if(!narsie_cometh)//so we don't initiate Hell more than one time.
|
||||
/* Checks if the gamemode was cult
|
||||
if(istype(ticker.mode, /datum/game_mode/cult))
|
||||
var/datum/game_mode/cult/mode_ticker = ticker.mode
|
||||
if (mode_ticker.objectives[mode_ticker.current_objective] == "eldergod")
|
||||
mode_ticker.third_phase()*/
|
||||
|
||||
if (emergency_shuttle)
|
||||
if (emergency_shuttle && !cult)//in case of Cult 3.0, the round will end after about 5 minutes
|
||||
emergency_shuttle.incall()
|
||||
emergency_shuttle.can_recall = 0
|
||||
if(emergency_shuttle.endtime > world.timeofday + 1800 && emergency_shuttle.location != 1 && !emergency_shuttle.departed)
|
||||
|
||||
@@ -337,6 +337,7 @@
|
||||
cult.HandleRecruitedRole(newCultist)
|
||||
newCultist.OnPostSetup()
|
||||
newCultist.Greet(GREET_SOULSTONE)
|
||||
newCultist.conversion["soulstone"] = user
|
||||
|
||||
//Pretty particles
|
||||
var/turf/T1 = get_turf(target)
|
||||
@@ -405,6 +406,7 @@
|
||||
cult.HandleRecruitedRole(newCultist)
|
||||
newCultist.OnPostSetup()
|
||||
newCultist.Greet(GREET_SOULSTONE)
|
||||
newCultist.conversion["soulstone"] = U
|
||||
if("CONSTRUCT")
|
||||
var/obj/structure/constructshell/T = target
|
||||
var/obj/item/device/soulstone/C = src
|
||||
|
||||
192
code/datums/gamemode/objectives/bloodcult.dm
Normal file
@@ -0,0 +1,192 @@
|
||||
|
||||
/datum/objective/bloodcult_reunion
|
||||
explanation_text = "The Reunion: Meet up with your fellow cultists, and erect an altar."
|
||||
name = "Blood Cult: Prologue"
|
||||
var/altar_built = FALSE
|
||||
|
||||
/datum/objective/bloodcult_reunion/PostAppend()
|
||||
message_admins("Blood Cult: A cult dedicated to Nar-Sie has formed aboard the station.")
|
||||
return TRUE
|
||||
|
||||
/datum/objective/bloodcult_reunion/IsFulfilled()
|
||||
if (..())
|
||||
return TRUE
|
||||
return altar_built
|
||||
|
||||
//////////////////////
|
||||
|
||||
/datum/objective/bloodcult_followers
|
||||
explanation_text = "The Followers: Perform the conversion ritual on X crew members."
|
||||
name = "Blood Cult: ACT I"
|
||||
var/convert_target = 4
|
||||
var/conversions = 0
|
||||
|
||||
/datum/objective/bloodcult_followers/PostAppend()
|
||||
explanation_text = "The Followers: Perform the conversion ritual on [convert_target] crew members."
|
||||
message_admins("Blood Cult: ACT I has begun.")
|
||||
return TRUE
|
||||
|
||||
/datum/objective/bloodcult_followers/IsFulfilled()
|
||||
if (..())
|
||||
return TRUE
|
||||
return (conversions >= convert_target)
|
||||
|
||||
//////////////////////
|
||||
|
||||
/datum/objective/bloodcult_sacrifice
|
||||
explanation_text = "The Sacrifice: Nar-Sie requires the flesh of X to breach reality. Sacrifice them at an altar using a cult blade."
|
||||
name = "Blood Cult: ACT II"
|
||||
var/mob/living/sacrifice_target = null
|
||||
var/target_sacrificed = FALSE
|
||||
var/list/failed_targets = list()
|
||||
|
||||
/datum/objective/bloodcult_sacrifice/PostAppend()
|
||||
sacrifice_target = find_target()
|
||||
if (sacrifice_target)
|
||||
var/target_role = ""
|
||||
if (sacrifice_target.mind)
|
||||
target_role = (sacrifice_target.mind.assigned_role=="MODE") ? "" : ", the ([sacrifice_target.mind.assigned_role]),"
|
||||
if (iscultist(sacrifice_target))
|
||||
target_role = ", the cultist,"
|
||||
explanation_text = "The Sacrifice: Nar-Sie requires the flesh of [sacrifice_target.real_name][target_role] to breach reality. Sacrifice them at an altar using a cult blade."
|
||||
message_admins("Blood Cult: ACT II has begun, the sacrifice target is [sacrifice_target.real_name][target_role].")
|
||||
var/datum/faction/bloodcult/cult = faction
|
||||
cult.target_change = TRUE
|
||||
return TRUE
|
||||
else
|
||||
sleep(60 SECONDS)//kind of a failsafe should the entire server cooperate to cause this to occur, but that shouldn't logically ever happen anyway.
|
||||
return PostAppend()
|
||||
|
||||
/datum/objective/bloodcult_sacrifice/proc/replace_target()
|
||||
find_target()
|
||||
if (sacrifice_target)
|
||||
var/target_role = ""
|
||||
if (sacrifice_target.mind)
|
||||
target_role = (sacrifice_target.mind.assigned_role=="MODE") ? "" : ", the ([sacrifice_target.mind.assigned_role]),"
|
||||
if (iscultist(sacrifice_target))
|
||||
target_role = ", the cultist,"
|
||||
explanation_text = "The Sacrifice: Nar-Sie requires the flesh of [sacrifice_target.real_name][target_role] to breach reality. Sacrifice them at an altar using a cult blade."
|
||||
message_admins("Blood Cult: The cult didn't sacrifice their target in time, a new target has been assigned, the new sacrifice target is [sacrifice_target.real_name][target_role].")
|
||||
var/datum/faction/bloodcult/cult = faction
|
||||
cult.target_change = TRUE
|
||||
return TRUE
|
||||
else
|
||||
sleep(60 SECONDS)//kind of a failsafe should the entire server cooperate to cause this to occur, but that shouldn't logically ever happen anyway.
|
||||
return replace_target()
|
||||
|
||||
/datum/objective/bloodcult_sacrifice/proc/find_target()
|
||||
var/list/possible_targets = list()
|
||||
for(var/mob/living/carbon/human/player in player_list)
|
||||
if(player.z != map.zMainStation)//We only look for people currently aboard the station
|
||||
continue
|
||||
//They may be dead, but we only need their flesh
|
||||
possible_targets += player
|
||||
|
||||
if(!possible_targets.len)
|
||||
message_admins("Blood Cult: Could not find a suitable sacrifice target. Trying again in a minute.")
|
||||
return null
|
||||
|
||||
return pick(possible_targets - failed_targets)
|
||||
|
||||
/datum/objective/bloodcult_sacrifice/IsFulfilled()
|
||||
if (..())
|
||||
return TRUE
|
||||
return target_sacrificed
|
||||
|
||||
//////////////////////
|
||||
|
||||
/datum/objective/bloodcult_bloodbath
|
||||
explanation_text = "The Blood Bath: The blood stones have risen. Spill blood accross the station's floors to fill them up before the crew destroys them all."
|
||||
name = "Blood Cult: ACT III"
|
||||
var/percent_bloodspill = 4//percent of all the station's simulated floors, you should keep it under 5.
|
||||
var/target_bloodspill = 0//actual amount of bloodied floors to reach
|
||||
var/max_bloodspill = 0//max amount of bloodied floors simultanously reached
|
||||
|
||||
/datum/objective/bloodcult_bloodbath/PostAppend()
|
||||
var/floor_count = 0
|
||||
for(var/i = 1 to ((2 * world.view + 1)*WORLD_ICON_SIZE))
|
||||
for(var/r = 1 to ((2 * world.view + 1)*WORLD_ICON_SIZE))
|
||||
var/turf/tile = locate(i, r, map.zMainStation)
|
||||
if(tile && istype(tile, /turf/simulated/floor) && !isspace(tile.loc) && !istype(tile.loc, /area/asteroid) && !istype(tile.loc, /area/mine) && !istype(tile.loc, /area/vault) && !istype(tile.loc, /area/prison) && !istype(tile.loc, /area/vox_trading_post))
|
||||
floor_count++
|
||||
target_bloodspill = round(floor_count * percent_bloodspill / 100)
|
||||
target_bloodspill += rand(-20,20)
|
||||
explanation_text = "The Blood Bath: The blood stones have risen. Spill blood accross [target_bloodspill] of the station's floors to fill them up before the crew destroys them all."
|
||||
message_admins("Blood Cult: ACT III has begun. The cult has to spill blood over [target_bloodspill] floor tiles, out of the station's [floor_count] floor tiles.")
|
||||
return TRUE
|
||||
|
||||
/datum/objective/bloodcult_bloodbath/IsFulfilled()
|
||||
if (..())
|
||||
return TRUE
|
||||
return (max_bloodspill >= target_bloodspill)
|
||||
|
||||
//////////////////////
|
||||
|
||||
/datum/objective/bloodcult_tearinreality
|
||||
explanation_text = "The Tear in Reality: Chant around the anchor blood stone to stretch the breach enough so Nar-Sie may come through."
|
||||
name = "Blood Cult: ACT IV"
|
||||
var/obj/structure/cult/bloodstone/anchor = null
|
||||
var/NARSIE_HAS_RISEN = FALSE
|
||||
|
||||
/datum/objective/bloodcult_tearinreality/PostAppend()
|
||||
for (var/obj/structure/cult/bloodstone/B in bloodstone_list)//One of healthiest blood stones will become the anchor.
|
||||
if (!anchor || B.health > anchor.health)
|
||||
anchor = B
|
||||
else if (anchor && B.health == anchor.health)
|
||||
anchor = pick(list(B,anchor))
|
||||
anchor.health = 1200
|
||||
anchor.maxHealth = 1200
|
||||
anchor.set_animate()
|
||||
var/turf/T = get_turf(anchor)
|
||||
var/obj/structure/teleportwarp/TW = new (T)
|
||||
TW.icon_state = "rune_seer"
|
||||
TW.pixel_y = -60
|
||||
anchor.anchor = TRUE
|
||||
anchor.timeleft = 60
|
||||
anchor.timetotal = anchor.timeleft
|
||||
|
||||
//Adding the anchor to the bloodstones holomap, so cultists can quickly go there to perform the final summoning
|
||||
var/icon/updated_map = icon(extraMiniMaps[HOLOMAP_EXTRA_CULTMAP])
|
||||
var/datum/holomap_marker/holomarker = new()
|
||||
holomarker.id = HOLOMAP_MARKER_BLOODSTONE_ANCHOR
|
||||
holomarker.filter = HOLOMAP_FILTER_CULT
|
||||
holomarker.x = anchor.x
|
||||
holomarker.y = anchor.y
|
||||
holomarker.z = anchor.z
|
||||
holomap_markers[HOLOMAP_MARKER_BLOODSTONE+"_\ref[anchor]"] = holomarker
|
||||
if(holomarker.z == map.zMainStation && holomarker.filter & HOLOMAP_FILTER_CULT)
|
||||
if(map.holomap_offset_x.len >= map.zMainStation)
|
||||
updated_map.Blend(icon(holomarker.icon,holomarker.id), ICON_OVERLAY, holomarker.x-8+map.holomap_offset_x[map.zMainStation] , holomarker.y-8+map.holomap_offset_y[map.zMainStation])
|
||||
else
|
||||
updated_map.Blend(icon(holomarker.icon,holomarker.id), ICON_OVERLAY, holomarker.x-8, holomarker.y-8)
|
||||
extraMiniMaps[HOLOMAP_EXTRA_CULTMAP] = updated_map
|
||||
for(var/obj/structure/cult/bloodstone/B in bloodstone_list)
|
||||
B.holomap_datum.initialize_holomap(B.loc)
|
||||
|
||||
spawn()
|
||||
anchor.dance_start()
|
||||
|
||||
message_admins("Blood Cult: ACT IV has begun.")
|
||||
return TRUE
|
||||
|
||||
/datum/objective/bloodcult_tearinreality/IsFulfilled()
|
||||
if (..())
|
||||
return TRUE
|
||||
return NARSIE_HAS_RISEN
|
||||
|
||||
//////////////////////
|
||||
|
||||
/datum/objective/bloodcult_feast
|
||||
explanation_text = "The Feast: This is your victory, you may take part in the celebrations of a work well done."
|
||||
name = "Blood Cult: Epilogue"
|
||||
var/timer = 300 SECONDS
|
||||
|
||||
/datum/objective/bloodcult_feast/PostAppend()
|
||||
message_admins("Blood Cult: The cult has won.")
|
||||
spawn (timer)
|
||||
var/datum/faction/bloodcult/cult = faction
|
||||
cult.cult_win = TRUE
|
||||
return TRUE
|
||||
|
||||
/datum/objective/bloodcult_feast/IsFulfilled()
|
||||
return TRUE//might expand on that later after release, if I ever get to implement my rework of post-NarSie.
|
||||
@@ -6,6 +6,7 @@
|
||||
greets = list(GREET_DEFAULT,GREET_CUSTOM,GREET_ROUNDSTART,GREET_ADMINTOGGLE)
|
||||
var/list/tattoos = list()
|
||||
var/holywarning_cooldown = 0
|
||||
var/list/conversion = list()
|
||||
|
||||
/datum/role/cultist/New(var/datum/mind/M, var/datum/faction/fac=null, var/new_id)
|
||||
..()
|
||||
@@ -31,6 +32,14 @@
|
||||
blood_communion.Remove(src)
|
||||
..()
|
||||
|
||||
/datum/role/cultist/PostMindTransfer(var/mob/living/new_character)
|
||||
. = ..()
|
||||
update_cult_hud()
|
||||
antag.current.add_language(LANGUAGE_CULT)
|
||||
if(ishuman(antag.current) && !(locate(/spell/cult) in antag.current.spell_list))
|
||||
antag.current.add_spell(new /spell/cult/trace_rune, "cult_spell_ready", /obj/abstract/screen/movable/spell_master/bloodcult)
|
||||
antag.current.add_spell(new /spell/cult/erase_rune, "cult_spell_ready", /obj/abstract/screen/movable/spell_master/bloodcult)
|
||||
|
||||
/datum/role/cultist/process()
|
||||
if (holywarning_cooldown > 0)
|
||||
holywarning_cooldown--
|
||||
@@ -62,6 +71,8 @@
|
||||
to_chat(antag.current, "<span class='sinister'>Wow, that pamphlet was very convincing, in fact you're like totally a cultist now, hail Nar-Sie!</span>")//remember, debug item
|
||||
if (GREET_SOULSTONE)
|
||||
to_chat(antag.current, "<span class='sinister'>Dark energies corrupt your soul, as the blood stone grants you a window to peer through the veil, you have become a cultist!</span>")
|
||||
if (GREET_SOULBLADE)
|
||||
to_chat(antag.current, "<span class='sinister'>Your soul has made its way into the blade's soul gem! The dark energies of the altar forge your mind into an instrument of the cult of Nar-Sie, be of assistance to your fellow cultists.</span>")
|
||||
if (GREET_RESURRECT)
|
||||
to_chat(antag.current, "<span class='sinister'>You were resurrected from beyond the veil by the followers of Nar-Sie, and are already familiar with their rituals! You have now joined their ranks as a cultist.</span>")
|
||||
else
|
||||
@@ -73,6 +84,13 @@
|
||||
to_chat(antag.current, "<span class='info'><a HREF='?src=\ref[antag.current];getwiki=[wikiroute]'>(Wiki Guide)</a></span>")
|
||||
to_chat(antag.current, "<span class='sinister'>You find yourself to be well-versed in the runic alphabet of the cult.</span>")
|
||||
|
||||
spawn(1)
|
||||
if (faction)
|
||||
var/datum/objective_holder/OH = faction.objective_holder
|
||||
var/datum/objective/O = null
|
||||
for (var/datum/objective/OB in OH.objectives)
|
||||
O = OB//Gives us the most recent objective
|
||||
to_chat(antag.current,"<span class='danger'>[O.name]</span><b>: [O.explanation_text]</b>")
|
||||
/datum/role/cultist/update_antag_hud()
|
||||
update_cult_hud()
|
||||
|
||||
|
||||
@@ -35,11 +35,14 @@
|
||||
D.holder = null
|
||||
|
||||
if(counts_as_blood)
|
||||
var/datum/faction/cult/narsie/blood_cult = find_active_faction_by_type(/datum/faction/cult/narsie)
|
||||
if(blood_cult)
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
cult.remove_bloody_floor(get_turf(src))
|
||||
var/datum/faction/cult/narsie/legacy_cult = find_active_faction_by_type(/datum/faction/cult/narsie)
|
||||
if(legacy_cult)
|
||||
var/turf/T = get_turf(src)
|
||||
if(T && (T.z == map.zMainStation))
|
||||
blood_cult.bloody_floors -= T
|
||||
legacy_cult.bloody_floors -= T
|
||||
..()
|
||||
|
||||
/obj/effect/decal/cleanable/proc/dry()
|
||||
@@ -92,15 +95,18 @@
|
||||
update_icon()
|
||||
|
||||
if(counts_as_blood)
|
||||
var/datum/faction/cult/narsie/blood_cult = find_active_faction_by_type(/datum/faction/cult/narsie)
|
||||
if(blood_cult)
|
||||
var/datum/faction/bloodcult/cult = find_active_faction_by_type(/datum/faction/bloodcult)
|
||||
if (cult)
|
||||
cult.add_bloody_floor(get_turf(src))
|
||||
var/datum/faction/cult/narsie/legacy_cult = find_active_faction_by_type(/datum/faction/cult/narsie)
|
||||
if(legacy_cult)
|
||||
var/turf/T = get_turf(src)
|
||||
if(T && (T.z == map.zMainStation))//F I V E T I L E S
|
||||
if(!(locate("\ref[T]") in blood_cult.bloody_floors))
|
||||
blood_cult.bloody_floors += T
|
||||
blood_cult.bloody_floors[T] = T
|
||||
if (blood_cult.has_enough_bloody_floors())
|
||||
blood_cult.getNewObjective()
|
||||
if(!(locate("\ref[T]") in legacy_cult.bloody_floors))
|
||||
legacy_cult.bloody_floors += T
|
||||
legacy_cult.bloody_floors[T] = T
|
||||
if (legacy_cult.has_enough_bloody_floors())
|
||||
legacy_cult.getNewObjective()
|
||||
if(src.loc && isturf(src.loc))
|
||||
for(var/obj/effect/decal/cleanable/C in src.loc)
|
||||
if(C.type in absorbs_types && C != src)
|
||||
|
||||
@@ -551,8 +551,8 @@
|
||||
blade.update_icon()
|
||||
new_shade.status_flags |= GODMODE
|
||||
new_shade.canmove = 0
|
||||
new_shade.name = "Shade of [M.real_name]"
|
||||
new_shade.real_name = "Shade of [M.real_name]"
|
||||
new_shade.name = "[M.real_name] the Shade"
|
||||
new_shade.real_name = "[M.real_name]"
|
||||
new_shade.give_blade_powers()
|
||||
if("blob")
|
||||
var/obj/effect/blob/core/core = new(loc = get_turf(M), new_overmind = M.client)
|
||||
|
||||
@@ -70,8 +70,8 @@ var/list/has_been_shade = list()
|
||||
has_been_shade.Add(M.mind)
|
||||
var/mob/dead/observer/G = M.ghostize(1)
|
||||
var/mob/living/simple_animal/shade/happiest/S = G.transmogrify(/mob/living/simple_animal/shade/happiest, TRUE)
|
||||
S.name = "Shade of [M.real_name]"
|
||||
S.real_name = "Shade of [M.real_name]"
|
||||
S.name = "[M.real_name] the Shade"
|
||||
S.real_name = "[M.real_name]"
|
||||
S.cancel_camera()
|
||||
flick("happiest_flash", src)
|
||||
to_chat(H, "<span class='sinister'>Oh joy! [M.real_name]'s decided to join the party!</span>")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#define HOLOMAP_OBSTACLE "#FFFFFFDD"
|
||||
#define HOLOMAP_PATH "#66666699"
|
||||
#define HOLOMAP_PATH "# "
|
||||
|
||||
/datum/holomap_marker
|
||||
var/x
|
||||
|
||||
@@ -811,6 +811,9 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
if(C && C.members.len > config.cult_ghostwriter_req_cultists)
|
||||
ghosts_can_write = 1
|
||||
|
||||
if (veil_thickness >= CULT_ACT_III)
|
||||
ghosts_can_write = 1
|
||||
|
||||
if(!ghosts_can_write)
|
||||
to_chat(src, "<span class='warning'>The veil is not thin enough for you to do that.</span>")
|
||||
return
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
shade.name = "[real_name] the Shade"
|
||||
shade.real_name = "[real_name]"
|
||||
mind.transfer_to(shade)
|
||||
update_faction_icons()
|
||||
to_chat(shade, "<span class='sinister'>Dark energies rip your dying body appart, anchoring your soul inside the form of a Shade. You retain your memories, and devotion to the cult.</span>")
|
||||
|
||||
if(species)
|
||||
|
||||
@@ -304,6 +304,7 @@ var/global/list/whitelisted_species = list("Human")
|
||||
deform = 'icons/mob/human_races/r_def_manifested.dmi'
|
||||
known_languages = list(LANGUAGE_HUMAN)
|
||||
primitive = /mob/living/carbon/monkey
|
||||
darksight = 3
|
||||
has_organ = list(
|
||||
"heart" = /datum/organ/internal/heart,
|
||||
"lungs" = /datum/organ/internal/lungs,
|
||||
|
||||
@@ -138,7 +138,8 @@
|
||||
mind.transfer_to(C)
|
||||
to_chat(C, "<span class='sinister'>The Geometer of Blood is overjoyed to be reunited with its followers, and accepts your body in sacrifice. As reward, you have been gifted with the shell of an Harvester.<br>Your tendrils can use and draw runes without need for a tome, your eyes can see beings through walls, and your mind can open any door. Use these assets to serve Nar-Sie and bring him any remaining living human in the world.<br>You can teleport yourself back to Nar-Sie along with any being under yourself at any time using your \"Harvest\" spell.</span>")
|
||||
dust()
|
||||
else if(client)
|
||||
else if(!iscultist(src))
|
||||
if(client)
|
||||
var/datum/faction/cult/narsie/cult_fact = find_active_faction_by_type(/datum/faction/cult/narsie)
|
||||
if (cult_fact)
|
||||
cult_fact.harvested++
|
||||
@@ -159,8 +160,7 @@
|
||||
G.overlays += H.obj_overlays[HANDCUFF_LAYER]
|
||||
G.invisibility = 0
|
||||
to_chat(G, "<span class='sinister'>You feel relieved as what's left of your soul finally escapes its prison of flesh.</span>")
|
||||
|
||||
else
|
||||
spawn(1)
|
||||
dust()
|
||||
|
||||
/mob/living/apply_beam_damage(var/obj/effect/beam/B)
|
||||
|
||||
@@ -105,12 +105,10 @@
|
||||
var/turf/T = get_turf(src)
|
||||
if (T)
|
||||
var/mob/living/simple_animal/shade/shade = new (T)
|
||||
var/true_name = "a nobody"
|
||||
if (real_name && real_name != "unknown")
|
||||
true_name = real_name
|
||||
shade.name = "Shade of [true_name]"
|
||||
shade.real_name = "Shade of [true_name]"
|
||||
shade.name = "[real_name] the Shade"
|
||||
shade.real_name = "[real_name]"
|
||||
mind.transfer_to(shade)
|
||||
update_faction_icons()
|
||||
to_chat(shade, "<span class='sinister'>Dark energies rip your dying body appart, anchoring your soul inside the form of a Shade. You retain your memories, and devotion to the cult.</span>")
|
||||
else
|
||||
ghostize()
|
||||
|
||||
@@ -31,6 +31,10 @@
|
||||
meat_type = /obj/item/weapon/ectoplasm
|
||||
mob_property_flags = MOB_SUPERNATURAL
|
||||
|
||||
/mob/living/simple_animal/construct/New()
|
||||
..()
|
||||
add_language(LANGUAGE_CULT)
|
||||
|
||||
/mob/living/simple_animal/shade/Login()
|
||||
..()
|
||||
hud_used.shade_hud()
|
||||
|
||||
@@ -23,13 +23,23 @@
|
||||
summon_type = list(/obj/structure/constructshell/cult)
|
||||
hud_state = "const_shell"
|
||||
override_base = "cult"
|
||||
cast_delay = 40
|
||||
|
||||
/spell/aoe_turf/conjure/construct/lesser/alt
|
||||
summon_type = list(/obj/structure/constructshell/cult/alt)
|
||||
hud_state = "const_shell_alt"
|
||||
|
||||
/spell/aoe_turf/conjure/construct/lesser/spell_do_after(var/mob/user as mob, delay as num, var/numticks = 5)
|
||||
delay_animation = new /obj/effect/artificer_underlay(get_turf(user))
|
||||
playsound(user, 'sound/items/welder.ogg', 100, 1)
|
||||
. = ..()
|
||||
|
||||
/spell/aoe_turf/conjure/floor
|
||||
name = "Floor Construction"
|
||||
desc = "This spell constructs a cult floor"
|
||||
user_type = USER_TYPE_CULT
|
||||
|
||||
charge_max = 20
|
||||
charge_max = 50
|
||||
spell_flags = Z2NOCAST | CONSTRUCT_CHECK
|
||||
invocation = "none"
|
||||
invocation_type = SpI_NONE
|
||||
@@ -43,6 +53,18 @@
|
||||
/spell/aoe_turf/conjure/floor/choose_targets(mob/user = usr)
|
||||
return list(get_turf(user))
|
||||
|
||||
/spell/aoe_turf/conjure/floor/cast(list/targets, mob/user)//if we convert a floor instead of building one from scratch, the charge time for the next cast is lowered.
|
||||
var/turf/spawn_place = pick(targets)
|
||||
var/convert_floor = 0
|
||||
if (istype(spawn_place,/turf/simulated/floor))
|
||||
convert_floor = 1
|
||||
. = ..()
|
||||
if (!.)
|
||||
if (convert_floor)
|
||||
charge_max = 10
|
||||
else
|
||||
charge_max = 50
|
||||
|
||||
/spell/aoe_turf/conjure/floor/conjure_animation(var/atom/movable/overlay/animation, var/turf/target)
|
||||
animation.icon_state = "cultfloor"
|
||||
flick("cultfloor",animation)
|
||||
@@ -70,6 +92,18 @@
|
||||
/spell/aoe_turf/conjure/wall/choose_targets(mob/user = usr)
|
||||
return list(get_turf(user))
|
||||
|
||||
/spell/aoe_turf/conjure/wall/cast(list/targets, mob/user)//if we convert a wall instead of building one from scratch, the charge time for the next cast is lowered.
|
||||
var/turf/spawn_place = pick(targets)
|
||||
var/convert_wall = 0
|
||||
if (istype(spawn_place,/turf/simulated/wall))
|
||||
convert_wall = 1
|
||||
. = ..()
|
||||
if (!.)
|
||||
if (convert_wall)
|
||||
charge_max = 20
|
||||
else
|
||||
charge_max = 100
|
||||
|
||||
/spell/aoe_turf/conjure/wall/conjure_animation(var/atom/movable/overlay/animation, var/turf/target)
|
||||
animation.icon_state = "cultwall"
|
||||
flick("cultwall",animation)
|
||||
@@ -78,6 +112,33 @@
|
||||
qdel(animation)
|
||||
animation = null
|
||||
|
||||
/spell/aoe_turf/conjure/door
|
||||
name = "Cult Door"
|
||||
desc = "This spell constructs a cult wall"
|
||||
user_type = USER_TYPE_CULT
|
||||
|
||||
charge_max = 100
|
||||
spell_flags = Z2NOCAST | CONSTRUCT_CHECK
|
||||
invocation = "none"
|
||||
invocation_type = SpI_NONE
|
||||
range = 3
|
||||
summon_type = list(/obj/machinery/door/mineral/cult)
|
||||
|
||||
override_base = "cult"
|
||||
hud_state = "const_door"
|
||||
cast_sound = 'sound/items/welder.ogg'
|
||||
|
||||
/spell/aoe_turf/conjure/door/choose_targets(mob/user = usr)
|
||||
return list(get_turf(user))
|
||||
|
||||
/spell/aoe_turf/conjure/door/conjure_animation(var/atom/movable/overlay/animation, var/turf/target)
|
||||
animation.icon_state = ""
|
||||
flick("",animation)
|
||||
shadow(target,holder.loc,"artificer_convert")
|
||||
spawn(10)
|
||||
qdel(animation)
|
||||
animation = null
|
||||
|
||||
/spell/aoe_turf/conjure/wall/reinforced
|
||||
name = "Greater Construction"
|
||||
desc = "This spell constructs a reinforced metal wall"
|
||||
@@ -93,6 +154,9 @@
|
||||
|
||||
summon_type = list(/turf/simulated/wall/r_wall)
|
||||
|
||||
/spell/aoe_turf/conjure/wall/reinforced/spell_do_after(var/mob/user as mob, delay as num, var/numticks = 5)
|
||||
. = ..()
|
||||
|
||||
/spell/aoe_turf/conjure/soulstone
|
||||
name = "Summon Soulstone"
|
||||
desc = "This spell reaches into Nar-Sie's realm, summoning one of the legendary fragments across time and space"
|
||||
@@ -103,12 +167,18 @@
|
||||
invocation = "none"
|
||||
invocation_type = SpI_NONE
|
||||
range = 0
|
||||
cast_delay = 30
|
||||
|
||||
summon_type = list(/obj/item/device/soulstone)
|
||||
|
||||
hud_state = "const_stone"
|
||||
override_base = "cult"
|
||||
|
||||
/spell/aoe_turf/conjure/soulstone/spell_do_after(var/mob/user as mob, delay as num, var/numticks = 5)
|
||||
delay_animation = new /obj/effect/artificer_underlay(get_turf(user))
|
||||
playsound(user, 'sound/items/welder.ogg', 100, 1)
|
||||
. = ..()
|
||||
|
||||
/spell/aoe_turf/conjure/pylon
|
||||
name = "Red Pylon"
|
||||
desc = "This spell conjures a fragile crystal from Nar-Sie's realm. Makes for a convenient light source."
|
||||
@@ -119,6 +189,7 @@
|
||||
invocation = "none"
|
||||
invocation_type = SpI_NONE
|
||||
range = 0
|
||||
cast_delay = 20
|
||||
|
||||
summon_type = list(/obj/structure/cult_legacy/pylon)
|
||||
|
||||
@@ -126,6 +197,11 @@
|
||||
hud_state = "const_pylon"
|
||||
override_base = "cult"
|
||||
|
||||
/spell/aoe_turf/conjure/pylon/spell_do_after(var/mob/user as mob, delay as num, var/numticks = 5)
|
||||
delay_animation = new /obj/effect/artificer_underlay(get_turf(user))
|
||||
playsound(user, 'sound/items/welder.ogg', 100, 1)
|
||||
. = ..()
|
||||
|
||||
/spell/aoe_turf/conjure/pylon/cast(list/targets)
|
||||
..()
|
||||
var/turf/spawn_place = pick(targets)
|
||||
@@ -296,6 +372,7 @@
|
||||
invocation = "none"
|
||||
invocation_type = SpI_NONE
|
||||
range = 0
|
||||
cast_delay = 60
|
||||
summon_type = list(/mob/living/simple_animal/hostile/hex)
|
||||
|
||||
override_base = "cult"
|
||||
@@ -305,6 +382,11 @@
|
||||
/spell/aoe_turf/conjure/hex/choose_targets(mob/user = usr)
|
||||
return list(get_turf(user))
|
||||
|
||||
/spell/aoe_turf/conjure/hex/spell_do_after(var/mob/user as mob, delay as num, var/numticks = 5)
|
||||
delay_animation = new /obj/effect/artificer_underlay(get_turf(user))
|
||||
playsound(user, 'sound/items/welder.ogg', 100, 1)
|
||||
. = ..()
|
||||
|
||||
/spell/aoe_turf/conjure/hex/before_channel(var/mob/user)
|
||||
var/mob/living/simple_animal/construct/builder/perfect/artificer = user
|
||||
if (artificer.minions.len >= 3)
|
||||
@@ -326,6 +408,7 @@
|
||||
invocation = "none"
|
||||
invocation_type = SpI_NONE
|
||||
range = 0
|
||||
cast_delay = 60
|
||||
summon_type = list(/obj/structure/cult/altar)
|
||||
|
||||
override_base = "cult"
|
||||
@@ -335,6 +418,12 @@
|
||||
/spell/aoe_turf/conjure/struct/choose_targets(mob/user = usr)
|
||||
return list(get_turf(user))
|
||||
|
||||
|
||||
/spell/aoe_turf/conjure/struct/spell_do_after(var/mob/user as mob, delay as num, var/numticks = 5)
|
||||
delay_animation = new /obj/effect/artificer_underlay(get_turf(user))
|
||||
playsound(user, 'sound/items/welder.ogg', 100, 1)
|
||||
. = ..()
|
||||
|
||||
/spell/aoe_turf/conjure/struct/before_channel(var/mob/user)
|
||||
if (locate(/obj/structure/cult) in range(user,1))
|
||||
to_chat(user, "<span class='warning'>You cannot perform this ritual that close from another similar structure.</span>")
|
||||
@@ -358,3 +447,26 @@
|
||||
if("Forge")
|
||||
summon_type = list(/obj/structure/cult/forge)
|
||||
return 0
|
||||
|
||||
/obj/effect/artificer_underlay
|
||||
icon = 'icons/obj/cult.dmi'
|
||||
icon_state = "build"
|
||||
mouse_opacity = 0
|
||||
density = 0
|
||||
anchored = 1
|
||||
mouse_opacity = 0
|
||||
|
||||
/obj/effect/artificer_underlay/cultify()
|
||||
return
|
||||
|
||||
/obj/effect/artificer_underlay/ex_act()
|
||||
return
|
||||
|
||||
/obj/effect/artificer_underlay/emp_act()
|
||||
return
|
||||
|
||||
/obj/effect/artificer_underlay/blob_act()
|
||||
return
|
||||
|
||||
/obj/effect/artificer_underlay/singularity_act()
|
||||
return
|
||||
@@ -97,6 +97,7 @@ var/list/spells = typesof(/spell) //needed for the badmin verb for now
|
||||
|
||||
var/list/holiday_required = list() // The holiday this spell is restricted to ! Leave empty if none.
|
||||
var/block = 0//prevents some spells from being spamed
|
||||
var/obj/delay_animation = null
|
||||
|
||||
///////////////////////
|
||||
///SETUP AND PROCESS///
|
||||
@@ -158,8 +159,14 @@ var/list/spells = typesof(/spell) //needed for the badmin verb for now
|
||||
return
|
||||
if(cast_delay && !spell_do_after(user, cast_delay))
|
||||
block = 0
|
||||
if (delay_animation)
|
||||
qdel(delay_animation)
|
||||
delay_animation = null
|
||||
return
|
||||
block = 0
|
||||
if (delay_animation)
|
||||
qdel(delay_animation)
|
||||
delay_animation = null
|
||||
if(before_target(user))
|
||||
return
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 209 KiB |
|
Before Width: | Height: | Size: 513 KiB After Width: | Height: | Size: 513 KiB |
|
Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 9.8 KiB |
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 96 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 308 KiB After Width: | Height: | Size: 323 KiB |
|
Before Width: | Height: | Size: 8.1 KiB After Width: | Height: | Size: 11 KiB |
@@ -38,7 +38,7 @@
|
||||
"aL" = (/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aM" = (/obj/abstract/map/spawner/mobs/humanoid/wiz,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aO" = (/obj/structure/cult/tome,/obj/item/weapon/staff,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aO" = (/obj/structure/cult_legacy/tome,/obj/item/weapon/staff,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aP" = (/obj/structure/bed/chair/wood/wings{dir = 8},/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aQ" = (/obj/item/clothing/suit/space/rig/wizard,/obj/item/clothing/head/helmet/space/rig/wizard,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aR" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/briefcase,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
@@ -256,7 +256,7 @@
|
||||
"eV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"eW" = (/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/awaymission/academy)
|
||||
"eX" = (/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"eY" = (/obj/structure/cult/pylon,/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"eY" = (/obj/structure/cult_legacy/pylon,/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"eZ" = (/turf/simulated/floor{dir = 5; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fa" = (/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
"fb" = (/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
@@ -264,7 +264,7 @@
|
||||
"fd" = (/obj/structure/table,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fe" = (/obj/machinery/processor,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"ff" = (/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fg" = (/obj/structure/cult/pylon,/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fg" = (/obj/structure/cult_legacy/pylon,/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fh" = (/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fi" = (/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
"fj" = (/turf/simulated/floor{icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
@@ -505,9 +505,9 @@
|
||||
"jK" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/item/weapon/shard,/obj/item/weapon/shard/plasma,/turf/simulated/floor/plating/airless,/area/awaymission/academy/academyaft)
|
||||
"jL" = (/obj/structure/window/reinforced,/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/golden_cup,/turf/simulated/floor{icon_state = "red"},/area/awaymission/academy/academyaft)
|
||||
"jM" = (/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "red"; dir = 6},/area/awaymission/academy/academyaft)
|
||||
"jN" = (/obj/structure/cult/pylon,/turf/simulated/floor{icon_state = "yellow"; dir = 10},/area/awaymission/academy/academyaft)
|
||||
"jN" = (/obj/structure/cult_legacy/pylon,/turf/simulated/floor{icon_state = "yellow"; dir = 10},/area/awaymission/academy/academyaft)
|
||||
"jO" = (/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"jP" = (/obj/structure/cult/pylon,/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"jP" = (/obj/structure/cult_legacy/pylon,/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"jQ" = (/obj/structure/window/reinforced,/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jR" = (/obj/structure/table,/obj/structure/window/reinforced,/obj/item/device/batterer,/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jS" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/shard/plasma,/turf/space,/area)
|
||||
|
||||
694
maps/RandomZLevels/unused/backup/Academy.dmm
Normal file
@@ -0,0 +1,694 @@
|
||||
"aa" = (/turf/space,/area)
|
||||
"ab" = (/turf/simulated/wall/r_wall,/area/awaymission/academy/headmaster)
|
||||
"ac" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma,/obj/structure/window/reinforced/plasma{dir = 1},/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"ad" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma,/obj/structure/window/reinforced/plasma{dir = 1},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"ae" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma,/obj/structure/window/reinforced/plasma{dir = 1},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"af" = (/obj/structure/filingcabinet/filingcabinet,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"ag" = (/obj/structure/computerframe{anchored = 1},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"ah" = (/obj/structure/table/reinforced,/obj/item/weapon/pen/red,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"ai" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/blue,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aj" = (/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"ak" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"al" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"am" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 1; environ = 0; equipment = 3; locked = 0; req_access = ""},/obj/machinery/light{dir = 4},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"an" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma{dir = 1},/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"ao" = (/obj/structure/table/reinforced,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"ap" = (/obj/abstract/map/spawner/mobs/humanoid/wiz,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aq" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"ar" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light/small,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"as" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"at" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"au" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"av" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/coffee,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aw" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"ax" = (/obj/structure/table/reinforced,/obj/item/weapon/paper{info = "We're upgrading to the latest mainframes for our consoles, the shipment should be in before spring break is over!"; name = "Console Maintenance"},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"ay" = (/turf/simulated/wall,/area/awaymission/academy/headmaster)
|
||||
"az" = (/obj/machinery/door/mineral/wood,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aA" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aC" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aD" = (/obj/item/weapon/stool,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aE" = (/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aF" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/stack/sheet/animalhide/monkey,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aG" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aH" = (/obj/structure/bed,/obj/item/weapon/bedsheet/purple,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aI" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/tea,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aJ" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aK" = (/obj/structure/filingcabinet,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aL" = (/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aM" = (/obj/abstract/map/spawner/mobs/humanoid/wiz,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aO" = (/obj/structure/cult/tome,/obj/item/weapon/staff,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aP" = (/obj/structure/bed/chair/wood/wings{dir = 8},/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aQ" = (/obj/item/clothing/suit/space/rig/wizard,/obj/item/clothing/head/helmet/space/rig/wizard,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"aR" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/briefcase,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aS" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma,/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"aT" = (/obj/structure/table/reinforced,/obj/item/weapon/coin/plasma,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aU" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aV" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aW" = (/obj/structure/lattice,/turf/space,/area)
|
||||
"aX" = (/obj/machinery/door/airlock/gold{locked = 1},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aY" = (/obj/machinery/door/airlock/gold{locked = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"aZ" = (/turf/unsimulated/mineral/random/high_chance,/area/awaymission/academy)
|
||||
"ba" = (/obj/structure/noticeboard,/turf/simulated/wall,/area/awaymission/academy/headmaster)
|
||||
"bb" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bd" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma,/obj/structure/window/reinforced/plasma{dir = 1},/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"be" = (/obj/structure/bed/chair/office/dark,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bf" = (/obj/structure/reagent_dispensers/water_cooler,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bg" = (/obj/machinery/photocopier,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bh" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bi" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/blue,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bj" = (/obj/structure/table/woodentable,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/pen/red,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bk" = (/obj/structure/table/woodentable,/obj/item/weapon/staff,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bl" = (/obj/structure/table/woodentable,/obj/item/weapon/hand_labeler,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bm" = (/obj/structure/table/woodentable,/obj/item/weapon/pen/invisible,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bn" = (/obj/structure/bed/chair/office/dark{dir = 4},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bo" = (/obj/structure/table/woodentable,/obj/item/weapon/pen/red,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bp" = (/obj/structure/table/woodentable,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bq" = (/obj/structure/table/woodentable,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/dice/d20,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"br" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/tea,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bs" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bt" = (/obj/structure/bed/chair/office/dark{dir = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bu" = (/obj/structure/bed/chair/office/dark{dir = 1},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bv" = (/obj/structure/table/woodentable,/obj/item/weapon/folder/blue,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bw" = (/obj/machinery/light,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"bx" = (/obj/structure/filingcabinet/chestdrawer,/turf/simulated/floor/wood,/area/awaymission/academy/headmaster)
|
||||
"by" = (/obj/machinery/door/airlock/gold,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bz" = (/obj/machinery/door/airlock/gold,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"bA" = (/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"bB" = (/turf/simulated/wall/r_wall,/area/awaymission/academy/classrooms)
|
||||
"bC" = (/obj/machinery/door/poddoor/shutters{id_tag = "AcademyAuto"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"bD" = (/obj/machinery/door/poddoor/shutters{id_tag = "AcademyAuto"},/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/awaymission/academy/classrooms)
|
||||
"bE" = (/obj/machinery/door/poddoor/shutters{id_tag = "AcademyAuto"},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"bF" = (/obj/machinery/door/poddoor/shutters{id_tag = "AcademyAuto"},/turf/simulated/floor/plating{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"bG" = (/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/awaymission/academy/headmaster)
|
||||
"bH" = (/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/awaymission/academy/headmaster)
|
||||
"bI" = (/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"bJ" = (/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/awaymission/academy/classrooms)
|
||||
"bK" = (/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"bL" = (/turf/simulated/floor/plating{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"bM" = (/obj/machinery/door_control{id_tag = "AcademyAuto"; pixel_y = 24},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"bN" = (/turf/simulated/wall,/area/awaymission/academy/classrooms)
|
||||
"bO" = (/turf/simulated/shuttle/wall{tag = "icon-swallc2"; icon_state = "swallc2"},/area/awaymission/academy/classrooms)
|
||||
"bP" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/awaymission/academy/classrooms)
|
||||
"bQ" = (/turf/simulated/shuttle/wall{tag = "icon-swallc1"; icon_state = "swallc1"},/area/awaymission/academy/classrooms)
|
||||
"bR" = (/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"bS" = (/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/awaymission/academy/headmaster)
|
||||
"bT" = (/turf/simulated/floor{icon_state = "chapel"},/area/awaymission/academy/headmaster)
|
||||
"bU" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"bV" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster)
|
||||
"bW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/academy/headmaster)
|
||||
"bX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster)
|
||||
"bY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/academy/headmaster)
|
||||
"bZ" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster)
|
||||
"ca" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster)
|
||||
"cb" = (/obj/abstract/map/spawner/mobs/spider,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster)
|
||||
"cc" = (/obj/machinery/r_n_d/fabricator/mechanic_fab/autolathe,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"cd" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/awaymission/academy/classrooms)
|
||||
"ce" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/awaymission/academy/classrooms)
|
||||
"cf" = (/obj/effect/decal/cleanable/ash,/turf/simulated/floor/engine,/area/awaymission/academy/classrooms)
|
||||
"cg" = (/obj/structure/target_stake,/turf/simulated/floor/engine,/area/awaymission/academy/classrooms)
|
||||
"ch" = (/turf/simulated/floor/engine,/area/awaymission/academy/classrooms)
|
||||
"ci" = (/obj/structure/target_stake,/obj/item/target/alien,/turf/simulated/floor/engine,/area/awaymission/academy/classrooms)
|
||||
"cj" = (/obj/machinery/vending/cigarette,/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"ck" = (/obj/structure/table,/obj/item/weapon/lighter/random,/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"cl" = (/turf/simulated/floor{icon_state = "dark"},/area/awaymission/academy/headmaster)
|
||||
"cm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster)
|
||||
"cn" = (/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster)
|
||||
"co" = (/obj/machinery/portable_atmospherics/canister/plasma,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster)
|
||||
"cp" = (/obj/item/weapon/stool,/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster)
|
||||
"cq" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/awaymission/academy/classrooms)
|
||||
"cr" = (/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"cs" = (/obj/machinery/door/airlock/plasma,/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"ct" = (/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster)
|
||||
"cu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/academy/headmaster)
|
||||
"cv" = (/obj/machinery/computer/area_atmos/area,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster)
|
||||
"cw" = (/obj/machinery/portable_atmospherics/scrubber/huge/stationary,/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"cx" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster)
|
||||
"cy" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/pen/red,/obj/machinery/light{dir = 8},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"cz" = (/obj/machinery/light{dir = 4},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"cA" = (/turf/simulated/shuttle/wall{tag = "icon-swall1"; icon_state = "swall1"},/area/awaymission/academy/classrooms)
|
||||
"cB" = (/obj/structure/bed/chair,/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"cC" = (/turf/simulated/floor/carpet{icon_state = "carpetsymbol"},/area/awaymission/academy/headmaster)
|
||||
"cD" = (/obj/machinery/door/window{dir = 8},/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"cE" = (/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"cF" = (/obj/machinery/door/window{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/academy/headmaster)
|
||||
"cG" = (/obj/structure/table,/turf/simulated/floor{icon_state = "showroomfloor"},/area/awaymission/academy/headmaster)
|
||||
"cH" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/stack/cable_coil/random,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"cI" = (/obj/abstract/map/spawner/mobs/humanoid/wiz,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"cJ" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/awaymission/academy/classrooms)
|
||||
"cK" = (/obj/item/target,/turf/simulated/floor/engine,/area/awaymission/academy/classrooms)
|
||||
"cL" = (/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"cM" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"cN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet,/area/awaymission/academy/headmaster)
|
||||
"cO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "dark"},/area/awaymission/academy/headmaster)
|
||||
"cP" = (/obj/structure/sign/nosmoking_1,/turf/simulated/wall,/area/awaymission/academy/headmaster)
|
||||
"cQ" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"cR" = (/obj/item/stack/sheet/metal,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"cS" = (/turf/simulated/floor{icon_state = "red"; dir = 8},/area/awaymission/academy/classrooms)
|
||||
"cT" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"cU" = (/turf/simulated/floor{icon_state = "red"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"cV" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"cW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"cX" = (/turf/simulated/floor/plating{tag = "icon-warnplate (SOUTHWEST)"; icon_state = "warnplate"; dir = 10},/area/awaymission/academy/classrooms)
|
||||
"cY" = (/turf/simulated/floor/plating{tag = "icon-warnplate (SOUTHEAST)"; icon_state = "warnplate"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"cZ" = (/turf/simulated/floor{icon_state = "red"; dir = 10},/area/awaymission/academy/classrooms)
|
||||
"da" = (/turf/simulated/floor{icon_state = "red"},/area/awaymission/academy/classrooms)
|
||||
"db" = (/turf/simulated/floor{icon_state = "red"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"dc" = (/obj/machinery/light{dir = 8},/obj/machinery/portable_atmospherics/pump,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster)
|
||||
"dd" = (/obj/structure/closet/crate/internals,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen/red,/turf/simulated/floor{icon_state = "dark"},/area/awaymission/academy/headmaster)
|
||||
"de" = (/obj/structure/closet/crate,/obj/item/weapon/crowbar/red,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/headmaster)
|
||||
"df" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/awaymission/academy/classrooms)
|
||||
"di" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dj" = (/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"dk" = (/turf/simulated/floor/greengrid,/area/awaymission/academy/classrooms)
|
||||
"dl" = (/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"dm" = (/obj/structure/table/woodentable,/obj/item/weapon/staff,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"dn" = (/obj/machinery/light{dir = 4},/turf/simulated/floor,/area/awaymission/academy/headmaster)
|
||||
"do" = (/turf/simulated/floor{dir = 9; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"dp" = (/turf/simulated/floor{dir = 1; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"dq" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"dr" = (/obj/structure/sink/kitchen{pixel_y = 28},/turf/simulated/floor{dir = 1; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"ds" = (/turf/simulated/floor{dir = 5; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"dt" = (/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"du" = (/obj/machinery/gibber,/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"dv" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"dw" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/greengrid,/area/awaymission/academy/classrooms)
|
||||
"dx" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/awaymission/academy/classrooms)
|
||||
"dy" = (/obj/structure/bed/chair/wood{dir = 1},/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"dz" = (/obj/abstract/map/spawner/mobs/humanoid/wiz,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"dA" = (/turf/simulated/floor{icon_state = "green"; dir = 8},/area/awaymission/academy/classrooms)
|
||||
"dB" = (/obj/item/weapon/stool,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dC" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/item/seeds/eggyseed,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dD" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dE" = (/turf/simulated/floor{icon_state = "green"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"dF" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/landmark{name = "awaystart"},/obj/item/weapon/weldingtool,/obj/machinery/light{dir = 8},/turf/simulated/floor/greengrid,/area/awaymission/academy/classrooms)
|
||||
"dG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/greengrid,/area/awaymission/academy/classrooms)
|
||||
"dH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/greengrid,/area/awaymission/academy/classrooms)
|
||||
"dI" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dJ" = (/turf/simulated/floor/grass,/area/awaymission/academy/headmaster)
|
||||
"dK" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dL" = (/obj/structure/closet/crate/hydroponics/prespawned,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dM" = (/obj/machinery/door/airlock/freezer,/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"dN" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"dO" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"dP" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable,/turf/simulated/floor/greengrid,/area/awaymission/academy/classrooms)
|
||||
"dQ" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/item/seeds/dionanode,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dR" = (/obj/structure/table/woodentable,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dS" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dT" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"dU" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"dV" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"dW" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/item/seeds/bluespacetomatoseed,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dX" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"dY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "green"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"dZ" = (/obj/machinery/door/airlock/freezer,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"ea" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"eb" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"ec" = (/obj/structure/kitchenspike,/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"ed" = (/obj/machinery/door/mineral/iron,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"ee" = (/obj/machinery/door/mineral/iron,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"ef" = (/obj/machinery/door/mineral/wood,/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"eg" = (/obj/machinery/seed_extractor,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"eh" = (/obj/structure/cable,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"ei" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"ej" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"ek" = (/obj/machinery/igniter,/obj/machinery/light{dir = 1},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"el" = (/obj/machinery/igniter,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"em" = (/turf/simulated/floor{icon_state = "yellowcorner"},/area/awaymission/academy/classrooms)
|
||||
"en" = (/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"eo" = (/turf/simulated/floor{dir = 8; icon_state = "yellowcorner"},/area/awaymission/academy/classrooms)
|
||||
"ep" = (/turf/simulated/floor{dir = 8; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"eq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{dir = 4; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"er" = (/obj/structure/noticeboard{pixel_y = 32},/obj/item/weapon/paper{name = "Automotive Repair 101"},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"es" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"et" = (/obj/structure/noticeboard{pixel_y = 32},/obj/item/weapon/paper{name = "Pyromancy 250"},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"eu" = (/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"ev" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; environ = 3; equipment = 3; locked = 0; req_access = ""},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"ew" = (/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"ex" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"ey" = (/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"ez" = (/turf/simulated/floor{tag = "icon-green (SOUTHWEST)"; icon_state = "green"; dir = 10},/area/awaymission/academy/classrooms)
|
||||
"eA" = (/turf/simulated/floor{tag = "icon-green"; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"eB" = (/obj/machinery/light,/turf/simulated/floor{tag = "icon-green"; icon_state = "green"},/area/awaymission/academy/classrooms)
|
||||
"eC" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/obj/machinery/light,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"eD" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor{icon_state = "green"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"eE" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"eF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"eG" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"eH" = (/obj/machinery/singularity/academy,/turf/space,/area)
|
||||
"eI" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "yellow"; dir = 10},/area/awaymission/academy/classrooms)
|
||||
"eJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"eK" = (/obj/machinery/door/mineral/wood,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"eL" = (/obj/machinery/door/airlock/freezer,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"eM" = (/turf/simulated/floor/plating{tag = "icon-warnplate (NORTHWEST)"; icon_state = "warnplate"; dir = 9},/area/awaymission/academy)
|
||||
"eN" = (/obj/machinery/door/airlock/glass,/obj/machinery/door/airlock/external,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"eO" = (/obj/machinery/door/airlock/glass,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"eP" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"eQ" = (/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"eR" = (/obj/structure/bed/chair,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"eS" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"eT" = (/obj/structure/table/reinforced,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"eU" = (/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"eV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"eW" = (/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/awaymission/academy)
|
||||
"eX" = (/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"eY" = (/obj/structure/cult/pylon,/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"eZ" = (/turf/simulated/floor{dir = 5; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fa" = (/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
"fb" = (/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
"fc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
"fd" = (/obj/structure/table,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fe" = (/obj/machinery/processor,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"ff" = (/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fg" = (/obj/structure/cult/pylon,/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fh" = (/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fi" = (/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
"fj" = (/turf/simulated/floor{icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
"fk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/awaymission/academy/classrooms)
|
||||
"fl" = (/obj/machinery/door/mineral/wood,/turf/simulated/floor{icon_state = "bar"},/area/awaymission/academy/classrooms)
|
||||
"fm" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fn" = (/obj/structure/bed/chair,/obj/abstract/map/spawner/mobs/humanoid/wiz,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fo" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/spellburger,/obj/machinery/light{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"fp" = (/turf/simulated/floor/plating{tag = "icon-warnplate (SOUTHWEST)"; icon_state = "warnplate"; dir = 10},/area/awaymission/academy)
|
||||
"fq" = (/obj/structure/window/reinforced,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"fr" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"fs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"ft" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"fu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"fv" = (/obj/machinery/door/mineral/wood,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/awaymission/academy/classrooms)
|
||||
"fw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fx" = (/obj/structure/table,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fy" = (/obj/structure/table/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"fz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"fA" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"fB" = (/obj/structure/table,/obj/machinery/microwave,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"fC" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{dir = 5; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fD" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{dir = 9; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fE" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fF" = (/obj/structure/table,/obj/item/trash/semki,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fG" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fH" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/simulated/floor{dir = 8; icon_state = "barber"},/area/awaymission/academy/classrooms)
|
||||
"fI" = (/obj/machinery/igniter,/obj/machinery/light,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"fJ" = (/turf/simulated/floor{icon_state = "cautioncorner"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"fK" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{dir = 1; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fL" = (/turf/simulated/floor{dir = 1; icon_state = "yellowcorner"},/area/awaymission/academy/classrooms)
|
||||
"fM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{dir = 4; icon_state = "yellow"},/area/awaymission/academy/classrooms)
|
||||
"fN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/noticeboard{pixel_y = -32},/obj/item/weapon/paper{name = "Biology Lab"},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"fO" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"fP" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"fQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light,/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/classrooms)
|
||||
"fR" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"fS" = (/obj/machinery/light,/turf/simulated/floor{icon_state = "escape"; dir = 6},/area/awaymission/academy/classrooms)
|
||||
"fT" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"fU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"fV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"fW" = (/turf/simulated/wall,/area/awaymission/academy/academyaft)
|
||||
"fX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"fY" = (/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"fZ" = (/obj/abstract/map/spawner/mobs/bear,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"ga" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gb" = (/obj/machinery/shieldwallgen,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"gc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/academy/classrooms)
|
||||
"gd" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/academy/classrooms)
|
||||
"ge" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/awaymission/academy/classrooms)
|
||||
"gf" = (/obj/structure/bed/chair,/turf/simulated/floor{icon_state = "white"},/area/awaymission/academy/classrooms)
|
||||
"gg" = (/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"gh" = (/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/academyaft)
|
||||
"gi" = (/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/awaymission/academy/classrooms)
|
||||
"gj" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/awaymission/academy/classrooms)
|
||||
"gk" = (/obj/structure/bed/chair,/turf/simulated/floor{tag = "icon-vault"; icon_state = "vault"},/area/awaymission/academy/classrooms)
|
||||
"gl" = (/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/awaymission/academy/classrooms)
|
||||
"gm" = (/obj/structure/table/reinforced,/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"gn" = (/obj/item/target,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"go" = (/obj/structure/target_stake,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"gp" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gq" = (/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 5; health = 1e+007},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gs" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"gt" = (/obj/structure/table,/obj/item/weapon/pen/red,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"gu" = (/obj/structure/table,/obj/item/weapon/scalpel,/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"gv" = (/obj/structure/bed/chair/wood,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"gw" = (/obj/structure/bookcase,/obj/item/weapon/book/manual/engineering_hacking,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"gx" = (/obj/structure/bookcase,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"gy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/academyaft)
|
||||
"gz" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"gA" = (/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/recharger,/obj/structure/table/reinforced,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gC" = (/obj/structure/table/reinforced,/obj/item/weapon/pen/red,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gD" = (/obj/structure/filingcabinet/filingcabinet,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gE" = (/obj/machinery/door/window{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"gF" = (/obj/item/weapon/storage/box/monkeycubes,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gG" = (/obj/machinery/door/window{dir = 4},/obj/machinery/door/window{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gH" = (/obj/structure/table,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"gI" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"gJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gK" = (/obj/abstract/map/spawner/mobs/humanoid/wiz,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gL" = (/obj/structure/table/reinforced,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"gM" = (/obj/structure/target_stake,/obj/machinery/light,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"gN" = (/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gO" = (/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/awaymission/academy/classrooms)
|
||||
"gP" = (/obj/structure/bookcase,/obj/item/weapon/book/manual/medical_cloning,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"gQ" = (/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/academyaft)
|
||||
"gR" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gS" = (/obj/machinery/door/window{dir = 4},/obj/item/ammo_casing,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"gT" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"gU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"gV" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"gW" = (/obj/structure/table,/obj/item/weapon/gun/projectile/shotgun/pump/sc_pump,/obj/item/weapon/paper{info = "Grade: A+ Educator's Notes: Excellent form."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gX" = (/obj/structure/table,/obj/item/weapon/gun/projectile/russian,/obj/item/weapon/paper{info = "Grade: B- Educator's Notes: Keep applying yourself, you're showing improvement."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gY" = (/obj/structure/table,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"gZ" = (/obj/structure/window/reinforced,/obj/item/ammo_casing,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/awaymission/academy/classrooms)
|
||||
"ha" = (/mob/living/simple_animal/hostile/bear,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"hb" = (/obj/structure/bookcase,/obj/item/weapon/book/manual/hydroponics_pod_people,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"hc" = (/obj/structure/bookcase,/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/book/manual/security_space_law,/obj/item/weapon/book/manual/security_space_law,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"hd" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area/awaymission/academy/academyaft)
|
||||
"he" = (/obj/item/weapon/stool,/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"hf" = (/obj/machinery/light,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"hg" = (/obj/machinery/light/small{dir = 8},/mob/living/simple_animal/hostile/bear,/turf/simulated/floor/plating,/area/awaymission/academy/classrooms)
|
||||
"hh" = (/obj/machinery/door/mineral/iron,/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"hi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"hj" = (/obj/machinery/door/airlock/gold{locked = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/classrooms)
|
||||
"hk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"hl" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"hm" = (/obj/structure/table,/obj/item/weapon/gun/energy/floragun,/obj/item/weapon/paper{info = "Grade: D- Educator's Notes: SEE ME AFTER CLASS."; name = "Summoning Midterm Exam"},/turf/simulated/floor{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/academy/classrooms)
|
||||
"hn" = (/obj/structure/closet/crate,/obj/item/stack/sheet/glass,/obj/item/target,/obj/item/target,/turf/simulated/floor,/area/awaymission/academy/classrooms)
|
||||
"ho" = (/obj/machinery/shieldwallgen,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/awaymission/academy/classrooms)
|
||||
"hp" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/awaymission/academy/classrooms)
|
||||
"hq" = (/obj/item/weapon/stool,/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/awaymission/academy/classrooms)
|
||||
"hr" = (/obj/machinery/light,/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/awaymission/academy/classrooms)
|
||||
"hs" = (/obj/machinery/light,/turf/simulated/floor/wood,/area/awaymission/academy/classrooms)
|
||||
"ht" = (/turf/simulated/wall/r_wall,/area/awaymission/academy/academyaft)
|
||||
"hu" = (/obj/machinery/door/mineral/wood,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"hv" = (/obj/machinery/door/mineral/wood,/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"hw" = (/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hx" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"hA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"hB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"hC" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; environ = 3; equipment = 3; locked = 0; req_access = ""},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"hD" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hE" = (/turf/simulated/floor{icon_state = "green"; dir = 8},/area/awaymission/academy/academyaft)
|
||||
"hF" = (/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"hG" = (/obj/machinery/light{dir = 1},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"hH" = (/turf/simulated/floor{tag = "icon-green (EAST)"; icon_state = "green"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"hI" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"hJ" = (/obj/item/weapon/crowbar/red,/turf/simulated/floor{tag = "icon-green (EAST)"; icon_state = "green"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"hK" = (/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"hL" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"hM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"hN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"hO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hP" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hQ" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hR" = (/obj/machinery/power/battery/smes/infinite,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hS" = (/obj/machinery/power/terminal{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hT" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"hU" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"hV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"hW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"hY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "green"; dir = 8},/area/awaymission/academy/academyaft)
|
||||
"hZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"ia" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{tag = "icon-green (EAST)"; icon_state = "green"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"ib" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"ic" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"id" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/item/weapon/caution,/turf/simulated/floor{tag = "icon-green (EAST)"; icon_state = "green"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"ie" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"if" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"ig" = (/obj/machinery/constructable_frame/machine_frame,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"ih" = (/obj/machinery/light{dir = 4},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"ii" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"ij" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"ik" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"il" = (/obj/structure/grille,/obj/structure/cable,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"im" = (/obj/structure/closet,/obj/item/candle,/obj/item/candle,/obj/item/weapon/storage/fancy/matchbox,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"in" = (/obj/structure/closet,/obj/item/weapon/storage/belt/soulstone,/obj/item/clothing/under/schoolgirl,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"io" = (/obj/structure/closet,/obj/item/clothing/under/blackskirt,/obj/item/clothing/glasses/regular,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"ip" = (/obj/structure/closet,/obj/item/clothing/under/lightpurple,/obj/item/clothing/shoes/sandal,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iq" = (/obj/structure/closet,/obj/item/weapon/lipstick/random,/obj/item/clothing/under/schoolgirl,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"ir" = (/turf/simulated/floor/wood,/area/awaymission/academy/academyaft)
|
||||
"is" = (/obj/structure/closet,/obj/item/clothing/under/lightpurple,/obj/item/weapon/staff,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"it" = (/obj/structure/closet,/obj/item/weapon/storage/wallet/random,/obj/item/clothing/glasses/regular/hipster,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iu" = (/obj/structure/closet,/obj/item/clothing/head/wizard/fake,/obj/item/clothing/suit/wizrobe/fake,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iv" = (/obj/structure/closet,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/clothing/under/purple,/obj/item/mounted/poster,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iw" = (/obj/structure/closet,/obj/item/weapon/storage/box/snappops,/obj/item/weapon/storage/backpack,/obj/item/weapon/paper{info = "Current Grade: F. Educator's Notes: No improvement shown despite multiple private lessons. Suggest additional tutilage."; name = "Pyromancy Evaluation"},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"ix" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"iy" = (/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/power/battery/smes/infinite,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"iA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iB" = (/obj/structure/rack,/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"iC" = (/turf/simulated/floor/grass,/area/awaymission/academy/academyaft)
|
||||
"iD" = (/obj/structure/rack,/obj/item/weapon/circuitboard/telecomms/broadcaster,/obj/item/weapon/circuitboard/telecomms/receiver,/obj/item/weapon/circuitboard/telecomms/relay,/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"iE" = (/obj/abstract/map/spawner/mobs/humanoid/wiz,/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"iF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iG" = (/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iH" = (/obj/structure/mirror{pixel_y = 28},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iI" = (/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iJ" = (/obj/structure/rack,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iK" = (/obj/machinery/power/battery/smes/infinite,/obj/structure/cable,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"iL" = (/obj/structure/rack,/obj/item/clothing/glasses/welding,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iM" = (/obj/machinery/door/mineral/iron,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iN" = (/obj/structure/rack,/obj/item/weapon/stock_parts/scanning_module,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/ansible,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iO" = (/obj/item/weapon/stock_parts/manipulator,/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"iP" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"iQ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iR" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iS" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/wood,/area/awaymission/academy/academyaft)
|
||||
"iT" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/wood,/area/awaymission/academy/academyaft)
|
||||
"iU" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iV" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iW" = (/obj/structure/rack,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/subspace/filter,/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"iX" = (/obj/structure/toilet{dir = 8},/obj/machinery/light/small{dir = 1},/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iY" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"iZ" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/rack,/obj/item/stack/sheet/metal,/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"ja" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"jb" = (/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft)
|
||||
"jc" = (/obj/structure/toilet{dir = 8},/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"jd" = (/obj/item/weapon/paper,/turf/simulated/floor/wood,/area/awaymission/academy/academyaft)
|
||||
"je" = (/obj/item/stack/cable_coil/random,/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"jf" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"jg" = (/obj/item/device/multitool,/turf/simulated/floor/engine,/area/awaymission/academy/academyaft)
|
||||
"jh" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/engine,/area/awaymission/academy/academyaft)
|
||||
"ji" = (/turf/simulated/floor/engine,/area/awaymission/academy/academyaft)
|
||||
"jj" = (/obj/structure/toilet{dir = 8},/obj/machinery/light/small{dir = 1},/obj/effect/decal/cleanable/vomit,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"jk" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/wood,/area/awaymission/academy/academyaft)
|
||||
"jl" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 1},/obj/effect/landmark{name = "awaystart"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft)
|
||||
"jm" = (/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/engine,/area/awaymission/academy/academyaft)
|
||||
"jn" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"jo" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/weapon/beach_ball/holoball,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/awaymission/academy/academyaft)
|
||||
"jp" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "red"; dir = 5},/area/awaymission/academy/academyaft)
|
||||
"jq" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma{dir = 1},/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"jr" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"js" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jt" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/device/soulstone,/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"ju" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_l"; icon_state = "propulsion_l"},/turf/space,/area/awaymission/academy/academyaft)
|
||||
"jv" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion_r"; icon_state = "propulsion_r"},/turf/space,/area/awaymission/academy/academyaft)
|
||||
"jw" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma,/obj/structure/window/reinforced/plasma{dir = 1},/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"jx" = (/turf/simulated/floor{icon_state = "red"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jy" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"jz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jB" = (/obj/structure/table,/obj/item/clothing/glasses/scanner/meson/truesight,/obj/machinery/light/small{dir = 8},/turf/simulated/floor,/area/awaymission/academy/academyaft)
|
||||
"jC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"jD" = (/obj/structure/noticeboard,/turf/simulated/wall,/area/awaymission/academy/academyaft)
|
||||
"jE" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"jF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jG" = (/obj/structure/table,/obj/item/organ/internal/brain{name = "The preserved brain of Harry Houdini"},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jH" = (/turf/simulated/floor{dir = 8; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"jI" = (/turf/simulated/floor{dir = 4; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"jJ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jK" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/item/weapon/shard,/obj/item/weapon/shard/plasma,/turf/simulated/floor/plating/airless,/area/awaymission/academy/academyaft)
|
||||
"jL" = (/obj/structure/window/reinforced,/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/golden_cup,/turf/simulated/floor{icon_state = "red"},/area/awaymission/academy/academyaft)
|
||||
"jM" = (/obj/structure/window/reinforced,/turf/simulated/floor{icon_state = "red"; dir = 6},/area/awaymission/academy/academyaft)
|
||||
"jN" = (/obj/structure/cult/pylon,/turf/simulated/floor{icon_state = "yellow"; dir = 10},/area/awaymission/academy/academyaft)
|
||||
"jO" = (/turf/simulated/floor{icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"jP" = (/obj/structure/cult/pylon,/turf/simulated/floor{dir = 6; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"jQ" = (/obj/structure/window/reinforced,/turf/simulated/floor/airless{tag = "icon-white (EAST)"; icon_state = "white"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jR" = (/obj/structure/table,/obj/structure/window/reinforced,/obj/item/device/batterer,/turf/simulated/floor/airless{tag = "icon-whitered (EAST)"; icon_state = "whitered"; dir = 4},/area/awaymission/academy/academyaft)
|
||||
"jS" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/shard/plasma,/turf/space,/area)
|
||||
"jT" = (/obj/machinery/igniter,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"jU" = (/obj/structure/window/reinforced,/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"jV" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma,/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/academyaft)
|
||||
"jW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"jX" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"jY" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"jZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"ka" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"kb" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"kc" = (/turf/simulated/floor{dir = 9; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"kd" = (/obj/machinery/light,/turf/simulated/floor{dir = 5; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"ke" = (/obj/machinery/light,/turf/simulated/floor{dir = 9; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"kf" = (/turf/simulated/floor{dir = 5; icon_state = "yellow"},/area/awaymission/academy/academyaft)
|
||||
"kg" = (/obj/machinery/door/airlock/hatch,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"kh" = (/obj/machinery/door/airlock/hatch,/turf/simulated/floor/carpet,/area/awaymission/academy/academyaft)
|
||||
"ki" = (/turf/simulated/wall/r_wall,/area/awaymission/academy/academygate)
|
||||
"kj" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/grass,/area/awaymission/academy/academygate)
|
||||
"kk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kl" = (/turf/simulated/floor/grass,/area/awaymission/academy/academygate)
|
||||
"km" = (/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kn" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma{dir = 1},/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"ko" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kp" = (/obj/structure/grille,/obj/structure/window/reinforced/plasma,/obj/structure/window/reinforced/plasma{dir = 8},/obj/structure/window/reinforced/plasma{dir = 4},/obj/structure/window/full/reinforced/tinted,/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kq" = (/obj/structure/window/reinforced,/turf/simulated/floor/grass,/area/awaymission/academy/academygate)
|
||||
"kr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window{dir = 2},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"ks" = (/obj/machinery/door/window{dir = 2},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"ku" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kv" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kw" = (/obj/structure/cable,/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kx" = (/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"ky" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kz" = (/obj/machinery/power/apc{dir = 1; environ = 3; equipment = 3; locked = 0; req_access = ""},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kA" = (/obj/item/stack/cable_coil/random,/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kB" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kC" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kD" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kE" = (/obj/machinery/gateway{dir = 9},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kF" = (/obj/machinery/gateway{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kG" = (/obj/machinery/gateway{dir = 5},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kH" = (/obj/machinery/gateway{dir = 8},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kI" = (/obj/structure/cable,/obj/machinery/gateway/centeraway{calibrated = 0},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kJ" = (/obj/machinery/gateway{dir = 4},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kK" = (/obj/machinery/gateway{dir = 10},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kL" = (/obj/machinery/gateway,/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kM" = (/obj/machinery/gateway{dir = 6},/turf/simulated/floor/plating,/area/awaymission/academy/academygate)
|
||||
"kN" = (/obj/machinery/light,/turf/simulated/floor/carpet,/area/awaymission/academy/academygate)
|
||||
"kO" = (/obj/machinery/door_control{id_tag = "AcademyGate"; pixel_y = -24},/turf/simulated/floor/carpet{icon_state = "carpetsymbol"},/area/awaymission/academy/academygate)
|
||||
"kP" = (/turf/simulated/floor/carpet{icon_state = "carpetsymbol"},/area/awaymission/academy/academygate)
|
||||
"kQ" = (/obj/machinery/door/poddoor/shutters{id_tag = "AcademyGate"},/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"},/area/awaymission/academy/academygate)
|
||||
|
||||
(1,1,1) = {"
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacadadadadadadaeabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababafagahagagaiagajababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababakajalajajajalajajamababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanaoajapajajaqarasasatauavanaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawaxajajayayazayayayaAaBaCawaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawagaDajayaEaFaGaHayauaDagawaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawaIajaJayaKaLaMaLayaNajaoawaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawagaDajayaOaPaLaQayauaDagawaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawaRajajayayayayayayauajaoawaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaSaTajajajajaUajaqasaBajahaSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababakajajajajajauajajaVababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWababababaXababaYababababaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWabbabbaLajaLaLauaLbbayabaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWabaLaLaLajaLbcaBaLaLaLabaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWbdaLajajajbeauajajajbfbdaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWabbgajajbhbibjbkajajblabaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWaWabbmajbnbobpbqbrajajbsabaWaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaaaaaaaaaaaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWaWaabdaLajajajajbtbuajajbvbdaaaWaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaaaaaaaaaZaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWabaWaWabaLbwaLaLajauaLaLbwbxabaWaWabaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaZaaaaaZaZaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWaWaWaaaaabayayayaybybzayayayayabaaaaaWaWaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaaaaaaaZaZaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWaWaaaWaaaaabbAbAbAbAajaubAbAbAbAabaaaaaWaaaWaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaZaaaaaaaaaaaaaaaaaabBbCbDbEbEbFbCbBbBbBbBbBbBbBbBbBbBabbAbGbHbAajaubAbGbHbAababababababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaaaaaaaaaaaaaaaaaabBbBbIbJbKbKbLbIbMbNbObPbPbPbPbPbPbQaybRbSbTbAajaubAbSbTbUaybVbWbXbYbZancacbababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBccbIbKbKbKbKcdbIbNcecfcgchchcichceaybAcjckbAajaubAbAbAbAabclcmclayayawcncocpabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBcqbIbKcrbKbKbIbIbNcechchchcfchchceaybAbAbAbAajauajajajajcsctcucvaycwaScncacxabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBcycdbKbKbKbKbIczbNcAchchchchchchcAaybAcBcBbAajaucCajcCajabclcmclcDcEcFcncbcGabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBcHbIbKbKbKcIbIbIbNcJcKchchchchchcLaybAcMcMbAajcNasasasascsbXcOctcPayancncacxabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBcQbIbKbKcRbKbIcdbNcScTcTcTcTcTcTcUaybAcVbAbAajaubAbAbAbAabclctclctclawcocncpabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBcWbIcXbKbKcYbIcdbNcZdadadadadadadbaybAbGbHbAajaubAbGbHbAaydcclctdddeaScncbababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBdfdgdhdhdhdhdibIbNdjdjdjdjdjdjdjdjaybAbSbTbAajaubAbSbTbAayayayayayayayayayabbBbBbBbBbBbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBdkdkdkcdcdbIcWbIbNdjdjdldjdldjdmdjaybRbAbAbAajaubAbAbAdnaydodpdqdrdpdpdpdqdpdsbNdtdtdubBbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBdvbIdwcdbIbIcWdxbNdjdjdydzdydjdydjayaLaLaLaLajauaLaLaLaLaydAdBdCbIdBdDbIbIbIdEbNdtdtdtdtbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBdFdGdHdgdgdgdIczbNdjdjdjdjdldjdldjayaLdJdJaLajauaLdJdJaLaydAbIbIbIbIbIbIdKdLdEdMdtdtdtdNbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBdObIdPcdbIbIcWbIbNdjdjdjdjdydjdydjayaLdJdJaLajauaLdJdJaLaydAdBdDbIdBdQbIdRdSdEbNdTdtdtdtbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBdkdkdkbIcdbIcWbIbNdUdjdjdjdjdjdjdVayaLdJdJaLajauaLdJdJaLaydAbIbIbIbIbIbIdWdXdYdZeaebdtecbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBbBbBbBbNbNbNedeebNbNbNefefbNbNbNbNbNayayayayayajauayayayayaydAdBdDbIbIegbIbIehdEbNeiejdtecbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBekelbBemeneoepeqereseteueueueueueveueseueueueuewexeueueueybNezeAeBeAeAeAbIbIeCeDbNeiejdteEbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBeFeFbBeGeHeIepeqeueueueueueueueueJeueueueueueueueJeueueueubNbNbNbNbNbNbNeKeKbNbNbNbNeLbNbBbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeMeNbKbKeObIePbIbIeqeuewewewewewewewexewewewewewewewexeweweweubNeQeQeQeReSeQeQeQeQeTeUeUeVeUbBbBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeWbBbKbKeFeXeYeXeZeqeuewfafbewfafbewfcfbewfafbewfafbexfafbeweubNeQeQeQfdeQeQeQeQeQeTeUeUeVfebBaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeWbBbKbKeFfffgfffheqeuewfifjewfifjewfkfjewfifjewfifjexfifjeweufleQeQeQfmeQfneQeQeQeTeUeUeVfobBaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafpeNbKbKeObIfqbIbIeqeuewewewewewewewexewewewfrfsfsfsftfsfsfsfufvfwfwfwfwfwfxfwfwfwfyfzfzfAfBbBaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBeFeFbBfCeHfDepeqeueueueueueueueueJeueueueJeueueueueueueueubNeQfEfFfGeQfmeQeQeQeTeUeUeUfHbBaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBfIelbBfJfKfLepfMfNfufufufufOeueufPfufQfufReweueueweweueueybNeQeQeQeQfSeQeQeQeQeTeUeUeUbBbBaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBbBbBbBbBbBbNedeebNbNbNbNbNfTfUfUfVbNbNfWfXfYfWfWfYfYfWbNbNbNbNbNbNbNbNbNbNbNbNbNbNbNbBbBaWaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBfZbKbKgagbgcgdgegegfbNggdjdjdjdjdjbNghfXfYghghfYfYghbNgigjgkgigicSglgmgnbIbIbIgobBbBaWaaaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBgpgqbKgrgsbIbIbIgtgubNdjgvdjgwgxdjgagygzfYghghfYfYghbNgAgBgCgDgAcSbIgEbIbIbIbIbBbBaWaWaaaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaaaaaaaaaaaaaaaaaaaaaabBgFbKbKgGgsbIgHbIbIgIbNdjdldzdjdjdjgrghfYfYghghfYfYghbNgAgJgAgAgKcSglgLbIbIgMbBbBaWaaaWaaaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaZaaaaaaaaaaaaaaaaaabBgNgNgNgrgsbIdBbIbIgObNdUdydjgxgPdjgrghfYfYghghfYfYgQbNgRgJgAgAgAcSbIgSbIbIbBbBaWaaaaaWaaaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaZaaaaaaaaaaaaaaaaaabBgTgTgTgrgsbIgHbIgHgIbNdjgvdjdjdjdjfTgygUgVghghfYfYghbNgAgJgWgXgYcSgZgLgobBbBaWaaaaaaaWaaaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaaaaaaaaaaaaaaaaaaaabBbKhabKgGgsbIdBbIdBgIbNdjdldjhbhcdjbNhdfYfXghghfYfYghbNgAgJhehehecSbIhfbBbBaWaaaaaaaaaWaaaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaaaaaaaaaaaaaaaaaaaaaabBhgbKbKgrgsbIgHbIgHgIbNdjdydjdjdjdjhhfYfYhigygygUgUgUhjhkhlgYgYhmcShnbBbBaWaaaaaaaaaaaWaaaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBbKbKhafThohphqhrhqdtbNdjdjdjhsdjdjbNghfYfXghghfYfYghbNgAgAhehehecSbBbBaWaaaaaaaaaaaaaWaaaWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthththththththththththtfWfWfWfWfWfWfWfWfWhufWfWhvfWfWfWfWfWfWfWfWfWhthththththththththththtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthwhxhyhyhzhAhBhChthDhthEhFhFhGhFhFhHfYhIfXfYfYfYhIfYhEhFhFhGhFhFhJhthDhthKhLhMhNhOhPhwhwhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthQhRhShyhThFhUhVhWhXhWhYhZhZhZhZhZiagUgUibicgUgUgUgUhYhZhZhZhZhZidhWiehWhAifhKhFhwhwigihhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthwiihwhwijhKhKikhtilhthEiminioipiqfWiririrfXfYiririrfWisitiuiviwhHhtilhtixiyhKhKhwhwhwhwhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthwizhShOiAhKhFiBhththtfWfWfWfWfWfWfWiriCirfXfYiriCirfWfWfWfWfWfWfWhththtiDhKiEhKhwhwighwhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthwiihwhwiFhKhKiBhtaahtiGiGiGiHiGiIfWiriCirfXfYiriCirfWiGiGiHiGiGiGhtaahtiJhKhFhKhwhwhwhwhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthwiKhShyifhKhKiLhtaahtiGiGiGiGiGiGiMiriCirfXfYiriCiriMiGiGiGiGiGiGhtaahtiNiOhKhKhwhwighwhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthwhwhwhwhKhFhKiPhtaahtiQiGiGiRfWfWfWiSiCirfXfYiriCiTfWfWfWiUiGiGiVhtaahtiWhKhKhKhwhwhwhwhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahththKhFhKhKhKhFikhtaahtiGiGiGiGiMiXfWiriCirfXfYiriCirfWiYiMiGiGiGiGhtaahtiZhFhKhKhKhFhKhthtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthtjahKhFhFhKhKhtaahtiQiGiGiGfWfWfWiriCirfXfYiriCirfWfWfWiGiGiGiVhtaahthFhFhKhKhFjbhthtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahththKhFhKhKhFhtaWhtiGiGiGiGiMjcfWjdiCirfXfYiriCirfWiYiMiGiGiGiGhtaWhthFhKhKhKjehthtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthththtjfhthtaahtiQiGiGiRfWfWfWiriCirfXfYiriCirfWfWfWiUiGiGiVhtaahthtjfhthththtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahtjgjhjijihtaWhtiGiGiGiGiMjjfWirirjkgzfYiririrfWjliMiGiGiGiGhtaWhtjijijhjmhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaaaaaaaaaaaaaaaaaaaaaaaahtjijijijihtaWhththtfWfWfWfWfWfWfWhufWfWhvfWfWfWfWfWfWfWhththtaWhtjijijijihtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaaaaaaaaaaaaaaaaaaaaaaaahtjnjnjnjnhtaaaaaahtjojpjqgyjrgUgUibgUgUgUgUgUgUgyjqjsjthtaaaaaahtjnjnjnjnhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaaaaaaaZaZaaaaaaaaaaaaaaaaaahtjujujujvhtaaaaaajwhFjxjyghfXfYfYfYfYfYfYfYfYfYghjyjzjAjwaaaaaahtjujujujvhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahtjBjxjyghjCfWfWjDfWfWjDfWfWjEghjyjFjGhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajwhFjxjyghfXfYjHhFhFhFhFjIfYfYghjyjJjAjKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZaZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahtjLjMjyghfXfYjNjOjOjOjOjPfYfYghjyjQjRhtjSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthtjTjyghfXjUfYfYfYfYfYfYjUfYghjyjThthtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthtjVghjWeHjXfYfYfYfYjYeHjXghjVhthtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahthtghjZkagUgVfYfYfYfYkbfYghhthtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahtghghghghfXfYfYfYghghghghhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahtghkckdghfXfYfYfYghkekfghhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahtjwhththtkghthtkhhththtjwhtaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikikjkkklklkmkjkikiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaknklkkklklkmklknaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakoklkkklklkmklkoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakpkqkrkqkqkskqkpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikikmktkukukukvkikiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikikmkmkwkmkmkxkykzkikiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikmkmkAkBkxkxkxkCkDkmkiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikmkxkxkEkFkGkxkxkxkmkiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikmkxkxkHkIkJkxkxkxkmkiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikmkmkxkKkLkMkxkxkmkmkiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikikNkmkxkxkxkxkmkNkikiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikikOkxkxkxkxkPkikiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaakikikQkQkQkQkikiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
"}
|
||||
@@ -89,6 +89,8 @@
|
||||
//Map elements that should be loaded together with this map. Stuff like the holodeck areas, etc.
|
||||
var/list/load_map_elements = list()
|
||||
var/snow_theme = 0
|
||||
var/center_x = 226
|
||||
var/center_y = 254
|
||||
|
||||
/datum/map/New()
|
||||
. = ..()
|
||||
|
||||
@@ -31,6 +31,9 @@
|
||||
/datum/map_element/dungeon/holodeck
|
||||
)
|
||||
|
||||
center_x = 260
|
||||
center_y = 236
|
||||
|
||||
|
||||
//All security airlocks have randomized wires
|
||||
/obj/machinery/door/airlock/glass_security/New()
|
||||
|
||||
@@ -59,6 +59,9 @@
|
||||
/datum/map_element/dungeon/holodeck
|
||||
)
|
||||
|
||||
center_x = 231
|
||||
center_y = 249
|
||||
|
||||
//The central shuttle leads to both outposts
|
||||
/datum/map/active/New()
|
||||
. = ..()
|
||||
|
||||
@@ -33,6 +33,9 @@
|
||||
holomap_offset_x = list(0,0,0,86,4,0,0,)
|
||||
holomap_offset_y = list(0,0,0,94,10,0,0,)
|
||||
|
||||
center_x = 221
|
||||
center_y = 241
|
||||
|
||||
/datum/map/active/New()
|
||||
.=..()
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
"au" = (/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"av" = (/obj/structure/bookcase,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aw" = (/obj/structure/bookcase,/mob/living/simple_animal/hostile/scarybat/book/woody,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"ax" = (/obj/effect/decal/cleanable/cockroach_remains,/obj/structure/cult/pylon,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"ax" = (/obj/effect/decal/cleanable/cockroach_remains,/obj/structure/cult_legacy/pylon,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"ay" = (/obj/item/weapon/cigbutt,/obj/effect/decal/cleanable/blood/drip,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"az" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/cleanable/cockroach_remains,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aA" = (/obj/structure/window/reinforced/plasma{dir = 4},/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
@@ -42,8 +42,8 @@
|
||||
"aP" = (/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aQ" = (/obj/effect/decal/cleanable/spiderling_remains,/obj/item/weapon/storage/fancy/matchbox/empty,/obj/effect/decal/cleanable/blood/drip,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aR" = (/obj/effect/decal/cleanable/blood/drip,/obj/effect/decal/cleanable/vomit,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aS" = (/obj/structure/cult/pylon,/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken"},/area/vault/asteroid)
|
||||
"aT" = (/obj/structure/cult/pylon,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aS" = (/obj/structure/cult_legacy/pylon,/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken"},/area/vault/asteroid)
|
||||
"aT" = (/obj/structure/cult_legacy/pylon,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aU" = (/obj/effect/decal/cleanable/spiderling_remains,/obj/effect/decal/cleanable/blood/drip,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aV" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/remains/human,/obj/item/weapon/handcuffs,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aW" = (/obj/structure/window/reinforced/plasma{dir = 4},/obj/effect/decal/cleanable/blood/writing{desc = "It looks like a writing in blood. The blood seems to have dried a long time ago."; message = "veniam petimus"; pixel_y = 32},/obj/effect/spider/stickyweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
@@ -64,10 +64,10 @@
|
||||
"bl" = (/obj/structure/window/reinforced/plasma,/obj/structure/cage,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bm" = (/obj/structure/window/reinforced/plasma{dir = 4},/turf/simulated/wall/r_wall,/area/vault/asteroid)
|
||||
"bn" = (/obj/structure/window/reinforced/plasma{dir = 8},/turf/simulated/wall/r_wall,/area/vault/asteroid)
|
||||
"bo" = (/obj/structure/cult/pylon,/obj/structure/window/reinforced/plasma,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bo" = (/obj/structure/cult_legacy/pylon,/obj/structure/window/reinforced/plasma,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bp" = (/obj/structure/window/reinforced/plasma,/obj/item/weapon/paper/crumpled/bloody{info = "Only one artifact is real, all the others are fake. Don't make the same mistake that I did..."},/obj/effect/decal/remains/human,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bq" = (/turf/simulated/floor{icon_state = "dark"},/area/vault/asteroid)
|
||||
"br" = (/obj/structure/cult/talisman,/obj/effect/landmark/catechizer_spawn,/turf/simulated/floor{icon_state = "dark"},/area/vault/asteroid)
|
||||
"br" = (/obj/structure/cult_legacy/talisman,/obj/effect/landmark/catechizer_spawn,/turf/simulated/floor{icon_state = "dark"},/area/vault/asteroid)
|
||||
"bs" = (/obj/effect/decal/remains/human,/turf/simulated/floor/carpet,/area/vault/asteroid)
|
||||
"bt" = (/obj/structure/constructshell/cult,/turf/simulated/floor/carpet,/area/vault/asteroid)
|
||||
"bu" = (/mob/living/simple_animal/hostile/faithless{faction = "mimic"; name = "The Guardian"},/turf/simulated/floor/carpet,/area/vault/asteroid)
|
||||
|
||||
100
maps/randomvaults/backup/asteroid_temple.dmm
Normal file
@@ -0,0 +1,100 @@
|
||||
"aa" = (/turf/space,/area)
|
||||
"ab" = (/obj/item/stack/sheet/metal,/turf/space,/area)
|
||||
"ac" = (/turf/simulated/wall,/area/vault/asteroid)
|
||||
"ad" = (/turf/space,/area/vault/asteroid)
|
||||
"ae" = (/obj/item/stack/sheet/metal,/turf/space,/area/vault/asteroid)
|
||||
"af" = (/obj/item/stack/tile/plasteel,/turf/simulated/floor/plating/airless,/area/vault/asteroid)
|
||||
"ag" = (/turf/simulated/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/vault/asteroid)
|
||||
"ah" = (/turf/simulated/floor/plating/airless,/area/vault/asteroid)
|
||||
"ai" = (/obj/structure/lattice,/turf/space,/area/vault/asteroid)
|
||||
"aj" = (/obj/structure/cult/forge,/turf/simulated/floor/plating/airless{broken = 1; icon_state = "panelscorched"},/area/vault/asteroid)
|
||||
"ak" = (/turf/simulated/floor/plating/airless{broken = 1; icon_state = "panelscorched"},/area/vault/asteroid)
|
||||
"al" = (/obj/structure/catwalk,/turf/space,/area/vault/asteroid)
|
||||
"am" = (/obj/item/stack/tile/plasteel,/turf/simulated/floor/plating/airless{broken = 1; icon_state = "platingdmg1"},/area/vault/asteroid)
|
||||
"an" = (/obj/machinery/door/mineral/wood,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"ao" = (/obj/structure/lattice,/turf/space,/area)
|
||||
"ap" = (/turf/simulated/wall/r_wall,/area/vault/asteroid)
|
||||
"aq" = (/obj/structure/reagent_dispensers/bloodkeg,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"ar" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/ice{pixel_x = 12; pixel_y = 2},/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"as" = (/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"at" = (/obj/item/weapon/stool,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"au" = (/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"av" = (/obj/structure/bookcase,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aw" = (/obj/structure/bookcase,/mob/living/simple_animal/hostile/scarybat/book/woody,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"ax" = (/obj/effect/decal/cleanable/cockroach_remains,/obj/structure/cult/pylon,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"ay" = (/obj/item/weapon/cigbutt,/obj/effect/decal/cleanable/blood/drip,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"az" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/cleanable/cockroach_remains,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aA" = (/obj/structure/window/reinforced/plasma{dir = 4},/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aB" = (/obj/item/weapon/shard{icon_state = "small"},/obj/effect/decal/cleanable/blood/drip,/obj/effect/decal/cleanable/blood,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aC" = (/obj/item/weapon/stool,/turf/simulated/floor/carpet,/area/vault/asteroid)
|
||||
"aD" = (/turf/simulated/floor/carpet,/area/vault/asteroid)
|
||||
"aE" = (/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken6"},/area/vault/asteroid)
|
||||
"aF" = (/obj/effect/decal/cleanable/spiderling_remains,/obj/structure/table/woodentable,/obj/item/candle,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aG" = (/obj/effect/decal/cleanable/blood,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aH" = (/obj/machinery/door/window/brigdoor{dir = 8; id_tag = ""; name = "Cell 1"; req_access_txt = "2"},/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aI" = (/obj/structure/window/reinforced/plasma{dir = 4},/obj/item/weapon/reagent_containers/food/snacks/meat/spiderleg,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aJ" = (/obj/effect/decal/cleanable/blood/drip,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aK" = (/obj/item/weapon/reagent_containers/food/snacks/meat/roach,/obj/item/weapon/stool,/obj/effect/decal/remains/xeno{desc = "They look like the remains of something... unholy. They have a strange aura about them."},/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aL" = (/obj/item/weapon/storage/fancy/cigarettes,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aM" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aN" = (/obj/item/weapon/shard/plasma,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aO" = (/obj/item/stack/rods,/turf/space,/area)
|
||||
"aP" = (/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aQ" = (/obj/effect/decal/cleanable/spiderling_remains,/obj/item/weapon/storage/fancy/matchbox/empty,/obj/effect/decal/cleanable/blood/drip,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aR" = (/obj/effect/decal/cleanable/blood/drip,/obj/effect/decal/cleanable/vomit,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aS" = (/obj/structure/cult/pylon,/turf/simulated/floor/wood{broken = 1; icon_state = "wood-broken"},/area/vault/asteroid)
|
||||
"aT" = (/obj/structure/cult/pylon,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aU" = (/obj/effect/decal/cleanable/spiderling_remains,/obj/effect/decal/cleanable/blood/drip,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aV" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/remains/human,/obj/item/weapon/handcuffs,/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aW" = (/obj/structure/window/reinforced/plasma{dir = 4},/obj/effect/decal/cleanable/blood/writing{desc = "It looks like a writing in blood. The blood seems to have dried a long time ago."; message = "veniam petimus"; pixel_y = 32},/obj/effect/spider/stickyweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aX" = (/obj/item/stack/medical/bruise_pack/tajaran,/obj/item/stack/medical/ointment/tajaran,/turf/simulated/floor/wood,/area/vault/asteroid)
|
||||
"aY" = (/obj/structure/cage/autoclose,/obj/item/weapon/cigbutt,/mob/living/simple_animal/hostile/giant_spider/hunter,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"aZ" = (/obj/machinery/door/window/brigdoor{dir = 8; id_tag = ""; name = "Cell 2"; req_access_txt = "2"},/obj/effect/spider/stickyweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"ba" = (/obj/structure/window/reinforced/plasma{dir = 4},/obj/effect/decal/cleanable/spiderling_remains,/obj/effect/spider/stickyweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bb" = (/obj/structure/window/reinforced/plasma{dir = 4},/turf/simulated/wall,/area/vault/asteroid)
|
||||
"bc" = (/obj/structure/window/reinforced/plasma{dir = 8},/turf/simulated/wall,/area/vault/asteroid)
|
||||
"bd" = (/obj/effect/decal/cleanable/cockroach_remains,/obj/effect/landmark/corpse/civilian,/mob/living/simple_animal/cockroach,/mob/living/simple_animal/cockroach,/mob/living/simple_animal/cockroach,/mob/living/simple_animal/cockroach,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"be" = (/obj/structure/window/barricade{dir = 8},/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bf" = (/obj/effect/decal/cleanable/spiderling_remains,/obj/item/weapon/cigbutt,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bg" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/cleanable/spiderling_remains,/obj/effect/spider/stickyweb,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bh" = (/obj/structure/window/reinforced/plasma{dir = 4},/obj/effect/spider/stickyweb,/obj/item/weapon/reagent_containers/food/snacks/meat/spiderleg,/obj/effect/decal/cleanable/cockroach_remains,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bi" = (/obj/structure/lattice,/obj/structure/window/reinforced/plasma{dir = 4},/turf/space,/area)
|
||||
"bj" = (/turf/simulated/floor{dir = 5; icon_state = "stage_stairs"},/area/vault/asteroid)
|
||||
"bk" = (/obj/structure/lattice,/obj/structure/window/reinforced/plasma{dir = 8},/turf/space,/area)
|
||||
"bl" = (/obj/structure/window/reinforced/plasma,/obj/structure/cage,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bm" = (/obj/structure/window/reinforced/plasma{dir = 4},/turf/simulated/wall/r_wall,/area/vault/asteroid)
|
||||
"bn" = (/obj/structure/window/reinforced/plasma{dir = 8},/turf/simulated/wall/r_wall,/area/vault/asteroid)
|
||||
"bo" = (/obj/structure/cult/pylon,/obj/structure/window/reinforced/plasma,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bp" = (/obj/structure/window/reinforced/plasma,/obj/item/weapon/paper/crumpled/bloody{info = "Only one artifact is real, all the others are fake. Don't make the same mistake that I did..."},/obj/effect/decal/remains/human,/turf/simulated/floor/plating,/area/vault/asteroid)
|
||||
"bq" = (/turf/simulated/floor{icon_state = "dark"},/area/vault/asteroid)
|
||||
"br" = (/obj/structure/cult/talisman,/obj/effect/landmark/catechizer_spawn,/turf/simulated/floor{icon_state = "dark"},/area/vault/asteroid)
|
||||
"bs" = (/obj/effect/decal/remains/human,/turf/simulated/floor/carpet,/area/vault/asteroid)
|
||||
"bt" = (/obj/structure/constructshell/cult,/turf/simulated/floor/carpet,/area/vault/asteroid)
|
||||
"bu" = (/mob/living/simple_animal/hostile/faithless{faction = "mimic"; name = "The Guardian"},/turf/simulated/floor/carpet,/area/vault/asteroid)
|
||||
|
||||
(1,1,1) = {"
|
||||
aaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaacacacacacadadaeadacacacacacacaa
|
||||
aaaaaaacafagahahaiaeadaiahafajafagacaa
|
||||
aaaaaaacahakahahalaiaialamahagakahacaa
|
||||
aaaaaaacacanacacadadadadacacacanacacaa
|
||||
aaaaaaaaaoalaoaaaaaaaaaaaaaaaoalaoaaaa
|
||||
acacacacacanacacacacacaaaaapapanapapaa
|
||||
acaqarasatauauavawavacaaaaapaxayazaAaa
|
||||
acauaBaCaDaDaDaDaEauacaaaaapaFaGaHaIaa
|
||||
acaJauaDaDaDaDaDauauacaaaoapaKaLaMaNaO
|
||||
acaJauaDaDaDaDaDauaJanalalanaPaQapapaa
|
||||
acaRaSaDaDaDaDaDaTauacaaaoapaUaPaVaWaa
|
||||
acaXauauauauauauauauacapapapaYaPaZbaaa
|
||||
acacacacbbanbcacacacacapbdanbebfbgbhaa
|
||||
aaaaaaaabibjbkaaaaaaaaapapapblblapapaa
|
||||
aaaaaaaabibjbkaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaabibjbkaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
apapapapbmbjbnapapapapaaaaaaaaaaaaaaaa
|
||||
apboapboapanapboapbpapaaaaaaaaaaaaaaaa
|
||||
apbqbqbqbqbqbqbqbqbqapaaaaaaaaaaaaaaaa
|
||||
apbrbqaDaDbsaDaDbqbrapaaaaaaaaaaaaaaaa
|
||||
apbqbqbtbsbubsbtbqbqapaaaaaaaaaaaaaaaa
|
||||
apbrbqaDaDbsaDaDbqbrapaaaaaaaaaaaaaaaa
|
||||
apapapapapapapapapapapaaaaaaaaaaaaaaaa
|
||||
"}
|
||||
@@ -33,6 +33,10 @@
|
||||
holomap_offset_x = list(0,0,0,86,4,0,0,)
|
||||
holomap_offset_y = list(0,0,0,94,10,0,0,)
|
||||
|
||||
center_x = 177
|
||||
center_y = 193
|
||||
|
||||
|
||||
////////////////////////////////////////////////////////////////
|
||||
#include "roidstation/areas.dm"
|
||||
#include "roidstation/pipes.dm" // More atmos layered pipes
|
||||
|
||||
@@ -33,6 +33,9 @@
|
||||
holomap_offset_x = list(0,0,0,86,4,0,0,)
|
||||
holomap_offset_y = list(0,0,0,94,10,0,0,)
|
||||
|
||||
center_x = 226
|
||||
center_y = 254
|
||||
|
||||
////////////////////////////////////////////////////////////////
|
||||
#include "tgstation.dmm"
|
||||
#endif
|
||||
|
||||
@@ -71,7 +71,6 @@
|
||||
#include "code\hub.dm"
|
||||
#include "code\names.dm"
|
||||
#include "code\world.dm"
|
||||
#include "code\modules\organs\internal\heart\heart.dm"
|
||||
#include "code\__HELPERS\angles_dirs.dm"
|
||||
#include "code\__HELPERS\clockwork.dm"
|
||||
#include "code\__HELPERS\cmp.dm"
|
||||
@@ -337,6 +336,7 @@
|
||||
#include "code\datums\gamemode\objectives\absorb.dm"
|
||||
#include "code\datums\gamemode\objectives\acquire_blood.dm"
|
||||
#include "code\datums\gamemode\objectives\block.dm"
|
||||
#include "code\datums\gamemode\objectives\bloodcult.dm"
|
||||
#include "code\datums\gamemode\objectives\convert_people.dm"
|
||||
#include "code\datums\gamemode\objectives\custom.dm"
|
||||
#include "code\datums\gamemode\objectives\die.dm"
|
||||
@@ -1864,6 +1864,7 @@
|
||||
#include "code\modules\organs\pain.dm"
|
||||
#include "code\modules\organs\wound.dm"
|
||||
#include "code\modules\organs\internal\eyes\eyes.dm"
|
||||
#include "code\modules\organs\internal\heart\heart.dm"
|
||||
#include "code\modules\organs\internal\kidney\filter.dm"
|
||||
#include "code\modules\organs\internal\liver\liver.dm"
|
||||
#include "code\modules\organs\internal\lungs\filter.dm"
|
||||
|
||||