Files
tbd-station-14/Content.Shared/Weapons/Ranged/Components/SolutionAmmoProviderComponent.cs
IProduceWidgets bc00a635b9 Makes Plant-B-Gone available to cargo, and Diona vulnerable. (#19555)
* Adds WeekKiller storage tanks and allows Cargo to purchase them.

* Delete CellMemberRoll.cs

Woops, this template file snuck in after I reset my local. It doesn't do anything, just empty classes.

* Switched from WeedKiller to PlantBeGone because WeedKiller is too deadly. Honestly is probably shouldn't be in Botany so readily.
Made Diona take damage from PlantBeGone and WeedKiller.
Adjusted waterguns to use less reagent per shot.
Added admeme watergun.
Adjusted watergun cargo crate.

* Fixing small .yml formatting hiccups.

* Fixing small .yml formatting.

* Fix Typo.

* watergun min solution match shot size

Makes watergun's minimum solution transfer match shot size (5u).

* I pass tests now, please?

Nothing.

* Lower Diona herbicide damages
Remove slime changes
Lower super water blaster size to 500u (100 shots)
2023-09-01 22:32:08 -07:00

43 lines
1.5 KiB
C#

using Content.Shared.Weapons.Ranged.Systems;
using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
namespace Content.Shared.Weapons.Ranged.Components;
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState, Access(typeof(SharedGunSystem))]
public sealed partial class SolutionAmmoProviderComponent : Component
{
/// <summary>
/// The solution where reagents are extracted from for the projectile.
/// </summary>
[DataField("solutionId", required: true), AutoNetworkedField]
public string SolutionId = default!;
/// <summary>
/// How much reagent it costs to fire once.
/// </summary>
[DataField("fireCost"), ViewVariables(VVAccess.ReadWrite), AutoNetworkedField]
public float FireCost = 5;
/// <summary>
/// The amount of shots currently available.
/// used for network predictions.
/// </summary>
[DataField("shots"), ViewVariables, AutoNetworkedField]
public int Shots;
/// <summary>
/// The max amount of shots the gun can fire.
/// used for network prediction
/// </summary>
[DataField("maxShots"), ViewVariables, AutoNetworkedField]
public int MaxShots;
/// <summary>
/// The prototype that's fired by the gun.
/// </summary>
[DataField("proto", customTypeSerializer: typeof(PrototypeIdSerializer<EntityPrototype>)), ViewVariables(VVAccess.ReadWrite)]
public string Prototype = default!;
}