2022-06-03 06:08:09 -04:00
|
|
|
using Content.Shared.Maps;
|
2022-07-29 14:13:12 +12:00
|
|
|
using Robust.Shared.Audio;
|
2023-03-22 20:29:55 +11:00
|
|
|
using Robust.Shared.GameStates;
|
2022-06-03 06:08:09 -04:00
|
|
|
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List;
|
|
|
|
|
|
2023-03-22 20:29:55 +11:00
|
|
|
namespace Content.Shared.Tiles
|
2022-06-03 06:08:09 -04:00
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// This gives items floor tile behavior, but it doesn't have to be a literal floor tile.
|
|
|
|
|
/// A lot of materials use this too. Note that the AfterInteract will fail without a stack component on the item.
|
|
|
|
|
/// </summary>
|
2023-03-22 20:29:55 +11:00
|
|
|
[RegisterComponent, NetworkedComponent]
|
2023-08-22 18:14:33 -07:00
|
|
|
public sealed partial class FloorTileComponent : Component
|
2022-06-03 06:08:09 -04:00
|
|
|
{
|
|
|
|
|
[DataField("outputs", customTypeSerializer: typeof(PrototypeIdListSerializer<ContentTileDefinition>))]
|
|
|
|
|
public List<string>? OutputTiles;
|
|
|
|
|
|
2023-11-27 22:12:34 +11:00
|
|
|
[DataField("placeTileSound")] public SoundSpecifier PlaceTileSound =
|
|
|
|
|
new SoundPathSpecifier("/Audio/Items/genhit.ogg")
|
|
|
|
|
{
|
|
|
|
|
Params = AudioParams.Default.WithVariation(0.125f),
|
|
|
|
|
};
|
2022-06-03 06:08:09 -04:00
|
|
|
}
|
|
|
|
|
}
|