Skip to content

Commit

Permalink
IFF Code & icons
Browse files Browse the repository at this point in the history
  • Loading branch information
Bokkiewokkie committed Jan 10, 2025
1 parent 13ae901 commit 11f36c8
Show file tree
Hide file tree
Showing 9 changed files with 32 additions and 13 deletions.
7 changes: 3 additions & 4 deletions nsv13.dme
Original file line number Diff line number Diff line change
Expand Up @@ -3822,10 +3822,9 @@
#include "nsv13\code\game\objects\effects\decals\alt_guideline.dm"
#include "nsv13\code\game\objects\effects\decals\plutonium_sludge.dm"
#include "nsv13\code\game\objects\effects\particles\smoke.dm"
#include "nsv13\code\game\objects\effects\spawners\custom_ghost_role_spawners.dm"
#include "nsv13\code\game\objects\effects\spawners\custom_loot_spawners.dm"
#include "nsv13\code\game\objects\effects\spawners\custom_window_spawners.dm"
#include "nsv13\code\game\objects\effects\spawners\shield_gen_spawner.dm"
#include "nsv13\code\game\objects\effects\spawners\custom_ghost_role.dm"
#include "nsv13\code\game\objects\effects\spawners\custom_loot.dm"
#include "nsv13\code\game\objects\effects\spawners\custom_structure.dm"
#include "nsv13\code\game\objects\items\autoinjectors.dm"
#include "nsv13\code\game\objects\items\bloody_eye.dm"
#include "nsv13\code\game\objects\items\bridge_items.dm"
Expand Down
14 changes: 14 additions & 0 deletions nsv13/code/game/objects/effects/custom_landmarks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@

/obj/effect/landmark/nuclear_waste_spawner //Clean way of spawning nuclear gunk after a reactor core meltdown.
name = "nuclear waste spawner"
icon = 'nsv13/icons/obj/landmark.dmi'
icon_state = "nuclear"
var/range = PLUTONIUM_SLUDGE_RANGE //tile radius to spawn goop
var/center_sludge = TRUE // Whether or not the center turf should spawn sludge or not.
var/static/list/avoid_objs = typecacheof(list( // List of objs that the waste does not spawn on
Expand Down Expand Up @@ -64,13 +66,25 @@
return TRUE

/obj/effect/landmark/nuclear_waste_spawner/strong
icon_state = "nuclear_strong"
range = PLUTONIUM_SLUDGE_RANGE_STRONG

/obj/effect/landmark/nuclear_waste_spawner/weak
icon_state = "nuclear_weak"
range = PLUTONIUM_SLUDGE_RANGE_WEAK
center_sludge = FALSE

#undef PLUTONIUM_SLUDGE_RANGE
#undef PLUTONIUM_SLUDGE_RANGE_STRONG
#undef PLUTONIUM_SLUDGE_RANGE_WEAK
#undef PLUTONIUM_SLUDGE_CHANCE

/obj/effect/landmark/iff_console_spawner
name = "IFF console spawn location"
icon = 'nsv13/icons/obj/landmark.dmi'
icon_state = "iff"

/obj/effect/landmark/iff_console_spawner/Initialize(mapload)
..()
get_overmap().ifflocs[get_turf(src)] = dir //Note that you can turn this one to choose which way the console faces
return INITIALIZE_HINT_QDEL
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,13 @@
/obj/effect/spawner/structure/window/reinforced/ship/prison
name = "nanocarbon prison window spawner"
spawn_list = list(/obj/structure/grille/prison, /obj/structure/window/reinforced/fulltile/ship, /obj/machinery/door/firedoor/window)

/obj/effect/spawner/structure/shield_generator
name = "Shield Generator Spawner"
icon = 'icons/effects/landmarks_static.dmi'
icon_state = "random_room"

/obj/effect/spawner/structure/shield_generator/Initialize()
if(prob(1))
spawn_list = list(/obj/machinery/shield_generator)
. = ..()

This file was deleted.

4 changes: 4 additions & 0 deletions nsv13/code/modules/overmap/boarding/interiors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ Attempt to "board" an AI ship. You can only do this when they're low on health t
SL.linked_overmap = null //Free that level up.
occupying_levels = list()
docking_points = list()
ifflocs = list()
SSair.can_fire = FALSE
for(var/turf/T in boarding_interior.get_affected_turfs(locate(1, 1, boarding_reservation_z), FALSE)) //nuke
T.empty()
Expand Down Expand Up @@ -204,6 +205,9 @@ The meat of this file. This will instance the dropship's interior in reserved sp

// Anything that needs to be done after the interior loads
/obj/structure/overmap/proc/post_load_interior()
if(length(ifflocs)) //Spawn the iff console at a random location!
var/turf/T = pick(ifflocs)
new /obj/structure/computer/iff_console(T, dir = ifflocs[T])
return

/obj/structure/overmap/proc/get_interior_center()
Expand Down
1 change: 1 addition & 0 deletions nsv13/code/modules/overmap/overmap.dm
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,7 @@
var/list/possible_interior_maps = null
var/interior_mode = NO_INTERIOR
var/list/interior_entry_points = list()
var/list/ifflocs = list() // List of potential IFF console locations
var/boarding_reservation_z = null //Do we have a reserved Z-level for boarding? This is set up on instance_overmap. Ships being boarded copy this value from the boarder.
var/obj/structure/overmap/active_boarding_target = null
var/static/next_boarding_time = 0 // This is stupid and lazy but it's 5am and I don't care anymore
Expand Down
Binary file added nsv13/icons/obj/landmark.dmi
Binary file not shown.

0 comments on commit 11f36c8

Please sign in to comment.