Paradies Project
Loading...
Searching...
No Matches
AParadiseGachaItemActor Class Reference

오버워치 스타일 가챠 연출에서 튀어나오는 개별 아이템 액터 More...

#include <ParadiseGachaItemActor.h>

Inheritance diagram for AParadiseGachaItemActor:
Inheritance graph
Collaboration diagram for AParadiseGachaItemActor:
Collaboration graph

Public Member Functions

void InitializeItemData (const FGachaResult &InResult, UMaterialInstance *InSilhouetteMat, UMaterialInstance *InRealMat)
 아이템의 데이터와 시각적 에셋을 외부에서 주입하여 초기화합니다.
void LaunchToTarget (FVector TargetLocation, float FlightDuration=1.0f, float ArcHeight=300.0f)
 지정된 목표 위치로 포물선을 그리며 날아갑니다.
void RevealItem ()
 유저가 터치했을 때 호출하여 실루엣을 벗기고 진짜 모습을 보여줍니다.
void EnableTouch ()
 BoxActor가 모든 구슬 착지 확인 후 호출 — 그 시점부터 터치 가능
void SetFlightSpeedMultiplier (float InMultiplier)
 비행 속도 배율을 설정합니다. (BoxActor 의 꾹 누름 배속과 연동)

Public Attributes

FOnGachaItemRevealed OnItemRevealed
 리빌(연출)이 완료되었음을 알리는 이벤트 방송
FOnGachaItemLanded OnItemLanded
 마지막 구슬이 바닥에 닿았을때 델리게이트

Protected Member Functions

virtual void BeginPlay () override
virtual void Tick (float DeltaTime) override

Protected Attributes

TObjectPtr< UStaticMeshComponent > ItemMesh = nullptr
 아이템 외형 (충돌 및 터치 감지용)
TObjectPtr< USkeletalMeshComponent > RevealCharacterMesh = nullptr
 [캐릭터 전용] 리빌 후 Idle 애니메이션을 재생할 스켈레탈 메시 컴포넌트
TObjectPtr< UStaticMeshComponent > RevealEquipmentMesh = nullptr
 [장비 전용] 리빌 후 보여줄 장비 스태틱 메시 컴포넌트
TObjectPtr< UNiagaraComponent > RarityAuraEffect = nullptr
 등급별 아우라/빛기둥 이펙트를 담당하는 컴포넌트
TMap< EItemRarity, TObjectPtr< UNiagaraSystem > > RevealVFXByRarity
TObjectPtr< USoundBase > RevealSound = nullptr
 터치 시 재생될 사운드
FName GachaCameraTag = FName(TEXT("GachaCamera"))
 가챠 카메라 검색에 사용할 액터 태그

Detailed Description

오버워치 스타일 가챠 연출에서 튀어나오는 개별 아이템 액터

생성 시점에는 실루엣 머티리얼로 가려져 있으며, 터치 시 원본으로 변경됩니다. (SRP 적용)

Member Function Documentation

◆ InitializeItemData()

void AParadiseGachaItemActor::InitializeItemData ( const FGachaResult & InResult,
UMaterialInstance * InSilhouetteMat,
UMaterialInstance * InRealMat )

아이템의 데이터와 시각적 에셋을 외부에서 주입하여 초기화합니다.

Parameters
InResult이 아이템이 담고 있는 가챠 결과 데이터
InSilhouetteMat덮어씌울 실루엣(검은색) 머티리얼 인스턴스
InRealMat터치 시 보여줄 진짜 캐릭터/아이템 머티리얼 인스턴스

◆ LaunchToTarget()

void AParadiseGachaItemActor::LaunchToTarget ( FVector TargetLocation,
float FlightDuration = 1.0f,
float ArcHeight = 300.0f )

지정된 목표 위치로 포물선을 그리며 날아갑니다.

Parameters
TargetLocation바닥에 안착할 최종 목표 좌표
FlightDuration날아가는 데 걸리는 시간 (초)
ArcHeight포물선의 최고점 높이 (언리얼 유닛)

◆ RevealItem()

void AParadiseGachaItemActor::RevealItem ( )

유저가 터치했을 때 호출하여 실루엣을 벗기고 진짜 모습을 보여줍니다.

멀티 터치 환경이나 스킵 상황에서 호출될 수 있습니다.

◆ SetFlightSpeedMultiplier()

void AParadiseGachaItemActor::SetFlightSpeedMultiplier ( float InMultiplier)

비행 속도 배율을 설정합니다. (BoxActor 의 꾹 누름 배속과 연동)

Parameters
InMultiplier1.0 = 기본 / 2.0 = 2배속

Member Data Documentation

◆ GachaCameraTag

FName AParadiseGachaItemActor::GachaCameraTag = FName(TEXT("GachaCamera"))
protected

가챠 카메라 검색에 사용할 액터 태그

레벨의 CineCamera_Gacha 액터 디테일 패널 → Tags에 이 값을 추가하세요.


The documentation for this class was generated from the following files:
  • Source/Paradise/Public/Actors/Gacha/ParadiseGachaItemActor.h
  • Source/Paradise/Private/Actors/Gacha/ParadiseGachaItemActor.cpp