UE5

    [UE5] 적 죽음 구현

    [UE5] 적 죽음 구현

    * 어디에구현?적, 캐릭터가 모두사용 -> 전투인터에 만들고 캐릭베이스에서 구현강제 할거임class AURA_API ICombatInterface{ ... virtual void Die()=0; void AAuraCharacterBase::Die(){ //무기분리, 분리는자동으로 수행 -> 서버에서분리하면 클라에서도 자동분리 Weapon->DetachFromComponent(FDetachmentTransformRules(EDetachmentRule::KeepWorld,true)); MulticastHandleDeath();}void AAuraCharacterBase::MulticastHandleDeath_Implementation(){ //무기, 매시에 피직스 달기 => 땅..

    [UE5] 타격시 에니메이션 구현

    [UE5] 타격시 에니메이션 구현

    * 태그를 부여해주는 GE 만들기- 태그추가 해주시고struct FAuraGameplayTags{public: .. FGameplayTag Effects_HitReact;GameplayTags.Effects_HitReact = UGameplayTagsManager::Get().AddNativeGameplayTag( FName("Effects.HitReact"), FString("Effects.HitReact") ); Hit가 된대상의 태그가 HitReact로 바뀔거임 * 적클래스에서 태그의 변화를 구독하기- 콜백 함수추가void AAuraEnemy::HitReactTagChanged(const FGameplayTag CallbackTag, int32 NewCount){}- 태그..

    [UE5] json으로 레벨별 데미지 구현

    [UE5] json으로 레벨별 데미지 구현

    * 태그에 맞는 수정자값 설정- 태그추가struct FAuraGameplayTags{public: ... FGameplayTag Damage;void FAuraGameplayTags::InitializeNativeGameplayTags(){ ... GameplayTags.Damage = UGameplayTagsManager::Get().AddNativeGameplayTag( FName("Damage"), FString("Damage") );- 태그에맞는, 수정자설정void UAuraProjectileSpell::SpawnProjectile(const FVector& ProjectileTargetLocation){ ... //GE_Dama..

    [UE5] 데미지계산용 Meta 속성추가 // 데미지 계산하는 방법

    [UE5] 데미지계산용 Meta 속성추가 // 데미지 계산하는 방법

    * 데미지 계산하는 방법GE에서 직접계산하는게 아님meta속성, AS에 의해 아래 사항을 고려해서 최종데미지를 결정하고체력을 변화시키는 방식 * 현재 데미지 문제점 *  AS에 Meta속성추가, 구현서버에 복제할필요없이Local에서만 사용할거임UPROPERTY(BlueprintReadOnly, Category = "Meta Attributes") //복제안함FGameplayAttributeData IncomingDamage;ATTRIBUTE_ACCESSORS(UAuraAttributeSet, IncomingDamage);void UAuraAttributeSet::PostGameplayEffectExecute(const FGameplayEffectModCallbackData& Data){ ... ..

    [UE5] RPG 캐릭터 종류 설계, 레벨별 속성값 설정

    [UE5] RPG 캐릭터 종류 설계, 레벨별 속성값 설정

    * 캐릭정보 DA 만들기설계에 맞춰 구현// Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h"#include "Engine/DataAsset.h"#include "CharacterClassInfo.generated.h"class UGameplayEffect;UENUM(BlueprintType) enum class ECharacterClass : uint8 //캐릭구분용{ Elementalist, //0 Warrior, //1 Ranger //2};USTRUCT(BlueprintType)struct FCharacterClassDefaultIn..

    [UE5] 적 체력바 구현

    [UE5] 적 체력바 구현

    1. 적 > 위젯콤포넌트 달기class AURA_API AAuraEnemy : public AAuraCharacterBase, public IEnemyInterface{ GENERATED_BODY()... UPROPERTY(VisibleAnywhere,BlueprintReadOnly) TObjectPtr HealthBar;HealthBar = CreateDefaultSubobject("HealthBar");HealthBar->SetupAttachment(GetRootComponent());   *   * data 연결하기인클루드하고, 변수를 그대로 사용할거임- 위젯컨트롤러에 의존성이 생기면 안좋지않나? 상호의존성이 아니라 ㄱㅊ- 리팩토링 : 해당 델리게이트를 다른 클래스에서 관리하도록 리..