Skip to content

Commit

Permalink
Minimap addmarker refactor (#12882)
Browse files Browse the repository at this point in the history
Co-authored-by: TiviPlus <[email protected]>
  • Loading branch information
TiviPlus and TiviPlus authored May 7, 2023
1 parent 19c7164 commit 035b0d8
Show file tree
Hide file tree
Showing 20 changed files with 55 additions and 48 deletions.
25 changes: 13 additions & 12 deletions code/controllers/subsystem/minimaps.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,11 @@
* actual updating of marker locations is handled by [/datum/controller/subsystem/minimaps/proc/on_move]
* and zlevel changes are handled in [/datum/controller/subsystem/minimaps/proc/on_z_change]
* tracking of the actual atoms you want to be drawn on is done by means of datums holding info pertaining to them with [/datum/hud_displays]
*
* Todo
* *: batch images on add to remove list additons in fire()
* *: add fetching of images to allow stuff like adding/removing xeno crowns easily
* *: add a system for viscontents so things like minimap draw are more responsive
*/
SUBSYSTEM_DEF(minimaps)
name = "Minimaps"
Expand Down Expand Up @@ -201,27 +206,23 @@ SUBSYSTEM_DEF(minimaps)
* Adds an atom we want to track with blips to the subsystem
* Arguments:
* * target: atom we want to track
* * zlevel: zlevel we want this atom to be tracked for
* * hud_flags: tracked HUDs we want this atom to be displayed on
* * iconstate: iconstate for the blip we want to be used for this tracked atom
* * icon: icon file we want to use for this blip, 'icons/UI_icons/map_blips.dmi' by default
* * overlay_iconstates: list of iconstates to use as overlay. Used for xeno leader icons.
* * marker: image or mutable_appearance we want to be using on the map
*/
/datum/controller/subsystem/minimaps/proc/add_marker(atom/target, zlevel, hud_flags = NONE, iconstate, icon = 'icons/UI_icons/map_blips.dmi', list/overlay_list)
if(!isatom(target) || !zlevel || !hud_flags || !iconstate || !icon)
/datum/controller/subsystem/minimaps/proc/add_marker(atom/target, hud_flags = NONE, image/blip)
if(!isatom(target) || !hud_flags || !blip)
CRASH("Invalid marker added to subsystem")
if(!initialized)
earlyadds += CALLBACK(src, PROC_REF(add_marker), target, zlevel, hud_flags, iconstate, icon)
earlyadds += CALLBACK(src, PROC_REF(add_marker), target, hud_flags, blip)
return

var/image/blip = image(icon, iconstate, pixel_x = MINIMAP_PIXEL_FROM_WORLD(target.x) + minimaps_by_z["[zlevel]"].x_offset, pixel_y = MINIMAP_PIXEL_FROM_WORLD(target.y) + minimaps_by_z["[zlevel]"].y_offset)

blip.overlays = overlay_list
blip.pixel_x = MINIMAP_PIXEL_FROM_WORLD(target.x) + minimaps_by_z["[target.z]"].x_offset
blip.pixel_y = MINIMAP_PIXEL_FROM_WORLD(target.y) + minimaps_by_z["[target.z]"].y_offset

images_by_source[target] = blip
for(var/flag in bitfield2list(hud_flags))
minimaps_by_z["[zlevel]"].images_assoc["[flag]"][target] = blip
minimaps_by_z["[zlevel]"].images_raw["[flag]"] += blip
minimaps_by_z["[target.z]"].images_assoc["[flag]"][target] = blip
minimaps_by_z["[target.z]"].images_raw["[flag]"] += blip
if(ismovableatom(target))
RegisterSignal(target, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(on_z_change))
blip.RegisterSignal(target, COMSIG_MOVABLE_MOVED, TYPE_PROC_REF(/image, minimap_on_move))
Expand Down
2 changes: 1 addition & 1 deletion code/datums/jobs/job/xenomorph.dm
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@

/datum/job/xenomorph/after_spawn(mob/living/carbon/xenomorph/xeno, mob/M, latejoin)
. = ..()
SSminimaps.add_marker(xeno, xeno.z, hud_flags = MINIMAP_FLAG_XENO, iconstate = xeno.xeno_caste.minimap_icon)
SSminimaps.add_marker(xeno, MINIMAP_FLAG_XENO, image('icons/UI_icons/map_blips.dmi', null, xeno.xeno_caste.minimap_icon))

/datum/job/xenomorph/queen
title = ROLE_XENO_QUEEN
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@
///Setup an excavation
/obj/effect/landmark/excavation_site_spawner/proc/spawn_excavation_site()
rewards_typepath = pick(rewards_datums)
SSminimaps.add_marker(src, 2, hud_flags = MINIMAP_FLAG_EXCAVATION_ZONE, iconstate = initial(rewards_typepath.map_icon))
if(initial(rewards_typepath.map_icon))
SSminimaps.add_marker(src, MINIMAP_FLAG_EXCAVATION_ZONE, image('icons/UI_icons/map_blips.dmi', null, initial(rewards_typepath.map_icon)))

///Perform an excavation and revert the spawner to inactive state
/obj/effect/landmark/excavation_site_spawner/proc/excavate_site()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ GLOBAL_LIST_EMPTY(blood_particles)
return
var/datum/atom_hud/squad/squad_hud = GLOB.huds[hud_type]
squad_hud.add_to_hud(src)
SSminimaps.add_marker(src, src.z, marker_flags, icon_state_on, 'icons/UI_icons/map_blips_large.dmi')
SSminimaps.add_marker(src, marker_flags, image('icons/UI_icons/map_blips_large.dmi', null, icon_state_on))
set_visuals(faction)

/obj/effect/temp_visual/order/attack_order
Expand Down
4 changes: 3 additions & 1 deletion code/game/objects/items/devices/minimap_tablet.dm
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,9 @@ GLOBAL_PROTECT(roles_allowed_minimap_draw)
textbox.maptext = label_text

labelled_turfs += target
SSminimaps.add_marker(target, zlevel, minimap_flag, "label", 'icons/UI_icons/map_blips.dmi', list(textbox))
var/image/blip = image('icons/UI_icons/map_blips.dmi', null, "label")
blip.overlays += textbox
SSminimaps.add_marker(target, minimap_flag, blip)
log_minimap_drawing("[key_name(source)] has added the label [label_text] at [c_x], [c_y]")

/atom/movable/screen/minimap_tool/clear
Expand Down
12 changes: 6 additions & 6 deletions code/game/objects/items/radio/headset.dm
Original file line number Diff line number Diff line change
Expand Up @@ -276,15 +276,15 @@ GLOBAL_LIST_INIT(channel_tokens, list(
else if(hud_type == DATA_HUD_SQUAD_SOM)
marker_flags = MINIMAP_FLAG_MARINE_SOM
if(HAS_TRAIT(wearer, TRAIT_UNDEFIBBABLE))
SSminimaps.add_marker(wearer, wearer.z, marker_flags, "undefibbable")
SSminimaps.add_marker(wearer, marker_flags, image('icons/UI_icons/map_blips.dmi', null, "undefibbable"))
return
if(wearer.stat == DEAD)
SSminimaps.add_marker(wearer, wearer.z, marker_flags, "defibbable")
SSminimaps.add_marker(wearer, marker_flags, image('icons/UI_icons/map_blips.dmi', null, "defibbable"))
return
if(wearer.assigned_squad)
SSminimaps.add_marker(wearer, wearer.z, marker_flags, lowertext(wearer.assigned_squad.name)+"_"+wearer.job.minimap_icon)
SSminimaps.add_marker(wearer, marker_flags, image('icons/UI_icons/map_blips.dmi', null, lowertext(wearer.assigned_squad.name)+"_"+wearer.job.minimap_icon))
return
SSminimaps.add_marker(wearer, wearer.z, marker_flags, wearer.job.minimap_icon)
SSminimaps.add_marker(wearer, marker_flags, image('icons/UI_icons/map_blips.dmi', null, wearer.job.minimap_icon))

///Change the minimap icon to a dead icon
/obj/item/radio/headset/mainship/proc/set_dead_on_minimap()
Expand All @@ -299,7 +299,7 @@ GLOBAL_LIST_INIT(channel_tokens, list(
marker_flags = MINIMAP_FLAG_MARINE_REBEL
else if(hud_type == DATA_HUD_SQUAD_SOM)
marker_flags = MINIMAP_FLAG_MARINE_SOM
SSminimaps.add_marker(wearer, wearer.z, marker_flags, "defibbable")
SSminimaps.add_marker(wearer, marker_flags, image('icons/UI_icons/map_blips.dmi', null, "defibbable"))

///Change the minimap icon to a undefibbable icon
/obj/item/radio/headset/mainship/proc/set_undefibbable_on_minimap()
Expand All @@ -314,7 +314,7 @@ GLOBAL_LIST_INIT(channel_tokens, list(
marker_flags = MINIMAP_FLAG_MARINE_REBEL
else if(hud_type == DATA_HUD_SQUAD_SOM)
marker_flags = MINIMAP_FLAG_MARINE_SOM
SSminimaps.add_marker(wearer, wearer.z, marker_flags, "undefibbable")
SSminimaps.add_marker(wearer, marker_flags, image('icons/UI_icons/map_blips.dmi', null, "undefibbable"))

///Remove all action of type minimap from the wearer, and make him disappear from the minimap
/obj/item/radio/headset/mainship/proc/remove_minimap()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@
///Change minimap icon if its on or off
/obj/machinery/computer/nuke_disk_generator/proc/update_minimap_icon()
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_ALL, "[disk_color]_disk[current_timer ? "_on" : "_off"]", 'icons/UI_icons/map_blips_large.dmi')
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips_large.dmi', null, "[disk_color]_disk[current_timer ? "_on" : "_off"]"))

/obj/machinery/computer/nuke_disk_generator/red
name = "red nuke disk generator"
Expand Down
9 changes: 6 additions & 3 deletions code/game/objects/machinery/miner.dm
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,8 @@
* * For a miner starting broken, it should be overridden and immediately return instead, as broken miners will automatically set their minimap marker during their first process()
**/
/obj/machinery/miner/proc/init_marker()
SSminimaps.add_marker(src, z, hud_flags = MINIMAP_FLAG_ALL, iconstate = "miner_[mineral_value >= PLATINUM_CRATE_SELL_AMOUNT ? "platinum" : "phoron"]_on")
var/marker_icon = "miner_[mineral_value >= PLATINUM_CRATE_SELL_AMOUNT ? "platinum" : "phoron"]_on"
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, marker_icon))

/obj/machinery/miner/update_icon()
switch(miner_status)
Expand Down Expand Up @@ -283,7 +284,8 @@
if(miner_status != MINER_RUNNING || mineral_value == 0)
stop_processing()
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, hud_flags = MINIMAP_FLAG_ALL, iconstate = "miner_[mineral_value >= PLATINUM_CRATE_SELL_AMOUNT ? "platinum" : "phoron"]_off")
var/marker_icon = "miner_[mineral_value >= PLATINUM_CRATE_SELL_AMOUNT ? "platinum" : "phoron"]_off"
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, marker_icon))
return
if(add_tick >= required_ticks)
if(miner_upgrade_type == MINER_AUTOMATED)
Expand Down Expand Up @@ -340,7 +342,8 @@
if(100 to INFINITY)
start_processing()
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, hud_flags = MINIMAP_FLAG_ALL, iconstate = "miner_[mineral_value >= PLATINUM_CRATE_SELL_AMOUNT ? "platinum" : "phoron"]_on")
var/marker_icon = "miner_[mineral_value >= PLATINUM_CRATE_SELL_AMOUNT ? "platinum" : "phoron"]_on"
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, marker_icon))
miner_status = MINER_RUNNING
update_icon()

Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/machinery/nuclearbomb.dm
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,7 @@
///Change minimap icon if its on or off
/obj/machinery/nuclearbomb/proc/update_minimap_icon()
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_ALL, "nuke[timer_enabled ? "_on" : "_off"]", 'icons/UI_icons/map_blips_large.dmi')
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips_large.dmi', null, "nuke[timer_enabled ? "_on" : "_off"]"))

