Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

уэээ #2424

Closed
wants to merge 102 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
3e97dfb
Pereezd
NeverMind92 Jun 29, 2024
3e04e64
Лого
XuTPoBaH4uK Jun 29, 2024
235e4b4
Fix(Guns)Fix :server crashed when firing AEK-107
NeverMind92 Jun 30, 2024
8d99dca
Добавил больше флагов
XuTPoBaH4uK Jul 1, 2024
7c5c995
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
XuTPoBaH4uK Jul 1, 2024
a56c6b3
пм
virmr Jul 1, 2024
fc6c26a
fix aek-107
Jul 1, 2024
671027b
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Jul 1, 2024
9bbedff
add hui
Jul 1, 2024
c3b8c93
add mega skibidi
Jul 1, 2024
0b01722
Тут описание комита
NeverMind92 Jul 1, 2024
a622305
back error commit
NeverMind92 Jul 1, 2024
c2f02b7
resprite toilet_shahid
Jul 1, 2024
c8d25e4
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Jul 1, 2024
099ca5b
удалил убийцу олегов
zorexxx Jul 1, 2024
c1dacb9
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
zorexxx Jul 1, 2024
5b58339
add skibidi happy god
Jul 1, 2024
babf11c
добавлен РГМ + изменен звук лрки
Farmilla244 Jul 1, 2024
06904f0
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Farmilla244 Jul 1, 2024
e881f8c
раздатчик вещей арийцев
zorexxx Jul 1, 2024
f0041f3
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
zorexxx Jul 1, 2024
0fb5fff
добавил 4 фона ахеренных
Farmilla244 Jul 2, 2024
2d49740
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Farmilla244 Jul 2, 2024
266700b
Добавлены постеры, флаги
XuTPoBaH4uK Jul 2, 2024
c00bd8f
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
XuTPoBaH4uK Jul 2, 2024
7e80fc3
add gman skibidi
Jul 4, 2024
c32b46b
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Jul 4, 2024
62217fa
сделал аплинк + добавил магаз лрке на 100пт.
Farmilla244 Jul 6, 2024
bf00a9f
Add(Guns)Add: Saiga resprite, sb.10 and drum for saiga
NeverMind92 Jul 6, 2024
83c94f6
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
NeverMind92 Jul 6, 2024
5a18486
Fix(uplink_catalog) Fix new magazines in uplink
NeverMind92 Jul 6, 2024
51194b6
Hotfix
NeverMind92 Jul 6, 2024
ccd5440
Hotfix
NeverMind92 Jul 6, 2024
15b121f
balanced(uplink_catalog) the prices at uplinks.
NeverMind92 Jul 6, 2024
99bc4ea
balanced(MagazineShotgunSaigaDrum) the size of the drum
NeverMind92 Jul 6, 2024
8fd2ad1
сигма свинка крипер zzz
forekz Jul 6, 2024
036bceb
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
forekz Jul 6, 2024
26af7cb
balanced(VendingMachineAtmosDrobe2(Moded)) out the vending machine st…
NeverMind92 Jul 6, 2024
ca0b3a5
Hot fix
NeverMind92 Jul 6, 2024
ce777f6
balanced(uplink_catalog) the prices at uplink
NeverMind92 Jul 6, 2024
a586e8e
Fix(AryanVendor) stuff in vendor
NeverMind92 Jul 6, 2024
cb2d6a8
fix aek107
Jul 6, 2024
7b09319
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Jul 6, 2024
41f65cc
Another price balance in uplink
NeverMind92 Jul 6, 2024
7ad2072
Adds suffix
NeverMind92 Jul 6, 2024
7fe3362
add skibidi toilet_uhboer
Jul 6, 2024
0caedb9
add svinorez
Jul 7, 2024
12a7a69
uplink_catalog update
Jul 7, 2024
7e813eb
Fix(MagazineShotgunSaiga) magazine insertion in rifles
NeverMind92 Jul 7, 2024
34d156c
Сделан дешевый калаш(меня ухбоер заебал)
XuTPoBaH4uK Jul 7, 2024
d173afa
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
XuTPoBaH4uK Jul 7, 2024
626ab13
Hotfix
NeverMind92 Jul 7, 2024
8634710
Hotfix
NeverMind92 Jul 7, 2024
7a20c94
Фиксы калаша
XuTPoBaH4uK Jul 7, 2024
767fd5f
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
XuTPoBaH4uK Jul 7, 2024
8b8af93
Aryan Job
NeverMind92 Jul 8, 2024
0f27a58
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
NeverMind92 Jul 8, 2024
3be6978
Ну короче перчатки крав-маги ну вы пон
voko421 Jul 8, 2024
c65a09f
Merge pull request #1 from voko421/master
NeverMind92 Jul 8, 2024
a1efc8d
add kaktus
Jul 8, 2024
c4cdfa1
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Jul 8, 2024
a721044
add hyper_katana
Jul 8, 2024
2395b30
cameramen_ne_gotov
virmr Jul 9, 2024
e38a3fe
Dogtags for aryan
NeverMind92 Jul 11, 2024
7aa93e1
add toilet_god_of_svo
Jul 11, 2024
4467ceb
add toilet_god_of_svo
Jul 11, 2024
124a15f
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Jul 11, 2024
d4f0196
add aeg
Jul 12, 2024
a29e361
add new mapp
Jul 16, 2024
ae96221
гаусс пушка, позже респрайтну
Farmilla244 Jul 16, 2024
77d7727
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Farmilla244 Jul 16, 2024
161f6d4
Create Skibidi.yml
NeverMind92 Jul 16, 2024
25b9326
Update Skibidi.yml
NeverMind92 Jul 16, 2024
11bb312
Update Skibidi.yml
NeverMind92 Jul 16, 2024
48e0a7b
Create skibidipool.yml
NeverMind92 Jul 16, 2024
fe0858c
Update skibidipool.yml
NeverMind92 Jul 16, 2024
e011d93
Update Skibidi.yml
NeverMind92 Jul 16, 2024
db38852
Update PostMapInitTest.cs
NeverMind92 Jul 16, 2024
a6b7015
Update MapLoadBenchmark.cs
NeverMind92 Jul 16, 2024
486656e
Adds skibidiMap to auto "rotation"
NeverMind92 Jul 16, 2024
f47fcc9
Merge pull request #2 from NeverMind92/Map
NeverMind92 Jul 16, 2024
90dfa6d
fixed
Jul 16, 2024
f21fd08
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Jul 16, 2024
ac559db
nado
Jul 16, 2024
5f630ca
add toilet_ciklop
Jul 16, 2024
51a30e2
add 3 new toilet Spawners
Jul 17, 2024
fe6e0ed
добавлена модка, добавлен пригожин
Farmilla244 Jul 18, 2024
9612af9
fix Spawners
Jul 18, 2024
8691e1d
add tank
Jul 18, 2024
c345334
базовая хирургия
invalid-email-address Jul 18, 2024
5e0301e
Штурма + больше имен Арийцев
Farmilla244 Jul 18, 2024
fd16092
Merge branch 'master' of https://github.com/NeverMind92/skibidi-stati…
Farmilla244 Jul 18, 2024
5dc0e1b
В аплинке можно купить мешок с хирургическими инструментами и операци…
invalid-email-address Jul 18, 2024
ca09fa1
Фикс пропажи инструментов
invalid-email-address Jul 18, 2024
f76eae5
Фурри больше не будут арийцами
invalid-email-address Jul 19, 2024
f655e94
Человечки больше не должны ловить инфаркт сидя\лежа на стульях\столах
invalid-email-address Jul 19, 2024
2c49c75
Merge pull request #4 from TheWayYouLOOKATME/Только-арийцы
NeverMind92 Jul 19, 2024
cadd6cb
Merge pull request #3 from TheWayYouLOOKATME/surgery
NeverMind92 Jul 19, 2024
90f7f32
fixes
Jul 19, 2024
99f9720
фикс типо крутой лежать режим когда ты на кровате
Jul 19, 2024
4de3eae
NEW SKIBIDI MAPP 100 PROCENTOV
Jul 19, 2024
d3e1b3e
add hamster combat
Jul 19, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion Content.Benchmarks/MapLoadBenchmark.cs
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public async Task Cleanup()
PoolManager.Shutdown();
}

