AMIPBasePlayerCharacter
File: Public/GameFramework/MIPBasePlayerCharacter.h
Base: ACharacter → IAbilitySystemInterface, IMIPCombatInterface, IMIPCursorHittableInterface, IMIPPlayerDamageReceivableActorInterface, IOutliningInterface, IIsPlayerInterface, IActorWithNameplateInterface
The player pawn — the physical character in the world. Handles camera, equipment visuals, death/respawn flow, floating damage text, and serves as the combat target for GAS.
Owned Components
| Component |
Type |
Purpose |
HeroComponent |
UMIPHeroComponent |
Core hero setup (startup logic, class-specific init) |
EquipmentMeshesManager |
UMIPBaseEquipmentMeshesManager |
Attaches/detaches skeletal meshes for equipped items |
PlayerHealthComponent |
UMIPPlayerHealthComponent |
Player health, death detection, respawn |
PlayerASCManager |
UMIPPlayerAbilitySystemComponentManager |
Pawn-side ASC resolver |
FloatingDamageTextWidgetComponent |
UMIPFloatingDamageTextWidgetComponent |
Floating combat numbers |
MinimapMarkerComponent |
UMIPMinimapMarkerComponent |
Player marker on minimap |
NearbyActorDetectorComponent |
UMIPNearbyActorDetectorComponent |
Detects nearby interactables and actors |
Camera
| Component |
Type |
Description |
CameraBoom |
USpringArmComponent |
Camera arm behind the character |
FollowCamera |
UCameraComponent |
Main gameplay camera |
Death & Respawn Flow
PlayerHealthComponent detects HP <= 0
│
▼
OnDeathStarted(OwningActor, bCanRespawn)
DisableMovementAndCollisionAndShowCursor()
AddDeathWidget()
SetPlayerDeadCapsuleCollisionProfile()
Fires OnPostDeathDelegate
│
▼
[Player clicks respawn or timer expires]
│
▼
OnRespawned(OwningActor)
EnableMovementAndCollisionAndHideCursor()
RemoveDeathWidget()
SetPlayerCapsuleCollisionProfile()
Fires OnPostRespawnDelegate
| Property / Method |
Description |
GetDeathState() |
Returns EMIPDeathState (Alive, Dead, etc.) |
GetTargetStartDeathDelegate() |
FMIPHealth_DeathEvent — bind to receive death notification |
GetTargetRespawnDelegate() |
FMIPHealth_Respawn — bind to receive respawn notification |
OnPostDeathDelegate |
BlueprintAssignable — fires after death processing |
OnPostRespawnDelegate |
BlueprintAssignable — fires after respawn processing |
Equipment Visuals
| Method |
Description |
GetEquipmentMeshesManager() |
Returns the mesh manager for attaching/detaching equipment SKMeshes |
GetMeshAddedComponents() |
BlueprintNativeEvent — returns all mesh components added via equipment |
GetAllMeshes_Implementation() |
Returns all primitive components for outline rendering |
Equipment meshes are attached to sockets defined in UMIPEquipmentPieceAsset (AttachToSocketName, RelativeMeshTransform).
Combat Interface
The character implements IMIPCombatInterface for GAS damage flow:
| Method |
Description |
GetTargetStartDeathDelegate() |
Death delegate for GAS health component |
GetTargetRespawnDelegate() |
Respawn delegate |
GetDeathState() |
Current death state |
And IMIPCursorHittableInterface:
| Method |
Returns |
GetCursorHittableType() |
EMIPCursorHittableType::Player |
Other
| Feature |
Details |
TrySpawnOwningCharacterRenderTarget() |
Spawns AMIPOwningCharacterRenderTarget for character preview UI |
SetDefaultLinkAnimClassLayer() |
Links the default animation class layer at BeginPlay |
InitializeWidgetComponent() |
Sets up the floating damage text widget |
NameplateWidgetComponent |
Nameplate above the character (via IActorWithNameplateInterface) |
ClientPlayerStateInitializedDelegate |
Fires when PlayerState is replicated and ready on the client |
See Also