forked from ParadiseSS13/Paradise
-
Notifications
You must be signed in to change notification settings - Fork 124
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
## Что этот PR делает Перерабатываем новичков делая из них полноценные должности. Подготавливаем площадку для добавления новых профессий. Делаем всё модульно что делается модульно. Добавлено отображение одежды новичков DATACORE на карте (к сожалению не модульно). **Дополнительно:** Теперь должности новичков напрямую связаны с родительскими должностями, из-за чего их слоты делятся между собой. Если у офицера всего 8 слотов на должность, то в общей сумме офицеров и кадетов не может быть больше 8. Добавлена возможность отказывать в появлении излишков новичковых должностей раундстартом, из-за чего им придется входить уже после начала игры, отдавая приоритеты людям с нормальным профессиям. Лендмарки связаны с лендмарками "старших коллег". Увы, частично модульно ради 1-го условия. Ибо там опять спагетти код. ## Почему это хорошо для игры Читайте предыдущие ПРы. Это хорошо для игры, хорошо для кода. ## Изображения изменений ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/421465f9-b5d1-4a2e-87bd-acf41098525e) ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/bc25db06-c271-4c4e-aad3-9211bfc540c1) ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/2baad139-c5f0-4f46-9510-119c15ab81a7) ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/54106ee9-62db-4cd4-90df-010cad9dbb33) ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/c2c767d2-a043-4de7-8952-c6700ae71504) ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/4d3abd6e-1442-45a2-9359-954b4074845f) ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/eed51d54-b3a8-4b96-aa39-7891f43760e2) ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/170f3d41-813b-4adb-87d4-9d01bb00215b) ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/4cc14c3e-6bf1-44f3-8a45-50ea194da3b2) ## Тестирование ![image](https://github.com/ss220club/Paradise-SS220/assets/41479614/4e48f790-8075-44d7-8b66-5c229870428c) Да. Обычные джобки не сломались. Новые тоже, старые тоже. Всё что могло уйти в модуль ушло в модуль. Связь проверил, всё работает и блокируется когда слотов не остается. Обтестил всё что мог. Консолька всё выдает, карту, айдишники. ## Changelog :cl: tweak: Возвращены переработанные должности новичков (подробности в ПР'е) tweak: Подготовлен модуль для добавления профессий fix: Должности новичков теперь корректно отображаются в преференсах и на карте tweak: Должность новичка вынесена отдельной профессией с приоритетом. tweak: Должность новичка зависит от общего числа слотов "старшей" профессии. Общее число слотов высчитывается по схеме: Кол-во слотов у новичка + кол-во слотов у "старшего" = число допустимых слотов, которые могут "взять" одна из профессий. tweak: Лендмарки (зоны спавна) новичков зависят от "старшей" профессии. /:cl: <!-- Оба :cl:'а должны быть на месте, что-бы чейнджлог работал! Вы можете написать свой ник справа от первого :cl:, если хотите. Иначе будет использован ваш ник на ГитХабе. --> <!-- Вы можете использовать несколько записей с одинаковым префиксом (Они используются только для иконки в игре) и удалить ненужные. Помните, что чейнджлог должен быть понятен обычным игроком. --> <!-- Если чейнджлог не влияет на игроков(например, это рефактор), вы можете исключить всю секцию. --> --------- Co-authored-by: Volodymir Ohorodnytskyi <[email protected]>
- Loading branch information
1 parent
cdab978
commit 0c870af
Showing
36 changed files
with
888 additions
and
267 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
#define NOVICE_JOB_MINUTES 120 | ||
#define NOVICE_CADET_JOB_MINUTES 300 | ||
|
||
// JOBCAT_ENGSEC | ||
#define JOB_TRAINEE (1<<15) | ||
#define JOB_CADET (1<<16) | ||
|
||
// JOBCAT_MEDSCI | ||
#define JOB_INTERN (1<<11) | ||
#define JOB_STUDENT (1<<12) | ||
// Если ОФФы добавят новую должность в отдел, то потребуется смещение |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,13 +1,24 @@ | ||
#include "_jobs.dm" | ||
|
||
#include "code/access.dm" | ||
// #include "code/cards_ids.dm" | ||
// #include "code/jobs.dm" | ||
// #include "code/clothing/engineering_clothing.dm" | ||
// #include "code/clothing/medical_clothing.dm" | ||
// #include "code/clothing/science_clothing.dm" | ||
// #include "code/clothing/security_clothing.dm" | ||
// #include "code/job/engineering_jobs.dm" | ||
// #include "code/job/medical_jobs.dm" | ||
// #include "code/job/science_jobs.dm" | ||
// #include "code/job/security_jobs.dm" | ||
#include "code/card_computer.dm" | ||
#include "code/card_id.dm" | ||
#include "code/departaments.dm" | ||
#include "code/jobs_global_list.dm" | ||
#include "code/jobs_character.dm" | ||
#include "code/jobs_gamemodes.dm" | ||
#include "code/jobs.dm" | ||
#include "code/clothing/engineering_clothing.dm" | ||
#include "code/clothing/medical_clothing.dm" | ||
#include "code/clothing/science_clothing.dm" | ||
#include "code/clothing/security_clothing.dm" | ||
#include "code/job/engineering_jobs.dm" | ||
#include "code/job/medical_jobs.dm" | ||
#include "code/job/science_jobs.dm" | ||
#include "code/job/security_jobs.dm" | ||
#include "code/objects/job_objects.dm" | ||
#include "code/objects/engineering_job_objects.dm" | ||
#include "code/objects/medical_job_objects.dm" | ||
#include "code/objects/science_job_objects.dm" | ||
#include "code/objects/security_job_objects.dm" | ||
#include "code/objects/wardrobe_vendors.dm" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
/obj/machinery/computer/card/ui_data(mob/user) | ||
var/list/data = ..() | ||
|
||
if(mode == IDCOMPUTER_SCREEN_TRANSFER) // JOB TRANSFER | ||
if(modify && scan && !target_dept) | ||
data["card_skins"] |= format_card_skins(GLOB.card_skins_ss220) | ||
|
||
return data | ||
|
||
/obj/machinery/computer/card/ui_act(action, params) | ||
. = ..() | ||
switch(action) | ||
if("skin") | ||
if(!modify) | ||
return FALSE | ||
var/skin = params["skin_target"] | ||
if(!skin || !(skin in GLOB.card_skins_ss220)) | ||
return FALSE | ||
|
||
modify.icon_state = skin//get_card_skins_ss220(skin) | ||
return TRUE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
/mob/living/carbon/human/sec_hud_set_ID() | ||
var/image/holder = hud_list[ID_HUD] | ||
holder.icon = 'icons/mob/hud/sechud.dmi' | ||
if(wear_id && (wear_id.get_job_name() in GLOB.jobs_positions_ss220)) | ||
holder.icon = 'modular_ss220/jobs/icons/hud.dmi' | ||
. = ..() | ||
|
||
/obj/item/get_job_name() //Used in secHUD icon generation | ||
var/assignmentName = get_ID_assignment(if_no_id = "Unknown") | ||
var/rankName = get_ID_rank(if_no_id = "Unknown") | ||
|
||
var/list/titles = GLOB.jobs_positions_ss220 | ||
|
||
if(assignmentName in titles) //Check if the job has a hud icon | ||
return assignmentName | ||
if(rankName in titles) | ||
return rankName | ||
|
||
. = ..() | ||
|
||
GLOBAL_LIST_INIT(card_skins_ss220, list( | ||
"intern", "student", "trainee", "cadet", | ||
)) | ||
|
||
/obj/item/card/id/medical/intern | ||
name = "Intern ID" | ||
registered_name = "Intern" | ||
icon = 'modular_ss220/aesthetics/better_ids/icons/better_ids.dmi' | ||
icon_state = "intern" | ||
item_state = "intern-id" | ||
rank = "Intern" | ||
|
||
/obj/item/card/id/research/student | ||
name = "Student ID" | ||
registered_name = "Student" | ||
icon = 'modular_ss220/aesthetics/better_ids/icons/better_ids.dmi' | ||
icon_state = "student" | ||
item_state = "student-id" | ||
|
||
/obj/item/card/id/engineering/trainee | ||
name = "Trainee ID" | ||
registered_name = "Trainee" | ||
icon = 'modular_ss220/aesthetics/better_ids/icons/better_ids.dmi' | ||
icon_state = "trainee" | ||
item_state = "trainee-id" | ||
|
||
/obj/item/card/id/security/cadet | ||
name = "Cadet ID" | ||
registered_name = "Cadet" | ||
icon = 'modular_ss220/aesthetics/better_ids/icons/better_ids.dmi' | ||
icon_state = "cadet" | ||
item_state = "cadet-id" | ||
|
||
/obj/item/card/id/syndicate/Initialize() | ||
. = ..() | ||
appearances |= GLOB.card_skins_ss220 |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.