mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-02 13:02:38 +00:00
[MIRROR] Mining headset upgrade - Callouts and volume boosters (#29099)
* Mining headset upgrade - Callouts and volume boosters (#85008) ## About The Pull Request  Shift + middle clicking while wearing a mining headset will open a callout radial, after moving your mouse over one of the options a callout emote will appear where you pointed (No need to click on the radial button). Callouts have a 3 second cooldown to prevent spam and glow in the dark due to how dark lavaland is (normal point emotes do not) There are 6 options: pointing, danger, attack, mine, defend and reposition. Your callouts are colored in your runechat color. This is done via a component so later if needed it could be added to other headsets/mobs/items. Callouts also can initiate basic mob orders, being a better way to command your minebots in combat. Additionally, they also boost your speech back to normal levels in low-pressure environments, ensuring that your runechat is still nice and readable. ## Why It's Good For The Game This would make coop mining much more enjoyable, as stopping to type mid-fight is more often than not a death sentence on lavaland. With arcmining's vents cooperating is actually beneficial, and I feel like we should incentivize miners to do it more often by providing them with tools for it. ## Changelog 🆑 add: Mining headsets now allow you to make callouts via pointing. You can use them to communicate with fellow miners or order your army of bots and raptors! add: Mining headsets keep your voice loud and clear in low-pressure environments (not vacuum!) /🆑 * Mining headset upgrade - Callouts and volume boosters * add N --------- Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Co-authored-by: SpaceLoveSs13 <68121607+SpaceLoveSs13@users.noreply.github.com>
This commit is contained in:
@@ -41,6 +41,7 @@
|
||||
radial_icon = 'icons/testing/turf_analysis.dmi'
|
||||
radial_icon_state = "red_arrow"
|
||||
speech_commands = list("heel", "follow")
|
||||
callout_type = /datum/callout_option/move
|
||||
///the behavior we use to follow
|
||||
var/follow_behavior = /datum/ai_behavior/pet_follow_friend
|
||||
|
||||
@@ -124,6 +125,7 @@
|
||||
radial_icon = 'icons/effects/effects.dmi'
|
||||
radial_icon_state = "bite"
|
||||
|
||||
callout_type = /datum/callout_option/attack
|
||||
speech_commands = list("attack", "sic", "kill")
|
||||
command_feedback = "growl"
|
||||
pointed_reaction = "and growls"
|
||||
@@ -220,6 +222,7 @@
|
||||
command_name = "Protect owner"
|
||||
command_desc = "Your pet will run to your aid."
|
||||
hidden = TRUE
|
||||
callout_type = /datum/callout_option/guard
|
||||
///the range our owner needs to be in for us to protect him
|
||||
var/protect_range = 9
|
||||
///the behavior we will use when he is attacked
|
||||
@@ -250,6 +253,9 @@
|
||||
. = ..()
|
||||
set_command_target(parent, victim)
|
||||
|
||||
/datum/pet_command/protect_owner/valid_callout_target(mob/living/caller, datum/callout_option/callout, atom/target)
|
||||
return target == caller || get_dist(caller, target) <= 1
|
||||
|
||||
/datum/pet_command/protect_owner/proc/set_attacking_target(atom/source, mob/living/attacker)
|
||||
SIGNAL_HANDLER
|
||||
|
||||
|
||||
Reference in New Issue
Block a user