diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index 3ae43635ba6..02036f003a4 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -13,7 +13,7 @@ on:
jobs:
build:
- if: ${{ github.event.workflow_run.conclusion == 'success' }}
+ #if: ${{ github.event.workflow_run.conclusion == 'success' }}
runs-on: ubuntu-latest
steps:
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 00000000000..be85c33951a
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,69 @@
+stages:
+ - install
+ - build
+ - test
+
+install-dep:
+ stage: install
+ variables:
+ GIT_SUBMODULE_STRATEGY: recursive
+ GIT_SUBMODULE_UPDATE_FLAGS: --init --depth 50 --recursive --jobs 4
+ script:
+ - echo "Install dependenses ..."
+
+build-project:
+ stage: build
+ variables:
+ GITHUB_ACTIONS: 1
+ GIT_CLEAN_FLAGS: none
+ GIT_CHECKOUT: none
+ dependencies: []
+ script:
+ - |
+ echo "Restore Projects ..."
+ dotnet restore
+ echo "Build Projects ..."
+ dotnet build --configuration Release --no-restore /p:WarningsAsErrors= /m
+ dotnet run --project Content.YAMLLinter/Content.YAMLLinter.csproj --no-build
+ echo "Compile complete."
+
+yaml-test:
+ stage: test
+ variables:
+ GITHUB_ACTIONS: 1
+ GIT_CLEAN_FLAGS: none
+ GIT_CHECKOUT: none
+ dependencies: []
+ script:
+ - dotnet run --project Content.YAMLLinter/Content.YAMLLinter.csproj --no-build
+
+content-test:
+ stage: test
+ needs: ["yaml-test"]
+ variables:
+ GITHUB_ACTIONS: 1
+ GIT_CLEAN_FLAGS: none
+ GIT_CHECKOUT: none
+ dependencies: []
+ script:
+ - dotnet test --configuration Tools --no-build Content.Tests/Content.Tests.csproj -- NUnit.ConsoleOut=0
+
+unit-test:
+ stage: test
+ needs: ["content-test"]
+ variables:
+ DOTNET_gcServer: 1
+ GITHUB_ACTIONS: 1
+ GIT_CLEAN_FLAGS: none
+ GIT_CHECKOUT: none
+ dependencies: []
+ script:
+ - dotnet test --configuration Tools --no-build Content.IntegrationTests/Content.IntegrationTests.csproj -- NUnit.ConsoleOut=0 NUnit.MapWarningTo=Failed
+
+
+remove-build:
+ stage: .post
+ when: on_failure
+ script:
+ - cd ..
+ - rm -R space_station
\ No newline at end of file
diff --git a/BuildChecker/git_helper.py b/BuildChecker/git_helper.py
index becd4506e82..26ce93cb9aa 100644
--- a/BuildChecker/git_helper.py
+++ b/BuildChecker/git_helper.py
@@ -83,6 +83,11 @@ def install_hooks():
hooks_target_dir = Path("..")/".git"/"hooks"
hooks_source_dir = Path("hooks")
+ os
+
+ if not os.path.exists(hooks_target_dir):
+ os.makedirs(hooks_target_dir)
+
# Clear entire tree since we need to kill deleted files too.
for filename in os.listdir(str(hooks_target_dir)):
os.remove(str(hooks_target_dir/filename))
diff --git a/Content.IntegrationTests/Content.IntegrationTests.csproj b/Content.IntegrationTests/Content.IntegrationTests.csproj
index 5f2a5b0cebb..2032dbf1e54 100644
--- a/Content.IntegrationTests/Content.IntegrationTests.csproj
+++ b/Content.IntegrationTests/Content.IntegrationTests.csproj
@@ -8,6 +8,7 @@
11
+
diff --git a/Content.Tests/Content.Tests.csproj b/Content.Tests/Content.Tests.csproj
index e9274485262..8c2c5cae8e9 100644
--- a/Content.Tests/Content.Tests.csproj
+++ b/Content.Tests/Content.Tests.csproj
@@ -8,6 +8,7 @@
..\bin\Content.Tests\
+
diff --git a/Resources/Changelog/ChangelogADT.yml b/Resources/Changelog/ChangelogADT.yml
index b0f5b3c76ae..4aa07f5c85c 100644
--- a/Resources/Changelog/ChangelogADT.yml
+++ b/Resources/Changelog/ChangelogADT.yml
@@ -262,3 +262,18 @@ Entries:
- {message: Коронавирус на станции закончился - вкусы напитков и прочих вновь вернулись., type: fix}
id: 55578 #костыль отображения в Обновлениях
time: '2023-10-06T09:19:00.0000000+00:00'
+
+
+- author: Петр Игнатьевич
+ changes:
+ - {message: Изменены некоторые эффекты от пива для Октоберфеста., type: Tweak}
+ - {message: Боги услышали молитвы уборщиков. Для рвоты от алкогольного отравления надо теперь содержать в себе очень много этанола., type: Tweak}
+ - {message: Добавлен таймер для открытия роли инженера-стажера., type: Tweak}
+ id: 55578 #костыль отображения в Обновлениях
+ time: '2023-10-07T09:19:00.0000000+00:00'
+
+- author: JustKekc
+ changes:
+ - {message: Возвращена возможность играть за кадета. интерна. лаборанта и инженера-стажера даже при открытии более высоких ролей в отделе., type: fix}
+ id: 55580 #костыль отображения в Обновлениях
+ time: '2023-10-07T09:19:00.0000000+00:00'
diff --git a/Resources/Locale/ru-RU/ADT/Objects/Consumable/Drinks/oktoberfest.ftl b/Resources/Locale/ru-RU/ADT/Objects/Consumable/Drinks/oktoberfest.ftl
new file mode 100644
index 00000000000..addbc8c283b
--- /dev/null
+++ b/Resources/Locale/ru-RU/ADT/Objects/Consumable/Drinks/oktoberfest.ftl
@@ -0,0 +1,24 @@
+ent-ADTGoldenAleGlass = золотой эль
+ .desc = Прямиком из таверны "Розаверн".
+ .suffix = { "Октоберфест" }
+ent-ADTSausageBeerGlass = лучшее сосисочное пиво
+ .desc = Варево с ароматом сосисок.
+ .suffix = { "Октоберфест" }
+ent-ADTTechnoBeerGlass = пиво "Технарское"
+ .desc = Напиток, сваренный в глубинах инженерного отдела безумными атмосианами.
+ .suffix = { "Октоберфест" }
+ent-ADTClassicPaulanerBeerGlass = классический пауланер
+ .desc = Сорт пива, дающий радость уже больше 500 лет.
+ .suffix = { "Октоберфест" }
+ent-ADTLivseyBeerGlass = пиво "Доктор Ливси"
+ .desc = АХАХАХАХАХХА, то есть да. Напиток, сваренный криониками из медбэя.
+ .suffix = { "Октоберфест" }
+ent-ADTLuckyJonnyBeerGlass = пиво "Счастливчик Джонни"
+ .desc = Крайне странный сорт, о котором каждый расскажет свою историю.
+ .suffix = { "Октоберфест" }
+ent-ADTSecUnfilteredBeerGlass = охранное нефильтрованное пиво
+ .desc = Робаст, алкоголь и пена. Замешано на слезах клоуна.
+ .suffix = { "Октоберфест" }
+ent-ADTGlyphidStoutBeerGlass = глифидский стаут
+ .desc = Напиток, подаренный теми четыремя безумными дворфами.
+ .suffix = { "Октоберфест" }
diff --git a/Resources/Prototypes/ADT/Reagents/Consumable/Drink/oktoberfest_beer.yml b/Resources/Prototypes/ADT/Reagents/Consumable/Drink/oktoberfest_beer.yml
index 578d80a48fb..1f986bb2cdf 100644
--- a/Resources/Prototypes/ADT/Reagents/Consumable/Drink/oktoberfest_beer.yml
+++ b/Resources/Prototypes/ADT/Reagents/Consumable/Drink/oktoberfest_beer.yml
@@ -70,8 +70,13 @@
- !type:AdjustReagent
reagent: Ethanol
amount: 0.35
+ Medicine:
+ effects:
- !type:AdjustTemperature
- amount: 100
+ conditions:
+ - !type:Temperature
+ max: 350.15
+ amount: 10000 # thermal energy, not temperature!
metamorphicSprite:
sprite: ADT/Objects/Consumable/Drinks/oktoberfest_beer.rsi
state: technobeer
@@ -117,8 +122,13 @@
- !type:AdjustReagent
reagent: Ethanol
amount: 0.35
+ Medicine:
+ effects:
- !type:AdjustTemperature
- amount: -100
+ conditions:
+ - !type:Temperature
+ min: 263.15
+ amount: -10000
metamorphicSprite:
sprite: ADT/Objects/Consumable/Drinks/oktoberfest_beer.rsi
state: livseybeer
diff --git a/Resources/Prototypes/Reagents/Consumable/Drink/alcohol.yml b/Resources/Prototypes/Reagents/Consumable/Drink/alcohol.yml
index 56c8036e794..3b3bf327769 100644
--- a/Resources/Prototypes/Reagents/Consumable/Drink/alcohol.yml
+++ b/Resources/Prototypes/Reagents/Consumable/Drink/alcohol.yml
@@ -125,7 +125,7 @@
- !type:HealthChange
conditions:
- !type:ReagentThreshold
- min: 15
+ min: 25
- !type:OrganType
type: Dwarf
shouldHave: false
@@ -136,7 +136,7 @@
- !type:HealthChange
conditions:
- !type:ReagentThreshold
- min: 15
+ min: 25
- !type:OrganType
type: Dwarf
damage:
@@ -145,7 +145,7 @@
- !type:HealthChange
conditions:
- !type:ReagentThreshold
- min: 15
+ min: 25
- !type:OrganType
type: Dwarf
damage:
@@ -156,7 +156,7 @@
conditions:
- !type:ReagentThreshold
reagent: Ethanol
- min: 12
+ min: 36
# dwarves immune to vomiting from alcohol
- !type:OrganType
type: Dwarf
diff --git a/Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml b/Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml
index 81f70b358a3..d742fe0ea1e 100644
--- a/Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml
+++ b/Resources/Prototypes/Roles/Jobs/Engineering/technical_assistant.yml
@@ -3,11 +3,14 @@
name: job-name-technical-assistant
description: job-description-technical-assistant
playTimeTracker: JobTechnicalAssistant
+ #requirements:
+ # - !type:DepartmentTimeRequirement
+ # department: Engineering
+ # time: 54000 #15 hrs
+ # inverted: true # stop playing intern if you're good at engineering!
requirements:
- - !type:DepartmentTimeRequirement
- department: Engineering
- time: 54000 #15 hrs
- inverted: true # stop playing intern if you're good at engineering!
+ - !type:OverallPlaytimeRequirement
+ time: 7200 #2 hrs
startingGear: TechnicalAssistantGear
icon: "JobIconTechnicalAssistant"
supervisors: job-supervisors-engineering
diff --git a/Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml b/Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml
index f1a5544db47..3faf77d6152 100644
--- a/Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml
+++ b/Resources/Prototypes/Roles/Jobs/Medical/medical_intern.yml
@@ -4,10 +4,10 @@
description: job-description-intern
playTimeTracker: JobMedicalIntern
requirements:
- - !type:DepartmentTimeRequirement
- department: Medical
- time: 54000 # 15 hrs
- inverted: true # stop playing intern if you're good at med!
+ #- !type:DepartmentTimeRequirement
+ # department: Medical
+ # time: 54000 # 15 hrs
+ # inverted: true # stop playing intern if you're good at med!
startingGear: MedicalInternGear
icon: "JobIconMedicalIntern"
supervisors: job-supervisors-medicine
diff --git a/Resources/Prototypes/Roles/Jobs/Science/research_assistant.yml b/Resources/Prototypes/Roles/Jobs/Science/research_assistant.yml
index 64cf297fc8e..245418e1576 100644
--- a/Resources/Prototypes/Roles/Jobs/Science/research_assistant.yml
+++ b/Resources/Prototypes/Roles/Jobs/Science/research_assistant.yml
@@ -4,10 +4,10 @@
description: job-description-research-assistant
playTimeTracker: JobResearchAssistant
requirements:
- - !type:DepartmentTimeRequirement
- department: Science
- time: 54000 #15 hrs
- inverted: true # stop playing intern if you're good at science!
+ #- !type:DepartmentTimeRequirement
+ # department: Science
+ # time: 54000 #15 hrs
+ # inverted: true # stop playing intern if you're good at science!
startingGear: ResearchAssistantGear
icon: "JobIconResearchAssistant"
supervisors: job-supervisors-science
diff --git a/Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml b/Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml
index 1722ed78f71..e9fa559fc4d 100644
--- a/Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml
+++ b/Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml
@@ -6,10 +6,10 @@
requirements:
- !type:OverallPlaytimeRequirement
time: 36000 #10 hrs
- - !type:DepartmentTimeRequirement
- department: Security
- time: 54000 #15 hrs
- inverted: true # stop playing intern if you're good at security!
+ #- !type:DepartmentTimeRequirement
+ # department: Security
+ # time: 54000 #15 hrs
+ # inverted: true # stop playing intern if you're good at security!
startingGear: SecurityCadetGear
icon: "JobIconSecurityCadet"
supervisors: job-supervisors-security