Nanotrasen Career Trainer - REVIVAL (PT1) (#26512)

* Nct ID

* Preferences, job creation, access and other stuff

* Sprites, defines, hidden job pref and other stuff!

* Missed a comma

* Sprites updated, clothing code, outfit and id

* Fix a small oops

* Data chip + Sechud icon

* Offstation, access, datachip code, ticket autoresponse and a lot of other stuff.

* Typo, spritesheet fixingg and icon color

* Telebaton removed, not allowed to scan ERT IDs, blacklisted some access

* Applies suggestion

Co-authored-by: Aylong <69762909+AyIong@users.noreply.github.com>
Signed-off-by: Pedro <79126660+LetXxx@users.noreply.github.com>

* Applying Suggestions!

* Forgot to increase the number of slots, oops

* Added a few items that I forgot, applying suggestions.

* Fix check fail?

* Mapping Tools/Icons.

* Office added to all maps, a few modifications to fit.

* Adds ACCESS_TRAINER to who needs it.

* Fixing check fails.

* NCT Beret obj are now where they're supposed to be

* Suggestion

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Pedro <79126660+LetXxx@users.noreply.github.com>

* Sprites fix + NCT flag

* Code Suggestion

* Sprite update

* Suggestions

* Diagoras Office, conflict fix.

* Day 1 fixes, suggestions.

* bundle rebuild

* Fixing a few issues.

* Mapping review + Suggestions

* Fixed check fail.

* Conflict fix + You shouldn't be able to insert the NCT chip into an id console

* Fix map conflicts

* Plasmaman icons and Kidan icon fix

* Conflict fix?

* A few changes following feedback.

* Small description changed, as per requested feedback.

* Suggestions/Fix

* Forgot some mapping issues

* Suggestions

* Fixed?

* Fix linters

* More fixes

* aaaaaaaaaaa

* Christa's reviews

* Naming stuff

---------

Signed-off-by: Pedro <79126660+LetXxx@users.noreply.github.com>
Co-authored-by: Aylong <69762909+AyIong@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
This commit is contained in:
Pedro
2024-12-30 21:13:52 +00:00
committed by GitHub
co-authored by Aylong Burzah DGamerL
parent 2559287298
commit b55bef2ed2
82 changed files with 2880 additions and 1479 deletions
+3
View File
@@ -181,6 +181,9 @@ SUBSYSTEM_DEF(jobs)
if(job.admin_only) // No admin positions either.
continue
if(job.mentor_only) // Neither for mentor positions
continue
if(jobban_isbanned(player, job.title))
Debug("GRJ isbanned failed, Player: [player], Job: [job.title]")
continue
@@ -31,7 +31,8 @@ GLOBAL_REAL(SSmentor_tickets, /datum/controller/subsystem/tickets/mentor_tickets
"Clear Cache" = "To fix a blank screen, go to the 'Special Verbs' tab and press 'Reload UI Resources'. If that fails, clear your BYOND cache (instructions provided with 'Reload UI Resources'). If that still fails, please ask for help again, stating you have already done these steps.",
"Experiment!" = "Experiment! Part of the joy of this game is trying out various things, and dealing with the consequences if/when they go horribly wrong.",
"How to Objectives" = "There are lots of ways to accomplish your objectives as an antagonist. A direct frontal assault may work, provided you can get in and out before backup arrives. Sneaking in can work, too, as long as you're quick and avoid prying eyes. But don't forget roleplaying methods! Tricking your target into a maze of bear traps is much more interesting than just shooting them with a gun. Even if it fails, you and your target (or its guardians) are likely to have more fun this way, and that's the most important part.",
"MHelp was in Russian" = "Привет! Ты попал на английский Paradise сервер. Возможно, ты ошибся. Русский имеет такое название: SS220\[RU]."
"MHelp was in Russian" = "Привет! Ты попал на английский Paradise сервер. Возможно, ты ошибся. Русский имеет такое название: SS220\[RU].",
"NCT Dispatch" = "A Nanotrasen Career Trainer will be assisting you in-game. You should be able to identify them by their green uniform and black coat."
)
if(GLOB.configuration.url.github_url)
@@ -71,6 +72,21 @@ GLOBAL_REAL(SSmentor_tickets, /datum/controller/subsystem/tickets/mentor_tickets
if(message_key == null)
T.staffAssigned = null //if they cancel we dont need to hold this ticket anymore
return
if(message_key == "NCT Dispatch")
var/nct_active = list()
for(var/mob/living/carbon/human/trainer as anything in GLOB.human_list) // Let's check if we have any active NCTs
if(trainer.mind?.assigned_role != "Nanotrasen Career Trainer")
continue
nct_active += trainer
if(!length(nct_active))
to_chat(usr, "There are no active NCTs. Autoresponse canceled.") // If we don't, don't solve the ticket and then send feedback.
return
var/mob/living/carbon/human/trainee = get_mob_by_ckey(T.client_ckey)
for(var/mob/living/carbon/human/nct as anything in nct_active)
if(!locate(/obj/item/radio/headset) in list(nct.l_ear, nct.r_ear)) // If the NCT doesn't have a headset, ignore it.
continue
to_chat(nct, "<span class='notice'>Incoming priority transmission from Nanotrasen Training Center. Request information as follows: </span><span class='specialnotice'>Career Trainer, we've received a request from an employee. [trainee.p_their(TRUE)] name is [trainee.real_name], [trainee.p_theyre()] a [trainee.mind.assigned_role]. See if [trainee.p_they()] need [trainee.p_s()] any help.</span>")
SEND_SOUND(nct, 'sound/effects/headset_message.ogg')
SEND_SOUND(returnClient(N), sound('sound/effects/adminhelp.ogg'))
to_chat_safe(returnClient(N), "<span class='[span_class]'>[key_name_hidden(C)] is autoresponding with:</span> <span class='adminticketalt'>[response_phrases[message_key]]</span>") //for this we want the full value of whatever key this is to tell the player so we do response_phrases[message_key]