Files
Delta-v/Content.Server/Research/TechnologyDisk/Components/DiskConsoleComponent.cs
T
Vladislav Suchkovandslarticodefast 7addfbec77 Tech disk resprite and pricing changes (#37719)
* init

new disks are in. can be spawned or printed. no weights or correctly bound techs yet.

* tweak textures and naming

* make tech disks respect their tier and discipline

* make tech console respect tier weight

* yml fixes (forgo a million things)

* meow :3 reworked to use GenericVisualizer

* moved staticPrice comp to shared to support different pricing per tier

* unhardcoded prices; tweaked log messages

* cleanup

* a few fixes

* updated pricing to match weights

* lowering prices I forgor how many of them science can print

* what

* t3 texture, logger, factory

* move PriceCalculationEvent & EstimatedPriceCalculationEvent to shared

* remove static price comp; use EntProtoId for disk proto

* moved staticPrice comp back to server

* cleanup: price event, visualizer enums & yml

* ummove PriceCalculationEvent

* ummove PriceCalculationEvent attempt #2

* more unmoving

* fixes

* predict onExamine

* review changes

* small cleanup

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2026-06-29 12:44:10 +02:00

33 lines
867 B
C#

using Robust.Shared.Audio;
using Robust.Shared.Prototypes;
namespace Content.Server.Research.TechnologyDisk.Components;
[RegisterComponent]
public sealed partial class DiskConsoleComponent : Component
{
/// <summary>
/// How much it costs to print a disk
/// </summary>
[DataField]
public int PricePerDisk = 1000;
/// <summary>
/// The prototype of what's being printed
/// </summary>
[DataField]
public EntProtoId DiskPrototype = "TechnologyDisk";
/// <summary>
/// How long it takes to print <see cref="DiskPrototype"/>
/// </summary>
[DataField]
public TimeSpan PrintDuration = TimeSpan.FromSeconds(1);
/// <summary>
/// The sound made when printing occurs
/// </summary>
[DataField]
public SoundSpecifier PrintSound = new SoundPathSpecifier("/Audio/Machines/printer.ogg");
}