#undef NUKE_STAGE_NONE
#undef NUKE_STAGE_COVER_REMOVED
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/machinery/sellingpad.dm
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@
to_chat(user, "You bolt the [src] to the ground, activating it.")
playsound(loc, 'sound/items/ratchet.ogg', 25, TRUE)
icon_state = "broadcaster"
SSminimaps.add_marker(src, z, MINIMAP_FLAG_MARINE, "asrs")
SSminimaps.add_marker(src, MINIMAP_FLAG_MARINE, image('icons/UI_icons/map_blips.dmi', null, "asrs"))
else
to_chat(user, "You unbolt the [src] from the ground, deactivating it.")
playsound(loc, 'sound/items/ratchet.ogg', 25, TRUE)
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/machinery/squad_supply/supply_beacon.dm
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@
marker_flags = MINIMAP_FLAG_MARINE_SOM
else
marker_flags = MINIMAP_FLAG_MARINE
SSminimaps.add_marker(src, z, marker_flags, "supply")
SSminimaps.add_marker(src, marker_flags, image('icons/UI_icons/map_blips.dmi', null, "supply"))
update_icon()
return TRUE

Expand Down
10 changes: 5 additions & 5 deletions code/game/objects/structures/sensor_tower.dm
Original file line number Diff line number Diff line change
Expand Up @@ -53,13 +53,13 @@
switch(faction)
if(FACTION_TERRAGOV)
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_ALL, "loyalist_zone")
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, "loyalist_zone"))
if(FACTION_TERRAGOV_REBEL)
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_ALL, "rebel_zone")
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, "rebel_zone"))
else
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_ALL, "neutral_zone")
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, "neutral_zone"))

