inflearn logo
강의

Course

Instructor

[Unity Level Up!] Modularly Developing Skill System

하나의 스킬 내에서 타겟, 이펙트가 여러번 바뀌게 하는 방법이 궁금합니다.

Resolved

189

zopa21616148

1 asked

0

예를 들어 적 엔티티를 클릭하여 타겟으로 삼고 공격을 한 후, 다시 타겟 검색을 해서 주변의 아군을 치유하는 스킬이 있습니다.(또는 그냥 자기 자신을 치유)

이럴땐, 처음 타겟서칭때 SelectEntity방식으로 적을 찾는데, 이후 이어지는 발동 상황에서는 주변의 적을

positionSearch 방식으로 찾아야 해서 타겟 서칭 방법이 바뀌고, 또 적용해야하는 이펙트 또한 바뀌게 됩니다.

어떻게 보면 두 종류 이상의 스킬을 같이 사용하는 형태 같습니다.

 

precedingAction을 통해 구현하는건, 발동되는 효과가 3가지 이상일 경우도 있으므로 적절하지 않은 것 같습니다.

 

새로운 스테이트 머신을 만들어서 타겟서칭과 이펙트를 반복하게 만들 수도 있을것 같은데

제가 구현하고자 하는 방향이 턴제 형식이라서 굳이 스킬 스테이트 머신을 사용하지 않으려고 합니다.

 

제가 생각해본 방법은 effect 자체에 타겟서칭을 추가해서 순차적으로 이펙트를 실행함에 따라 매번 타겟 서칭을 새롭게 하는 방법이나,

skillData를 2차원 배열로 만들어서 각 레벨별로 각기 다른 효과와 이펙트를

저장하고, skillData를 순차적으로 실행하는 방법 정도입니다.

 

이러한 구조를 어떻게 구현하면 좋을지 질문하고 싶습니다.

unity modules

Answer 1

0

Developer G

수강해주셔서 감사합니다.

비슷한 질문이 있었던지라 같은 답변을 드리겠습니다.
방법은 크게 두 가지가 있습니다.

1. ApplyCount를 확장

b843de6c-2ff8-4762-971c-ac953733a922.png.webp


이게 강의에서 만든 단일 설정의 Skill이구요,

 

1dca43df-5250-4587-893b-ca0d46921547.png.webp


이런 식으로 Action과 관련된 설정을 묶어서(구조체나 Class 배열) 현재 ApplyCount에 해당하는 설정을 가져와서 사용해주면 됩니다. ApplyCount가 많을 시에는 Level처럼 새로운 ApplyCount 설정이 있을 때까지 이전 ApplyCount 설정을 사용하는 형태로 만들어주시면 됩니다. 이미지에는 없지만 Action도 추가해주시면 ApplyCount에 따라서 완전히 다른 형태로 발동되는 Skill을 구현할 수 있습니다.

2. Skill들을 따로 만들어서 연결
Skill들을 따로 만들어서 변수로 연결시켜두고 Skill을 사용할 때마다 현재 Skill이 연결된 다음 Skill로 교체되게 만드는 방법이 있습니다.(지속 시간 안에 사용하지 않거나, 더 이상 연결된 스킬이 없다면 초기 Skill로 복귀)

단순히 Skill을 연이어 사용하고 싶다면 1번을, 아예 Casting이나 Charge, PrecedingAction도 새롭게 하고 싶다면 2번을 방식을 활용하면 되겠습니다.

감사합니다.

Indicator와 SelectionAction 및 SearchAction 간의 관계에 대해 질문있습니다.

0

70

2

ChargingState에서 질문이 있습니다.

0

49

1

Effect.GetData 함수 질문있습니다.

0

45

2

CanTransitionToSelf 질문 있습니다.

0

53

2

Stat의 MaxValue에 관하여 질문이 있습니다.

0

42

1

Stat vs StatScaleFloat

0

75

4

애니매이션 버그가 있는것 같습니다.

0

65

2

StatsOverride질문이 있습니다.

0

50

2

SetBonusValue함수 질문있습니다.

0

46

2

오늘 수강시작한 취준생입니다.

0

49

1

사소하지만 에디터 관련 질문있습니다

0

69

1

스킬시스템을 데이터 테이블화 하는 법에 대해 감이안잡혀서 질문드립니다.

0

143

2

TargetSearcher에 대해서 질문이 있습니다

0

52

1

돌진해서 몸박을하면 피격자를 날리면서 데미지를 입히는 스킬은 이 시스템에서 어떻게 만들 수 있을까요??

0

116

2

스킬 관련 질문입니다

0

110

2

통일된 Stat을 사용하지 않고 모듈화 방식으로 Stats를 만드신 이유가 궁금합니다.

0

152

1

Effect에 기능 확장에 대해서 질문이 있습니다.

0

149

2

SkillData 구조체 질문

0

122

1

스킬트리 저장 질문입니다

0

135

2

BT와 FSM을 활용해 몬스터 AI 구현

0

349

2

MonoStateMachine을 만든 이유가 잘 이해가 가지 않습니다.

0

128

1

근접 콤보 공격을 만들고 싶습니다.

0

153

1

올해에 예정된 새로운 강의가 있으신지요?

0

114

2

스킬트리 질문입니다

0

152

3