Skip to content

Gate Manager

Overview

UMIPGateManager handles travel gates (e.g. level transition): overlap with AMIPGate shows a confirmation popup; on confirm it calls the server to perform travel. It caches gate actors by connected map name and manages the overlapping gate and confirmation widget.

Key traits:

  • Attachment: PlayerController.
  • Flow: On gate overlap → show travel confirmation; on confirm → ServerOnConfirmedTravelGate(InGate); server performs map travel. On end overlap or cancel → remove confirmation.

All paths below are relative to Plugins/ModularInventoryPlus/Source/ModularInventoryPlus/.


Key Classes & Files

Class File
UMIPGateManager Public/Gate/MIPGateManager.h

UMIPGateManager

  • Base: UMIPBasePlayerControllerComponent.
  • API: FindGateActorByConnectedMapName(InConnectedMapName).
  • Flow: BeginPlay/ClientBeginPlay → register overlap with gates; OnGateOverlapped(InGate), OnGateEndOverlapped(InGate); ShowTravelGateConfirmationScreen / RemoveTravelGateConfirmationScreen / HideTravelGateConfirmationScreen; OnTravelGateConfirmed(bConfirm, PopupTag, AdditionalData); ServerOnConfirmedTravelGate(InGate); TravelToServerInternal().
  • Storage: CurrentMapCachedGates, OverlappingGate, ConfirmationPopupWidget.

Integration

  • UMIPPopupWidgetManager – confirmation popup for travel.
  • AMIPGate – actor that triggers overlap and holds connected map/travel data.