mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-20 04:26:03 +01:00
Icon unit test fixes (#29530)
* Fish
* Revert "[MIRROR] Shrunk arrow from pointing at things. Command roles unaffected thanks to id trims (also new skillchip). (#29461)"
This reverts commit e6e2af8b4c.
* asset protection fix
This commit is contained in:
@@ -119,9 +119,6 @@
|
||||
/// From base of area/Exited(): (area/left, direction)
|
||||
#define COMSIG_MOVABLE_EXITED_AREA "movable_exited_area"
|
||||
|
||||
///from base of /atom/movable/point_at: (atom/A, obj/effect/temp_visual/point/point)
|
||||
#define COMSIG_MOVABLE_POINTED "movable_pointed"
|
||||
|
||||
/// Sent to movables when they are being stolen by a spy: (mob/living/spy, datum/spy_bounty/bounty)
|
||||
#define COMSIG_MOVABLE_SPY_STEALING "movable_spy_stealing"
|
||||
/// Called when something is pushed by a living mob bumping it: (mob/living/pusher, push force)
|
||||
|
||||
@@ -151,6 +151,8 @@
|
||||
/// from base of mob/swap_hand(): ()
|
||||
/// Performed after the hands are swapped.
|
||||
#define COMSIG_MOB_SWAP_HANDS "mob_swap_hands"
|
||||
///from base of /mob/verb/pointed: (atom/A)
|
||||
#define COMSIG_MOB_POINTED "mob_pointed"
|
||||
///Mob is trying to open the wires of a target [/atom], from /datum/wires/interactable(): (atom/target)
|
||||
#define COMSIG_TRY_WIRES_INTERACT "try_wires_interact"
|
||||
#define COMPONENT_CANT_INTERACT_WIRES (1<<0)
|
||||
|
||||
@@ -399,8 +399,6 @@ SUBSYSTEM_DEF(id_access)
|
||||
|
||||
id_card.clear_access()
|
||||
id_card.trim = trim
|
||||
id_card.big_pointer = trim.big_pointer
|
||||
id_card.pointer_color = trim.pointer_color
|
||||
|
||||
if(copy_access)
|
||||
id_card.access = trim.access.Copy()
|
||||
@@ -444,8 +442,6 @@ SUBSYSTEM_DEF(id_access)
|
||||
id_card.department_color_override = trim.department_color
|
||||
id_card.department_state_override = trim.department_state
|
||||
id_card.subdepartment_color_override = trim.subdepartment_color
|
||||
id_card.big_pointer = trim.big_pointer
|
||||
id_card.pointer_color = trim.pointer_color
|
||||
|
||||
if(!check_forged || !id_card.forged)
|
||||
id_card.assignment = trim.assignment
|
||||
@@ -466,8 +462,6 @@ SUBSYSTEM_DEF(id_access)
|
||||
id_card.department_color_override = null
|
||||
id_card.department_state_override = null
|
||||
id_card.subdepartment_color_override = null
|
||||
id_card.big_pointer = id_card.trim.big_pointer
|
||||
id_card.pointer_color = id_card.trim.pointer_color
|
||||
|
||||
/**
|
||||
* Adds the accesses associated with a trim to an ID card.
|
||||
|
||||
@@ -77,14 +77,14 @@
|
||||
if(pawn.Adjacent(pawn, new_friend))
|
||||
new_friend.visible_message("<b>[pawn]</b> looks at [new_friend] in a friendly manner!", span_notice("[pawn] looks at you in a friendly manner!"))
|
||||
set_blackboard_key(BB_HOSTILE_FRIEND, new_friend)
|
||||
RegisterSignal(new_friend, COMSIG_MOVABLE_POINTED, PROC_REF(check_point))
|
||||
RegisterSignal(new_friend, COMSIG_MOB_POINTED, PROC_REF(check_point))
|
||||
RegisterSignal(new_friend, COMSIG_MOB_SAY, PROC_REF(check_verbal_command))
|
||||
|
||||
/// Someone is being mean to us, take them off our friends (add actual enemies behavior later)
|
||||
/datum/ai_controller/hostile_friend/proc/unfriend()
|
||||
var/mob/living/old_friend = blackboard[BB_HOSTILE_FRIEND]
|
||||
if(old_friend)
|
||||
UnregisterSignal(old_friend, list(COMSIG_MOVABLE_POINTED, COMSIG_MOB_SAY))
|
||||
UnregisterSignal(old_friend, list(COMSIG_MOB_POINTED, COMSIG_MOB_SAY))
|
||||
clear_blackboard_key(BB_HOSTILE_FRIEND)
|
||||
|
||||
/// Someone is looking at us, if we're currently carrying something then show what it is, and include a message if they're our friend
|
||||
@@ -190,7 +190,7 @@
|
||||
set_blackboard_key(BB_HOSTILE_ORDER_MODE, HOSTILE_COMMAND_ATTACK)
|
||||
|
||||
/// Someone we like is pointing at something, see if it's something we might want to interact with (like if they might want us to fetch something for them)
|
||||
/datum/ai_controller/hostile_friend/proc/check_point(mob/pointing_friend, atom/movable/pointed_movable, obj/effect/temp_visual/point/point)
|
||||
/datum/ai_controller/hostile_friend/proc/check_point(mob/pointing_friend, atom/movable/pointed_movable)
|
||||
SIGNAL_HANDLER
|
||||
|
||||
var/mob/living/simple_animal/hostile/living_pawn = pawn
|
||||
|
||||
@@ -186,14 +186,14 @@
|
||||
|
||||
/datum/pet_command/point_targeting/add_new_friend(mob/living/tamer)
|
||||
. = ..()
|
||||
RegisterSignal(tamer, COMSIG_MOVABLE_POINTED, PROC_REF(on_point))
|
||||
RegisterSignal(tamer, COMSIG_MOB_POINTED, PROC_REF(on_point))
|
||||
|
||||
/datum/pet_command/point_targeting/remove_friend(mob/living/unfriended)
|
||||
. = ..()
|
||||
UnregisterSignal(unfriended, COMSIG_MOVABLE_POINTED)
|
||||
UnregisterSignal(unfriended, COMSIG_MOB_POINTED)
|
||||
|
||||
/// Target the pointed atom for actions
|
||||
/datum/pet_command/point_targeting/proc/on_point(mob/living/friend, atom/pointed_atom, obj/effect/temp_visual/point/point)
|
||||
/datum/pet_command/point_targeting/proc/on_point(mob/living/friend, atom/pointed_atom)
|
||||
SIGNAL_HANDLER
|
||||
|
||||
var/mob/living/parent = weak_parent.resolve()
|
||||
|
||||
@@ -540,9 +540,9 @@
|
||||
|
||||
/datum/component/riding/creature/leaper/Initialize(mob/living/riding_mob, force = FALSE, ride_check_flags = NONE, potion_boost = FALSE)
|
||||
. = ..()
|
||||
RegisterSignal(riding_mob, COMSIG_MOVABLE_POINTED, PROC_REF(attack_pointed))
|
||||
RegisterSignal(riding_mob, COMSIG_MOB_POINTED, PROC_REF(attack_pointed))
|
||||
|
||||
/datum/component/riding/creature/leaper/proc/attack_pointed(mob/living/rider, atom/pointed, obj/effect/temp_visual/point/point)
|
||||
/datum/component/riding/creature/leaper/proc/attack_pointed(mob/living/rider, atom/pointed)
|
||||
SIGNAL_HANDLER
|
||||
if(!isclosedturf(pointed))
|
||||
return
|
||||
@@ -554,7 +554,7 @@
|
||||
|
||||
/datum/component/riding/leaper/handle_unbuckle(mob/living/rider)
|
||||
. = ..()
|
||||
UnregisterSignal(rider, COMSIG_MOVABLE_POINTED)
|
||||
UnregisterSignal(rider, COMSIG_MOB_POINTED)
|
||||
|
||||
/datum/component/riding/creature/raptor
|
||||
require_minigame = TRUE
|
||||
|
||||
@@ -24,11 +24,6 @@
|
||||
/// Accesses that this trim unlocks on a card that require wildcard slots to apply. If a card cannot accept all a trim's wildcard accesses, the card is incompatible with the trim.
|
||||
var/list/wildcard_access = list()
|
||||
|
||||
///If true, IDs with this trim will grant wearers with bigger arrows when pointing
|
||||
var/big_pointer = FALSE
|
||||
///If set, IDs with this trim will give wearers arrows of different colors when pointing
|
||||
var/pointer_color
|
||||
|
||||
/// Returns the SecHUD job icon state for whatever this object's ID card is, if it has one.
|
||||
/obj/item/proc/get_sechud_job_icon_state()
|
||||
var/obj/item/card/id/id_card = GetID()
|
||||
|
||||
@@ -5,8 +5,6 @@
|
||||
department_color = COLOR_CENTCOM_BLUE
|
||||
subdepartment_color = COLOR_SERVICE_LIME
|
||||
threat_modifier = -INFINITY
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_GREEN
|
||||
|
||||
/datum/id_trim/admin/New()
|
||||
. = ..()
|
||||
|
||||
@@ -7,8 +7,6 @@
|
||||
department_color = COLOR_CENTCOM_BLUE
|
||||
subdepartment_color = COLOR_CENTCOM_BLUE
|
||||
threat_modifier = -10 // Centcom are legally allowed to do whatever they want
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_CENTCOM_BLUE
|
||||
|
||||
/// Trim for Centcom VIPs
|
||||
/datum/id_trim/centcom/vip
|
||||
@@ -22,7 +20,6 @@
|
||||
trim_state = "trim_janitor"
|
||||
department_color = COLOR_CENTCOM_BLUE
|
||||
subdepartment_color = COLOR_SERVICE_LIME
|
||||
big_pointer = FALSE
|
||||
|
||||
/// Trim for Centcom Thunderdome Overseers.
|
||||
/datum/id_trim/centcom/thunderdome_overseer
|
||||
@@ -38,12 +35,10 @@
|
||||
/datum/id_trim/centcom/intern
|
||||
access = list(ACCESS_CENT_GENERAL, ACCESS_CENT_LIVING, ACCESS_WEAPONS)
|
||||
assignment = "CentCom Intern"
|
||||
big_pointer = FALSE
|
||||
|
||||
/// Trim for Centcom Head Interns. Different assignment, common station access added on.
|
||||
/datum/id_trim/centcom/intern/head
|
||||
assignment = "CentCom Head Intern"
|
||||
big_pointer = TRUE
|
||||
|
||||
/datum/id_trim/centcom/intern/head/New()
|
||||
. = ..()
|
||||
@@ -54,13 +49,11 @@
|
||||
/datum/id_trim/centcom/bounty_hunter
|
||||
access = list(ACCESS_CENT_GENERAL)
|
||||
assignment = "Bounty Hunter"
|
||||
big_pointer = FALSE
|
||||
|
||||
/// Trim for Centcom Bartenders.
|
||||
/datum/id_trim/centcom/bartender
|
||||
access = list(ACCESS_CENT_GENERAL, ACCESS_CENT_LIVING, ACCESS_CENT_BAR)
|
||||
assignment = JOB_CENTCOM_BARTENDER
|
||||
big_pointer = FALSE
|
||||
|
||||
/// Trim for Centcom Medical Officers.
|
||||
/datum/id_trim/centcom/medical_officer
|
||||
@@ -75,7 +68,6 @@
|
||||
/// Trim for Centcom Specops Officers. All Centcom and Station Access.
|
||||
/datum/id_trim/centcom/specops_officer
|
||||
assignment = JOB_CENTCOM_SPECIAL_OFFICER
|
||||
big_pointer = FALSE
|
||||
|
||||
/datum/id_trim/centcom/specops_officer/New()
|
||||
. = ..()
|
||||
@@ -137,7 +129,6 @@
|
||||
trim_state = "trim_securityofficer"
|
||||
subdepartment_color = COLOR_SECURITY_RED
|
||||
sechud_icon_state = SECHUD_SECURITY_RESPONSE_OFFICER
|
||||
big_pointer = FALSE
|
||||
|
||||
/datum/id_trim/centcom/ert/security/New()
|
||||
. = ..()
|
||||
@@ -150,7 +141,6 @@
|
||||
trim_state = "trim_stationengineer"
|
||||
subdepartment_color = COLOR_ENGINEERING_ORANGE
|
||||
sechud_icon_state = SECHUD_ENGINEERING_RESPONSE_OFFICER
|
||||
big_pointer = FALSE
|
||||
|
||||
/datum/id_trim/centcom/ert/engineer/New()
|
||||
. = ..()
|
||||
@@ -163,7 +153,6 @@
|
||||
trim_state = "trim_medicaldoctor"
|
||||
subdepartment_color = COLOR_MEDICAL_BLUE
|
||||
sechud_icon_state = SECHUD_MEDICAL_RESPONSE_OFFICER
|
||||
big_pointer = FALSE
|
||||
|
||||
/datum/id_trim/centcom/ert/medical/New()
|
||||
. = ..()
|
||||
@@ -176,7 +165,6 @@
|
||||
trim_state = "trim_chaplain"
|
||||
subdepartment_color = COLOR_SERVICE_LIME
|
||||
sechud_icon_state = SECHUD_RELIGIOUS_RESPONSE_OFFICER
|
||||
big_pointer = FALSE
|
||||
|
||||
/datum/id_trim/centcom/ert/chaplain/New()
|
||||
. = ..()
|
||||
@@ -189,7 +177,6 @@
|
||||
trim_state = "trim_ert_janitor"
|
||||
subdepartment_color = COLOR_SERVICE_LIME
|
||||
sechud_icon_state = SECHUD_JANITORIAL_RESPONSE_OFFICER
|
||||
big_pointer = FALSE
|
||||
|
||||
/datum/id_trim/centcom/ert/janitor/New()
|
||||
. = ..()
|
||||
@@ -202,7 +189,6 @@
|
||||
trim_state = "trim_clown"
|
||||
subdepartment_color = COLOR_MAGENTA
|
||||
sechud_icon_state = SECHUD_ENTERTAINMENT_RESPONSE_OFFICER
|
||||
big_pointer = FALSE
|
||||
|
||||
/datum/id_trim/centcom/ert/clown/New()
|
||||
. = ..()
|
||||
@@ -211,8 +197,6 @@
|
||||
|
||||
/datum/id_trim/centcom/ert/militia
|
||||
assignment = "Frontier Militia"
|
||||
big_pointer = FALSE
|
||||
|
||||
/datum/id_trim/centcom/ert/militia/general
|
||||
assignment = "Frontier Militia General"
|
||||
big_pointer = TRUE
|
||||
|
||||
@@ -238,8 +238,6 @@
|
||||
ACCESS_CHANGE_IDS,
|
||||
)
|
||||
job = /datum/job/captain
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_COMMAND_BLUE
|
||||
|
||||
/// Captain gets all station accesses hardcoded in because it's the Captain.
|
||||
/datum/id_trim/job/captain/New()
|
||||
@@ -362,8 +360,6 @@
|
||||
ACCESS_CHANGE_IDS,
|
||||
)
|
||||
job = /datum/job/chief_engineer
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_ENGINEERING_ORANGE
|
||||
|
||||
/datum/id_trim/job/chief_medical_officer
|
||||
assignment = JOB_CHIEF_MEDICAL_OFFICER
|
||||
@@ -403,8 +399,6 @@
|
||||
ACCESS_CHANGE_IDS,
|
||||
)
|
||||
job = /datum/job/chief_medical_officer
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_MEDICAL_BLUE
|
||||
|
||||
/datum/id_trim/job/clown
|
||||
assignment = JOB_CLOWN
|
||||
@@ -618,8 +612,6 @@
|
||||
ACCESS_CHANGE_IDS,
|
||||
)
|
||||
job = /datum/job/head_of_personnel
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_SERVICE_LIME
|
||||
|
||||
/datum/id_trim/job/head_of_security
|
||||
assignment = JOB_HEAD_OF_SECURITY
|
||||
@@ -669,8 +661,6 @@
|
||||
ACCESS_CHANGE_IDS,
|
||||
)
|
||||
job = /datum/job/head_of_security
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_SECURITY_RED
|
||||
|
||||
/datum/id_trim/job/head_of_security/refresh_trim_access()
|
||||
. = ..()
|
||||
@@ -903,8 +893,6 @@
|
||||
ACCESS_CHANGE_IDS,
|
||||
)
|
||||
job = /datum/job/quartermaster
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_CARGO_BROWN
|
||||
|
||||
/datum/id_trim/job/research_director
|
||||
assignment = JOB_RESEARCH_DIRECTOR
|
||||
@@ -953,8 +941,6 @@
|
||||
ACCESS_CHANGE_IDS,
|
||||
)
|
||||
job = /datum/job/research_director
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_SCIENCE_PINK
|
||||
|
||||
/datum/id_trim/job/roboticist
|
||||
assignment = JOB_ROBOTICIST
|
||||
@@ -1220,7 +1206,6 @@
|
||||
extra_access = list()
|
||||
template_access = list()
|
||||
job = /datum/job/veteran_advisor
|
||||
big_pointer = TRUE
|
||||
|
||||
/datum/id_trim/job/veteran_advisor/refresh_trim_access()
|
||||
. = ..()
|
||||
@@ -1290,5 +1275,3 @@
|
||||
extra_access = list()
|
||||
template_access = list()
|
||||
job = /datum/job/human_ai
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_MODERATE_BLUE
|
||||
|
||||
@@ -72,7 +72,6 @@
|
||||
/datum/id_trim/centcom/corpse/commander
|
||||
assignment = "Commander"
|
||||
access = list(ACCESS_CENT_CAPTAIN, ACCESS_CENT_GENERAL, ACCESS_CENT_SPECOPS, ACCESS_CENT_MEDICAL, ACCESS_CENT_STORAGE)
|
||||
big_pointer = TRUE
|
||||
|
||||
/// Trim for various Centcom corpses.
|
||||
/datum/id_trim/centcom/corpse/private_security
|
||||
@@ -116,14 +115,12 @@
|
||||
/datum/id_trim/pirate/captain
|
||||
assignment = "Pirate Captain"
|
||||
trim_state = "trim_captain"
|
||||
big_pointer = TRUE
|
||||
|
||||
/datum/id_trim/pirate/silverscale
|
||||
assignment = "Silver Scale Member"
|
||||
|
||||
/datum/id_trim/pirate/captain/silverscale
|
||||
assignment = "Silver Scale VIP"
|
||||
big_pointer = TRUE
|
||||
|
||||
//Trims for Dangerous Research, used in ``dangerous_research.dm``
|
||||
/datum/id_trim/away/dangerous_research
|
||||
@@ -133,7 +130,6 @@
|
||||
/datum/id_trim/away/dangerous_research/head_occultist
|
||||
assignment = "Head Occultist"
|
||||
access = list(ACCESS_AWAY_SCIENCE, ACCESS_AWAY_COMMAND)
|
||||
big_pointer = TRUE
|
||||
|
||||
//Trims for waystation.dmm space ruin
|
||||
/datum/id_trim/away/waystation/cargo_technician
|
||||
@@ -147,7 +143,6 @@
|
||||
trim_state = "trim_quartermaster"
|
||||
department_color = COLOR_CARGO_BROWN
|
||||
access = list(ACCESS_AWAY_SUPPLY, ACCESS_AWAY_COMMAND)
|
||||
big_pointer = TRUE
|
||||
|
||||
/datum/id_trim/away/waystation/security
|
||||
assignment = "Waystation Security Officer"
|
||||
@@ -167,9 +162,8 @@
|
||||
/datum/id_trim/away/the_outlet/mad_manager
|
||||
assignment = "The Mad Manager"
|
||||
access = list(ACCESS_AWAY_GENERAL, ACCESS_AWAY_MEDICAL, ACCESS_AWAY_SEC)
|
||||
big_pointer = TRUE
|
||||
|
||||
//Haunted Trading Post IDs
|
||||
//Haunted Trading Post IDs //
|
||||
/datum/id_trim/away/hauntedtradingpost
|
||||
assignment = "Donk Co. Employee"
|
||||
department_color = COLOR_ENGINEERING_ORANGE
|
||||
@@ -180,4 +174,4 @@
|
||||
/datum/id_trim/away/hauntedtradingpost/boss
|
||||
assignment = "Donk Co. Executive"
|
||||
access = list(ACCESS_SYNDICATE, ACCESS_AWAY_COMMAND)
|
||||
big_pointer = TRUE
|
||||
// //
|
||||
|
||||
@@ -7,14 +7,11 @@
|
||||
sechud_icon_state = SECHUD_SYNDICATE
|
||||
access = list(ACCESS_SYNDICATE)
|
||||
threat_modifier = 5 // Bad guy on deck
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_SYNDIE_RED
|
||||
|
||||
/// Trim for Syndicate mobs, outfits and corpses.
|
||||
/datum/id_trim/syndicom/crew
|
||||
assignment = "Syndicate Operative"
|
||||
access = list(ACCESS_SYNDICATE, ACCESS_ROBOTICS)
|
||||
big_pointer = FALSE
|
||||
|
||||
/// Interdyne medical Staff
|
||||
/datum/id_trim/syndicom/Interdyne/pharmacist
|
||||
@@ -22,8 +19,6 @@
|
||||
trim_state = "trim_medicaldoctor"
|
||||
sechud_icon_state = SECHUD_SYNDICATE_INTERDYNE
|
||||
access = list(ACCESS_SYNDICATE, ACCESS_ROBOTICS, ACCESS_SURGERY)
|
||||
big_pointer = FALSE
|
||||
pointer_color = null
|
||||
|
||||
/// Interdyne head medical Staff
|
||||
/datum/id_trim/syndicom/Interdyne/pharmacist_director
|
||||
@@ -33,8 +28,6 @@
|
||||
subdepartment_color = COLOR_SYNDIE_RED_HEAD
|
||||
sechud_icon_state = SECHUD_SYNDICATE_INTERDYNE_HEAD
|
||||
access = list(ACCESS_SYNDICATE, ACCESS_ROBOTICS, ACCESS_SURGERY)
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_SYNDIE_RED_HEAD
|
||||
|
||||
/// Trim for the space IRS agents (why are they syndie access? I wouldn't worry about it.)
|
||||
/datum/id_trim/syndicom/irs
|
||||
@@ -44,14 +37,11 @@
|
||||
subdepartment_color = COLOR_COMMAND_BLUE
|
||||
sechud_icon_state = SECHUD_DEATH_COMMANDO
|
||||
access = list(ACCESS_SYNDICATE, ACCESS_MAINT_TUNNELS)
|
||||
big_pointer = FALSE
|
||||
pointer_color = null
|
||||
|
||||
/datum/id_trim/syndicom/irs/auditor
|
||||
assignment = "Internal Revenue Service Head Auditor"
|
||||
trim_state = "trim_quartermaster"
|
||||
sechud_icon_state = SECHUD_QUARTERMASTER
|
||||
big_pointer = TRUE
|
||||
|
||||
/// Trim for Syndicate mobs, outfits and corpses.
|
||||
/datum/id_trim/syndicom/captain
|
||||
@@ -70,8 +60,6 @@
|
||||
/datum/id_trim/battlecruiser/captain
|
||||
assignment = "Syndicate Battlecruiser Captain"
|
||||
access = list(ACCESS_SYNDICATE, ACCESS_SYNDICATE_LEADER)
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_SYNDIE_RED
|
||||
|
||||
/// Trim for Chameleon ID cards. Many outfits, nuke ops and some corpses hold Chameleon ID cards.
|
||||
/datum/id_trim/chameleon
|
||||
@@ -91,8 +79,6 @@
|
||||
/datum/id_trim/chameleon/operative/nuke_leader
|
||||
assignment = "Syndicate Operative Leader"
|
||||
access = list(ACCESS_MAINT_TUNNELS, ACCESS_SYNDICATE, ACCESS_SYNDICATE_LEADER)
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_SYNDIE_RED
|
||||
|
||||
/// Trim for Chameleon ID cards. Many outfits, nuke ops and some corpses hold Chameleon ID cards.
|
||||
/datum/id_trim/chameleon/operative/clown
|
||||
@@ -103,5 +89,3 @@
|
||||
/datum/id_trim/chameleon/operative/clown_leader
|
||||
assignment = "Syndicate Entertainment Operative Leader"
|
||||
access = list(ACCESS_MAINT_TUNNELS, ACCESS_SYNDICATE, ACCESS_SYNDICATE_LEADER)
|
||||
big_pointer = TRUE
|
||||
pointer_color = COLOR_SYNDIE_RED
|
||||
|
||||
@@ -615,26 +615,11 @@
|
||||
|
||||
/obj/machinery/door/morgue
|
||||
icon = 'icons/obj/doors/doormorgue.dmi'
|
||||
icon_state = "closed"
|
||||
|
||||
/obj/machinery/door/morgue/Initialize(mapload)
|
||||
. = ..()
|
||||
AddComponent(/datum/component/redirect_attack_hand_from_turf)
|
||||
|
||||
/obj/machinery/door/morgue/update_icon_state()
|
||||
. = ..()
|
||||
if(animation && animation != "deny")
|
||||
icon_state = animation
|
||||
else
|
||||
icon_state = density ? "closed" : "open_top"
|
||||
|
||||
/obj/machinery/door/morgue/update_overlays()
|
||||
. = ..()
|
||||
if(!density)
|
||||
// If we're open we layer the bit below us "above" any mobs so they can walk through
|
||||
. += mutable_appearance(icon, "open_bottom", ABOVE_MOB_LAYER, appearance_flags = KEEP_APART)
|
||||
. += emissive_blocker(icon, "open_bottom", src, ABOVE_MOB_LAYER)
|
||||
|
||||
/obj/machinery/door/get_dumping_location()
|
||||
return null
|
||||
|
||||
|
||||
@@ -104,11 +104,6 @@
|
||||
/// Boolean value. If TRUE, the [Intern] tag gets prepended to this ID card when the label is updated.
|
||||
var/is_intern = FALSE
|
||||
|
||||
///If true, the wearer will have bigger arrow when pointing at things. Passed down by trims.
|
||||
var/big_pointer = FALSE
|
||||
///If set, the arrow will have a different color.
|
||||
var/pointer_color
|
||||
|
||||
/datum/armor/card_id
|
||||
fire = 100
|
||||
acid = 100
|
||||
@@ -149,29 +144,6 @@
|
||||
QDEL_NULL(my_store)
|
||||
return ..()
|
||||
|
||||
/obj/item/card/id/equipped(mob/user, slot)
|
||||
. = ..()
|
||||
if(slot == ITEM_SLOT_ID)
|
||||
RegisterSignal(user, COMSIG_MOVABLE_POINTED, PROC_REF(on_pointed))
|
||||
|
||||
/obj/item/card/id/proc/on_pointed(mob/living/user, atom/pointed, obj/effect/temp_visual/point/point)
|
||||
SIGNAL_HANDLER
|
||||
if((!big_pointer && !pointer_color) || HAS_TRAIT(user, TRAIT_UNKNOWN))
|
||||
return
|
||||
if(point.icon_state != /obj/effect/temp_visual/point::icon_state) //it differs from the original icon_state already.
|
||||
return
|
||||
if(big_pointer)
|
||||
point.icon_state = "arrow_large"
|
||||
if(pointer_color)
|
||||
point.icon_state = "[point.icon_state]_white"
|
||||
point.color = pointer_color
|
||||
var/mutable_appearance/highlight = mutable_appearance(point.icon, "[point.icon_state]_highlights", appearance_flags = RESET_COLOR)
|
||||
point.add_overlay(highlight)
|
||||
|
||||
/obj/item/card/id/dropped(mob/user)
|
||||
UnregisterSignal(user, COMSIG_MOVABLE_POINTED)
|
||||
return ..()
|
||||
|
||||
/obj/item/card/id/get_id_examine_strings(mob/user)
|
||||
. = ..()
|
||||
. += list("[icon2html(get_cached_flat_icon(), user, extra_classes = "bigicon")]")
|
||||
|
||||
@@ -584,7 +584,6 @@
|
||||
new /obj/item/storage/backpack/satchel(src)
|
||||
new /obj/item/modular_computer/pda/heads(src)
|
||||
new /obj/item/clipboard(src)
|
||||
new /obj/item/skillchip/big_pointer(src)
|
||||
|
||||
/obj/item/storage/box/syndie_kit/chameleon/broken/PopulateContents()
|
||||
new /obj/item/clothing/under/chameleon/broken(src)
|
||||
|
||||
@@ -42,7 +42,6 @@
|
||||
belt = /obj/item/gun/magic/midas_hand
|
||||
l_pocket = /obj/item/coin/gold/doubloon
|
||||
|
||||
|
||||
/datum/outfit/pirate/space
|
||||
name = "Space Pirate (EVA)"
|
||||
|
||||
@@ -56,8 +55,6 @@
|
||||
|
||||
head = /obj/item/clothing/head/helmet/space/pirate
|
||||
|
||||
id_trim = /datum/id_trim/pirate/captain
|
||||
|
||||
/datum/outfit/pirate/silverscale
|
||||
name = "Silver Scale Member"
|
||||
|
||||
@@ -154,8 +151,6 @@
|
||||
suit = /obj/item/clothing/suit/jacket/oversized
|
||||
head = /obj/item/clothing/head/costume/crown
|
||||
|
||||
id_trim = /datum/id_trim/pirate/captain
|
||||
|
||||
/datum/outfit/pirate/medieval
|
||||
name = "Medieval Warmonger"
|
||||
|
||||
@@ -186,5 +181,3 @@
|
||||
belt = /obj/item/gun/magic/hook
|
||||
l_pocket = /obj/item/tank/internals/emergency_oxygen
|
||||
r_pocket = /obj/item/flashlight/lantern
|
||||
|
||||
skillchips = list(/obj/item/skillchip/big_pointer) //they don't have an id, so this is needed
|
||||
|
||||
@@ -104,8 +104,6 @@
|
||||
l_pocket = /obj/item/healthanalyzer/advanced
|
||||
additional_radio = /obj/item/encryptionkey/heads/cmo
|
||||
|
||||
skillchips = list(/obj/item/skillchip/entrails_reader)
|
||||
|
||||
/datum/outfit/centcom/ert/medic/alert
|
||||
name = "ERT Medic - High Alert"
|
||||
|
||||
@@ -135,8 +133,6 @@
|
||||
l_pocket = /obj/item/rcd_ammo/large
|
||||
additional_radio = /obj/item/encryptionkey/heads/ce
|
||||
|
||||
skillchips = list(/obj/item/skillchip/job/engineer)
|
||||
|
||||
/datum/outfit/centcom/ert/engineer/alert
|
||||
name = "ERT Engineer - High Alert"
|
||||
|
||||
@@ -506,8 +502,6 @@
|
||||
head = /obj/item/clothing/head/helmet/marine/security
|
||||
additional_radio = /obj/item/encryptionkey/heads/hos
|
||||
|
||||
skillchips = null
|
||||
|
||||
/datum/outfit/centcom/ert/marine/medic
|
||||
name = "Marine Medic"
|
||||
|
||||
@@ -526,8 +520,6 @@
|
||||
glasses = /obj/item/clothing/glasses/hud/health/sunglasses
|
||||
additional_radio = /obj/item/encryptionkey/heads/cmo
|
||||
|
||||
skillchips = list(/obj/item/skillchip/entrails_reader)
|
||||
|
||||
/datum/outfit/centcom/ert/marine/engineer
|
||||
name = "Marine Engineer"
|
||||
|
||||
@@ -541,8 +533,6 @@
|
||||
glasses = /obj/item/clothing/glasses/hud/diagnostic/sunglasses
|
||||
additional_radio = /obj/item/encryptionkey/heads/ce
|
||||
|
||||
skillchips = list(/obj/item/skillchip/job/engineer)
|
||||
|
||||
/datum/outfit/centcom/militia
|
||||
name = "Militia Man"
|
||||
|
||||
|
||||
@@ -76,10 +76,7 @@
|
||||
messenger = /obj/item/storage/backpack/messenger/science
|
||||
|
||||
chameleon_extras = /obj/item/stamp/head/rd
|
||||
skillchips = list(
|
||||
/obj/item/skillchip/research_director,
|
||||
/obj/item/skillchip/job/roboticist,
|
||||
)
|
||||
skillchips = list(/obj/item/skillchip/research_director, /obj/item/skillchip/job/roboticist)
|
||||
|
||||
/datum/outfit/job/rd/mod
|
||||
name = "Research Director (MODsuit)"
|
||||
|
||||
@@ -1,99 +0,0 @@
|
||||
/**
|
||||
* A skillchip that gives the user bigger arrows when pointing at things (like some id trims do).
|
||||
* As a bonus, they can costumize the color of the arrow/pointer too.
|
||||
*/
|
||||
/obj/item/skillchip/big_pointer
|
||||
name = "Kommand skillchip"
|
||||
desc = "A biochip detailing various techniques employed by historical leaders to points at things like a true boss."
|
||||
skill_name = "Enhanced pointing"
|
||||
skill_description = "Learn to point at things in a more noticeable way."
|
||||
skill_icon = FA_ICON_ARROW_DOWN
|
||||
activate_message = span_notice("From \"The Definitive Compendium of Body Language for the Aspiring Leader\", page 164, paragraph 3...")
|
||||
deactivate_message = span_notice("So, uh, yeah, how do I point at things again?")
|
||||
|
||||
///The action for changing the pointer color
|
||||
var/datum/action/change_pointer_color/action
|
||||
|
||||
/obj/item/skillchip/big_pointer/Destroy()
|
||||
action = null
|
||||
return ..()
|
||||
|
||||
/obj/item/skillchip/big_pointer/on_activate(mob/living/carbon/user, silent=FALSE)
|
||||
. = ..()
|
||||
RegisterSignal(user, COMSIG_MOVABLE_POINTED, PROC_REF(fancier_pointer))
|
||||
if(!action)
|
||||
action = new(src)
|
||||
action.Grant(user)
|
||||
|
||||
/obj/item/skillchip/big_pointer/on_deactivate(mob/living/carbon/user, silent=FALSE)
|
||||
UnregisterSignal(user, COMSIG_MOVABLE_POINTED)
|
||||
action?.arrow_color = null
|
||||
action?.arrow_overlay = null
|
||||
action?.Remove(user)
|
||||
return ..()
|
||||
|
||||
/obj/item/skillchip/big_pointer/proc/fancier_pointer(mob/living/user, atom/pointed, obj/effect/temp_visual/point/point)
|
||||
SIGNAL_HANDLER
|
||||
if(HAS_TRAIT(user, TRAIT_UNKNOWN))
|
||||
return
|
||||
point.cut_overlays()
|
||||
if(!action.arrow_color)
|
||||
point.icon_state = "arrow_large"
|
||||
return
|
||||
point.icon_state = "arrow_large_white"
|
||||
point.color = action.arrow_color
|
||||
var/mutable_appearance/highlight = mutable_appearance(point.icon, "arrow_large_white_highlights", appearance_flags = RESET_COLOR)
|
||||
point.add_overlay(highlight)
|
||||
|
||||
/datum/action/change_pointer_color
|
||||
name = "Change Pointer Color"
|
||||
desc = "Set your custom pointer color, or reset it to the default."
|
||||
button_icon = /obj/effect/temp_visual/point::icon
|
||||
button_icon_state = "arrow_large_still"
|
||||
check_flags = AB_CHECK_CONSCIOUS
|
||||
///the color of our arrow
|
||||
var/arrow_color
|
||||
///the arrow overlay shown on the button
|
||||
var/mutable_appearance/arrow_overlay
|
||||
|
||||
/datum/action/change_pointer_color/Destroy()
|
||||
. = ..()
|
||||
arrow_overlay = null
|
||||
|
||||
/datum/action/change_pointer_color/Trigger(trigger_flags)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return
|
||||
var/mob/user = owner
|
||||
if(!arrow_color)
|
||||
pick_color(user)
|
||||
return
|
||||
var/choice = tgui_alert(owner, "Reset or update pointer color?","Pointer Color", list("Reset","Update"))
|
||||
if(user != owner || !choice || !IsAvailable(feedback = TRUE))
|
||||
return
|
||||
if(choice == "Update")
|
||||
pick_color(user)
|
||||
else
|
||||
arrow_color = null
|
||||
owner.balloon_alert(owner, "pointer reset")
|
||||
build_all_button_icons(update_flags = UPDATE_BUTTON_ICON, force = TRUE)
|
||||
|
||||
/datum/action/change_pointer_color/proc/pick_color(mob/user)
|
||||
var/ncolor = input(owner, "Pick new color", "Pointer Color", arrow_color) as color|null
|
||||
if(user != owner || !IsAvailable(feedback = TRUE))
|
||||
return
|
||||
arrow_color = ncolor
|
||||
owner.balloon_alert(owner, "pointer updated")
|
||||
build_all_button_icons(update_flags = UPDATE_BUTTON_ICON, force = TRUE)
|
||||
|
||||
/datum/action/change_pointer_color/apply_button_icon(atom/movable/screen/movable/action_button/current_button, force = FALSE)
|
||||
if(!arrow_color)
|
||||
return ..()
|
||||
|
||||
current_button.icon = current_button.icon_state = null
|
||||
current_button.cut_overlay(arrow_overlay)
|
||||
|
||||
arrow_overlay = mutable_appearance(icon = /obj/effect/temp_visual/point::icon, icon_state = "arrow_large_white_still")
|
||||
arrow_overlay.color = arrow_color
|
||||
arrow_overlay.overlays += mutable_appearance(icon = /obj/effect/temp_visual/point::icon, icon_state = "arrow_large_white_still_highlights", appearance_flags = RESET_COLOR)
|
||||
current_button.add_overlay(arrow_overlay)
|
||||
@@ -160,8 +160,6 @@
|
||||
l_pocket = /obj/item/uplink/nuclear
|
||||
r_pocket = /obj/item/modular_computer/pda/nukeops
|
||||
|
||||
skillchips = list(/obj/item/skillchip/disk_verifier)
|
||||
|
||||
/obj/effect/mob_spawn/ghost_role/human/syndicate/battlecruiser/captain
|
||||
name = "Syndicate Battlecruiser Captain"
|
||||
you_are_text = "You are the captain aboard the syndicate flagship: the SBC Starfury."
|
||||
@@ -186,8 +184,3 @@
|
||||
mask = /obj/item/cigarette/cigar/havana
|
||||
l_pocket = /obj/item/melee/energy/sword/saber/red
|
||||
r_pocket = /obj/item/melee/baton/telescopic
|
||||
|
||||
skillchips = list(
|
||||
/obj/item/skillchip/disk_verifier,
|
||||
/obj/item/skillchip/big_pointer,
|
||||
)
|
||||
|
||||
@@ -7,30 +7,22 @@
|
||||
*
|
||||
* Not intended as a replacement for the mob verb
|
||||
*/
|
||||
/atom/movable/proc/point_at(atom/pointed_atom, intentional = FALSE)
|
||||
/atom/movable/proc/point_at(atom/pointed_atom)
|
||||
if(!isturf(loc))
|
||||
return FALSE
|
||||
return
|
||||
|
||||
if (pointed_atom in src)
|
||||
create_point_bubble(pointed_atom)
|
||||
return FALSE
|
||||
return
|
||||
|
||||
var/turf/tile = get_turf(pointed_atom)
|
||||
if (!tile)
|
||||
return FALSE
|
||||
return
|
||||
|
||||
var/turf/our_tile = get_turf(src)
|
||||
var/obj/visual = new /obj/effect/temp_visual/point(our_tile, invisibility)
|
||||
|
||||
SEND_SIGNAL(src, COMSIG_MOVABLE_POINTED, pointed_atom, visual, intentional)
|
||||
|
||||
animate(visual, pixel_x = (tile.x - our_tile.x) * world.icon_size + pointed_atom.pixel_x, pixel_y = (tile.y - our_tile.y) * world.icon_size + pointed_atom.pixel_y, time = 1.7, easing = EASE_OUT)
|
||||
return TRUE
|
||||
|
||||
/mob/point_at(atom/pointed_atom, intentional = FALSE)
|
||||
. = ..()
|
||||
if(.)
|
||||
face_atom(pointed_atom)
|
||||
|
||||
/atom/movable/proc/create_point_bubble(atom/pointed_atom)
|
||||
var/mutable_appearance/thought_bubble = mutable_appearance(
|
||||
@@ -117,6 +109,7 @@
|
||||
if(client && !(pointing_at in view(client.view, src)))
|
||||
return FALSE
|
||||
|
||||
point_at(pointing_at, TRUE)
|
||||
point_at(pointing_at)
|
||||
|
||||
SEND_SIGNAL(src, COMSIG_MOB_POINTED, pointing_at)
|
||||
return TRUE
|
||||
|
||||
@@ -58,7 +58,6 @@
|
||||
/obj/item/skillchip/sabrage = 2,
|
||||
/obj/item/skillchip/useless_adapter = 5,
|
||||
/obj/item/skillchip/wine_taster = 2,
|
||||
/obj/item/skillchip/big_pointer = 2,
|
||||
),
|
||||
),
|
||||
list(
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 108 KiB |
@@ -9,7 +9,6 @@
|
||||
)
|
||||
|
||||
/obj/item/mod/control/pre_equipped/asset_protection
|
||||
icon_state = "asset_protection-control"
|
||||
theme = /datum/mod_theme/asset_protection
|
||||
applied_cell = /obj/item/stock_parts/power_store/cell/bluespace
|
||||
applied_modules = list(
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
@@ -4566,7 +4566,6 @@
|
||||
#include "code\modules\library\skill_learning\skill_station.dm"
|
||||
#include "code\modules\library\skill_learning\skillchip.dm"
|
||||
#include "code\modules\library\skill_learning\generic_skillchips\matrix_flip.dm"
|
||||
#include "code\modules\library\skill_learning\generic_skillchips\point.dm"
|
||||
#include "code\modules\library\skill_learning\generic_skillchips\rod_suplex.dm"
|
||||
#include "code\modules\library\skill_learning\job_skillchips\_job.dm"
|
||||
#include "code\modules\library\skill_learning\job_skillchips\chef.dm"
|
||||
|
||||
Reference in New Issue
Block a user