public static readonly string[] MapsSource = { "Empty", "Box", "Bagel", "Dev", "CentComm", "Atlas", "Core", "TestTeg", "Saltern", "Packed", "Omega", "Cluster", "Reach", "Origin", "Meta", "Marathon", "Europa", "MeteorArena", "Fland", "Barratry", "Oasis" };
public static readonly string[] MapsSource = { "Empty", "Box", "Bagel", "Dev", "CentComm", "Atlas", "Core", "TestTeg", "Saltern", "Packed", "Omega", "Cluster", "Reach", "Origin", "Meta", "Marathon", "Europa", "MeteorArena", "Fland", "Barratry", "Oasis", "Skibidi"};

[ParamsSource(nameof(MapsSource))]
public string Map;
Expand Down
4 changes: 2 additions & 2 deletions Content.Client/Rotation/RotationVisualizerSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ private void OnAppearanceChange(EntityUid uid, RotationVisualsComponent componen
if (args.Sprite == null)
return;

// If not defined, defaults to standing.
_appearance.TryGetData<RotationState>(uid, RotationVisuals.RotationState, out var state, args.Component);
if (!_appearance.TryGetData<RotationState>(uid, RotationVisuals.RotationState, out var state, args.Component))
return;

switch (state)
{
Expand Down
5 changes: 4 additions & 1 deletion Content.IntegrationTests/Tests/PostMapInitTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,10 @@ public sealed class PostMapInitTest
"Atlas",
"Reach",
"Train",
"Oasis"
"Oasis",
// Skibidi-Start
"Skibidi"
// Skibidi-End
};

/// <summary>
Expand Down
9 changes: 9 additions & 0 deletions Content.Server/Medical/Components/ActiveSurgeryComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
namespace Content.Server.Medical.Components
{
[RegisterComponent]
public sealed partial class ActiveSurgeryComponent : Component
{
[DataField]
public bool? IsActive = false;
}
}
13 changes: 13 additions & 0 deletions Content.Server/Medical/Components/MedicalDrapesComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
namespace Content.Server.Medical.Components;
[RegisterComponent, AutoGenerateComponentPause]
[Access(typeof(MedicalDrapesSystem), typeof(CryoPodSystem))]
public sealed partial class MedicalDrapesComponent : Component
{
[DataField]
public TimeSpan UseDelay = TimeSpan.FromSeconds(0.8);
[DataField]
public EntityUid? UsedOnEntity;
[DataField]
public float MaxUseRange = 2.5f;

}
31 changes: 31 additions & 0 deletions Content.Server/Medical/Components/SurgeryToolComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
using Content.Shared.Damage;
using Content.Shared.Damage.Prototypes;
using Robust.Shared.Audio;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List;
namespace Content.Server.Medical.Components
{
[RegisterComponent]
public sealed partial class SurgeryToolComponent : Component
{
[DataField("damage", required: true)]
[ViewVariables(VVAccess.ReadWrite)]
public DamageSpecifier Damage = default!;
[DataField("damageContainers", customTypeSerializer: typeof(PrototypeIdListSerializer<DamageContainerPrototype>))]
public List<string>? DamageContainers;
[ViewVariables(VVAccess.ReadWrite)]
[DataField("delay")]
public float Delay = 1f;
[DataField("InProgressSound")]
public SoundSpecifier? InProgressSound = null;
[DataField("CauterySound")]
public SoundSpecifier? CauterySound = null;
[DataField("ScalpelSound")]
public SoundSpecifier? ScalpelSound = null;
[DataField("IsCautery")]
public bool? IsCautery = null;
[DataField("IsScalpel")]
public bool? IsScalpel = null;
[DataField("IsHemostat")]
public bool? IsHemostat = null;
}
}
2 changes: 1 addition & 1 deletion Content.Server/Medical/HealingSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ private void OnHealingAfterInteract(Entity<HealingComponent> entity, ref AfterIn
args.Handled = true;
}

private bool TryHeal(EntityUid uid, EntityUid user, EntityUid target, HealingComponent component)
public bool TryHeal(EntityUid uid, EntityUid user, EntityUid target, HealingComponent component)
{
if (!TryComp<DamageableComponent>(target, out var targetDamage))
return false;
Expand Down
71 changes: 71 additions & 0 deletions Content.Server/Medical/MedicalDrapesSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
using Content.Server.Medical.Components;
using Content.Server.Popups;
using Content.Shared.Buckle.Components;
using Content.Shared.DoAfter;
using Content.Shared.IdentityManagement;
using Content.Shared.Interaction;
using Content.Shared.Mobs.Components;
using Robust.Server.GameObjects;
using Robust.Shared.Timing;
using Content.Shared.Medical;
using YamlDotNet.Core.Tokens;

namespace Content.Server.Medical
{
public sealed class MedicalDrapesSystem : EntitySystem
{
[Dependency] private readonly IGameTiming _timing = default!;
[Dependency] private readonly SharedDoAfterSystem _doAfterSystem = default!;
[Dependency] private readonly UserInterfaceSystem _uiSystem = default!;
[Dependency] private readonly TransformSystem _transformSystem = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
public override void Initialize()
{
SubscribeLocalEvent<MedicalDrapesComponent, AfterInteractEvent>(OnAfterInteract);
SubscribeLocalEvent<MedicalDrapesComponent, MedicalDrapesDoAfterEvent>(OnDoAfter);
}

private void OnAfterInteract(Entity<MedicalDrapesComponent> uid, ref AfterInteractEvent args)
{
if (args.Target == null || !args.CanReach || !HasComp<MobStateComponent>(args.Target))
return;

_doAfterSystem.TryStartDoAfter(new DoAfterArgs(EntityManager, args.User, uid.Comp.UseDelay, new MedicalDrapesDoAfterEvent(), uid, target: args.Target, used: uid)
{
NeedHand = true,
BreakOnMove = true
});
}

private void OnDoAfter(Entity<MedicalDrapesComponent> uid, ref MedicalDrapesDoAfterEvent args)
{
if (args.Handled || args.Cancelled || args.Target == null)
return;
args.Handled = true;
EntityUid target = (EntityUid)args.Target;
TryComp<BuckleComponent>(args.Target, out var buckle);
var ent = buckle!.BuckledTo;
TryComp<ActiveSurgeryComponent>(args.Target, out var surgery);
if (!HasComp<ActiveSurgeryComponent>(target))
{
if (target == args.User)
return;
if(!buckle.Buckled)
{
_popupSystem.PopupEntity(Loc.GetString("medical-surgery-cantoperate"), uid, args.User);
return;
}
AddComp<ActiveSurgeryComponent>(target);
_popupSystem.PopupEntity(Loc.GetString("medical-surgery-activate"), uid, args.User);
}
if (HasComp<ActiveSurgeryComponent>(target) && surgery!.IsActive != true)
{
if (target == args.User)
return;
RemComp<ActiveSurgeryComponent>(target);
_popupSystem.PopupEntity(Loc.GetString("medical-surgery-stop"), uid, args.User);
}

}
}
}
158 changes: 158 additions & 0 deletions Content.Server/Medical/SurgerySystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
using Content.Server.Administration.Logs;
using Content.Server.Body.Components;
using Content.Server.Body.Systems;
using Content.Server.Chemistry.Containers.EntitySystems;
using Content.Server.Medical.Components;
using Content.Server.Popups;
using Content.Server.Stack;
using Content.Shared.Audio;
using Content.Shared.Buckle.Components;
using Content.Shared.Damage;
using Content.Shared.Database;
using Content.Shared.DoAfter;
using Content.Shared.FixedPoint;
using Content.Shared.Interaction;
using Content.Shared.Interaction.Events;
using Content.Shared.Item;
using Content.Shared.Medical;
using Content.Shared.Mobs;
using Content.Shared.Mobs.Components;
using Content.Shared.Mobs.Systems;
using Content.Shared.Stacks;
using Robust.Shared.Audio.Systems;
using Robust.Shared.Random;

namespace Content.Server.Medical;

public sealed class SurgerySystem : EntitySystem
{
[Dependency] private readonly SharedAudioSystem _audio = default!;
[Dependency] private readonly IAdminLogManager _adminLogger = default!;
[Dependency] private readonly DamageableSystem _damageable = default!;
[Dependency] private readonly BloodstreamSystem _bloodstreamSystem = default!;
[Dependency] private readonly SharedDoAfterSystem _doAfter = default!;
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly StackSystem _stacks = default!;
[Dependency] private readonly SharedInteractionSystem _interactionSystem = default!;
[Dependency] private readonly MobThresholdSystem _mobThresholdSystem = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
[Dependency] private readonly SolutionContainerSystem _solutionContainerSystem = default!;

public override void Initialize()
{
SubscribeLocalEvent<SurgeryToolComponent, AfterInteractEvent>(OnSurgeryAfterInteract);
SubscribeLocalEvent<DamageableComponent, SurgeryDoAfterEvent>(OnDoAfter);
}

private void OnDoAfter(Entity<DamageableComponent> entity, ref SurgeryDoAfterEvent args)
{
TryComp<SurgeryToolComponent>(entity, out var comp);
var dontRepeat = false;
if (!TryComp(args.Used, out SurgeryToolComponent? healing))
return;
if (args.Handled || args.Cancelled)
return;
if (healing.DamageContainers is not null &&
entity.Comp.DamageContainerID is not null &&
!healing.DamageContainers.Contains(entity.Comp.DamageContainerID))
{
return;
}
var healed = _damageable.TryChangeDamage(entity.Owner, healing.Damage, true, origin: args.Args.User);
if (healed == null)
return;
var total = healed?.GetTotal() ?? FixedPoint2.Zero;
if (entity.Owner != args.User)
{
_adminLogger.Add(LogType.Healed,
$"{EntityManager.ToPrettyString(args.User):user} healed {EntityManager.ToPrettyString(entity.Owner):target} for {total:damage} damage");
}
_audio.PlayPvs(comp!.InProgressSound, args.User, AudioHelpers.WithVariation(0.125f, _random).WithVolume(1f));

args.Repeat = (HasDamage(entity.Comp, healing) && !dontRepeat);
if (!args.Repeat && !dontRepeat)
args.Handled = true;
}

private bool HasDamage(DamageableComponent component, SurgeryToolComponent healing)
{
var damageableDict = component.Damage.DamageDict;
var healingDict = healing.Damage.DamageDict;
foreach (var type in healingDict)
{
if (damageableDict[type.Key].Value > 0)
{
return true;
}
}

return false;
}
private void OnSurgeryAfterInteract(Entity<SurgeryToolComponent> entity, ref AfterInteractEvent args)
{
TryComp<SurgeryToolComponent>(entity, out var comp);
var target = (EntityUid)args.Target!;
TryComp<ActiveSurgeryComponent>(args.Target, out var surgery);
if (args.Handled || !args.CanReach || args.Target == null && !HasComp<ActiveSurgeryComponent>(args.Target) && surgery!.IsActive != true)
return;

if (entity.Comp.IsScalpel == true && surgery!.IsActive != true)
{
surgery!.IsActive = true;
_audio.PlayPvs(comp!.ScalpelSound, entity.Owner);
args.Handled = true;
}

if (surgery!.IsActive == true)
{
if (entity.Comp.IsCautery == true)
{
_audio.PlayPvs(comp!.CauterySound, entity.Owner);
RemComp<ActiveSurgeryComponent>(target);
args.Handled = true;
}

if (entity.Comp.IsHemostat == true)
{
if (TryHeal(entity, args.User, args.Target!.Value, entity.Comp))
args.Handled = true;
}
}

}

public bool TryHeal(EntityUid uid, EntityUid user, EntityUid target, SurgeryToolComponent component)
{
if (!TryComp<DamageableComponent>(target, out var targetDamage))
return false;
TryComp<BuckleComponent>(target, out var buckle);
if (!buckle!.Buckled)
return false;
if (component.DamageContainers is not null &&
targetDamage.DamageContainerID is not null &&
!component.DamageContainers.Contains(targetDamage.DamageContainerID))
{
return false;
}
if (user != target && !_interactionSystem.InRangeUnobstructed(user, target, popup: true))
return false;
var anythingToDo = HasDamage(targetDamage, component);
if (!anythingToDo)
{
return false;
}
_audio.PlayPvs(component!.InProgressSound, user, AudioHelpers.WithVariation(0.125f, _random).WithVolume(1f));
var delay = component.Delay;
var doAfterEventArgs =
new DoAfterArgs(EntityManager, user, delay, new SurgeryDoAfterEvent(), target, target: target, used: uid)
{
// Didn't break on damage as they may be trying to prevent it and
// not being able to heal your own ticking damage would be frustrating.
NeedHand = true,
BreakOnMove = true,
BreakOnWeightlessMove = false,
};
_doAfter.TryStartDoAfter(doAfterEventArgs);
return true;
}
}
4 changes: 4 additions & 0 deletions Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
using Robust.Shared.Physics.Events;
using Robust.Shared.Prototypes;
using Robust.Shared.Utility;
using Content.Shared.Rotation;

namespace Content.Shared.Buckle;

Expand Down Expand Up @@ -195,6 +196,7 @@ protected void SetBuckledTo(Entity<BuckleComponent> buckle, Entity<StrapComponen
buckle.Comp.BuckleTime = _gameTiming.CurTime;
ActionBlocker.UpdateCanMove(buckle);
Appearance.SetData(buckle, StrapVisuals.State, buckle.Comp.Buckled);
Appearance.SetData(buckle, RotationVisuals.RotationState, RotationState.Horizontal);
Dirty(buckle);
}

Expand Down Expand Up @@ -348,6 +350,7 @@ private void Buckle(Entity<BuckleComponent> buckle, Entity<StrapComponent> strap
SetBuckledTo(buckle, strap!);
Appearance.SetData(strap, StrapVisuals.State, true);
Appearance.SetData(buckle, BuckleVisuals.Buckled, true);
Appearance.SetData(buckle, RotationVisuals.RotationState, RotationState.Horizontal);

_rotationVisuals.SetHorizontalAngle(buckle.Owner, strap.Comp.Rotation);

Expand Down Expand Up @@ -455,6 +458,7 @@ private void Unbuckle(Entity<BuckleComponent> buckle, Entity<StrapComponent> str
_rotationVisuals.ResetHorizontalAngle(buckle.Owner);
Appearance.SetData(strap, StrapVisuals.State, strap.Comp.BuckledEntities.Count != 0);
Appearance.SetData(buckle, BuckleVisuals.Buckled, false);
Appearance.SetData(buckle, RotationVisuals.RotationState, RotationState.Vertical);

if (HasComp<KnockedDownComponent>(buckle) || _mobState.IsIncapacitated(buckle))
_standing.Down(buckle);
Expand Down
9 changes: 9 additions & 0 deletions Content.Shared/Medical/MedicalDrapesDoAfterEvent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using Content.Shared.DoAfter;
using Robust.Shared.Serialization;

namespace Content.Shared.Medical;

[Serializable, NetSerializable]
public sealed partial class MedicalDrapesDoAfterEvent : SimpleDoAfterEvent
{
}
9 changes: 9 additions & 0 deletions Content.Shared/Medical/SurgeryDoAfterEvent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using Content.Shared.DoAfter;
using Robust.Shared.Serialization;

namespace Content.Shared.Medical;

[Serializable, NetSerializable]
public sealed partial class SurgeryDoAfterEvent : SimpleDoAfterEvent
{
}
Binary file added Resources/Audio/Effects/allah.ogg
Binary file not shown.
Binary file added Resources/Audio/Items/Medical/in_progress.ogg
Binary file not shown.
Binary file not shown.
Binary file added Resources/Audio/Items/Medical/surgery_start.ogg
Binary file not shown.
Binary file added Resources/Audio/Lobby/SKIBIDI_FORTNITE.ogg
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file removed Resources/Audio/Lobby/Spac_Stac.ogg
Binary file not shown.
Binary file removed Resources/Audio/Lobby/absconditus.ogg
Binary file not shown.
Binary file removed Resources/Audio/Lobby/atomicamnesiammx.ogg
Binary file not shown.
Loading
Loading