DevCamp 회고 - 6

이준호·2024년 4월 10일
0
post-custom-banner

📌 DevCamp 회고



📌 Colleague Animal Pet

➔ AnimalPet Behavior Tree Apply

  • 동물 펫한테 행동트리 로직 적용

  • 일정 범위 이상 플레이어한테 떨어지면 플레이어를 한번 찍고 다시 적을 탐색.

  • 적이 비활성화(사망) 되면 새로운 적을 탐색함.

  • 늑대, 거북, 유니콘 스프라이트 멀티풀 작업






➔ Sprite Flip & Animal Add

  • 이동 방향에 따라 스프라이트 반전 추가.

  • 유니콘, 거북이, 늑대 동물펫 추가.

  • 공격 애니메이션 변경.

  • Main Scene에 임시 테스트용 펫 스포너 생성.

버그 수정

  • 계속 똑같은 적 오브젝트를 추적하는 버그 수정
  • Attack 노드중 타겟이 할당되어 있으면 계속 공격을 하는데, 적을 타겟팅하는 로직으로 넘어갈 때, 비활성화 되어 있어도 공격을 하다가 다시 또 활성화 되면 그쪽으로 따라가서 생긴 문제. 공격중에 타겟이 비활성화가 되면 노드를 탈출하게 하여 문제 해결.





➔ AnimalPet AttackEffect

  • 동물펫 공격 이펙트 6종 멀티풀 작업.

  • 동물펫 공격 이펙트 추가.

    • 공격시 공격 이펙트 활성화
    • 이동 방향에 따라 스프라이트 반전
  • DamageUI Prefab -> UI Damage(Script) Component , Base Scale 0.18 => 0.07

  • 데미지 적용 추가.

    • 타겟팅된 몬스터의 BaseData 를 가져와서 AnimalPetData 의 monsterData에 할당. -> monsterData의 SubstractHP 메서드 호출 (파라미터 값으로 타겟과 나 사이의 방향, 적용 데미지, 넉백)

    • 현재 공격을 시작하면 데미지를 적용하게 했음. (애니메이션이 1번당 1번 공격, bool 변수 attackIntervalControl 로 조정)

      • 추 후에 애니메이션 시간을 기반으로 데미지를 적용해도 좋을듯
  • 타겟 몬스터 사망시 더 빠른 다음 몬스터 서치

    • 타겟이 비활성화 될 때가 아닌, 타겟이 죽었을 때, 타겟의 BaseData의 IsDead 프로퍼티에 접근하여 사망상태 확인
  • 동물펫 공격 이펙트 딜레이 설정.

    • ‘isAttack’ 이라는 bool 변수를 만들고, MaxRangeCheck 노드 다음으로 Wait 노드를 넣어서 ‘isAttack’ 이 true라면 다음 노드 진행 아니라면 n초간 대기후 다음노드 진행(대기후 넘어갈 때, isAttack = true처리) 그리고 공격을 하는 시점에 ‘isAttack’을 false로 해준다.
    • 공격 이펙트 또한 공격이 실행될 때에 한번만 실행되어야 하기 때문에, 공격쪽 애니메이션을 Trigger로 변경하여 발동하여 실행하는 방식으로 변경. 움직임 애니메이션으로 전환될 때에는 예외처리를 위해 SetTrigger 실행.
    • 동물펫 공격 이펙트 오브젝트에 “AnimalPetAttackEffect” 라는 스크립트를 컴퍼넌트로 부착. 이 스크립트는 OnEnable 시에 공격 이펙트의 애니메이터에 공격 트리거를 발동시킴.
    • 동물펫 공격 이펙트는 ‘Idle’, ‘AttackEffect’ 애니메이션으로 이루어져있으며 ‘Idle’ 애니메이션 상태는 투명하게 처리하여 공격을 할 때에만 트리거 발동후 ‘AttackEffect’ 로 넘어가 보여준후 Exit -> Idle 로 다시 돌아온다.





➔ Monster Hit Effect By AnimalPet

  • 펫 크기 1.3배 증가

  • 몬스터 펫한테 맞는 피격 이펙트 추가. (플레이어가 때리는 피격이랑 다름)

    • 기존 몬스터들의 피격 방식 이용. SpriteController.cs 기준으로 수정.
      • 이벤트, 변수들 펫에게 필요한 것에 맞게 생성 및 수정하여 연결.
    • 방향에 따라 펫 공격 피격 이펙트 회전(Flip X)

📌 Next Plan

➔ Forge System

  • 인벤토리 필요.

  • 등급 / 레벨 / 종류

  • 펫의 공격력

  • 펫 보유 능력치

  • 선택 -> 선택 아이템 인벤토리 -> 인벤토리에서 자동장착

  • 능력치 10개

  • 체력, 공격력, 방어력 (받는 데미지 감소)- 기본 베이스

  • 이 외 7가지는 추가 능력치

  • 낮은 등급에서는 기본 베이스 위주

  • 등급이 높아질수록 좋은 추가 능력치 부여

  • 능력치 합산 전투력 하단 배치 (높은것을 선택할 수 있게)

  • 펫 4개 슬록 각 등급별 부여

  • 악세서리 2칸

  • 총 6칸

  • 펫 슬록 처음에는 1칸만 오픈 추 후 렙업 or 스테이지 오픈가능

  • 영혼구 -> 레벨업 or 던전 or 보스 or 오프라인 보상

  • 영혼구 레벨업 -> 뽑기 확률 및 펫/악세서리 레벨 증가

  • 펫 / 악세서리 데이터를 SO or CSV 관리 -> 파싱필요.

profile
No Easy Day
post-custom-banner

0개의 댓글