MVP — drag, eat, grow · Working drag-to-move loop. 120 cubes in 3 tiers. 90 s match timer, score, city-cleared %, replay. No bots yet.
HoleGrowthSystem — radius-driven growth. Consuming mass adds to radius via a growth curve; raises RadiusChanged and ScoreChanged events.AbsorbableDefinition ScriptableObject — required radius, score, growth mass, absorption duration. One asset per object type.AbsorbableObject — trigger collider; eligible objects ease toward the hole over absorptionDuration, scale to zero, fire consumed event. Ineligible objects wobble once.CameraRig instead of Cinemachine. Top-down follow with height tied to hole radius; bigger hole = camera pulls back.HoleController reads Input System <Touchscreen>/primaryTouch + <Mouse>/leftButton via direct API calls. Editor mouse-drag and device touch share one code path.Rigidbody.MovePosition in FixedUpdate with a max-step cap to prevent the hole from tunneling past trigger volumes.MatchTimer — 90 s countdown, raises Expired event.CityCompletionTracker — mass-based % cleared. Eating one big cube matters more than one small cube. Scans the scene on Start to compute TotalMass.PrototypeGameManager — owns timer + tracker + player; static Instance for cross-script access.PrototypeHud — IMGUI labels for score, timer, cleared %. End-screen panel with a Replay button that reloads the scene.