/obj/structure/sensor_tower_patrol
name = "sensor tower"
Expand Down Expand Up @@ -235,6 +235,6 @@
/obj/structure/sensor_tower_patrol/proc/update_control_minimap_icon()
SSminimaps.remove_marker(src)
if(activated)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_ALL, "relay_[towerid]_on_full")
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, "relay_[towerid]_on_full"))
else
SSminimaps.add_marker(src, z, MINIMAP_FLAG_ALL, "relay_[towerid][current_timer ? "_on" : "_off"]")
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, "relay_[towerid][current_timer ? "_on" : "_off"]"))
2 changes: 1 addition & 1 deletion code/game/objects/structures/teleporter.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@

/obj/machinery/deployable/teleporter/Initialize(mapload)
. = ..()
SSminimaps.add_marker(src, z, MINIMAP_FLAG_MARINE, "teleporter")
SSminimaps.add_marker(src, MINIMAP_FLAG_MARINE, image('icons/UI_icons/map_blips.dmi', null, "teleporter"))


/obj/machinery/deployable/teleporter/attack_hand(mob/living/user)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/events/intel_computer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,6 @@

/datum/round_event/intel_computer/proc/activate(obj/machinery/computer/intel_computer/I)
I.active = TRUE
SSminimaps.add_marker(I, I.z, MINIMAP_FLAG_ALL, "intel")
SSminimaps.add_marker(I, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, "intel"))
priority_announce("Our data sifting algorithm has detected valuable classified information on a access point in [get_area(I)]. Should this data be recovered by ground forces, a reward will be given in the form of increased assets.", title = "TGMC Intel Division")
xeno_message("We sense a looming threat from [get_area(I)]. We must keep the hosts away from there.")
2 changes: 1 addition & 1 deletion code/modules/mob/living/carbon/xenomorph/xenomorph.dm
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@
if(CONFIG_GET(flag/xenos_on_strike))
replace_by_ai()
if(z) //Larva are initiated in null space
SSminimaps.add_marker(src, z, hud_flags = MINIMAP_FLAG_XENO, iconstate = xeno_caste.minimap_icon)
SSminimaps.add_marker(src, MINIMAP_FLAG_XENO, image('icons/UI_icons/map_blips.dmi', null, xeno_caste.minimap_icon))
RegisterSignal(src, COMSIG_LIVING_WEEDS_ADJACENT_REMOVED, PROC_REF(handle_weeds_adjacent_removed))
RegisterSignal(src, COMSIG_LIVING_WEEDS_AT_LOC_CREATED, PROC_REF(handle_weeds_on_movement))
handle_weeds_on_movement()
Expand Down
6 changes: 3 additions & 3 deletions code/modules/mob/living/carbon/xenomorph/xenoprocs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -569,10 +569,10 @@
return

