mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 21:18:37 +01:00
Pet Commands QOL . makes pet commands easier to use (#88495)
## About The Pull Request this PR improves the UX of pet commands a bit. i decided to expand on their radial menu. You can now hold shift and hover over your pet to display a menu of commands which you can choose from. alternatively, you can still type out commands in chat https://github.com/user-attachments/assets/9da7f7ea-58a3-4fd6-b040-45cc05cda51d ## Why It's Good For The Game makes pet commands easier to give out when you're managing more than 1 pet. also fixes the fishing command not working. ## Changelog 🆑 qol: holding shift and hovering over your pet will display a list of commands you can click from fix: fixes the fishing pet command not working /🆑
This commit is contained in:
@@ -42,13 +42,14 @@
|
||||
///the commands our owner can give us
|
||||
var/static/list/pet_commands = list(
|
||||
/datum/pet_command/idle/minebot,
|
||||
/datum/pet_command/move,
|
||||
/datum/pet_command/protect_owner/minebot,
|
||||
/datum/pet_command/minebot_ability/light,
|
||||
/datum/pet_command/minebot_ability/dump,
|
||||
/datum/pet_command/automate_mining,
|
||||
/datum/pet_command/free/minebot,
|
||||
/datum/pet_command/follow,
|
||||
/datum/pet_command/point_targeting/attack/minebot,
|
||||
/datum/pet_command/attack/minebot,
|
||||
)
|
||||
///possible colors the bot can have
|
||||
var/static/list/possible_colors= list(
|
||||
|
||||
@@ -281,14 +281,16 @@
|
||||
/datum/pet_command/automate_mining
|
||||
command_name = "Automate mining"
|
||||
command_desc = "Make your minebot automatically mine!"
|
||||
radial_icon = 'icons/obj/mining.dmi'
|
||||
radial_icon_state = "pickaxe"
|
||||
radial_icon_state = "mine"
|
||||
speech_commands = list("mine")
|
||||
callout_type = /datum/callout_option/mine
|
||||
|
||||
/datum/pet_command/automate_mining/valid_callout_target(mob/living/caller, datum/callout_option/callout, atom/target)
|
||||
return ismineralturf(target)
|
||||
|
||||
/datum/pet_command/automate_mining/retrieve_command_text(atom/living_pet, atom/target)
|
||||
return "signals [living_pet] to start mining!"
|
||||
|
||||
/datum/pet_command/automate_mining/execute_action(datum/ai_controller/controller)
|
||||
controller.set_blackboard_key(BB_AUTOMATED_MINING, TRUE)
|
||||
controller.clear_blackboard_key(BB_ACTIVE_PET_COMMAND)
|
||||
@@ -315,6 +317,9 @@
|
||||
radial_icon_state = "mech_lights_off"
|
||||
ability_key = BB_MINEBOT_LIGHT_ABILITY
|
||||
|
||||
/datum/pet_command/minebot_ability/light/retrieve_command_text(atom/living_pet, atom/target)
|
||||
return "signals [living_pet] to toggle its lights!"
|
||||
|
||||
/datum/pet_command/minebot_ability/dump
|
||||
command_name = "Dump ore"
|
||||
command_desc = "Make your minebot dump all its ore!"
|
||||
@@ -322,10 +327,13 @@
|
||||
radial_icon_state = "mech_eject"
|
||||
ability_key = BB_MINEBOT_DUMP_ABILITY
|
||||
|
||||
/datum/pet_command/point_targeting/attack/minebot
|
||||
/datum/pet_command/minebot_ability/light/retrieve_command_text(atom/living_pet, atom/target)
|
||||
return "signals [living_pet] to dump its ore!"
|
||||
|
||||
/datum/pet_command/attack/minebot
|
||||
attack_behaviour = /datum/ai_behavior/basic_ranged_attack/minebot
|
||||
|
||||
/datum/pet_command/point_targeting/attack/minebot/execute_action(datum/ai_controller/controller)
|
||||
/datum/pet_command/attack/minebot/execute_action(datum/ai_controller/controller)
|
||||
controller.set_blackboard_key(BB_AUTOMATED_MINING, FALSE)
|
||||
var/mob/living/living_pawn = controller.pawn
|
||||
if(!living_pawn.combat_mode)
|
||||
|
||||
Reference in New Issue
Block a user