refactor: rename action button appearance related variables and procs to be clearer (#25658)

* refactor: make action appearance creation more straightforward

* some adjustments

* fix: adjust action icons to refactor
This commit is contained in:
Gaxeer
2024-07-01 02:29:31 +00:00
committed by GitHub
parent 49599aa2f6
commit 32e46c02aa
88 changed files with 357 additions and 350 deletions
+1
View File
@@ -6,6 +6,7 @@
#define AB_CHECK_HANDS_BLOCKED (1<<5)
#define AB_CHECK_IMMOBILE (1<<6)
#define ACTION_BUTTON_DEFAULT_OVERLAY "default"
#define ACTION_BUTTON_DEFAULT_BACKGROUND "_use_ui_default_background"
+37 -33
View File
@@ -4,12 +4,15 @@
var/desc = null
var/obj/target = null
var/check_flags = 0
var/button_icon = 'icons/mob/actions/actions.dmi'
var/background_icon = 'icons/mob/actions/actions.dmi'
var/background_icon_state = ACTION_BUTTON_DEFAULT_BACKGROUND
/// Icon that our button screen object overlay and background
var/button_overlay_icon = 'icons/mob/actions/actions.dmi'
/// Icon state of screen object overlay
var/button_overlay_icon_state = ACTION_BUTTON_DEFAULT_OVERLAY
/// Icon that our button screen object background will have
var/button_background_icon = 'icons/mob/actions/actions.dmi'
/// Icon state of screen object background
var/button_background_icon_state = ACTION_BUTTON_DEFAULT_BACKGROUND
var/buttontooltipstyle = ""
var/icon_icon = 'icons/mob/actions/actions.dmi'
var/button_icon_state = "default"
var/transparent_when_unavailable = TRUE
var/mob/owner
/// Where any buttons we create should be by default. Accepts screen_loc and location defines
@@ -131,19 +134,19 @@
button.name = name
if(desc)
button.desc = "[desc] [initial(button.desc)]"
if(owner?.hud_used && background_icon_state == ACTION_BUTTON_DEFAULT_BACKGROUND)
if(owner?.hud_used && button_background_icon_state == ACTION_BUTTON_DEFAULT_BACKGROUND)
var/list/settings = owner.hud_used.get_action_buttons_icons()
if(button.icon != settings["bg_icon"])
button.icon = settings["bg_icon"]
if(button.icon_state != settings["bg_state"])
button.icon_state = settings["bg_state"]
else
if(button.icon != button_icon)
button.icon = button_icon
if(button.icon_state != background_icon_state)
button.icon_state = background_icon_state
if(button.icon != button_background_icon)
button.icon = button_background_icon
if(button.icon_state != button_background_icon_state)
button.icon_state = button_background_icon_state
ApplyIcon(button, force)
apply_button_overlay(button, force)
if(should_draw_cooldown())
apply_unavailable_effect(button)
@@ -225,10 +228,10 @@
B.add_overlay(img)
/datum/action/proc/ApplyIcon(atom/movable/screen/movable/action_button/current_button)
/datum/action/proc/apply_button_overlay(atom/movable/screen/movable/action_button/current_button)
current_button.cut_overlays()
if(icon_icon && button_icon_state)
var/image/img = image(icon_icon, current_button, button_icon_state)
if(button_overlay_icon && button_overlay_icon_state)
var/image/img = image(button_overlay_icon, current_button, button_overlay_icon_state)
img.appearance_flags = RESET_COLOR | RESET_ALPHA
img.pixel_x = 0
img.pixel_y = 0
@@ -245,8 +248,8 @@
I.actions += src
if(custom_icon && custom_icon_state)
use_itemicon = FALSE
icon_icon = custom_icon
button_icon_state = custom_icon_state
button_overlay_icon = custom_icon
button_overlay_icon_state = custom_icon_state
UpdateButtons()
/datum/action/item_action/Destroy()
@@ -263,7 +266,7 @@
I.ui_action_click(owner, type, left_click)
return TRUE
/datum/action/item_action/ApplyIcon(atom/movable/screen/movable/action_button/current_button)
/datum/action/item_action/apply_button_overlay(atom/movable/screen/movable/action_button/current_button)
if(use_itemicon)
if(target)
var/obj/item/I = target
@@ -299,7 +302,7 @@
/datum/action/item_action/print_forensic_report
name = "Print Report"
button_icon_state = "scanner_print"
button_overlay_icon_state = "scanner_print"
use_itemicon = FALSE
/datum/action/item_action/clear_records
@@ -358,7 +361,7 @@
/datum/action/item_action/toggle_unfriendly_fire
name = "Toggle Friendly Fire \[ON\]"
desc = "Toggles if the club's blasts cause friendly fire."
button_icon_state = "vortex_ff_on"
button_overlay_icon_state = "vortex_ff_on"
/datum/action/item_action/toggle_unfriendly_fire/Trigger(left_click)
if(..())
@@ -368,17 +371,17 @@
if(istype(target, /obj/item/hierophant_club))
var/obj/item/hierophant_club/H = target
if(H.friendly_fire_check)
button_icon_state = "vortex_ff_off"
button_overlay_icon_state = "vortex_ff_off"
name = "Toggle Friendly Fire \[OFF\]"
else
button_icon_state = "vortex_ff_on"
button_overlay_icon_state = "vortex_ff_on"
name = "Toggle Friendly Fire \[ON\]"
..()
/datum/action/item_action/vortex_recall
name = "Vortex Recall"
desc = "Recall yourself, and anyone nearby, to an attuned hierophant beacon at any time.<br>If the beacon is still attached, will detach it."
button_icon_state = "vortex_recall"
button_overlay_icon_state = "vortex_recall"
/datum/action/item_action/vortex_recall/IsAvailable()
if(istype(target, /obj/item/hierophant_club))
@@ -515,7 +518,7 @@
/datum/action/item_action/toggle_research_scanner
name = "Toggle Research Scanner"
button_icon_state = "scan_mode"
button_overlay_icon_state = "scan_mode"
/datum/action/item_action/toggle_research_scanner/Trigger(left_click)
if(IsAvailable())
@@ -528,10 +531,10 @@
owner.research_scanner = FALSE
..()
/datum/action/item_action/toggle_research_scanner/ApplyIcon(atom/movable/screen/movable/action_button/current_button)
/datum/action/item_action/toggle_research_scanner/apply_button_overlay(atom/movable/screen/movable/action_button/current_button)
current_button.cut_overlays()
if(button_icon && button_icon_state)
var/image/img = image(button_icon, current_button, "scan_mode")
if(button_overlay_icon && button_overlay_icon_state)
var/image/img = image(button_overlay_icon, current_button, "scan_mode")
img.appearance_flags = RESET_COLOR | RESET_ALPHA
current_button.overlays += img
@@ -557,14 +560,14 @@
/datum/action/item_action/slipping
name = "Tactical Slip"
desc = "Activates the clown shoes' ankle-stimulating module, allowing the user to do a short slip forward going under anyone."
button_icon_state = "clown"
button_overlay_icon_state = "clown"
// Jump boots
/datum/action/item_action/bhop
name = "Activate Jump Boots"
desc = "Activates the jump boot's internal propulsion system, allowing the user to dash over 4-wide gaps."
icon_icon = 'icons/mob/actions/actions.dmi'
button_icon_state = "jetboot"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "jetboot"
use_itemicon = FALSE
@@ -644,7 +647,7 @@
//Preset for spells
/datum/action/spell_action
check_flags = 0
background_icon_state = "bg_spell"
button_background_icon_state = "bg_spell"
var/recharge_text_color = "#FFFFFF"
/datum/action/spell_action/New(Target)
@@ -653,9 +656,10 @@
S.action = src
name = S.name
desc = S.desc
button_icon = S.action_icon
button_icon_state = S.action_icon_state
background_icon_state = S.action_background_icon_state
button_overlay_icon = S.action_icon
button_background_icon = S.action_background_icon
button_overlay_icon_state = S.action_icon_state
button_background_icon_state = S.action_background_icon_state
UpdateButtons()
+1 -1
View File
@@ -273,4 +273,4 @@
/datum/action/zoom
name = "Toggle Scope"
check_flags = AB_CHECK_CONSCIOUS|AB_CHECK_RESTRAINED|AB_CHECK_STUNNED|AB_CHECK_LYING
button_icon_state = "sniper_zoom"
button_overlay_icon_state = "sniper_zoom"
+1 -1
View File
@@ -176,7 +176,7 @@
/datum/action/innate/end_holocall
name = "End Holocall"
button_icon_state = "camera_off"
button_overlay_icon_state = "camera_off"
var/datum/holocall/hcall
/datum/action/innate/end_holocall/New(Target, datum/holocall/HC)
+1
View File
@@ -110,6 +110,7 @@ GLOBAL_LIST_INIT(spells, typesof(/datum/spell))
var/datum/action/spell_action/action = null
var/action_icon = 'icons/mob/actions/actions.dmi'
var/action_icon_state = "spell_default"
var/action_background_icon = 'icons/mob/actions/actions.dmi'
var/action_background_icon_state = "bg_spell"
var/sound = null //The sound the spell makes when it is cast
@@ -15,7 +15,7 @@
/datum/spell/alien_spell/neurotoxin/update_spell_icon()
if(!action)
return
action.button_icon_state = "alien_neurotoxin_[active]"
action.button_overlay_icon_state = "alien_neurotoxin_[active]"
action.UpdateButtons()
/datum/spell/alien_spell/neurotoxin/cast(list/targets, mob/living/carbon/user)
+1 -1
View File
@@ -362,7 +362,7 @@
/datum/spell/fireball/update_spell_icon()
if(!action)
return
action.button_icon_state = "fireball[active]"
action.button_overlay_icon_state = "fireball[active]"
action.UpdateButtons()
/datum/spell/fireball/cast(list/targets, mob/living/user = usr)
+15 -15
View File
@@ -1,7 +1,7 @@
/// Blood magic handles the creation of blood spells (formerly talismans)
/datum/action/innate/cult/blood_magic
name = "Prepare Blood Magic"
button_icon_state = "carve"
button_overlay_icon_state = "carve"
desc = "Prepare blood magic by carving runes into your flesh. This is easier with an <b>empowering rune</b>."
var/list/spells = list()
var/channeling = FALSE
@@ -91,7 +91,7 @@
/// The next generation of talismans, handles storage/creation of blood magic
/datum/action/innate/cult/blood_spell
name = "Blood Magic"
button_icon_state = "telerune"
button_overlay_icon_state = "telerune"
desc = "Fear the Old Blood."
var/charges = 1
var/magic_path = null
@@ -168,21 +168,21 @@
/datum/action/innate/cult/blood_spell/stun
name = "Stun"
desc = "Will knock down and mute a victim on contact. Strike them with a cult blade to complete the invocation, stunning them and extending the mute."
button_icon_state = "stun"
button_overlay_icon_state = "stun"
magic_path = /obj/item/melee/blood_magic/stun
health_cost = 10
/datum/action/innate/cult/blood_spell/teleport
name = "Teleport"
desc = "Empowers your hand to teleport yourself or another cultist to a teleport rune on contact."
button_icon_state = "teleport"
button_overlay_icon_state = "teleport"
magic_path = /obj/item/melee/blood_magic/teleport
health_cost = 7
/datum/action/innate/cult/blood_spell/emp
name = "Electromagnetic Pulse"
desc = "Releases an Electromagnetic Pulse, affecting nearby non-cultists. <b>The pulse will still affect you.</b>"
button_icon_state = "emp"
button_overlay_icon_state = "emp"
health_cost = 10
invocation = "Ta'gh fara'qha fel d'amar det!"
@@ -218,24 +218,24 @@
/datum/action/innate/cult/blood_spell/shackles
name = "Shadow Shackles"
desc = "Empowers your hand to start handcuffing victim on contact, and mute them if successful."
button_icon_state = "shackles"
button_overlay_icon_state = "shackles"
charges = 4
magic_path = /obj/item/melee/blood_magic/shackles
/datum/action/innate/cult/blood_spell/construction
name = "Twisted Construction"
desc = "Empowers your hand to corrupt certain metalic objects.<br><u>Converts:</u><br>Plasteel into runed metal<br>50 metal into a construct shell<br>Cyborg shells into construct shells<br>Airlocks into brittle runed airlocks after a delay (harm intent)"
button_icon_state = "transmute"
button_overlay_icon_state = "transmute"
magic_path = "/obj/item/melee/blood_magic/construction"
health_cost = 12
/datum/action/innate/cult/blood_spell/dagger
name = "Summon Dagger"
desc = "Summon a ritual dagger, necessary to scribe runes."
button_icon_state = "cult_dagger"
button_overlay_icon_state = "cult_dagger"
/datum/action/innate/cult/blood_spell/dagger/New()
button_icon_state = GET_CULT_DATA(dagger_icon, "cult_dagger")
button_overlay_icon_state = GET_CULT_DATA(dagger_icon, "cult_dagger")
..()
/datum/action/innate/cult/blood_spell/dagger/Activate()
@@ -258,13 +258,13 @@
/datum/action/innate/cult/blood_spell/equipment
name = "Summon Equipment"
desc = "Empowers your hand to summon combat gear onto a cultist you touch, including cult armor into open slots, a cult bola, and a cult sword."
button_icon_state = "equip"
button_overlay_icon_state = "equip"
magic_path = /obj/item/melee/blood_magic/armor
/datum/action/innate/cult/blood_spell/horror
name = "Hallucinations"
desc = "Gives hallucinations to a target at range. A silent and invisible spell."
button_icon_state = "horror"
button_overlay_icon_state = "horror"
var/datum/spell/horror/PH
charges = 4
@@ -330,7 +330,7 @@
name = "Conceal Presence"
desc = "Alternates between hiding and revealing nearby cult structures, cult airlocks and runes."
invocation = "Kla'atu barada nikt'o!"
button_icon_state = "veiling"
button_overlay_icon_state = "veiling"
charges = 10
var/revealing = FALSE //if it reveals or not
@@ -350,7 +350,7 @@
O.cult_conceal()
revealing = TRUE // Switch on use
name = "Reveal Runes"
button_icon_state = "revealing"
button_overlay_icon_state = "revealing"
else // Unhiding stuff
owner.visible_message("<span class='warning'>A flash of light shines from [owner]'s hand!</span>", \
@@ -365,7 +365,7 @@
O.cult_reveal()
revealing = FALSE // Switch on use
name = "Conceal Runes"
button_icon_state = "veiling"
button_overlay_icon_state = "veiling"
if(charges <= 0)
qdel(src)
desc = "[revealing ? "Reveals" : "Conceals"] nearby cult structures, airlocks, and runes."
@@ -377,7 +377,7 @@
desc = "Empowers your hand to manipulate blood. Use on blood or a noncultist to absorb blood to be used later, use on yourself or another cultist to heal them using absorbed blood. \
\nUse the spell in-hand to cast advanced rites, such as summoning a magical blood spear, firing blood projectiles out of your hands, and more!"
invocation = "Fel'th Dol Ab'orod!"
button_icon_state = "manip"
button_overlay_icon_state = "manip"
charges = 5
magic_path = /obj/item/melee/blood_magic/manipulator
+7 -7
View File
@@ -1,6 +1,6 @@
/datum/action/innate/cult
icon_icon = 'icons/mob/actions/actions_cult.dmi'
background_icon_state = "bg_cult"
button_overlay_icon = 'icons/mob/actions/actions_cult.dmi'
button_background_icon_state = "bg_cult"
check_flags = AB_CHECK_RESTRAINED|AB_CHECK_STUNNED|AB_CHECK_CONSCIOUS
buttontooltipstyle = "cult"
@@ -14,7 +14,7 @@
/datum/action/innate/cult/comm
name = "Communion"
desc = "Whispered words that all cultists can hear.<br><b>Warning:</b>Nearby non-cultists can still hear you."
button_icon_state = "cult_comms"
button_overlay_icon_state = "cult_comms"
check_flags = AB_CHECK_CONSCIOUS
/datum/action/innate/cult/comm/Activate()
@@ -87,12 +87,12 @@
//Objectives
/datum/action/innate/cult/check_progress
name = "Study the Veil"
button_icon_state = "tome"
button_overlay_icon_state = "tome"
desc = "Check your cult's current progress and objective."
check_flags = AB_CHECK_CONSCIOUS
/datum/action/innate/cult/check_progress/New()
button_icon_state = GET_CULT_DATA(tome_icon, "tome")
button_overlay_icon_state = GET_CULT_DATA(tome_icon, "tome")
..()
/datum/action/innate/cult/check_progress/IsAvailable()
@@ -111,11 +111,11 @@
/datum/action/innate/cult/use_dagger
name = "Draw Blood Rune"
desc = "Use the ritual dagger to create a powerful blood rune"
button_icon_state = "blood_dagger"
button_overlay_icon_state = "blood_dagger"
default_button_position = "6:157,4:-2"
/datum/action/innate/cult/use_dagger/Grant()
button_icon_state = GET_CULT_DATA(dagger_icon, "blood_dagger")
button_overlay_icon_state = GET_CULT_DATA(dagger_icon, "blood_dagger")
..()
/datum/action/innate/cult/use_dagger/Activate()
+2 -2
View File
@@ -645,8 +645,8 @@
/datum/action/innate/cult/spear
name = "Bloody Bond"
desc = "Call the blood spear back to your hand!"
background_icon_state = "bg_cult"
button_icon_state = "bloodspear"
button_background_icon_state = "bg_cult"
button_overlay_icon_state = "bloodspear"
var/obj/item/cult_spear/spear
var/cooldown = 0
default_button_position = "6:157,4:-2"
@@ -68,7 +68,7 @@
/datum/action/innate/teleport_in
name = "Send To"
button_icon_state = "beam_down"
button_overlay_icon_state = "beam_down"
/datum/action/innate/teleport_in/Activate()
if(!target || !iscarbon(owner))
@@ -82,7 +82,7 @@
/datum/action/innate/teleport_out
name = "Retrieve"
button_icon_state = "beam_up"
button_overlay_icon_state = "beam_up"
/datum/action/innate/teleport_out/Activate()
if(!target || !iscarbon(owner))
@@ -95,7 +95,7 @@
/datum/action/innate/teleport_self
name = "Send Self"
button_icon_state = "beam_down"
button_overlay_icon_state = "beam_down"
/datum/action/innate/teleport_self/Activate()
if(!target || !iscarbon(owner))
@@ -109,7 +109,7 @@
/datum/action/innate/vest_mode_swap
name = "Switch Vest Mode"
button_icon_state = "vest_mode"
button_overlay_icon_state = "vest_mode"
/datum/action/innate/vest_mode_swap/Activate()
if(!target || !iscarbon(owner))
@@ -120,7 +120,7 @@
/datum/action/innate/vest_disguise_swap
name = "Switch Vest Disguise"
button_icon_state = "vest_disguise"
button_overlay_icon_state = "vest_disguise"
/datum/action/innate/vest_disguise_swap/Activate()
if(!target || !iscarbon(owner))
@@ -130,7 +130,7 @@
/datum/action/innate/set_droppoint
name = "Set Experiment Release Point"
button_icon_state = "set_drop"
button_overlay_icon_state = "set_drop"
/datum/action/innate/set_droppoint/Activate()
if(!target || !iscarbon(owner))
@@ -151,8 +151,8 @@
AddSpell(new /datum/spell/fireball/shadow_grapple)
var/datum/spell/bloodcrawl/shadow_crawl/S = new
AddSpell(S)
whisper_action.button_icon_state = "shadow_whisper"
whisper_action.background_icon_state = "shadow_demon_bg"
whisper_action.button_overlay_icon_state = "shadow_whisper"
whisper_action.button_background_icon_state = "shadow_demon_bg"
if(istype(loc, /obj/effect/dummy/slaughter))
S.phased = TRUE
RegisterSignal(loc, COMSIG_MOVABLE_MOVED, TYPE_PROC_REF(/mob/living/simple_animal/demon/shadow, check_darkness))
@@ -166,8 +166,8 @@
/datum/action/innate/demon/whisper
name = "Demonic Whisper"
button_icon_state = "demon_comms"
background_icon_state = "bg_demon"
button_overlay_icon_state = "demon_comms"
button_background_icon_state = "bg_demon"
/datum/action/innate/demon/whisper/IsAvailable()
return ..()
@@ -5,8 +5,8 @@
*/
/datum/action/guardian
name = "Generic guardian host action"
icon_icon = 'icons/mob/guardian.dmi'
button_icon_state = "base"
button_background_icon = 'icons/mob/guardian.dmi'
button_overlay_icon_state = "base"
var/mob/living/simple_animal/hostile/guardian/guardian
/datum/action/guardian/Grant(mob/M, mob/living/simple_animal/hostile/guardian/G)
@@ -24,7 +24,7 @@
/datum/action/guardian/communicate
name = "Communicate"
desc = "Communicate telepathically with your guardian."
button_icon_state = "communicate"
button_overlay_icon_state = "communicate"
/datum/action/guardian/communicate/Trigger(left_click)
var/input = tgui_input_text(owner, "Enter a message to tell your guardian:", "Message")
@@ -50,7 +50,7 @@
/datum/action/guardian/recall
name = "Recall Guardian"
desc = "Forcibly recall your guardian."
button_icon_state = "recall"
button_overlay_icon_state = "recall"
/datum/action/guardian/recall/Trigger(left_click)
guardian.Recall()
@@ -63,7 +63,7 @@
/datum/action/guardian/reset_guardian
name = "Replace Guardian Player"
desc = "Replace your guardian's player with a ghost. This can only be done once."
button_icon_state = "reset"
button_overlay_icon_state = "reset"
var/cooldown_timer
/datum/action/guardian/reset_guardian/IsAvailable()
@@ -108,8 +108,8 @@
clothes_req = FALSE
base_cooldown = 300 SECONDS
action_icon_state = "no_state"
action_background_icon = 'icons/mob/guardian.dmi'
action_background_icon_state = "reset"
action_icon = 'icons/mob/guardian.dmi'
/datum/spell/summon_guardian_beacon/create_new_targeting()
return new /datum/spell_targeting/self
@@ -131,8 +131,8 @@
clothes_req = FALSE
base_cooldown = 3 SECONDS
action_icon_state = "no_state"
action_background_icon = 'icons/mob/guardian.dmi'
action_background_icon_state = "reset"
action_icon = 'icons/mob/guardian.dmi'
/datum/spell/surveillance_snare/create_new_targeting()
return new /datum/spell_targeting/self
@@ -162,8 +162,8 @@
clothes_req = FALSE
base_cooldown = 1 SECONDS
action_icon_state = "no_state"
action_background_icon = 'icons/mob/guardian.dmi'
action_background_icon_state = "communicate"
action_icon = 'icons/mob/guardian.dmi'
/datum/spell/choose_battlecry/create_new_targeting()
return new /datum/spell_targeting/self
@@ -151,8 +151,8 @@
update_glow()
playsound(get_turf(src), 'sound/effects/eleczap.ogg', 30, TRUE)
give_spells()
whisper_action.button_icon_state = "pulse_whisper"
whisper_action.background_icon_state = "bg_pulsedemon"
whisper_action.button_overlay_icon_state = "pulse_whisper"
whisper_action.button_background_icon_state = "bg_pulsedemon"
/mob/living/simple_animal/demon/pulse_demon/proc/deleted_handler(our_demon, force)
SIGNAL_HANDLER
@@ -255,7 +255,7 @@
/datum/spell/pulse_demon/toggle/proc/do_toggle(varstate, mob/user)
if(action)
action.background_icon_state = varstate ? action_background_icon_state : "[action_background_icon_state]_disabled"
action.button_background_icon_state = varstate ? action_background_icon_state : "[action_background_icon_state]_disabled"
action.UpdateButtons()
if(user)
to_chat(user, "<span class='notice'>You will [varstate ? "now" : "no longer"] [base_message]</span>")
+3 -3
View File
@@ -393,14 +393,14 @@
//action given to antag clowns
/datum/action/innate/toggle_clumsy
name = "Toggle Clown Clumsy"
button_icon_state = "clown"
button_overlay_icon_state = "clown"
/datum/action/innate/toggle_clumsy/Activate()
var/mob/living/carbon/human/H = owner
H.dna.SetSEState(GLOB.clumsyblock, TRUE)
singlemutcheck(H, GLOB.clumsyblock, MUTCHK_FORCED)
active = TRUE
background_icon_state = "bg_spell"
button_background_icon_state = "bg_spell"
UpdateButtons()
to_chat(H, "<span class='notice'>You start acting clumsy to throw suspicions off. Focus again before using weapons.</span>")
@@ -409,7 +409,7 @@
H.dna.SetSEState(GLOB.clumsyblock, FALSE)
singlemutcheck(H, GLOB.clumsyblock, MUTCHK_FORCED)
active = FALSE
background_icon_state = "bg_default"
button_background_icon_state = "bg_default"
UpdateButtons()
to_chat(H, "<span class='notice'>You focus and can now use weapons regularly.</span>")
@@ -165,7 +165,7 @@
/datum/action/innate/camera_off
name = "End Camera View"
button_icon_state = "camera_off"
button_overlay_icon_state = "camera_off"
/datum/action/innate/camera_off/Activate()
if(!target || !iscarbon(target))
@@ -177,7 +177,7 @@
/datum/action/innate/camera_jump
name = "Jump To Camera"
button_icon_state = "camera_jump"
button_overlay_icon_state = "camera_jump"
/datum/action/innate/camera_jump/Activate()
if(!target || !iscarbon(target))
+24 -23
View File
@@ -21,7 +21,7 @@
/datum/action/innate/mecha
check_flags = AB_CHECK_RESTRAINED | AB_CHECK_STUNNED | AB_CHECK_CONSCIOUS
icon_icon = 'icons/mob/actions/actions_mecha.dmi'
button_overlay_icon = 'icons/mob/actions/actions_mecha.dmi'
var/obj/mecha/chassis
/datum/action/innate/mecha/Grant(mob/living/L, obj/mecha/M)
@@ -35,7 +35,7 @@
/datum/action/innate/mecha/mech_eject
name = "Eject From Mech"
button_icon_state = "mech_eject"
button_overlay_icon_state = "mech_eject"
/datum/action/innate/mecha/mech_eject/Activate()
if(!owner)
@@ -46,20 +46,20 @@
/datum/action/innate/mecha/mech_toggle_internals
name = "Toggle Internal Airtank Usage"
button_icon_state = "mech_internals_off"
button_overlay_icon_state = "mech_internals_off"
/datum/action/innate/mecha/mech_toggle_internals/Activate()
if(!owner || !chassis || chassis.occupant != owner)
return
chassis.use_internal_tank = !chassis.use_internal_tank
button_icon_state = "mech_internals_[chassis.use_internal_tank ? "on" : "off"]"
button_overlay_icon_state = "mech_internals_[chassis.use_internal_tank ? "on" : "off"]"
chassis.occupant_message("Now taking air from [chassis.use_internal_tank ? "internal airtank" : "environment"].")
chassis.log_message("Now taking air from [chassis.use_internal_tank ? "internal airtank" : "environment"].")
UpdateButtons()
/datum/action/innate/mecha/mech_toggle_lights
name = "Toggle Lights"
button_icon_state = "mech_lights_off"
button_overlay_icon_state = "mech_lights_off"
/datum/action/innate/mecha/mech_toggle_lights/Activate()
if(!owner || !chassis || chassis.occupant != owner)
@@ -67,17 +67,17 @@
chassis.lights = !chassis.lights
if(chassis.lights)
chassis.set_light(chassis.lights_power)
button_icon_state = "mech_lights_on"
button_overlay_icon_state = "mech_lights_on"
else
chassis.set_light(-chassis.lights_power)
button_icon_state = "mech_lights_off"
button_overlay_icon_state = "mech_lights_off"
chassis.occupant_message("Toggled lights [chassis.lights ? "on" : "off"].")
chassis.log_message("Toggled lights [chassis.lights ? "on" : "off"].")
UpdateButtons()
/datum/action/innate/mecha/mech_view_stats
name = "View Stats"
button_icon_state = "mech_view_stats"
button_overlay_icon_state = "mech_view_stats"
/datum/action/innate/mecha/mech_view_stats/Activate()
if(!owner || !chassis || chassis.occupant != owner)
@@ -86,7 +86,7 @@
/datum/action/innate/mecha/mech_defence_mode
name = "Toggle Defence Mode"
button_icon_state = "mech_defense_mode_off"
button_overlay_icon_state = "mech_defense_mode_off"
/datum/action/innate/mecha/mech_defence_mode/Activate(forced_state = null)
if(!owner || !chassis || chassis.occupant != owner)
@@ -95,7 +95,7 @@
chassis.defence_mode = forced_state
else
chassis.defence_mode = !chassis.defence_mode
button_icon_state = "mech_defense_mode_[chassis.defence_mode ? "on" : "off"]"
button_overlay_icon_state = "mech_defense_mode_[chassis.defence_mode ? "on" : "off"]"
if(chassis.defence_mode)
chassis.deflect_chance = chassis.defence_mode_deflect_chance
chassis.occupant_message("<span class='notice'>You enable [chassis] defence mode.</span>")
@@ -107,7 +107,7 @@
/datum/action/innate/mecha/mech_overload_mode
name = "Toggle leg actuators overload"
button_icon_state = "mech_overload_off"
button_overlay_icon_state = "mech_overload_off"
/datum/action/innate/mecha/mech_overload_mode/Activate(forced_state = null)
if(!owner || !chassis || chassis.occupant != owner)
@@ -119,7 +119,7 @@
chassis.leg_overload_mode = forced_state
else
chassis.leg_overload_mode = !chassis.leg_overload_mode
button_icon_state = "mech_overload_[chassis.leg_overload_mode ? "on" : "off"]"
button_overlay_icon_state = "mech_overload_[chassis.leg_overload_mode ? "on" : "off"]"
chassis.log_message("Toggled leg actuators overload.")
if(chassis.leg_overload_mode)
chassis.leg_overload_mode = 1
@@ -137,7 +137,7 @@
/datum/action/innate/mecha/mech_toggle_thrusters
name = "Toggle Thrusters"
button_icon_state = "mech_thrusters_off"
button_overlay_icon_state = "mech_thrusters_off"
/datum/action/innate/mecha/mech_toggle_thrusters/Activate()
if(!owner || !chassis || chassis.occupant != owner)
@@ -146,13 +146,13 @@
chassis.thrusters_active = !chassis.thrusters_active
if(!chassis.thrusters_active)
chassis.step_in = initial(chassis.step_in)
button_icon_state = "mech_thrusters_[chassis.thrusters_active ? "on" : "off"]"
button_overlay_icon_state = "mech_thrusters_[chassis.thrusters_active ? "on" : "off"]"
chassis.log_message("Toggled thrusters.")
chassis.occupant_message("<font color='[chassis.thrusters_active ? "blue" : "red"]'>Thrusters [chassis.thrusters_active ? "en" : "dis"]abled.")
/datum/action/innate/mecha/mech_smoke
name = "Smoke"
button_icon_state = "mech_smoke"
button_overlay_icon_state = "mech_smoke"
/datum/action/innate/mecha/mech_smoke/Activate()
if(!owner || !chassis || chassis.occupant != owner)
@@ -168,14 +168,14 @@
/datum/action/innate/mecha/mech_zoom
name = "Zoom"
button_icon_state = "mech_zoom_off"
button_overlay_icon_state = "mech_zoom_off"
/datum/action/innate/mecha/mech_zoom/Activate()
if(!owner || !chassis || chassis.occupant != owner)
return
if(owner.client)
chassis.zoom_mode = !chassis.zoom_mode
button_icon_state = "mech_zoom_[chassis.zoom_mode ? "on" : "off"]"
button_overlay_icon_state = "mech_zoom_[chassis.zoom_mode ? "on" : "off"]"
chassis.log_message("Toggled zoom mode.")
chassis.occupant_message("<font color='[chassis.zoom_mode ? "blue" : "red"]'>Zoom mode [chassis.zoom_mode ? "en" : "dis"]abled.</font>")
if(chassis.zoom_mode)
@@ -187,20 +187,20 @@
/datum/action/innate/mecha/mech_toggle_phasing
name = "Toggle Phasing"
button_icon_state = "mech_phasing_off"
button_overlay_icon_state = "mech_phasing_off"
/datum/action/innate/mecha/mech_toggle_phasing/Activate()
if(!owner || !chassis || chassis.occupant != owner)
return
chassis.phasing = !chassis.phasing
button_icon_state = "mech_phasing_[chassis.phasing ? "on" : "off"]"
button_overlay_icon_state = "mech_phasing_[chassis.phasing ? "on" : "off"]"
chassis.occupant_message("<font color=\"[chassis.phasing?"#00f\">En":"#f00\">Dis"]abled phasing.</font>")
UpdateButtons()
/datum/action/innate/mecha/mech_switch_damtype
name = "Reconfigure arm microtool arrays"
button_icon_state = "mech_damtype_brute"
button_overlay_icon_state = "mech_damtype_brute"
/datum/action/innate/mecha/mech_switch_damtype/Activate()
if(!owner || !chassis || chassis.occupant != owner)
@@ -217,7 +217,7 @@
new_damtype = "tox"
chassis.occupant_message("A bone-chillingly thick plasteel needle protracts from the exosuit's palm.")
chassis.damtype = new_damtype
button_icon_state = "mech_damtype_[new_damtype]"
button_overlay_icon_state = "mech_damtype_[new_damtype]"
playsound(src, 'sound/mecha/mechmove01.ogg', 50, TRUE)
UpdateButtons()
@@ -229,8 +229,9 @@
if(!_equipment)
return FALSE
equipment = _equipment
icon_icon = equipment.icon
button_icon_state = equipment.icon_state
button_overlay_icon = equipment.icon
button_overlay_icon_state = equipment.icon_state
. = ..()
name = "Switch module to [equipment.name]"
return ..()
@@ -18,8 +18,8 @@
name = "Deploy Box"
desc = "Find inner peace, here, in the box."
check_flags = AB_CHECK_HANDS_BLOCKED | AB_CHECK_IMMOBILE | AB_CHECK_CONSCIOUS | AB_CHECK_STUNNED
background_icon_state = "bg_agent"
button_icon_state = "deploy_box"
button_background_icon_state = "bg_agent"
button_overlay_icon_state = "deploy_box"
use_itemicon = FALSE
/// If TRUE, the box can't be deployed
var/on_cooldown = FALSE
@@ -3,7 +3,7 @@
/datum/action/changeling
name = "Prototype Sting"
desc = "" // Fluff
background_icon_state = "bg_changeling"
button_background_icon_state = "bg_changeling"
/// A reference to the changeling's changeling antag datum.
var/datum/antagonist/changeling/cling
/// Datum path used to determine the location and name of the power in changeling evolution menu UI
@@ -6,7 +6,7 @@
/datum/action/changeling/evolution_menu
name = "Evolution Menu"
desc = "Choose our method of subjugation."
button_icon_state = "changelingsting"
button_overlay_icon_state = "changelingsting"
power_type = CHANGELING_INNATE_POWER
/// Which UI view will be displayed. Compact mode will show only power names, and will leave out their descriptions and helptext.
var/view_mode = EXPANDED_MODE
@@ -1,7 +1,7 @@
/datum/action/changeling/absorbDNA
name = "Absorb DNA"
desc = "Absorb the DNA of our victim. Requires us to strangle them."
button_icon_state = "absorb_dna"
button_overlay_icon_state = "absorb_dna"
chemical_cost = 0
power_type = CHANGELING_INNATE_POWER
req_human = TRUE
@@ -2,7 +2,7 @@
name = "Apex Predator"
desc = "We evolve a keen intuition, allowing us to detect the anxieties of nearby lifeforms."
helptext = "We will be able to detect the direction and room our prey is in, as well as if they have any injuries."
button_icon_state = "predator"
button_overlay_icon_state = "predator"
dna_cost = 1
power_type = CHANGELING_PURCHASABLE_POWER
category = /datum/changeling_power_category/utility
@@ -2,7 +2,7 @@
name = "Augmented Eyesight"
desc = "Creates more light sensing rods in our eyes, allowing our vision to penetrate most blocking objects. Protects our vision from flashes while inactive."
helptext = "Grants us x-ray vision or flash protection. We will become a lot more vulnerable to flash-based devices while x-ray vision is active."
button_icon_state = "augmented_eyesight"
button_overlay_icon_state = "augmented_eyesight"
chemical_cost = 0
dna_cost = 4
active = FALSE
@@ -2,7 +2,7 @@
name = "Last Resort"
desc = "We sacrifice our current body in a moment of need, placing us in control of a vessel that can plant our likeness in a new host. Costs 20 chemicals."
helptext = "We will be placed in control of a small, fragile creature. We may attack a corpse like this to plant an egg which will slowly mature into a new form for us."
button_icon_state = "last_resort"
button_overlay_icon_state = "last_resort"
chemical_cost = 20
dna_cost = 2
req_human = TRUE
@@ -2,7 +2,7 @@
name = "Biodegrade"
desc = "Dissolves restraints or other objects preventing free movement if we are restrained. Prepares hand to vomit acid on other objects, doesn't work on living targets. Costs 30 chemicals."
helptext = "This is obvious to nearby people, and can destroy standard restraints and closets, and break you out of grabs."
button_icon_state = "biodegrade"
button_overlay_icon_state = "biodegrade"
chemical_cost = 30 //High cost to prevent spam
dna_cost = 4
req_human = TRUE
@@ -2,7 +2,7 @@
name = "Chameleon Skin"
desc = "Our skin pigmentation rapidly changes to suit our current environment. Costs 25 chemicals."
helptext = "Allows us to become invisible after a few seconds of standing still. While active, it silences our footsteps. Can be toggled on and off."
button_icon_state = "chameleon_skin"
button_overlay_icon_state = "chameleon_skin"
dna_cost = 4
chemical_cost = 25
req_human = TRUE
@@ -1,7 +1,7 @@
/datum/action/changeling/contort_body
name = "Contort Body"
desc = "We contort our body, allowing us to fit in and under things we normally wouldn't be able to. Costs 25 chemicals."
button_icon_state = "contort_body"
button_overlay_icon_state = "contort_body"
chemical_cost = 25
dna_cost = 4
power_type = CHANGELING_PURCHASABLE_POWER
@@ -2,7 +2,7 @@
name = "Digital Camouflage"
desc = "By evolving the ability to distort our form and proportions, we defeat common algorithms used to detect lifeforms on cameras."
helptext = "We cannot be tracked by camera while using this skill."
button_icon_state = "digital_camo"
button_overlay_icon_state = "digital_camo"
dna_cost = 2
power_type = CHANGELING_PURCHASABLE_POWER
category = /datum/changeling_power_category/utility
@@ -3,7 +3,7 @@
desc = "Our skin pigmentations rapidly change to suit the environment around us. Needs 10 chemicals in-storage to toggle. Slows down our chemical regeneration by 15%"
helptext = "Allows us to darken and change the translucency of our pigmentation. \
The translucent effect works best in dark environments and garments. Can be toggled on and off."
button_icon_state = "enviro_adaptation"
button_overlay_icon_state = "enviro_adaptation"
dna_cost = 2
chemical_cost = 10
power_type = CHANGELING_PURCHASABLE_POWER
@@ -2,7 +2,7 @@
name = "Epinephrine Overdose"
desc = "We evolve additional sacs of adrenaline throughout our body. Costs 30 chemicals."
helptext = "Removes all stuns instantly and adds a short term reduction in further stuns. Can be used while unconscious. Continued use poisons the body."
button_icon_state = "adrenaline"
button_overlay_icon_state = "adrenaline"
chemical_cost = 30
dna_cost = 4
req_human = TRUE
@@ -1,7 +1,7 @@
/datum/action/changeling/fakedeath
name = "Regenerative Stasis"
desc = "We fall into a stasis, allowing us to regenerate and trick our enemies. Costs 15 chemicals."
button_icon_state = "fake_death"
button_overlay_icon_state = "fake_death"
chemical_cost = 15
power_type = CHANGELING_INNATE_POWER
req_dna = 1
@@ -2,7 +2,7 @@
name = "Fleshmend"
desc = "Our flesh rapidly regenerates, healing our burns, bruises, and shortness of breath. Costs 20 chemicals."
helptext = "Does not regrow limbs. Partially recovers our blood. Functions while unconscious."
button_icon_state = "fleshmend"
button_overlay_icon_state = "fleshmend"
chemical_cost = 20
dna_cost = 5
req_stat = UNCONSCIOUS
@@ -5,7 +5,7 @@ GLOBAL_LIST_EMPTY(hivemind_bank)
name = "Hivemind Access"
desc = "Allows us to upload or absorb DNA in the airwaves. Does not count towards absorb objectives. Allows us to speak over the Changeling Hivemind using :g. Costs 10 chemicals."
helptext = "Tunes our chemical receptors for hivemind communication, which passively grants us access to the Changeling Hivemind."
button_icon_state = "hive_absorb"
button_overlay_icon_state = "hive_absorb"
chemical_cost = 10
dna_cost = 4
power_type = CHANGELING_PURCHASABLE_POWER
@@ -1,7 +1,7 @@
/datum/action/changeling/humanform
name = "Human form"
desc = "We change into a human. Costs 5 chemicals."
button_icon_state = "human_form"
button_overlay_icon_state = "human_form"
chemical_cost = 5
req_dna = 1
@@ -2,7 +2,7 @@
name = "Lesser form"
desc = "We debase ourselves and become lesser. We become a monkey. Costs 5 chemicals."
helptext = "The transformation greatly reduces our size, allowing us to slip out of cuffs and climb through vents."
button_icon_state = "lesser_form"
button_overlay_icon_state = "lesser_form"
chemical_cost = 5
dna_cost = 2
req_human = TRUE
@@ -2,7 +2,7 @@
name = "Mimic Voice"
desc = "We shape our vocal glands to sound like a desired voice."
helptext = "Will turn your voice into the name that you enter."
button_icon_state = "mimic_voice"
button_overlay_icon_state = "mimic_voice"
chemical_cost = 0
dna_cost = 2
req_human = TRUE
@@ -122,7 +122,7 @@
name = "Arm Blade"
desc = "We reform one of our arms into a deadly blade. Costs 15 chemicals."
helptext = "We may retract our armblade in the same manner as we form it. Cannot be used while in lesser form."
button_icon_state = "armblade"
button_overlay_icon_state = "armblade"
chemical_cost = 15
dna_cost = 4
req_human = TRUE
@@ -187,7 +187,7 @@
Grab will immobilize the target and wrap a tentacle around them. \
Harm will drag the target closer and hit them with the object in our other hand. \
Cannot be used while in our lesser form."
button_icon_state = "tentacle"
button_overlay_icon_state = "tentacle"
chemical_cost = 10
dna_cost = 4
req_human = TRUE
@@ -391,7 +391,7 @@
name = "Organic Shield"
desc = "We reform one of our arms into a hard shield. Costs 20 chemicals."
helptext = "Organic tissue cannot resist damage forever, with the shield breaking after it is hit 6 times. Automatically parries. Cannot be used while in lesser form."
button_icon_state = "organic_shield"
button_overlay_icon_state = "organic_shield"
chemical_cost = 20
dna_cost = 2
req_human = TRUE
@@ -444,7 +444,7 @@
name = "Organic Space Suit"
desc = "We grow an organic suit to protect ourselves from space exposure. Costs 20 chemicals."
helptext = "We must constantly repair our form to make it space proof, reducing chemical production while we are protected. Cannot be used in lesser form."
button_icon_state = "organic_suit"
button_overlay_icon_state = "organic_suit"
chemical_cost = 20
dna_cost = 4
req_human = TRUE
@@ -491,7 +491,7 @@
name = "Chitinous Armor"
desc = "We turn our skin into tough chitin to protect us from damage. Costs 25 chemicals."
helptext = "Upkeep of the armor requires a low expenditure of chemicals. The armor is strong against brute force, but does not provide much protection from lasers. Cannot be used in lesser form."
button_icon_state = "chitinous_armor"
button_overlay_icon_state = "chitinous_armor"
chemical_cost = 25
dna_cost = 4
req_human = TRUE
@@ -589,7 +589,7 @@
name = "Bone Shard"
desc = "We evolve the ability to break off shards of our bone and shape them into throwing weapons which embed into our foes. Costs 15 chemicals."
helptext = "The shards of bone will dull upon hitting a target, rendering them unusable as weapons."
button_icon_state = "boneshard"
button_overlay_icon_state = "boneshard"
chemical_cost = 15
dna_cost = 3
req_human = TRUE
@@ -2,7 +2,7 @@
name = "Anatomic Panacea"
desc = "Expels impurifications from our form, curing diseases, removing parasites, sobering us, purging toxins and radiation, and resetting our genetic code completely. Costs 20 chemicals."
helptext = "Can be used while unconscious."
button_icon_state = "panacea"
button_overlay_icon_state = "panacea"
chemical_cost = 20
dna_cost = 2
req_stat = UNCONSCIOUS
@@ -1,7 +1,7 @@
/datum/action/changeling/revive
name = "Regenerate"
desc = "We regenerate, healing all damage from our form."
button_icon_state = "revive"
button_overlay_icon_state = "revive"
req_dna = 1
req_stat = DEAD
bypass_fake_death = TRUE
@@ -2,7 +2,7 @@
name = "Resonant Shriek"
desc = "Our lungs and vocal cords shift, allowing us to briefly emit a noise that deafens and confuses the weak minded. Costs 30 chemicals."
helptext = "Emits a high frequency sound that confuses and deafens humans, blows out nearby lights and overloads cyborg sensors."
button_icon_state = "resonant_shriek"
button_overlay_icon_state = "resonant_shriek"
chemical_cost = 30
dna_cost = 2
req_human = TRUE
@@ -40,7 +40,7 @@
/datum/action/changeling/dissonant_shriek
name = "Dissonant Shriek"
desc = "We shift our vocal cords to release a high frequency sound that overloads nearby electronics. Costs 30 chemicals."
button_icon_state = "dissonant_shriek"
button_overlay_icon_state = "dissonant_shriek"
chemical_cost = 30
dna_cost = 2
power_type = CHANGELING_PURCHASABLE_POWER
@@ -5,7 +5,7 @@
name = "Strained Muscles"
desc = "We evolve the ability to reduce the acid buildup in our muscles, allowing us to move much faster."
helptext = "The strain will use up our chemicals faster over time, and is not sustainable. Can not be used in lesser form."
button_icon_state = "strained_muscles"
button_overlay_icon_state = "strained_muscles"
chemical_cost = 0
dna_cost = 2
req_human = TRUE
@@ -7,7 +7,7 @@
name = "Spread Infestation"
desc = "Our form divides, creating an aggressive arachnid which will regard us as a friend. Costs 30 chemicals."
helptext = "The spiders are thoughtless creatures, but will not attack their creators. Their orders can be changed via remote hivemind (Alt+Shift click)."
button_icon_state = "spread_infestation"
button_overlay_icon_state = "spread_infestation"
chemical_cost = 30
dna_cost = 4
/// This var keeps track of the changeling's spider count
@@ -2,7 +2,7 @@
name = "Swap Forms"
desc = "We force ourselves into the body of another form, pushing their consciousness into the form we left behind. Costs 40 chemicals."
helptext = "We will bring all our abilities with us, but we will lose our old form DNA in exchange for the new one. The process will seem suspicious to any observers."
button_icon_state = "cling_mindswap"
button_overlay_icon_state = "cling_mindswap"
chemical_cost = 40
dna_cost = 2
req_human = TRUE //Monkeys can't grab
@@ -80,7 +80,7 @@
name = "Extract DNA Sting"
desc = "We stealthily sting a target and extract their DNA. Costs 25 chemicals."
helptext = "Will give you the DNA of your target, allowing you to transform into them."
button_icon_state = "sting_extract"
button_overlay_icon_state = "sting_extract"
sting_icon = "sting_extract"
chemical_cost = 25
power_type = CHANGELING_INNATE_POWER
@@ -100,7 +100,7 @@
name = "Mute Sting"
desc = "We silently sting a human, completely silencing them for a short time. Costs 20 chemicals."
helptext = "Does not provide a warning to the victim that they have been stung, until they try to speak and cannot."
button_icon_state = "sting_mute"
button_overlay_icon_state = "sting_mute"
sting_icon = "sting_mute"
chemical_cost = 20
dna_cost = 4
@@ -116,7 +116,7 @@
name = "Blind Sting"
desc = "We temporarily blind our victim. Costs 25 chemicals."
helptext = "This sting completely blinds a target for a short time, and leaves them with blurred vision for a long time."
button_icon_state = "sting_blind"
button_overlay_icon_state = "sting_blind"
sting_icon = "sting_blind"
chemical_cost = 25
dna_cost = 2
@@ -136,7 +136,7 @@
name = "Cryogenic Sting"
desc = "We silently sting our victim with a cocktail of chemicals that freezes them from the inside. Costs 15 chemicals."
helptext = "Does not provide a warning to the victim, though they will likely realize they are suddenly freezing."
button_icon_state = "sting_cryo"
button_overlay_icon_state = "sting_cryo"
sting_icon = "sting_cryo"
chemical_cost = 15
dna_cost = 4
@@ -154,7 +154,7 @@
name = "Lethargic Sting"
desc = "We silently sting our victim with a chemical that will gradually drain their stamina. Costs 50 chemicals."
helptext = "Does not provide a warning to the victim, though they will quickly realize they have been poisoned."
button_icon_state = "sting_lethargic"
button_overlay_icon_state = "sting_lethargic"
sting_icon = "sting_lethargic"
chemical_cost = 50
dna_cost = 4
@@ -1,7 +1,7 @@
/datum/action/changeling/transform
name = "Transform"
desc = "We take on the appearance and voice of one we have absorbed. Costs 5 chemicals."
button_icon_state = "transform"
button_overlay_icon_state = "transform"
chemical_cost = 5
power_type = CHANGELING_INNATE_POWER
req_dna = 1
+1 -1
View File
@@ -2,7 +2,7 @@
/datum/action/chameleon_outfit
name = "Select Chameleon Outfit"
button_icon_state = "chameleon_outfit"
button_overlay_icon_state = "chameleon_outfit"
var/list/outfit_options //By default, this list is shared between all instances. It is not static because if it were, subtypes would not be able to have their own. If you ever want to edit it, copy it first.
/datum/action/chameleon_outfit/New()
+2 -2
View File
@@ -207,8 +207,8 @@
/datum/action/innate/communicate_overmind_blob
name = "Speak with the overmind"
icon_icon = 'icons/mob/guardian.dmi'
button_icon_state = "communicate"
button_overlay_icon = 'icons/mob/guardian.dmi'
button_overlay_icon_state = "communicate"
/datum/action/innate/communicate_overmind_blob/Activate()
var/mob/living/simple_animal/hostile/blob/blobbernaut/user = owner
+6 -6
View File
@@ -93,7 +93,7 @@
// Datum actions
/datum/action/item_action/draw_card
name = "Draw - Draw one card"
button_icon_state = "draw"
button_overlay_icon_state = "draw"
use_itemicon = FALSE
/datum/action/item_action/draw_card/Trigger(left_click)
@@ -104,7 +104,7 @@
/datum/action/item_action/deal_card
name = "Deal - deal one card to a person next to you"
button_icon_state = "deal_card"
button_overlay_icon_state = "deal_card"
use_itemicon = FALSE
/datum/action/item_action/deal_card/Trigger(left_click)
@@ -115,7 +115,7 @@
/datum/action/item_action/deal_card_multi
name = "Deal multiple card - Deal multiple card to a person next to you"
button_icon_state = "deal_card_multi"
button_overlay_icon_state = "deal_card_multi"
use_itemicon = FALSE
/datum/action/item_action/deal_card_multi/Trigger(left_click)
@@ -126,7 +126,7 @@
/datum/action/item_action/shuffle
name = "Shuffle - shuffle the deck"
button_icon_state = "shuffle"
button_overlay_icon_state = "shuffle"
use_itemicon = FALSE
/datum/action/item_action/shuffle/Trigger(left_click)
@@ -390,7 +390,7 @@
/datum/action/item_action/remove_card
name = "Remove a card - Remove a single card from the hand."
button_icon_state = "remove_card"
button_overlay_icon_state = "remove_card"
use_itemicon = FALSE
/datum/action/item_action/remove_card/IsAvailable()
@@ -409,7 +409,7 @@
/datum/action/item_action/discard
name = "Discard - Place (a) card(s) from your hand in front of you."
button_icon_state = "discard"
button_overlay_icon_state = "discard"
use_itemicon = FALSE
/datum/action/item_action/discard/Trigger(left_click)
+4 -4
View File
@@ -9,7 +9,7 @@
/datum/action/neutral_stance
name = "Neutral Stance - You relax, cancelling your last Krav Maga stance attack."
button_icon_state = "neutralstance"
button_overlay_icon_state = "neutralstance"
/datum/action/neutral_stance/Trigger(left_click)
var/mob/living/carbon/human/H = owner
@@ -23,7 +23,7 @@
/datum/action/neck_chop
name = "Neck Chop - Injures the neck, stopping the victim from speaking for a while."
button_icon_state = "neckchop"
button_overlay_icon_state = "neckchop"
/datum/action/neck_chop/Trigger(left_click)
var/mob/living/carbon/human/H = owner //This is a janky solution, but I want to refactor krav anyway and un-jank this (written in may 2023)
@@ -41,7 +41,7 @@
H.mind.martial_art.in_stance = TRUE
/datum/action/leg_sweep
name = "Leg Sweep - Trips the victim, rendering them prone and unable to move for a short time."
button_icon_state = "legsweep"
button_overlay_icon_state = "legsweep"
/datum/action/leg_sweep/Trigger(left_click)
var/mob/living/carbon/human/H = owner
@@ -63,7 +63,7 @@
/datum/action/lung_punch//referred to internally as 'quick choke'
name = "Lung Punch - Delivers a strong punch just above the victim's abdomen, constraining the lungs. The victim will be unable to breathe for a short time."
button_icon_state = "lungpunch"
button_overlay_icon_state = "lungpunch"
/datum/action/lung_punch/Trigger(left_click)
var/mob/living/carbon/human/H = owner
+1 -1
View File
@@ -239,7 +239,7 @@
/datum/action/defensive_stance
name = "Defensive Stance - Ready yourself to be attacked, allowing you to parry incoming melee hits."
button_icon_state = "block"
button_overlay_icon_state = "block"
/datum/action/defensive_stance/Trigger(left_click)
var/mob/living/carbon/human/H = owner
+5 -5
View File
@@ -220,11 +220,11 @@
/datum/action/innate/minedrone
check_flags = AB_CHECK_CONSCIOUS
background_icon_state = "bg_default"
button_background_icon_state = "bg_default"
/datum/action/innate/minedrone/toggle_light
name = "Toggle Light"
button_icon_state = "mech_lights_off"
button_overlay_icon_state = "mech_lights_off"
/datum/action/innate/minedrone/toggle_light/Activate()
var/mob/living/simple_animal/hostile/mining_drone/user = owner
@@ -238,7 +238,7 @@
/datum/action/innate/minedrone/toggle_meson_vision
name = "Toggle Meson Vision"
button_icon_state = "meson"
button_overlay_icon_state = "meson"
var/sight_flags = SEE_TURFS
var/lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE
@@ -262,7 +262,7 @@
/datum/action/innate/minedrone/toggle_mode
name = "Toggle Mode"
button_icon_state = "mech_cycle_equip_off"
button_overlay_icon_state = "mech_cycle_equip_off"
/datum/action/innate/minedrone/toggle_mode/Activate()
var/mob/living/simple_animal/hostile/mining_drone/user = owner
@@ -270,7 +270,7 @@
/datum/action/innate/minedrone/dump_ore
name = "Dump Ore"
button_icon_state = "mech_eject"
button_overlay_icon_state = "mech_eject"
/datum/action/innate/minedrone/dump_ore/Activate()
var/mob/living/simple_animal/hostile/mining_drone/user = owner
+3 -3
View File
@@ -212,9 +212,9 @@
mmi = null
return ..()
/datum/action/generic/configure_mmi_radio/ApplyIcon(atom/movable/screen/movable/action_button/current_button)
icon_icon = mmi.icon
button_icon_state = mmi.icon_state
/datum/action/generic/configure_mmi_radio/apply_button_overlay(atom/movable/screen/movable/action_button/current_button)
button_overlay_icon = mmi.icon
button_overlay_icon_state = mmi.icon_state
..()
/obj/item/mmi/emp_act(severity)
@@ -155,7 +155,7 @@
name = "Ignite"
desc = "Set yourself aflame, bringing yourself closer to exploding!"
check_flags = AB_CHECK_CONSCIOUS
button_icon_state = "sacredflame"
button_overlay_icon_state = "sacredflame"
/datum/action/innate/golem_ignite/Activate()
if(ishuman(owner))
@@ -498,8 +498,8 @@
/datum/action/innate/unstable_teleport
name = "Unstable Teleport"
check_flags = AB_CHECK_CONSCIOUS
button_icon_state = "blink"
icon_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "blink"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
var/activated = FALSE // To prevent spamming
var/cooldown = 150
var/last_teleport = 0
@@ -138,7 +138,7 @@
/datum/action/innate/change_monitor
name = "Change Monitor"
check_flags = AB_CHECK_CONSCIOUS
button_icon_state = "scan_mode"
button_overlay_icon_state = "scan_mode"
/datum/action/innate/change_monitor/Activate()
var/mob/living/carbon/human/H = owner
@@ -158,8 +158,8 @@
name = "Cocoon"
desc = "Restore your wings and antennae, and heal some damage. If your cocoon is broken externally you will take heavy damage!"
check_flags = AB_CHECK_RESTRAINED|AB_CHECK_STUNNED|AB_CHECK_CONSCIOUS|AB_CHECK_TURF
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "cocoon1"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "cocoon1"
/datum/action/innate/cocoon/Activate()
var/mob/living/carbon/human/moth/H = owner
@@ -110,8 +110,8 @@
/datum/action/innate/slimecolor
name = "Toggle Recolor"
check_flags = AB_CHECK_CONSCIOUS
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "greenglow"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "greenglow"
/datum/action/innate/slimecolor/Activate()
var/mob/living/carbon/human/H = owner
@@ -126,8 +126,8 @@
/datum/action/innate/regrow
name = "Regrow limbs"
check_flags = AB_CHECK_CONSCIOUS
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "greenglow"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "greenglow"
/datum/action/innate/regrow/Activate()
var/mob/living/carbon/human/H = owner
@@ -75,8 +75,8 @@
/datum/action/innate/unathi_ignite
name = "Ignite"
desc = "A fire forms in your mouth, fierce enough to... light a cigarette. Requires you to drink welding fuel beforehand."
icon_icon = 'icons/obj/cigarettes.dmi'
button_icon_state = "match_unathi"
button_overlay_icon = 'icons/obj/cigarettes.dmi'
button_overlay_icon_state = "match_unathi"
var/cooldown = 0
var/cooldown_duration = 20 SECONDS
var/welding_fuel_used = 3 //one sip, with less strict timing
@@ -1,7 +1,7 @@
/datum/action/innate/robot_sight
var/sight_mode = null
icon_icon = 'icons/obj/decals.dmi'
button_icon_state = "securearea"
button_overlay_icon = 'icons/obj/decals.dmi'
button_overlay_icon_state = "securearea"
/datum/action/innate/robot_sight/Activate()
var/mob/living/silicon/robot/R = owner
@@ -22,24 +22,24 @@
/datum/action/innate/robot_sight/thermal
name = "Thermal Vision"
sight_mode = BORGTHERM
icon_icon = 'icons/obj/clothing/glasses.dmi'
button_icon_state = "thermal"
button_overlay_icon = 'icons/obj/clothing/glasses.dmi'
button_overlay_icon_state = "thermal"
// ayylmao
/datum/action/innate/robot_sight/thermal/alien
icon_icon = 'icons/mob/alien.dmi'
button_icon_state = "borg-extra-vision"
button_overlay_icon = 'icons/mob/alien.dmi'
button_overlay_icon_state = "borg-extra-vision"
/datum/action/innate/robot_sight/meson
name = "Meson Vision"
sight_mode = BORGMESON
icon_icon = 'icons/obj/clothing/glasses.dmi'
button_icon_state = "meson"
button_overlay_icon = 'icons/obj/clothing/glasses.dmi'
button_overlay_icon_state = "meson"
/datum/action/innate/robot_magpulse
name = "Magnetic pulse"
icon_icon = 'icons/obj/clothing/shoes.dmi'
button_icon_state = "magboots0"
button_overlay_icon = 'icons/obj/clothing/shoes.dmi'
button_overlay_icon_state = "magboots0"
var/slowdown_active = 2 // Same as magboots
/datum/action/innate/robot_magpulse/Activate()
@@ -47,7 +47,7 @@
to_chat(owner, "You turn your magboots on.")
var/mob/living/silicon/robot/robot = owner
robot.speed += slowdown_active
button_icon_state = "magboots1"
button_overlay_icon_state = "magboots1"
active = TRUE
/datum/action/innate/robot_magpulse/Deactivate()
@@ -55,5 +55,5 @@
to_chat(owner, "You turn your magboots off.")
var/mob/living/silicon/robot/robot = owner
robot.speed -= slowdown_active
button_icon_state = initial(button_icon_state)
button_overlay_icon_state = initial(button_overlay_icon_state)
active = FALSE
@@ -56,8 +56,8 @@
/datum/action/innate/diona/merge
name = "Merge with gestalt"
icon_icon = 'icons/mob/human_races/r_diona.dmi'
button_icon_state = "preview"
button_overlay_icon = 'icons/mob/human_races/r_diona.dmi'
button_overlay_icon_state = "preview"
/datum/action/innate/diona/merge/Activate()
var/mob/living/simple_animal/diona/user = owner
@@ -65,8 +65,8 @@
/datum/action/innate/diona/evolve
name = "Evolve"
icon_icon = 'icons/obj/cloning.dmi'
button_icon_state = "pod_cloning"
button_overlay_icon = 'icons/obj/cloning.dmi'
button_overlay_icon_state = "pod_cloning"
/datum/action/innate/diona/evolve/Activate()
var/mob/living/simple_animal/diona/user = owner
@@ -74,8 +74,8 @@
/datum/action/innate/diona/steal_blood
name = "Steal blood"
icon_icon = 'icons/goonstation/objects/iv.dmi'
button_icon_state = "bloodbag"
button_overlay_icon = 'icons/goonstation/objects/iv.dmi'
button_overlay_icon_state = "bloodbag"
/datum/action/innate/diona/steal_blood/Activate()
var/mob/living/simple_animal/diona/user = owner
@@ -128,8 +128,8 @@
/datum/action/innate/nian_caterpillar_emerge
name = "Evolve"
desc = "Weave a cocoon around yourself to evolve into a greater form. The worme."
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "cocoon1"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "cocoon1"
/datum/action/innate/nian_caterpillar_emerge/proc/emerge(obj/structure/moth/cocoon/C)
for(var/mob/living/carbon/human/H in C)
@@ -4,7 +4,7 @@
var/layer_to_change_from = MOB_LAYER
var/layer_to_change_to = TURF_LAYER + 0.2
check_flags = AB_CHECK_CONSCIOUS
button_icon_state = "mouse_gray_sleep"
button_overlay_icon_state = "mouse_gray_sleep"
/datum/action/innate/hide/Activate()
var/mob/living/simple_animal/simplemob = owner
@@ -23,10 +23,10 @@
/datum/action/innate/hide/alien_larva_hide
desc = "Allows to hide beneath tables or certain items. Toggled on or off."
background_icon_state = "bg_alien"
button_icon_state = "alien_hide"
button_background_icon_state = "bg_alien"
button_overlay_icon_state = "alien_hide"
layer_to_change_to = ABOVE_NORMAL_TURF_LAYER
layer_to_change_from = MOB_LAYER
/datum/action/innate/hide/drone_hide
button_icon_state = "repairbot"
button_overlay_icon_state = "repairbot"
@@ -163,8 +163,8 @@
/datum/action/innate/web_giant_spider
name = "Lay Web"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "stickyweb1"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "stickyweb1"
/datum/action/innate/web_giant_spider/Activate()
var/mob/living/simple_animal/hostile/poison/giant_spider/user = owner
@@ -172,8 +172,8 @@
/datum/action/innate/wrap_giant_spider
name = "Wrap"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "cocoon_large1"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "cocoon_large1"
/datum/action/innate/wrap_giant_spider/Activate()
var/mob/living/simple_animal/hostile/poison/giant_spider/nurse/user = owner
@@ -181,8 +181,8 @@
/datum/action/innate/lay_eggs_giant_spider
name = "Lay Eggs"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "eggs"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "eggs"
/datum/action/innate/lay_eggs_giant_spider/Activate()
var/mob/living/simple_animal/hostile/poison/giant_spider/nurse/user = owner
@@ -57,8 +57,8 @@
/datum/action/innate/gorilla/gorilla_toggle
name = "Toggle Stand"
desc = "Toggles between crawling and standing up."
icon_icon = 'icons/mob/actions/actions_animal.dmi'
button_icon_state = "gorilla_toggle"
button_overlay_icon = 'icons/mob/actions/actions_animal.dmi'
button_overlay_icon_state = "gorilla_toggle"
check_flags = AB_CHECK_CONSCIOUS
/datum/action/innate/gorilla/gorilla_toggle/Activate()
@@ -73,22 +73,22 @@ Difficulty: Medium
/datum/action/innate/megafauna_attack/dash
name = "Dash To Target"
icon_icon = 'icons/mob/actions/actions.dmi'
button_icon_state = "sniper_zoom"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "sniper_zoom"
chosen_message = "<span class='colossus'>You are now dashing to your target.</span>"
chosen_attack_num = 1
/datum/action/innate/megafauna_attack/kinetic_accelerator
name = "Fire Kinetic Accelerator"
icon_icon = 'icons/obj/guns/energy.dmi'
button_icon_state = "kineticgun"
button_overlay_icon = 'icons/obj/guns/energy.dmi'
button_overlay_icon_state = "kineticgun"
chosen_message = "<span class='colossus'>You are now shooting your kinetic accelerator.</span>"
chosen_attack_num = 2
/datum/action/innate/megafauna_attack/transform_weapon
name = "Transform Weapon"
icon_icon = 'icons/obj/lavaland/artefacts.dmi'
button_icon_state = "cleaving_saw"
button_overlay_icon = 'icons/obj/lavaland/artefacts.dmi'
button_overlay_icon_state = "cleaving_saw"
chosen_message = "<span class='colossus'>You are now transforming your weapon.</span>"
chosen_attack_num = 3
@@ -92,29 +92,29 @@ Difficulty: Hard
/datum/action/innate/megafauna_attack/triple_charge
name = "Triple Charge"
icon_icon = 'icons/mob/actions/actions.dmi'
button_icon_state = "sniper_zoom"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "sniper_zoom"
chosen_message = "<span class='colossus'>You are now triple charging at the target you click on.</span>"
chosen_attack_num = 1
/datum/action/innate/megafauna_attack/hallucination_charge
name = "Hallucination Charge"
icon_icon = 'icons/effects/bubblegum.dmi'
button_icon_state = "smack ya one"
button_overlay_icon = 'icons/effects/bubblegum.dmi'
button_overlay_icon_state = "smack ya one"
chosen_message = "<span class='colossus'>You are now charging with hallucinations at the target you click on.</span>"
chosen_attack_num = 2
/datum/action/innate/megafauna_attack/hallucination_surround
name = "Surround Target"
icon_icon = 'icons/turf/walls/wall.dmi'
button_icon_state = "wall-0"
button_overlay_icon = 'icons/turf/walls/wall.dmi'
button_overlay_icon_state = "wall-0"
chosen_message = "<span class='colossus'>You are now surrounding the target you click on with hallucinations.</span>"
chosen_attack_num = 3
/datum/action/innate/megafauna_attack/blood_warp
name = "Blood Warp"
icon_icon = 'icons/effects/blood.dmi'
button_icon_state = "floor1"
button_overlay_icon = 'icons/effects/blood.dmi'
button_overlay_icon_state = "floor1"
chosen_message = "<span class='colossus'>You are now warping to blood around your clicked position.</span>"
chosen_attack_num = 4
@@ -73,29 +73,29 @@ Difficulty: Very Hard
/datum/action/innate/megafauna_attack/spiral_attack
name = "Spiral Shots"
icon_icon = 'icons/mob/actions/actions.dmi'
button_icon_state = "sniper_zoom"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "sniper_zoom"
chosen_message = "<span class='colossus'>You are now firing in a spiral.</span>"
chosen_attack_num = 1
/datum/action/innate/megafauna_attack/aoe_attack
name = "All Directions"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "at_shield2"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "at_shield2"
chosen_message = "<span class='colossus'>You are now firing in all directions.</span>"
chosen_attack_num = 2
/datum/action/innate/megafauna_attack/shotgun
name = "Shotgun Fire"
icon_icon = 'icons/obj/guns/projectile.dmi'
button_icon_state = "shotgun"
button_overlay_icon = 'icons/obj/guns/projectile.dmi'
button_overlay_icon_state = "shotgun"
chosen_message = "<span class='colossus'>You are now firing shotgun shots where you aim.</span>"
chosen_attack_num = 3
/datum/action/innate/megafauna_attack/alternating_cardinals
name = "Alternating Shots"
icon_icon = 'icons/obj/guns/projectile.dmi'
button_icon_state = "pistol"
button_overlay_icon = 'icons/obj/guns/projectile.dmi'
button_overlay_icon_state = "pistol"
chosen_message = "<span class='colossus'>You are now firing in alternating cardinal directions.</span>"
chosen_attack_num = 4
@@ -69,29 +69,29 @@ Difficulty: Medium
/datum/action/innate/megafauna_attack/fire_cone
name = "Fire Cone"
icon_icon = 'icons/obj/wizard.dmi'
button_icon_state = "fireball"
button_overlay_icon = 'icons/obj/wizard.dmi'
button_overlay_icon_state = "fireball"
chosen_message = "<span class='colossus'>You are now shooting fire at your target.</span>"
chosen_attack_num = 1
/datum/action/innate/megafauna_attack/fire_cone_meteors
name = "Fire Cone With Meteors"
icon_icon = 'icons/mob/actions/actions.dmi'
button_icon_state = "sniper_zoom"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "sniper_zoom"
chosen_message = "<span class='colossus'>You are now shooting fire at your target and raining fire around you.</span>"
chosen_attack_num = 2
/datum/action/innate/megafauna_attack/mass_fire
name = "Mass Fire Attack"
icon_icon = 'icons/effects/fire.dmi'
button_icon_state = "1"
button_overlay_icon = 'icons/effects/fire.dmi'
button_overlay_icon_state = "1"
chosen_message = "<span class='colossus'>You are now shooting mass fire at your target.</span>"
chosen_attack_num = 3
/datum/action/innate/megafauna_attack/lava_swoop
name = "Lava Swoop"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "lavastaff_warn"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "lavastaff_warn"
chosen_message = "<span class='colossus'>You are now swooping and raining lava at your target.</span>"
chosen_attack_num = 4
@@ -92,29 +92,29 @@ Difficulty: Hard
/datum/action/innate/megafauna_attack/blink
name = "Blink To Target"
icon_icon = 'icons/mob/actions/actions.dmi'
button_icon_state = "sniper_zoom"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "sniper_zoom"
chosen_message = "<span class='colossus'>You are now blinking to your target.</span>"
chosen_attack_num = 1
/datum/action/innate/megafauna_attack/chaser_swarm
name = "Chaser Swarm"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "hierophant_squares_indefinite"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "hierophant_squares_indefinite"
chosen_message = "<span class='colossus'>You are firing a chaser swarm at your target.</span>"
chosen_attack_num = 2
/datum/action/innate/megafauna_attack/cross_blasts
name = "Cross Blasts"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "hierophant_blast_indefinite"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "hierophant_blast_indefinite"
chosen_message = "<span class='colossus'>You are now firing cross blasts at your target.</span>"
chosen_attack_num = 3
/datum/action/innate/megafauna_attack/blink_spam
name = "Blink Chase"
icon_icon = 'icons/obj/lavaland/artefacts.dmi'
button_icon_state = "hierophant_club_ready_beacon"
button_overlay_icon = 'icons/obj/lavaland/artefacts.dmi'
button_overlay_icon_state = "hierophant_club_ready_beacon"
chosen_message = "<span class='colossus'>You are now repeatedly blinking at your target.</span>"
chosen_attack_num = 4
@@ -160,8 +160,8 @@
/datum/action/innate/megafauna_attack
name = "Megafauna Attack"
icon_icon = 'icons/mob/actions/actions_animal.dmi'
button_icon_state = ""
button_overlay_icon = 'icons/mob/actions/actions_animal.dmi'
button_overlay_icon_state = ""
var/mob/living/simple_animal/hostile/megafauna/M
var/chosen_message
var/chosen_attack_num = 0
@@ -103,9 +103,9 @@ While using this makes the system rely on OnFire, it still gives options for tim
/datum/action/innate/elite_attack
name = "Elite Attack"
icon_icon = 'icons/mob/actions/actions_elites.dmi'
button_icon_state = ""
background_icon_state = "bg_default"
button_overlay_icon = 'icons/mob/actions/actions_elites.dmi'
button_overlay_icon_state = ""
button_background_icon_state = "bg_default"
///The displayed message into chat when this attack is selected
var/chosen_message
///The internal attack ID for the elite's OpenFire() proc to use
@@ -50,25 +50,25 @@
/datum/action/innate/elite_attack/tentacle_patch
name = "Tentacle Patch"
button_icon_state = "tentacle_patch"
button_overlay_icon_state = "tentacle_patch"
chosen_message = "<span class='boldwarning'>You are now attacking with a patch of tentacles.</span>"
chosen_attack_num = TENTACLE_PATCH
/datum/action/innate/elite_attack/spawn_children
name = "Spawn Children"
button_icon_state = "spawn_children"
button_overlay_icon_state = "spawn_children"
chosen_message = "<span class='boldwarning'>You will spawn two children at your location to assist you in combat. You can have up to 8.</span>"
chosen_attack_num = SPAWN_CHILDREN
/datum/action/innate/elite_attack/rage
name = "Rage"
button_icon_state = "rage"
button_overlay_icon_state = "rage"
chosen_message = "<span class='boldwarning'>You will temporarily increase your movement speed.</span>"
chosen_attack_num = RAGE
/datum/action/innate/elite_attack/call_children
name = "Call Children"
button_icon_state = "call_children"
button_overlay_icon_state = "call_children"
chosen_message = "<span class='boldwarning'>You will summon your children to your location.</span>"
chosen_attack_num = CALL_CHILDREN
@@ -73,25 +73,25 @@
/datum/action/innate/elite_attack/herald_trishot
name = "Triple Shot"
button_icon_state = "herald_trishot"
button_overlay_icon_state = "herald_trishot"
chosen_message = "<span class='boldwarning'>You are now firing three shots in your chosen direction.</span>"
chosen_attack_num = HERALD_TRISHOT
/datum/action/innate/elite_attack/herald_directionalshot
name = "Circular Shot"
button_icon_state = "herald_directionalshot"
button_overlay_icon_state = "herald_directionalshot"
chosen_message = "<span class='boldwarning'>You are firing projectiles in all directions.</span>"
chosen_attack_num = HERALD_DIRECTIONALSHOT
/datum/action/innate/elite_attack/herald_teleshot
name = "Teleport Shot"
button_icon_state = "herald_teleshot"
button_overlay_icon_state = "herald_teleshot"
chosen_message = "<span class='boldwarning'>You will now fire a shot which teleports you where it lands.</span>"
chosen_attack_num = HERALD_TELESHOT
/datum/action/innate/elite_attack/herald_mirror
name = "Summon Mirror"
button_icon_state = "herald_mirror"
button_overlay_icon_state = "herald_mirror"
chosen_message = "<span class='boldwarning'>You will spawn a mirror which duplicates your attacks.</span>"
chosen_attack_num = HERALD_MIRROR
@@ -54,25 +54,25 @@
/datum/action/innate/elite_attack/legionnaire_charge
name = "Legionnaire Charge"
button_icon_state = "legionnaire_charge"
button_overlay_icon_state = "legionnaire_charge"
chosen_message = "<span class='boldwarning'>You will attempt to grab your opponent and throw them.</span>"
chosen_attack_num = LEGIONNAIRE_CHARGE
/datum/action/innate/elite_attack/head_detach
name = "Release Head"
button_icon_state = "head_detach"
button_overlay_icon_state = "head_detach"
chosen_message = "<span class='boldwarning'>You will now detach your head or kill it if it is already released.</span>"
chosen_attack_num = HEAD_DETACH
/datum/action/innate/elite_attack/bonfire_teleport
name = "Bonfire Teleport"
button_icon_state = "bonfire_teleport"
button_overlay_icon_state = "bonfire_teleport"
chosen_message = "<span class='boldwarning'>You will leave a bonfire. Second use will let you swap positions with it indefintiely. Using this move on the same tile as your active bonfire removes it.</span>"
chosen_attack_num = BONFIRE_TELEPORT
/datum/action/innate/elite_attack/spew_smoke
name = "Spew Smoke"
button_icon_state = "spew_smoke"
button_overlay_icon_state = "spew_smoke"
chosen_message = "<span class='boldwarning'>Your head will spew smoke in an area, wherever it may be.</span>"
chosen_attack_num = SPEW_SMOKE
@@ -54,25 +54,25 @@
/datum/action/innate/elite_attack/chaser_burst
name = "Chaser Burst"
button_icon_state = "singular_shot"
button_overlay_icon_state = "singular_shot"
chosen_message = "<span class='boldwarning'>You fire a chaser after all mobs in view.</span>"
chosen_attack_num = CHASER_BURST
/datum/action/innate/elite_attack/magic_box
name = "Magic Box"
button_icon_state = "magic_box"
button_overlay_icon_state = "magic_box"
chosen_message = "<span class='boldwarning'>You are now attacking with a box of magic squares.</span>"
chosen_attack_num = MAGIC_BOX
/datum/action/innate/elite_attack/pandora_teleport
name = "Line Teleport"
button_icon_state = "pandora_teleport"
button_overlay_icon_state = "pandora_teleport"
chosen_message = "<span class='boldwarning'>You will now teleport to your target.</span>"
chosen_attack_num = PANDORA_TELEPORT
/datum/action/innate/elite_attack/aoe_squares
name = "AOE Blast"
button_icon_state = "aoe_squares"
button_overlay_icon_state = "aoe_squares"
chosen_message = "<span class='boldwarning'>Your attacks will spawn an AOE blast at your target location.</span>"
chosen_attack_num = AOE_SQUARES
@@ -2,8 +2,8 @@
/datum/action/innate/terrorspider/web
name = "Web"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "stickyweb1"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "stickyweb1"
/datum/action/innate/terrorspider/web/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/user = owner
@@ -11,8 +11,8 @@
/datum/action/innate/terrorspider/wrap
name = "Wrap"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "cocoon_large1"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "cocoon_large1"
/datum/action/innate/terrorspider/wrap/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/user = owner
@@ -23,8 +23,8 @@
/datum/action/innate/terrorspider/greeneggs
name = "Lay Green Eggs"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "eggs"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "eggs"
/datum/action/innate/terrorspider/greeneggs/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/green/user = owner
@@ -35,8 +35,8 @@
/datum/action/innate/terrorspider/ventsmash
name = "Smash Welded Vent"
icon_icon = 'icons/atmos/vent_pump.dmi'
button_icon_state = "map_vent"
button_overlay_icon = 'icons/atmos/vent_pump.dmi'
button_overlay_icon_state = "map_vent"
/datum/action/innate/terrorspider/ventsmash/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/user = owner
@@ -44,8 +44,8 @@
/datum/action/innate/terrorspider/remoteview
name = "Remote View"
icon_icon = 'icons/obj/eyes.dmi'
button_icon_state = "heye"
button_overlay_icon = 'icons/obj/eyes.dmi'
button_overlay_icon_state = "heye"
/datum/action/innate/terrorspider/remoteview/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/user = owner
@@ -56,8 +56,8 @@
/datum/action/innate/terrorspider/mother/royaljelly
name = "Lay Royal Jelly"
icon_icon = 'icons/mob/actions/actions.dmi'
button_icon_state = "spiderjelly"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "spiderjelly"
/datum/action/innate/terrorspider/mother/royaljelly/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/mother/user = owner
@@ -65,8 +65,8 @@
/datum/action/innate/terrorspider/mother/gatherspiderlings
name = "Gather Spiderlings"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "spiderling"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "spiderling"
/datum/action/innate/terrorspider/mother/gatherspiderlings/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/mother/user = owner
@@ -74,8 +74,8 @@
/datum/action/innate/terrorspider/mother/incubateeggs
name = "Incubate Eggs"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "eggs"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "eggs"
/datum/action/innate/terrorspider/mother/incubateeggs/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/mother/user = owner
@@ -85,8 +85,8 @@
/datum/action/innate/terrorspider/queen/queennest
name = "Nest"
icon_icon = 'icons/mob/terrorspider.dmi'
button_icon_state = "terror_queen"
button_overlay_icon = 'icons/mob/terrorspider.dmi'
button_overlay_icon_state = "terror_queen"
/datum/action/innate/terrorspider/queen/queennest/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/queen/user = owner
@@ -94,8 +94,8 @@
/datum/action/innate/terrorspider/queen/queensense
name = "Hive Sense"
icon_icon = 'icons/mob/actions/actions.dmi'
button_icon_state = "mindswap"
button_overlay_icon = 'icons/mob/actions/actions.dmi'
button_overlay_icon_state = "mindswap"
/datum/action/innate/terrorspider/queen/queensense/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/queen/user = owner
@@ -103,8 +103,8 @@
/datum/action/innate/terrorspider/queen/queeneggs
name = "Lay Queen Eggs"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "eggs"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "eggs"
/datum/action/innate/terrorspider/queen/queeneggs/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/queen/user = owner
@@ -115,8 +115,8 @@
/datum/action/innate/terrorspider/queen/empress/empresserase
name = "Empress Erase Brood"
icon_icon = 'icons/effects/blood.dmi'
button_icon_state = "mgibbl1"
button_overlay_icon = 'icons/effects/blood.dmi'
button_overlay_icon_state = "mgibbl1"
/datum/action/innate/terrorspider/queen/empress/empresserase/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/queen/empress/user = owner
@@ -124,8 +124,8 @@
/datum/action/innate/terrorspider/queen/empress/empresslings
name = "Empresss Spiderlings"
icon_icon = 'icons/effects/effects.dmi'
button_icon_state = "spiderling"
button_overlay_icon = 'icons/effects/effects.dmi'
button_overlay_icon_state = "spiderling"
/datum/action/innate/terrorspider/queen/empress/empresslings/Activate()
var/mob/living/simple_animal/hostile/poison/terror_spider/queen/empress/user = owner
@@ -7,8 +7,8 @@
/datum/action/innate/slime
check_flags = AB_CHECK_CONSCIOUS
icon_icon = 'icons/mob/actions/actions_slime.dmi'
background_icon_state = "bg_alien"
button_overlay_icon = 'icons/mob/actions/actions_slime.dmi'
button_background_icon_state = "bg_alien"
var/needs_growth = NO_GROWTH_NEEDED
/datum/action/innate/slime/IsAvailable()
@@ -38,7 +38,7 @@
/datum/action/innate/slime/feed
name = "Feed"
button_icon_state = "slimeeat"
button_overlay_icon_state = "slimeeat"
/datum/action/innate/slime/feed/Activate()
@@ -140,7 +140,7 @@
/datum/action/innate/slime/evolve
name = "Evolve"
button_icon_state = "slimegrow"
button_overlay_icon_state = "slimegrow"
needs_growth = GROWTH_NEEDED
/datum/action/innate/slime/evolve/Activate()
@@ -200,7 +200,7 @@
/datum/action/innate/slime/reproduce
name = "Reproduce"
button_icon_state = "slimesplit"
button_overlay_icon_state = "slimesplit"
needs_growth = GROWTH_NEEDED
/datum/action/innate/slime/reproduce/Activate()
+14 -14
View File
@@ -1,8 +1,8 @@
/datum/action/item_action/mod
background_icon_state = "bg_mod"
button_icon_state = "bg_mod_border"
icon_icon = 'icons/mob/actions/actions_mod.dmi'
button_icon = 'icons/mob/actions/actions_mod.dmi'
button_overlay_icon = 'icons/mob/actions/actions_mod.dmi'
button_overlay_icon_state = "bg_mod_border"
button_background_icon = 'icons/mob/actions/actions_mod.dmi'
button_background_icon_state = "bg_mod"
check_flags = AB_CHECK_CONSCIOUS
use_itemicon = FALSE
@@ -23,7 +23,7 @@
/datum/action/item_action/mod/deploy
name = "Deploy MODsuit"
desc = "LMB: Deploy/Undeploy full suit. MMB: Deploy/Undeploy part."
button_icon_state = "deploy"
button_overlay_icon_state = "deploy"
/datum/action/item_action/mod/deploy/Trigger(left_click, attack_self)
. = ..()
@@ -38,7 +38,7 @@
/datum/action/item_action/mod/activate
name = "Activate MODsuit"
desc = "LMB: Activate/Deactivate suit with prompt. MMB: Activate/Deactivate suit skipping prompt."
button_icon_state = "activate"
button_overlay_icon_state = "activate"
/// First time clicking this will set it to TRUE, second time will activate it.
var/ready = FALSE
@@ -48,7 +48,7 @@
return
if(!ready && left_click)
ready = TRUE
button_icon_state = "activate-ready"
button_overlay_icon_state = "activate-ready"
UpdateButtons()
addtimer(CALLBACK(src, PROC_REF(reset_ready)), 3 SECONDS)
return
@@ -59,13 +59,13 @@
/// Resets the state requiring to be doubleclicked again.
/datum/action/item_action/mod/activate/proc/reset_ready()
ready = FALSE
button_icon_state = initial(button_icon_state)
button_overlay_icon_state = initial(button_overlay_icon_state)
UpdateButtons()
/datum/action/item_action/mod/module
name = "Toggle Module"
desc = "Toggle a MODsuit module."
button_icon_state = "module"
button_overlay_icon_state = "module"
/datum/action/item_action/mod/module/Trigger(left_click, attack_self)
. = ..()
@@ -77,7 +77,7 @@
/datum/action/item_action/mod/panel
name = "MODsuit Panel"
desc = "Open the MODsuit's panel."
button_icon_state = "panel"
button_overlay_icon_state = "panel"
/datum/action/item_action/mod/panel/Trigger(left_click, attack_self)
. = ..()
@@ -88,9 +88,9 @@
/datum/action/item_action/mod/pinned_module
desc = "Activate the module."
icon_icon = 'icons/obj/clothing/modsuit/mod_modules.dmi'
button_icon = 'icons/mob/actions/actions_mod.dmi'
button_icon_state = "module"
button_overlay_icon = 'icons/obj/clothing/modsuit/mod_modules.dmi'
button_overlay_icon = 'icons/mob/actions/actions_mod.dmi'
button_overlay_icon_state = "module"
/// Module we are linked to.
var/obj/item/mod/module/module
/// A ref to the mob we are pinned to.
@@ -101,7 +101,7 @@
desc = "Quickly activate [linked_module]."
..()
module = linked_module
button_icon_state = module.icon_state
button_overlay_icon_state = module.icon_state
if(linked_module.allow_flags & MODULE_ALLOW_INCAPACITATED)
// clears check hands
check_flags = AB_CHECK_CONSCIOUS
@@ -213,10 +213,10 @@
desc = "Recall a MODsuit anyplace, anytime."
use_itemicon = FALSE
check_flags = AB_CHECK_CONSCIOUS
button_icon_state = "recall"
background_icon_state = "bg_mod"
icon_icon = 'icons/mob/actions/actions_mod.dmi'
button_icon = 'icons/mob/actions/actions_mod.dmi'
button_overlay_icon = 'icons/mob/actions/actions_mod.dmi'
button_overlay_icon_state = "recall"
button_background_icon = 'icons/mob/actions/actions_mod.dmi'
button_background_icon_state = "bg_mod"
/// The cooldown for the recall.
COOLDOWN_DECLARE(recall_cooldown)
@@ -217,7 +217,7 @@
// === SLIME ACTION DATUMS ====
/datum/action/innate/slime_place
name = "Place Slimes"
button_icon_state = "slime_down"
button_overlay_icon_state = "slime_down"
/datum/action/innate/slime_place/Activate()
if(!target || !ishuman(owner))
@@ -237,7 +237,7 @@
/datum/action/innate/slime_pick_up
name = "Pick up Slime"
button_icon_state = "slime_up"
button_overlay_icon_state = "slime_up"
/datum/action/innate/slime_pick_up/Activate()
if(!target || !ishuman(owner))
@@ -259,7 +259,7 @@
/datum/action/innate/feed_slime
name = "Feed Slimes"
button_icon_state = "monkey_down"
button_overlay_icon_state = "monkey_down"
/datum/action/innate/feed_slime/Activate()
if(!target || !ishuman(owner))
@@ -303,7 +303,7 @@
/datum/action/innate/monkey_recycle
name = "Recycle Monkeys"
button_icon_state = "monkey_up"
button_overlay_icon_state = "monkey_up"
/datum/action/innate/monkey_recycle/Activate()
if(!target || !ishuman(owner))
@@ -328,7 +328,7 @@
/datum/action/innate/slime_scan
name = "Scan Slime"
button_icon_state = "slime_scan"
button_overlay_icon_state = "slime_scan"
/datum/action/innate/slime_scan/Activate()
if(!target || !isliving(owner))
@@ -344,7 +344,7 @@
/datum/action/innate/feed_potion
name = "Apply Potion"
button_icon_state = "slime_potion"
button_overlay_icon_state = "slime_potion"
/datum/action/innate/feed_potion/Activate()
if(!target || !ishuman(owner))
@@ -367,7 +367,7 @@
/datum/action/innate/hotkey_help
name = "Hotkey Help"
button_icon_state = "hotkey_help"
button_overlay_icon_state = "hotkey_help"
/datum/action/innate/hotkey_help/Activate()
if(!target || !isliving(owner))
+5 -5
View File
@@ -283,8 +283,8 @@
/datum/action/innate/shuttledocker_rotate
name = "Rotate"
icon_icon = 'icons/mob/actions/actions_mecha.dmi'
button_icon_state = "mech_cycle_equip_off"
button_overlay_icon = 'icons/mob/actions/actions_mecha.dmi'
button_overlay_icon_state = "mech_cycle_equip_off"
/datum/action/innate/shuttledocker_rotate/Activate()
if(QDELETED(target) || !isliving(target))
@@ -296,8 +296,8 @@
/datum/action/innate/shuttledocker_place
name = "Place"
icon_icon = 'icons/mob/actions/actions_mecha.dmi'
button_icon_state = "mech_zoom_off"
button_overlay_icon = 'icons/mob/actions/actions_mecha.dmi'
button_overlay_icon_state = "mech_zoom_off"
/datum/action/innate/shuttledocker_place/Activate()
if(QDELETED(target) || !isliving(target))
@@ -309,7 +309,7 @@
/datum/action/innate/camera_jump/shuttle_docker
name = "Jump to Location"
button_icon_state = "camera_jump"
button_overlay_icon_state = "camera_jump"
/datum/action/innate/camera_jump/shuttle_docker/Activate()
if(QDELETED(target) || !isliving(target))
@@ -377,8 +377,8 @@
/datum/action/item_action/organ_action/toggle/sensory_enhancer
name = "Activate Qani-Laaca System"
desc = "Activates your Qani-Laaca computer and grants you its powers. LMB: Short, safer activation. ALT/MIDDLE: Longer, more powerful, more dangerous activation."
button_icon = 'icons/obj/surgery.dmi'
button_icon_state = "sandy"
button_overlay_icon = 'icons/obj/surgery.dmi'
button_overlay_icon_state = "sandy"
check_flags = AB_CHECK_CONSCIOUS
/// Keeps track of how much mephedrone we inject into people on activation
var/injection_amount = 10
@@ -17,11 +17,11 @@
/datum/action/item_action/organ_action/toggle/headpocket
use_itemicon = FALSE
button_icon_state = "skrell_headpocket_in"
button_overlay_icon_state = "skrell_headpocket_in"
/obj/item/organ/internal/headpocket/proc/update_button_state()
for(var/datum/action/item_action/T in actions)
T.button_icon_state = "skrell_headpocket[held_item ? "_out" : "_in"]"
T.button_overlay_icon_state = "skrell_headpocket[held_item ? "_out" : "_in"]"
T.UpdateButtons()
/obj/item/organ/internal/headpocket/Destroy()
+2 -2
View File
@@ -19,8 +19,8 @@
/datum/action/ambulance_alarm
name = "Toggle Sirens"
icon_icon = 'icons/obj/vehicles.dmi'
button_icon_state = "docwagon2"
button_overlay_icon = 'icons/obj/vehicles.dmi'
button_overlay_icon_state = "docwagon2"
check_flags = AB_CHECK_RESTRAINED | AB_CHECK_STUNNED | AB_CHECK_LYING | AB_CHECK_CONSCIOUS
var/toggle_cooldown = 40
var/cooldown = 0
+2 -2
View File
@@ -46,8 +46,8 @@
/datum/action/bicycle_bell
name = "Ring Bell"
desc = "Go on, ring your bicycle bell!"
icon_icon = 'icons/obj/bureaucracy.dmi'
button_icon_state = "desk_bell"
button_overlay_icon = 'icons/obj/bureaucracy.dmi'
button_overlay_icon_state = "desk_bell"
COOLDOWN_DECLARE(ring_cooldown)
/datum/action/bicycle_bell/Trigger(left_click)
+2 -2
View File
@@ -46,8 +46,8 @@
/datum/action/floor_buffer
name = "Toggle Floor Buffer"
desc = "Movement speed is decreased while active."
icon_icon = 'icons/obj/vehicles.dmi'
button_icon_state = "upgrade"
button_overlay_icon = 'icons/obj/vehicles.dmi'
button_overlay_icon_state = "upgrade"
/datum/action/floor_buffer/Trigger(left_click)
. = ..()
@@ -188,9 +188,9 @@
/datum/action/vehicle
check_flags = AB_CHECK_HANDS_BLOCKED | AB_CHECK_IMMOBILE | AB_CHECK_CONSCIOUS
button_icon = 'icons/mob/actions/actions_vehicle.dmi'
icon_icon = 'icons/mob/actions/actions_vehicle.dmi'
button_icon_state = "vehicle_eject"
button_background_icon = 'icons/mob/actions/actions_vehicle.dmi'
button_overlay_icon = 'icons/mob/actions/actions_vehicle.dmi'
button_overlay_icon_state = "vehicle_eject"
var/obj/tgvehicle/vehicle_target
var/obj/tgvehicle/vehicle_ridden_target
@@ -201,7 +201,7 @@
/datum/action/vehicle/scooter/skateboard/ollie
name = "Ollie"
desc = "Get some air! Land on a table or fence to do a gnarly grind."
button_icon_state = "skateboard_ollie"
button_overlay_icon_state = "skateboard_ollie"
check_flags = AB_CHECK_CONSCIOUS
/datum/action/vehicle/scooter/skateboard/ollie/Trigger(left_click)
@@ -247,7 +247,7 @@
/datum/action/vehicle/scooter/skateboard/kickflip
name = "Kickflip"
desc = "Kick your board up and catch it."
button_icon_state = "skateboard_ollie"
button_overlay_icon_state = "skateboard_ollie"
check_flags = AB_CHECK_CONSCIOUS
/datum/action/vehicle/scooter/skateboard/kickflip/Trigger(left_click)