Files
SixShopSimulator/Assets/Scripts/Shop/StorageCrateRegistry.cs
T
svenm_adminandClaude Sonnet 5 7e4cebbf13 feat(economy): add Bestellsystem mit Lieferzeit
- SupplierService: Bestellungen mit Lieferzeit-Berechnung
- OrderTerminal: Spieler-Interaktion zum Aufgeben von Bestellungen
- StorageCrateRegistry + StorageCrate.Restock: Server registriert Kisten
  und füllt sie bei Lieferung wieder auf
- GameClock.TotalHours: durchgehende Spielzeit für Lieferzeit-Berechnung
- ROADMAP: Bestellsystem-Punkt als erledigt markiert

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-14 19:17:36 +02:00

29 lines
893 B
C#

using System.Collections.Generic;
namespace AfterHours.Shop
{
/// <summary>
/// Serverseitige Liste aller aktiven Lagerkisten, damit der SupplierService
/// eine Lieferung der richtigen Kiste zuordnen kann.
/// </summary>
public sealed class StorageCrateRegistry
{
public static readonly StorageCrateRegistry Instance = new();
private readonly List<StorageCrate> _crates = new();
public void Register(StorageCrate crate) => _crates.Add(crate);
public void Unregister(StorageCrate crate) => _crates.Remove(crate);
/// <summary>Erste Kiste, die dieses Produkt führt.</summary>
public StorageCrate FindFor(int productId)
{
foreach (var crate in _crates)
if (crate != null && crate.ProductId == productId)
return crate;
return null;
}
}
}