SSminimaps.remove_marker(src)
var/image/blip = image('icons/UI_icons/map_blips.dmi', null, xeno_caste.minimap_icon)
if(makeleader)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_XENO, xeno_caste.minimap_icon, overlay_list=list(image('icons/UI_icons/map_blips.dmi', null, xeno_caste.minimap_leadered_overlay)))
else
SSminimaps.add_marker(src, z, MINIMAP_FLAG_XENO, xeno_caste.minimap_icon)
blip.overlays += image('icons/UI_icons/map_blips.dmi', null, xeno_caste.minimap_leadered_overlay)
SSminimaps.add_marker(src, MINIMAP_FLAG_XENO, blip)

///updates the xeno's glow, based on the ability being used
/mob/living/carbon/xenomorph/proc/update_glow(range, power, color)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/power/groundmap_geothermal.dm
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ GLOBAL_VAR_INIT(generators_on_ground, 0)
. = ..()
RegisterSignal(SSdcs, list(COMSIG_GLOB_OPEN_TIMED_SHUTTERS_LATE, COMSIG_GLOB_OPEN_TIMED_SHUTTERS_XENO_HIVEMIND, COMSIG_GLOB_OPEN_SHUTTERS_EARLY, COMSIG_GLOB_TADPOLE_LAUNCHED), PROC_REF(activate_corruption))
update_icon()
SSminimaps.add_marker(src, z, hud_flags = MINIMAP_FLAG_ALL, iconstate = "generator")
SSminimaps.add_marker(src, MINIMAP_FLAG_ALL, image('icons/UI_icons/map_blips.dmi', null, "generator"))

if(corrupted)
corrupt(corrupted)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/sentries.dm
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@
marker_flags = MINIMAP_FLAG_MARINE_SOM
else
marker_flags = MINIMAP_FLAG_MARINE
SSminimaps.add_marker(src, z, marker_flags, "sentry[firing ? "_firing" : "_passive"]")
SSminimaps.add_marker(src, marker_flags, image('icons/UI_icons/map_blips.dmi', null, "sentry[firing ? "_firing" : "_passive"]"))

/obj/machinery/deployable/mounted/sentry/update_icon_state()
. = ..()
Expand Down
2 changes: 1 addition & 1 deletion code/modules/vehicles/unmanned/unmanned_vehicle.dm
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@
max_rounds = initial(spawn_equipped_type.max_rounds)
update_icon()
hud_set_uav_ammo()
SSminimaps.add_marker(src, z, MINIMAP_FLAG_MARINE, "uav")
SSminimaps.add_marker(src, MINIMAP_FLAG_MARINE, image('icons/UI_icons/map_blips.dmi', null, "uav"))

/obj/vehicle/unmanned/Destroy()
. = ..()
Expand Down
10 changes: 5 additions & 5 deletions code/modules/xenomorph/xeno_structures.dm
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,7 @@ TUNNEL
for(var/datum/atom_hud/xeno_tactical/xeno_tac_hud in GLOB.huds) //Add to the xeno tachud
xeno_tac_hud.add_to_hud(src)
hud_set_xeno_tunnel()
SSminimaps.add_marker(src, src.z, MINIMAP_FLAG_XENO, "xenotunnel")
SSminimaps.add_marker(src, MINIMAP_FLAG_XENO, image('icons/UI_icons/map_blips.dmi', null, "xenotunnel"))

/obj/structure/xeno/tunnel/Destroy()
var/turf/drop_loc = get_turf(src)
Expand Down Expand Up @@ -857,7 +857,7 @@ TUNNEL
///Change minimap icon if silo is under attack or not
/obj/structure/xeno/silo/proc/update_minimap_icon()
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_XENO, "silo[warning ? "_warn" : "_passive"]")
SSminimaps.add_marker(src, MINIMAP_FLAG_XENO, image('icons/UI_icons/map_blips.dmi', null, "silo[warning ? "_warn" : "_passive"]"))

/obj/structure/xeno/xeno_turret
icon = 'icons/Xeno/acidturret.dmi'
Expand Down Expand Up @@ -895,7 +895,7 @@ TUNNEL
///Change minimap icon if its firing or not firing
/obj/structure/xeno/xeno_turret/proc/update_minimap_icon()
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_XENO, "xeno_turret[firing ? "_firing" : "_passive"]")
SSminimaps.add_marker(src, MINIMAP_FLAG_XENO, image('icons/UI_icons/map_blips.dmi', null, "xeno_turret[firing ? "_firing" : "_passive"]"))

/obj/structure/xeno/xeno_turret/Initialize(mapload, _hivenumber)
. = ..()
Expand Down Expand Up @@ -1202,7 +1202,7 @@ TUNNEL

/obj/structure/xeno/pherotower/Initialize(mapload, _hivenumber)
. = ..()
SSminimaps.add_marker(src, z, MINIMAP_FLAG_XENO, "phero")
SSminimaps.add_marker(src, MINIMAP_FLAG_XENO, image('icons/UI_icons/map_blips.dmi', null, "phero"))
GLOB.hive_datums[hivenumber].pherotowers += src

//Pheromone towers start off with recovery.
Expand Down Expand Up @@ -1341,7 +1341,7 @@ TUNNEL
///Change minimap icon if spawner is under attack or not
/obj/structure/xeno/spawner/proc/update_minimap_icon()
SSminimaps.remove_marker(src)
SSminimaps.add_marker(src, z, MINIMAP_FLAG_XENO, "spawner[warning ? "_warn" : "_passive"]")
SSminimaps.add_marker(src, MINIMAP_FLAG_XENO, image('icons/UI_icons/map_blips.dmi', null, "spawner[warning ? "_warn" : "_passive"]"))

/obj/structure/xeno/spawner/proc/on_spawn(list/squad)
if(!isxeno(squad[length(squad)]))
Expand Down

0 comments on commit 035b0d8

Please sign in to comment.