🛒 Inventory-Shop System (Unity)

Inventory-Shop System is a fully modular, event-driven framework for managing inventory and shop interactions in Unity. Designed with scalability, responsiveness, and clean architecture in mind, it integrates easily into any Unity project with minimal setup.

✨ Features Overview

📦 Dynamic Inventory Management

  • Track item quantities and total weight in real time.
  • Dynamically spawn items with randomized values and validation checks.
  • Instant UI updates reflecting inventory changes.

🛍️ Interactive Shop System

  • Full-featured buy/sell logic with coin, weight, and quantity management.
  • Sleek dynamic UI showing item details, prices, and quantity adjustments.
  • Edge case handling for insufficient coins or over-capacity purchases.

🔁 Event-Driven Architecture

  • Centralized EventService coordinates item logic and UI updates.
  • Observer Pattern ensures instant updates across systems (UI, audio, logic).
  • Inventory and shop fully decoupled but synchronized through events.

🧱 Modular & Scalable Design

  • MVC architecture for clean separation of logic, data, and visuals.
  • Reusable generic base classes shared across Inventory and Shop modules.
  • ScriptableObjects define item stats (ID, type, rarity, price, weight).

🎮 Enhanced User Experience

  • Toggle seamlessly between inventory and shop views using CanvasGroup.
  • Real-time feedback via pop-ups, tooltips, and audio cues.
  • SoundManager handles contextual SFX using a centralized Singleton service.

💡 Technologies & Architecture

🧩 Design Patterns

  • Observer Pattern: Drives UI and logic updates in real-time.
  • MVC Pattern: Models store data, Views handle display, and Controllers manage logic.
  • Generic Singleton: Lightweight base for managers (Audio, Event, Game).

💻 Advanced C# Techniques

  • Used Actions, delegates, and events for cross-system communication.
  • Interfaces and generic controllers ensure high reusability and flexibility.
  • Created a GenericMonoSingleton<T> to manage global services safely.

🎨 UI/UX Techniques

  • Smooth transitions between inventory/shop via UI toggling logic.
  • Interactive feedback: pop-ups for weight limits, invalid actions, and purchases.
  • Real-time pricing, quantity validation, and error resolution in UI.

🛠️ Development Approach

  • Agile & Iterative: Configurable item systems through the Unity Inspector.
  • Extensible: Easily add new item types, currencies, or visual panels.
  • Optimized: No polling—entire system uses event-driven updates to boost performance.

📬 Let’s Connect!

Whether you're designing complex in-game economies or modular gameplay systems in Unity, this project showcases a reusable and professional-grade Inventory-Shop framework. I'd love to chat about game architecture, UI/UX in gameplay systems, or Unity design patterns!

Published 3 days ago
StatusReleased
PlatformsHTML5
AuthorSayanNandi
Made withUnity

Leave a comment

Log in with itch.io to leave a comment.