Files
Delta-v/Content.Shared/Forensics/Events.cs
T
84c0b3e895 snipe qol prs from upstream (#2614)
* Remove discard functionality from the ChemMaster

This duplicates other methods of discarding chemicals, including
the drain conventionally given to chemistry labs.

Any problems it solves are miniscule compared to the severe UI error
that is having a destructive action without confirmation attached
to a mode, the most common source of user error.

* Improve animal cube interactions (#31668)

* Working on dehydrate recipes to renew animal cubes

* Added remaining cube dehydration recipes

* Add OnExamine to RehydratableSystem.cs, need to add functionality to check total volume vs current volume to determine if 'soaked' text needs to be displayed

* Added logic to append text to the description when the wrong reagent has been added to a compressed animal cube

* Re-adding deleted summary

* Update default SolutionName to be correct

* Remove cube recipes to prevent infinite nutrient generation

* Add OnMicrowaved event to RehydratableSystem.cs in order to clear solution of cube when microwaved. CURRENT ERROR REQUIRES REFACTOR OF MICROWAVECOMPONENT

* Subscribe to microwave event

* Refactor of MicrowaveComponent.cs to be in shared folder, accessible to RehydratableSystem.cs. Updated imports

* Modify cube to only dehydrate in microwave when cooked for at least 5 seconds

* now using event to check access to fingerprint

* Tweak - Reflective vest and Energy Katana should reflect only in correct slots (#31902)

* ReflectComponentLogicFix
Added bool InRightPlace and updated relevant system

* Using SlotFlags

* prevent friendly fire for dragon/carp (#32231)

* add NoFriendlyFire

* make zombies use NoFriendlyFire

* no friendly fire for dragon

* let dragon kill naughty fish and validhunting syndies

* add button to print logprobe logs (#32255)

* add EntityName at the bottom of LogProbe

* add button to print logprobe logs

* Add camera mod to diagnostic hud (#32254)

* ai-glass

* weh to protect against bad grammar

* transmutation into diagnostic hud

* Apply forensics when loading with an ammo box

* inaprovaline metabolizes slower

* :trollface:

---------

Co-authored-by: Janet Blackquill <uhhadd@gmail.com>
Co-authored-by: Preston Smith <Blackfoot03@outlook.com>
Co-authored-by: YourUsername <you@example.com>
Co-authored-by: BIGZi0348 <svalker0348@gmail.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: ArZarLordOfMango <arzarchannel@gmail.com>
Co-authored-by: themias <themias5@gmail.com>
Co-authored-by: Alzore <blackern5000@gmail.com>
2025-01-05 03:55:34 +00:00

82 lines
1.8 KiB
C#

using Content.Shared.DoAfter;
using Content.Shared.Inventory;
using Robust.Shared.Serialization;
namespace Content.Shared.Forensics;
[Serializable, NetSerializable]
public sealed partial class ForensicScannerDoAfterEvent : SimpleDoAfterEvent
{
}
[Serializable, NetSerializable]
public sealed partial class ForensicPadDoAfterEvent : DoAfterEvent
{
[DataField("sample", required: true)] public string Sample = default!;
private ForensicPadDoAfterEvent()
{
}
public ForensicPadDoAfterEvent(string sample)
{
Sample = sample;
}
public override DoAfterEvent Clone() => this;
}
[Serializable, NetSerializable]
public sealed partial class CleanForensicsDoAfterEvent : SimpleDoAfterEvent
{
}
/// <summary>
/// An event to apply DNA evidence from a donor onto some recipient.
/// </summary>
[ByRefEvent]
public record struct TransferDnaEvent()
{
/// <summary>
/// The entity donating the DNA.
/// </summary>
public EntityUid Donor;
/// <summary>
/// The entity receiving the DNA.
/// </summary>
public EntityUid Recipient;
/// <summary>
/// Can the DNA be cleaned off?
/// </summary>
public bool CanDnaBeCleaned = true;
}
/// <summary>
/// An event to generate and act upon new DNA for an entity.
/// </summary>
[ByRefEvent]
public record struct GenerateDnaEvent()
{
/// <summary>
/// The entity getting new DNA.
/// </summary>
public EntityUid Owner;
/// <summary>
/// The generated DNA.
/// </summary>
public required string DNA;
}
/// <summary>
/// An event to check if the fingerprint is accessible.
/// </summary>
public sealed class TryAccessFingerprintEvent : CancellableEntityEventArgs, IInventoryRelayEvent
{
SlotFlags IInventoryRelayEvent.TargetSlots => ~SlotFlags.POCKET;
public EntityUid? Blocker;
}