Skip to content

Commit

Permalink
фикс невероятной хуйни, которая не должна была никогда ломаться (#606)
Browse files Browse the repository at this point in the history
## Описание PR
<!-- Что вы изменили в этом пулл реквесте? -->
Фикс прикручивания объектов на лужи

## Почему / Баланс
<!-- Почему оно было изменено? Ссылайтесь на любые обсуждения или
вопросы здесь. Пожалуйста, обсудите, как это повлияет на игровой баланс.
-->
*Потому.*

**Ссылка на публикацию в Discord**
<!-- Укажите ссылки на соответствующие обсуждения, проблемы, баги,
заказы в разработку или предложения
- [Технические проблемы](ссылка)
- [Баги](ссылка)
- [Заказы-разработка](ссылка)
- [Предложения](ссылка)
- [Перенос контента](ссылка)-->

## Техническая информация
<!-- Если речь идет об изменении кода, кратко изложите на высоком уровне
принцип работы нового кода. Это облегчает рецензирование.- -->
Добавлен компонент NeverPreventAnchor, если он есть, то он не считается
помехой прикручиванию.

## Медиа
<!--
Пулл реквесты, которые вносят внутриигровые изменения (добавление
одежды, предметов, новых возможностей и т.д.), должны содержать медиа,
демонстрирующие изменения.
Небольшие исправления/рефакторы не требуют медиа.

Если Вы не уверены в том, что Ваш пулл реквест требует медиа, спросите
мейнтейнера.
-->

![image](https://github.com/user-attachments/assets/22b1b01e-01f1-4f59-9a80-32f76ff2a647)

## Требования
<!--
В связи с наплывом ПР'ов нам необходимо убедиться, что ПР'ы следуют
правильным рекомендациям.

Пожалуйста, уделите время прочтению, если делаете пулл реквест (ПР)
впервые.

Отметьте поля ниже, чтобы подтвердить, что Вы действительно видели их
(поставьте X в скобках, например [X]):
-->
- [ ] Я прочитал(а) и следую [Руководство по созданию пулл
реквестов](https://docs.spacestation14.com/en/general-development/codebase-info/pull-request-guidelines.html).
Я понимаю, что в противном случае мой ПР может быть закрыт по усмотрению
мейнтейнера.
- [ ] Я добавил скриншоты/видео к этому пулл реквесту, демонстрирующие
его изменения в игре, **или** этот пулл реквест не требует демонстрации
в игре

## Критические изменения
<!--
Перечислите все критические изменения, включая изменения пространства
имён, публичных классов/методов/полей, переименования прототипов, и
предоставьте инструкции по их исправлению.
-->

**Чейнджлог**
<!--
Здесь Вы можете заполнить журнал изменений, который будет автоматически
добавлен в игру при мердже Вашего пулл реквест.

Чтобы игроки узнали о новых возможностях и изменениях, которые могут
повлиять на их игру, добавьте запись в журнал изменений.

Не считайте суффикс типа записи (например, add) "частью" предложения:
плохо: - add: новый инструмент для инженеров
хорошо: - add: добавлен новый инструмент для инженеров

Помещение имени после символа 🆑 изменит имя, которое будет
отображаться в журнале изменений (в противном случае будет
использоваться ваше имя пользователя GitHub).
Например: 🆑 AruMoon
-->

🆑 Котя
- fix: Великие умы NT, Синдиката, Элизиума, СССП и Зимбабве объединились
ради общей цели и переобучили экипаж прикручивать объекты на поверхности
с лужами.
  • Loading branch information
FaDeOkno authored Oct 4, 2024
1 parent 606a82f commit f34b87a
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 1 deletion.
12 changes: 12 additions & 0 deletions Content.Shared/ADT/Construction/NeverPreventAnchorComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
using Robust.Shared.GameStates;

namespace Content.Shared.ADT.Construction
{
/// <summary>
/// Это исправит прикручивание объектов на лужи. Оффы так насрали, что <see cref="PhysicsComponent"/> теперь не читается с прототипа, либо читается через жопу.
/// </summary>
[RegisterComponent, NetworkedComponent]
public sealed partial class NeverPreventAnchorComponent : Component
{
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
using Robust.Shared.Serialization;
using Robust.Shared.Utility;
using SharedToolSystem = Content.Shared.Tools.Systems.SharedToolSystem;
using Content.Shared.ADT.Construction;

namespace Content.Shared.Construction.EntitySystems;

Expand Down Expand Up @@ -288,7 +289,8 @@ public bool TileFree(MapGridComponent grid, Vector2i gridIndices, int collisionL
{
if (!_physicsQuery.TryGetComponent(ent, out var body) ||
!body.CanCollide ||
!body.Hard)
!body.Hard ||
HasComp<NeverPreventAnchorComponent>(ent)) // ADT Puddle anchor fix
{
continue;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,5 @@
- type: PhantomPortal
- type: Visibility
layer: 4 #phantom vessels' layer
- type: NeverPreventAnchor # ADT anchor fix

1 change: 1 addition & 0 deletions Resources/Prototypes/Entities/Effects/puddle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -170,3 +170,4 @@
- type: Tag
tags:
- DNASolutionScannable
- type: NeverPreventAnchor # ADT anchor fix

0 comments on commit f34b87a

Please sign in to comment.