Skip to content

Commit

Permalink
Netguardian darkvision & visual tweaks (#82919)
Browse files Browse the repository at this point in the history
## About The Pull Request


![image](https://github.com/tgstation/tgstation/assets/7483112/730a8d16-6489-4c7f-8c82-ae0d07598913)

This gives the Netguardian Prime mob a little bit of darkvision.
Reasoning: Some of these netrunning maps (like the alien hive) are very
dark, and this is a robot.

At the same time I added some emissives to its glowing eye and thrusters
to make them appear to emit light, and I removed the bobbing animation
we automate on flying mobs because its icon state has one already.

## Why It's Good For The Game

If we're going to spawn a mob in the dark it should probably be able to
see where it is.

## Changelog

:cl:
balance: Netguardian Prime can see in the dark.
image: You can see Netguardian Prime in the dark.
/:cl:
  • Loading branch information
Jacquerel committed Apr 29, 2024
1 parent d72724d commit 46861e4
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 3 deletions.
20 changes: 17 additions & 3 deletions code/modules/bitrunning/antagonists/netguardian.dm
Expand Up @@ -45,12 +45,17 @@
speech_span = SPAN_ROBOT
death_message = "malfunctions!"

lighting_cutoff_red = 30
lighting_cutoff_green = 5
lighting_cutoff_blue = 20

habitable_atmos = null
minimum_survivable_temperature = TCMB
ai_controller = /datum/ai_controller/basic_controller/netguardian

/mob/living/basic/netguardian/Initialize(mapload)
. = ..()
ADD_TRAIT(src, TRAIT_NO_FLOATING_ANIM, INNATE_TRAIT)
AddComponent(/datum/component/ranged_attacks, \
casing_type = /obj/item/ammo_casing/c46x30mm, \
projectile_sound = 'sound/weapons/gun/smg/shot.ogg', \
Expand All @@ -62,12 +67,19 @@
ai_controller.set_blackboard_key(BB_NETGUARDIAN_ROCKET_ABILITY, rockets)

AddElement(/datum/element/simple_flying)
update_appearance(UPDATE_OVERLAYS)

/mob/living/basic/netguardian/death(gibbed)
do_sparks(number = 3, cardinal_only = TRUE, source = src)
playsound(src, 'sound/mecha/weapdestr.ogg', 100)
return ..()

/mob/living/basic/netguardian/update_overlays()
. = ..()
if (stat == DEAD)
return
. += emissive_appearance(icon, "netguardian_emissive", src)

/datum/action/cooldown/mob_cooldown/projectile_attack/rapid_fire/netguardian
name = "2E Rocket Launcher"
button_icon = 'icons/obj/weapons/guns/ammo.dmi'
Expand All @@ -82,9 +94,11 @@
playsound(player, 'sound/mecha/skyfall_power_up.ogg', 120)
player.say("target acquired.", "machine")

var/mutable_appearance/scan_effect = mutable_appearance('icons/mob/nonhuman-player/netguardian.dmi', "scan")
var/mutable_appearance/rocket_effect = mutable_appearance('icons/mob/nonhuman-player/netguardian.dmi', "rockets")
var/list/overlays = list(scan_effect, rocket_effect)
var/overlay_icon = 'icons/mob/nonhuman-player/netguardian.dmi'
var/list/overlays = list()
overlays += mutable_appearance(overlay_icon, "scan")
overlays += mutable_appearance(overlay_icon, "rockets")
overlays += emissive_appearance(overlay_icon, "scan", player)
player.add_overlay(overlays)

StartCooldown()
Expand Down
Binary file modified icons/mob/nonhuman-player/netguardian.dmi
Binary file not shown.

0 comments on commit 46861e4

Please sign in to comment.