Salvage magnet revamp (#23119)
* Generic offering window * More work * weh * Parity * Progression meter * magnet * rona * PG asteroid work * code red * Asteroid spawnings * clams * a * Marker fixes * More fixes * Workings of biome asteroids * A * Fix this loading code * a * Fix masking * weh * Fixes * Magnet claiming * toe * petogue * magnet * Bunch of fixes * Fix default * Fixes * asteroids * Fix offerings * Localisation and a bunch of fixes * a * Fixes * Preliminary draft * Announcement fixes * Fixes and bump spawn rate * Fix asteroid spawns and UI * More fixes * Expeditions fix * fix * Gravity * Fix announcement rounding * a * Offset tweak * sus * jankass * Fix merge
This commit is contained in:
16
Content.Shared/Salvage/Magnet/AsteroidOffering.cs
Normal file
16
Content.Shared/Salvage/Magnet/AsteroidOffering.cs
Normal file
@@ -0,0 +1,16 @@
|
||||
using Content.Shared.Procedural;
|
||||
|
||||
namespace Content.Shared.Salvage.Magnet;
|
||||
|
||||
/// <summary>
|
||||
/// Asteroid offered for the magnet.
|
||||
/// </summary>
|
||||
public record struct AsteroidOffering : ISalvageMagnetOffering
|
||||
{
|
||||
public DungeonConfigPrototype DungeonConfig;
|
||||
|
||||
/// <summary>
|
||||
/// Calculated marker layers for the asteroid.
|
||||
/// </summary>
|
||||
public Dictionary<string, int> MarkerLayers;
|
||||
}
|
||||
6
Content.Shared/Salvage/Magnet/ISalvageMagnetOffering.cs
Normal file
6
Content.Shared/Salvage/Magnet/ISalvageMagnetOffering.cs
Normal file
@@ -0,0 +1,6 @@
|
||||
namespace Content.Shared.Salvage.Magnet;
|
||||
|
||||
public interface ISalvageMagnetOffering
|
||||
{
|
||||
|
||||
}
|
||||
12
Content.Shared/Salvage/Magnet/MagnetClaimOfferEvent.cs
Normal file
12
Content.Shared/Salvage/Magnet/MagnetClaimOfferEvent.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared.Salvage.Magnet;
|
||||
|
||||
/// <summary>
|
||||
/// Claim an offer from the magnet UI.
|
||||
/// </summary>
|
||||
[Serializable, NetSerializable]
|
||||
public sealed class MagnetClaimOfferEvent : BoundUserInterfaceMessage
|
||||
{
|
||||
public int Index;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared.Salvage.Magnet;
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public sealed class SalvageMagnetBoundUserInterfaceState : BoundUserInterfaceState
|
||||
{
|
||||
public TimeSpan? EndTime;
|
||||
public TimeSpan NextOffer;
|
||||
|
||||
public TimeSpan Cooldown;
|
||||
public TimeSpan Duration;
|
||||
|
||||
public int ActiveSeed;
|
||||
|
||||
public List<int> Offers;
|
||||
|
||||
public SalvageMagnetBoundUserInterfaceState(List<int> offers)
|
||||
{
|
||||
Offers = offers;
|
||||
}
|
||||
}
|
||||
6
Content.Shared/Salvage/Magnet/SalvageMagnetUiKey.cs
Normal file
6
Content.Shared/Salvage/Magnet/SalvageMagnetUiKey.cs
Normal file
@@ -0,0 +1,6 @@
|
||||
using Robust.Shared.Serialization;
|
||||
|
||||
namespace Content.Shared.Salvage.Magnet;
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public enum SalvageMagnetUiKey : byte { Key }
|
||||
9
Content.Shared/Salvage/Magnet/SalvageOffering.cs
Normal file
9
Content.Shared/Salvage/Magnet/SalvageOffering.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
namespace Content.Shared.Salvage.Magnet;
|
||||
|
||||
/// <summary>
|
||||
/// Asteroid offered for the magnet.
|
||||
/// </summary>
|
||||
public record struct SalvageOffering : ISalvageMagnetOffering
|
||||
{
|
||||
public SalvageMapPrototype SalvageMap;
|
||||
}
|
||||
Reference in New Issue
Block a user