using System; using UnityEngine; // Склад или Амбар (этап 1): каждый уровень поднимает лимит хранения. // Склад -- дерево, камень, металл, золото; Амбар -- еда. Числа -- EconomyConfig, раздел "Склады и лимиты". // Здание появляется в списке стройки кодом (App/StorageBootstrap), отдельных префабов пока нет. // Уровень сохраняет модуль Поселения (ILeveledBuilding), лимиты считает App/CitySync. public class StorageBuilding : MonoBehaviour, ILeveledBuilding { public enum Kind { Warehouse, Granary } public static event Action Tapped; public Kind kind; public int level = 1; public int Level { get => level; set => level = Mathf.Max(1, value); } public string Title => kind == Kind.Warehouse ? StorageBootstrap.WarehouseName : StorageBootstrap.GranaryName; Vector3 downPos; void OnMouseDown() { downPos = Input.mousePosition; } // Тап, а не перетаскивание камеры void OnMouseUpAsButton() { if (UIBlocker.IsPointerOverUI()) return; if ((Input.mousePosition - downPos).magnitude > 25f) return; Tapped?.Invoke(this); } }