Skip to content

Безопасное время для SCP457 - #1114

Merged
WardexOfficial merged 2 commits into
space-sunrise:masterfrom
WardexOfficial:tweak/scp-457-safe-time
Aug 5, 2026
Merged

Безопасное время для SCP457#1114
WardexOfficial merged 2 commits into
space-sunrise:masterfrom
WardexOfficial:tweak/scp-457-safe-time

Conversation

@WardexOfficial

@WardexOfficial WardexOfficial commented Aug 5, 2026

Copy link
Copy Markdown
Collaborator

Краткое описание

Безопасное время для SCP457

Changelog

🆑 Wardex

  • add: Добавлено безопасное время, во время которого Scp457 не сможет сбежать (в первые 15 минут раунда)
  • tweak: Интервал сгорания Scp457 увеличен с 12 до 18 секунд

Summary by CodeRabbit

  • Изменения в игровом процессе
    • Во время safe time размер SCP-457 больше не изменяется.
    • Интервал автоматического уменьшения размера увеличен с 12 до 18 секунд.
    • Способности поглощения и поджигания SCP-457 теперь недоступны во время safe time.
    • Для разных ситуаций safe time используется корректный отсчёт: с начала раунда или с момента активации.

@coderabbitai

coderabbitai Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

Для SCP-457 добавлена настройка SafeTime. Действия получают ограничение SafeTimeRestricted. Scp457System блокирует изменение размера во время SafeTime и увеличивает интервал уменьшения размера с 12 до 18 секунд.

Changes

SafeTime для SCP-457

Layer / File(s) Summary
Расчёт времени SafeTime
Content.Shared/_Scp/SafeTime/SafeTimeComponent.cs, Content.Shared/_Scp/SafeTime/SafeTimeSystem.cs
Добавлен параметр TimeFromRoundStart. TimeEnd рассчитывается от начала раунда или от текущего времени.
Ограничения прототипов SCP-457
Resources/Prototypes/_Scp/Entities/Mobs/Player/Scp/Main/scp457.yml, Resources/Prototypes/_Scp/Actions/scp457.yml
SCP-457 получает SafeTime с timeFromRoundStart: false. Действия Scp457Absorb и Scp457Fire получают SafeTimeRestricted.
Проверка SafeTime и уменьшение размера
Content.Server/_Scp/Scp457/Scp457System.cs
Scp457System проверяет SafeTime перед изменением размера и связанных эффектов. DecayInterval изменён на 18 секунд. Неиспользуемый импорт удалён.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested labels: 🛠️ Есть C# 🛠️, 📦 YAML | Прототип 📦

Suggested reviewers: 666xxttimurkaxx666

🚥 Pre-merge checks | ✅ 11
✅ Passed checks (11 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Заголовок точно описывает основное изменение: добавление безопасного времени для SCP-457.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Ss14 Bridge Sync ✅ Passed PR не изменяет канонические файлы правил или навыков в .agents/rules/ или .agents/skills/, поэтому требование синхронизации мостов не применяется.
Ss14 Fork/Project Folder Selection ✅ Passed Репозиторий project-fire (Fire) использует корректную папку _Scp. Все файлы PR размещены в _Scp, не используются папки _Sunrise и нет смешивания маркеров форков.
Ss14 C# Rules ✅ Passed Все изменённые C# файлы соответствуют правилам SS14: компоненты правильно названы (заканчиваются на Component), системы заканчиваются на System, приватные зависимости начинаются с _, файлы находятс...
Ss14 Yaml/Ftl Rules ✅ Passed Изменены только два YAML-файла в _Scp. ID имеют CamelCase и префикс Scp, fallback-текст на английском, записи компонентов не содержат суффикс Component. FTL не изменён.
Ss14 Prototype ↔ Ftl Parity ✅ Passed PR изменяет только компоненты для трёх player-facing прототипов (Scp457, Scp457Absorb, Scp457Fire), не меняя их ID, названия или описания. Все существующие FTL записи остаются актуальными и синхрон...
Ss14 Prediction Safety ✅ Passed Измененный код в Content.Shared/_Scp/SafeTime/ не содержит рисков детерминированного предсказания. Код использует только детерминированные источники времени (RoundStartTimeSpan, CurTime), избегает...
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Content.Server/_Scp/Scp457/Scp457System.cs`:
- Around line 231-232: Update the SafeTime check in Scp457System to call
IsInSafeTime with silent set to true using named arguments, while preserving the
existing early return when the entity is in safe time.
- Around line 231-232: В методе TryChangeSize ограничьте проверку SafeTime
условием delta < 0f, чтобы она блокировала только уменьшение размера;
положительный delta должен продолжать изменять размер, включая вызовы из
TryConsume.
- Line 48: Rename the private field DecayInterval to _decayInterval and update
all references, including the usages around lines 76 and 85. Since the interval
is never modified, declare it static readonly while preserving its current value
and behavior.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 2b75d5d5-9837-4bd5-bb58-d40753a1cbd3

📥 Commits

Reviewing files that changed from the base of the PR and between 70e1af7 and 1b4bd2a.

📒 Files selected for processing (2)
  • Content.Server/_Scp/Scp457/Scp457System.cs
  • Resources/Prototypes/_Scp/Entities/Mobs/Player/Scp/Main/scp457.yml

Comment thread Content.Server/_Scp/Scp457/Scp457System.cs
Comment thread Content.Server/_Scp/Scp457/Scp457System.cs Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Content.Shared/_Scp/SafeTime/SafeTimeComponent.cs`:
- Around line 19-23: Update the XML documentation on
SafeTimeComponent.TimeFromRoundStart so the <summary> is written in English and
follows standard C# XML-doc style. Replace the current Russian text and typo
with a concise English description of what the field controls, keeping the
[DataField] member unchanged.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 4b75bd53-56ca-48cd-bc25-93a98b4e7302

📥 Commits

Reviewing files that changed from the base of the PR and between 1b4bd2a and bfeba1d.

📒 Files selected for processing (5)
  • Content.Server/_Scp/Scp457/Scp457System.cs
  • Content.Shared/_Scp/SafeTime/SafeTimeComponent.cs
  • Content.Shared/_Scp/SafeTime/SafeTimeSystem.cs
  • Resources/Prototypes/_Scp/Actions/scp457.yml
  • Resources/Prototypes/_Scp/Entities/Mobs/Player/Scp/Main/scp457.yml

Comment thread Content.Shared/_Scp/SafeTime/SafeTimeComponent.cs
@WardexOfficial
WardexOfficial merged commit 2d2dfd2 into space-sunrise:master Aug 5, 2026
21 of 29 checks passed
@WardexOfficial
WardexOfficial deleted the tweak/scp-457-safe-time branch August 5, 2026 15:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant