Adds Prescription HUD Aviator Crafting/Loadout Options + Other Modular Eyewear Housekeeping#1075
Adds Prescription HUD Aviator Crafting/Loadout Options + Other Modular Eyewear Housekeeping#1075Geoengi wants to merge 31 commits into
Conversation
|
Lovely work here, Thank You! 🫶 |
…ords, kannthus <3)
Signed-off-by: Geoengi <139566513+Geoengi@users.noreply.github.com>
This reverts commit eadda3c.
| /datum/loadout_item/glasses/blinding/fake_blindfold/obsolete | ||
| name = "Obsolete Fake Blindfold" | ||
| item_path = /obj/item/clothing/glasses/trickblindfold/obsolete |
There was a problem hiding this comment.
what actually is this item?
mostly cause the naming doesn't tell me much, so it wouldn't be clear to me or to most other players
the actual question is "is there a better way to name this entry or the item itself if it's called that?"
as a sidenote, if it's a type of blindfold, it should follow the other blindfold entries' format of Blindfold (type, type 2) ala Blindfold (Black, Fake) as you can see above. we do this so all the blindfolds are sorted next to each other in the menu
if it's a very specific type of item on its own, this current naming scheme is fine
There was a problem hiding this comment.
It's a variant (or, actually, base) of the blindfold HUDs, without the HUD or the making you blind upon equipping it either. You can access the other variants by alt-click reskinning the eyepatch HUDs, except for this one, since it had no eyepatch HUD counterpart. I might add one, thinking about it, for parity.
| /datum/loadout_item/glasses/hud/aviator/prescription | ||
| name = "Prescription Aviators (None)" | ||
| item_path = /obj/item/clothing/glasses/hud/ar/aviator/prescription | ||
|
|
||
| /datum/loadout_item/glasses/hud/aviator_meson/prescription | ||
| name = "Prescription Aviators (Meson)" | ||
| item_path = /obj/item/clothing/glasses/hud/ar/aviator/meson/prescription | ||
|
|
||
| /datum/loadout_item/glasses/hud/aviator_health/prescription | ||
| name = "Prescription Aviators (Medical)" | ||
| item_path = /obj/item/clothing/glasses/hud/ar/aviator/health/prescription | ||
|
|
||
| /datum/loadout_item/glasses/hud/aviator_security/prescription | ||
| name = "Prescription Aviators (Security)" | ||
| item_path = /obj/item/clothing/glasses/hud/ar/aviator/security/prescription | ||
|
|
||
| /datum/loadout_item/glasses/hud/aviator_diagnostic/prescription | ||
| name = "Prescription Aviators (Diagnostics)" | ||
| item_path = /obj/item/clothing/glasses/hud/ar/aviator/diagnostic/prescription | ||
|
|
||
| /datum/loadout_item/glasses/hud/aviator_science/prescription | ||
| name = "Prescription Aviators (Science)" | ||
| item_path = /obj/item/clothing/glasses/hud/ar/aviator/science/prescription | ||
|
|
There was a problem hiding this comment.
right so, the loadout datum typepaths usually shouldn't be subtypes of each other because there's nothing they're actually inheriting, and subtyping only adds to the confusion there
how we structure them is usually like, for example
/datum/loadout_item/[category]/[sub-category]/[item]
/datum/loadout_item/glasses/hud/aviator_scienceIDEALLY I feel these should be a TOGGLE on these loadout options, rather than a whole separate thing, to avoid loadout bloat
but at least it may be better to rename them to Aviators (Medical, Prescription) or Aviators (Prescription) (or Aviators (None, Prescription) if you prefer being explicit with "these are hud aviators with no huds but yes prescription") for the one without anything
this being so the medical aviators are sorted next to each other, rather than two visually indistinguishable medical aviators sitting separately
You may however want to consider adding something like this for the prescription aviators, so there's a little icon with tooltip telling you it's special rather than needing to hover over both to see the difference in the name:
DopplerShift/modular_doppler/loadout_categories/categories/heads.dm
Lines 298 to 304 in 4ab4a46
or, pseudocode (fill in yourself and remove my TODO comments):
/// Prescription hud glasses
/datum/loadout_item/glasses/hud/prescription
abstract_type = /datum/loadout_item/glasses/hud/prescription
/datum/loadout_item/glasses/hud/prescription/get_item_information()
. = ..()
.[FA_ICON_CIRCLE_EXCLAMATION] = "Prescription Glasses" // TODO: pick a fitting fontawesome icon from code/__DEFINES/font_awesome_icons.dm, maybe some type of glasses?
/datum/loadout_item/glasses/hud/prescription/aviator_meson
name = "Aviators (Meson, Prescription)"
item_path = /obj/item/clothing/glasses/hud/ar/aviator/meson/prescription
// TODO: fill in the restThere was a problem hiding this comment.
I added a FA icon to all of the glasses, changed the naming scheme to the suggested one, and applied it to the pre-existing prescription glasses. It sorted right beside their non-prescription variant, as you said. I updated the details section, too, if you'd like to see it in action.
Co-authored-by: _0Steven <42909981+00-Steven@users.noreply.github.com> Signed-off-by: Geoengi <139566513+Geoengi@users.noreply.github.com>
This reverts commit 7be377b.
…ShiftButMoreEpic into ihavespecialeyes
Signed-off-by: Geoengi <139566513+Geoengi@users.noreply.github.com>


About The Pull Request
Why It's Good For The Game
The prescription aviators variants are something in the code that were not mentioned ANYWHERE, despite being a very helpful alternative to eye implants for those using the nearsighted trait, even if you don't want a HUD! And, much like the HUD eyepatches, giving the option for crafting them so said nearsighted characters can replace their pair is also good. The icon changes were due to the fact that the original aviators looked to be more transparent when in its "flash blocking" mode, and the opposite when not, which was a little counterintuitive. Otherwise, moving (almost) all of the crafting recipes for the HUD patches/glasses to the equipment tab, giving the white eyepatch a crafting recipe, crafting delay, and description changes are for consistency, and consistency is good. So are the few bug fixes and the special request. Fellow glasses users, we're eating good tonight.
Testing Evidence
Screenshots/Videos
Crafting changes:

Loadout changes:

Security aviator exclusive in-hand sprite:

Default Aviators in non-flash protect mode:

Default Aviators in flash protect mode:

New sec HUD eyepatch color:

Changelog
🆑
add: Default aviators now have a prescription variant!
add: Prescription HUD and default aviators have crafting/removal recipes and loudout options now!
add: Another unused variant of the fake blindfold is also added to the loadout menu.
add: All aviators, eyepatches, blindfold variants, colorable glasses, and retinal projectors now have in-hand icons.
add: White eyepatches are craftable now for two cloth.
del: Removed the unused, fake version of aviators.
qol: Added icons to the loadout screen to denote which glasses correct nearsightedness.
spellcheck: Cleaned up the naming of eyepatch crafting recipes and some eyewear descriptions.
fix: Moved Doppler-specific HUD crafting recipes to the equipment category and gave a slight delay in crafting, mirroring /TG/.
fix: Prescription aviators no longer remove TRAIT_NEARSIGHTED_CORRECTED when equipped while off.
fix: Fixes a reversed directional sprite for the sec HUD eyepatch.
image: Switches the on/off icon states for the default aviator to make it more intuitive when it's in flash protection mode.
image: Changes the color of the sec HUD eyepatch to be a little lighter per request.
/:cl: