mirror of
https://github.com/Skyrat-SS13/Skyrat-tg.git
synced 2026-08-30 08:18:48 +01:00
* Xenos have their resist UI element again (#84995) ## About The Pull Request This restores the "resist" UI element for xenos. It's been there the whole time, even having the screen item get made every time a Xeno player occupies a body. It wouldn't render, however, since the actual screen element wouldn't be modified to use the xeno UI theme.  ## Why It's Good For The Game Xenos have plenty to be resisting from. Stop-drop-and-rolling, instantly breaking out of handcuffs or straitjackets, buckle-combat. The thing is, it's been here to whole time too, and even had a sprite already set up, so it leads me to believe that this was somehow just taken out by accident one day and went mostly unnoticed. ## Changelog 🆑 Rhials fix: Xenos have a "resist" ui element now. Cool! /🆑 * Xenos have their resist UI element again --------- Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
135 lines
3.8 KiB
Plaintext
135 lines
3.8 KiB
Plaintext
/atom/movable/screen/alien
|
|
icon = 'icons/hud/screen_alien.dmi'
|
|
|
|
/atom/movable/screen/alien/leap
|
|
name = "toggle leap"
|
|
icon_state = "leap_off"
|
|
|
|
/atom/movable/screen/alien/leap/Click()
|
|
if(isalienhunter(usr))
|
|
var/mob/living/carbon/alien/adult/hunter/AH = usr
|
|
AH.toggle_leap()
|
|
|
|
/atom/movable/screen/alien/plasma_display
|
|
name = "plasma stored"
|
|
icon_state = "power_display"
|
|
screen_loc = ui_alienplasmadisplay
|
|
|
|
/atom/movable/screen/alien/alien_queen_finder
|
|
name = "queen sense"
|
|
desc = "Allows you to sense the general direction of your Queen."
|
|
icon_state = "queen_finder"
|
|
screen_loc = ui_alien_queen_finder
|
|
|
|
/datum/hud/alien
|
|
ui_style = 'icons/hud/screen_alien.dmi'
|
|
|
|
/datum/hud/alien/New(mob/living/carbon/alien/adult/owner)
|
|
..()
|
|
|
|
var/atom/movable/screen/using
|
|
|
|
//equippable shit
|
|
|
|
//hands
|
|
build_hand_slots()
|
|
|
|
//begin buttons
|
|
|
|
using = new /atom/movable/screen/swap_hand(null, src)
|
|
using.icon = ui_style
|
|
using.icon_state = "swap_1"
|
|
using.screen_loc = ui_swaphand_position(owner,1)
|
|
static_inventory += using
|
|
|
|
using = new /atom/movable/screen/swap_hand(null, src)
|
|
using.icon = ui_style
|
|
using.icon_state = "swap_2"
|
|
using.screen_loc = ui_swaphand_position(owner,2)
|
|
static_inventory += using
|
|
|
|
action_intent = new /atom/movable/screen/combattoggle/flashy(null, src)
|
|
action_intent.icon = ui_style
|
|
action_intent.screen_loc = ui_combat_toggle
|
|
static_inventory += action_intent
|
|
|
|
if(isalienhunter(mymob))
|
|
var/mob/living/carbon/alien/adult/hunter/H = mymob
|
|
H.leap_icon = new /atom/movable/screen/alien/leap()
|
|
H.leap_icon.screen_loc = ui_alien_storage_r
|
|
static_inventory += H.leap_icon
|
|
|
|
using = new/atom/movable/screen/language_menu(null, src)
|
|
using.screen_loc = ui_alien_language_menu
|
|
static_inventory += using
|
|
|
|
using = new /atom/movable/screen/floor_menu(null, src)
|
|
using.screen_loc = ui_alien_floor_menu
|
|
static_inventory += using
|
|
|
|
using = new /atom/movable/screen/navigate(null, src)
|
|
using.screen_loc = ui_alien_navigate_menu
|
|
static_inventory += using
|
|
|
|
using = new /atom/movable/screen/drop(null, src)
|
|
using.icon = ui_style
|
|
using.screen_loc = ui_drop_throw
|
|
static_inventory += using
|
|
|
|
using = new /atom/movable/screen/resist(null, src)
|
|
using.icon = ui_style
|
|
using.screen_loc = ui_above_movement
|
|
using.update_appearance()
|
|
hotkeybuttons += using
|
|
|
|
throw_icon = new /atom/movable/screen/throw_catch(null, src)
|
|
throw_icon.icon = ui_style
|
|
throw_icon.screen_loc = ui_drop_throw
|
|
hotkeybuttons += throw_icon
|
|
|
|
pull_icon = new /atom/movable/screen/pull(null, src)
|
|
pull_icon.icon = ui_style
|
|
pull_icon.update_appearance()
|
|
pull_icon.screen_loc = ui_above_movement
|
|
static_inventory += pull_icon
|
|
|
|
rest_icon = new /atom/movable/screen/rest(null, src)
|
|
rest_icon.icon = ui_style
|
|
rest_icon.screen_loc = ui_above_intent
|
|
rest_icon.update_appearance()
|
|
static_inventory += rest_icon
|
|
|
|
//begin indicators
|
|
|
|
healths = new /atom/movable/screen/healths/alien(null, src)
|
|
infodisplay += healths
|
|
|
|
alien_plasma_display = new /atom/movable/screen/alien/plasma_display(null, src)
|
|
infodisplay += alien_plasma_display
|
|
|
|
if(!isalienqueen(mymob))
|
|
alien_queen_finder = new /atom/movable/screen/alien/alien_queen_finder(null, src)
|
|
infodisplay += alien_queen_finder
|
|
|
|
zone_select = new /atom/movable/screen/zone_sel/alien(null, src)
|
|
zone_select.update_appearance()
|
|
static_inventory += zone_select
|
|
|
|
for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory))
|
|
if(inv.slot_id)
|
|
inv_slots[TOBITSHIFT(inv.slot_id) + 1] = inv
|
|
inv.update_appearance()
|
|
|
|
/datum/hud/alien/persistent_inventory_update()
|
|
if(!mymob)
|
|
return
|
|
var/mob/living/carbon/alien/adult/H = mymob
|
|
if(hud_version != HUD_STYLE_NOHUD)
|
|
for(var/obj/item/I in H.held_items)
|
|
I.screen_loc = ui_hand_position(H.get_held_index_of_item(I))
|
|
H.client.screen += I
|
|
else
|
|
for(var/obj/item/I in H.held_items)
|
|
I.screen_loc = null
|
|
H.client.screen -= I
|