분류 전체보기

    프로그래머스 상담원 인원 c++ // 우선순위큐, 중복조합(백트래킹)<img src=">

    프로그래머스 상담원 인원 c++ // 우선순위큐, 중복조합(백트래킹)

    https://school.programmers.co.kr/learn/courses/30/lessons/214288 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 1. 의사코드i) 상담사 분배  경의의수 구현상담유형=5일때, 상담사=20명을 분배해야한다.이때, 최소 상담사는 1명씩 있어야한다. -> 15명을 5개칸에 분배해야한다[ 1 1 1 1 1] [ 0 0 0 0 0] 서로다른5자리에서 중복을포함해 15개를 고르면된다. ex) 첫째자리만 15번고르면 상담사가 [16 1 1 1 1]이 된다.중복조합의 구현은 st를두고, vis체크를 없애면 된다.모든 상담사..

    [UE5] 치명타 구현

    [UE5] 치명타 구현

    - 속성추가 해주시고//BP에노출안할거임, c++안에서만 사용되는 원시구조체struct AuraDamageStatics{ //캡쳐속성 선언 매크로 : 속성포인터가지고있음 DECLARE_ATTRIBUTE_CAPTUREDEF(Armor); DECLARE_ATTRIBUTE_CAPTUREDEF(ArmorPenetration); DECLARE_ATTRIBUTE_CAPTUREDEF(BlockChance); DECLARE_ATTRIBUTE_CAPTUREDEF(CriticalHitChance); DECLARE_ATTRIBUTE_CAPTUREDEF(CriticalHitResistance); DECLARE_ATTRIBUTE_CAPTUREDEF(CriticalHitDamage); ..

    [UE5] 데미지계산 계수 하드코딩 fix

    [UE5] 데미지계산 계수 하드코딩 fix

    - 계수를 커브테이블로 리팩토링 하고자함 - 클래스인포에 CT 변수추가class AURA_API UCharacterClassInfo : public UDataAsset{ ... UPROPERTY(EditDefaultsOnly,Category="Common Class Defaults") TObjectPtr DamageCalculationCoefficients;* CT에 접근방법게임모드 접근후, 게임모드에 있는 클래스정보를 리턴하면됨클래스정보 @Getter를 라이브러리에서 구현UCharacterClassInfo* UAuraAbilitySystemLibrary::GetCharacterClassInfo(const UObject* WorldContextObject){ //게임모드를 얻어오고 ..

    [UE5] 방어력, 방관 구현

    [UE5] 방어력, 방관 구현

    - 방관속성 추가해주시고//BP에노출안할거임, c++안에서만 사용되는 원시구조체struct AuraDamageStatics{ //캡쳐속성 선언 매크로 : 속성포인터가지고있음 DECLARE_ATTRIBUTE_CAPTUREDEF(Armor); DECLARE_ATTRIBUTE_CAPTUREDEF(ArmorPenetration); DECLARE_ATTRIBUTE_CAPTUREDEF(BlockChance); AuraDamageStatics() { DEFINE_ATTRIBUTE_CAPTUREDEF(UAuraAttributeSet, Armor, Target, false); //아머라는 속성을 캡쳐하겠다. from target(적) 스냅샷X DEFINE_AT..

    [UE5] Block Chance 구현

    [UE5] Block Chance 구현

    * 데미지를 얻고, 블록 계산후, 실제속성(데미지)를 변경하고자함void UExecCalc_Damage::Execute_Implementation(const FGameplayEffectCustomExecutionParameters& ExecutionParams, FGameplayEffectCustomExecutionOutput& OutExecutionOutput) const{// Get Damage Set by Caller Magnitudefloat Damage = Spec.GetSetByCallerMagnitude(FAuraGameplayTags::Get().Damage);//Capture Blockchacne on target , 블록인지 결정//블록이면, 데미지 없애기//실제속성변경const FGa..

    [UE5] 실행 계산 개념, 아머속성 계산-변경 구현

    [UE5] 실행 계산 개념, 아머속성 계산-변경 구현

    속성을 캡쳐할수있는 기능임  * 실행계산 구현 - 아바타액터얻기, 스펙 얻어보기UExecCalc_Damage::UExecCalc_Damage(){}void UExecCalc_Damage::Execute_Implementation(const FGameplayEffectCustomExecutionParameters& ExecutionParams, FGameplayEffectCustomExecutionOutput& OutExecutionOutput) const{ const UAbilitySystemComponent* SourceASC= ExecutionParams.GetSourceAbilitySystemComponent(); const UAbilitySystemComponent* TargetA..

    [UE5] 맞은적 머리위에 데미지 뜨도록 구현

    [UE5] 맞은적 머리위에 데미지 뜨도록 구현

    * 애니메이션구현 * 위젯을 뷰포트에 추가만 하면됨 * Text값에 데미지를 연결하기  - 우리는 적이든 캐릭터든 둘다 받는 데미지가 뜨길원함 -> PC 에서 구현 UFUNCTION(Client, Reliable) //클라이언트RPC, 신뢰가능한 void ShowDamageNumber(float DamageAmount, ACharacter* TargetCharacter); UPROPERTY(EditDefaultsOnly) TSubclassOf DamageTextComponentClass;};//대상 캐릭터위에 데미지 띄워주는 함수//RPC함수 : 서버에서 호출가능void AAuraPlayerController::ShowDamageNumber_Implementation(float DamageAmount,..