• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

하나의 코루틴 함수를 여러 함수에서 동시에 호출할 경우 질문있습니다.

21.09.06 19:32 작성 조회수 442

0

질문 내용 그대로 하나의 공용 코루틴을 여러 함수에서 사용하려할때 공용 코루틴을 독립적으로 사용하게끔 하는 방법이 있는지 궁금합니다.

예를들어 더블슬래쉬, 차지라는 스킬이 있고 각 함수의 끝에서 쿨타임을 체크해 해당 시간동안 스킬재사용을 막아주는 공용코루틴 함수를 호출한다고 할 때 테스트 결과 각 스킬이 공용코루틴 함수의 데이터를 공유한다는 문제점이 발생했습니다. ->기존 스킬의 쿨타임이 뒤의 스킬의 쿨타임으로 초기화

해결방법으로 생각한게

1. 스킬마다 쿨타임을 계산하는 코루틴 함수를 각각 생성.->매우 비효율적이라 판단, 하지만 확실한 해결방법

2. 쿨타임과 관련된 작업을 공용코루틴으로 만들고 스킬 데이터를 파라미터로 받아 다르게 처리. -> 각 스킬이 이미 사용되고 있는 코루틴에 접근한다는 문제.

2번의 경우 new 키워드 처럼 인스턴스를 만들어 사용하면 될거같은데 제가 못찾는건지 안나오네요.. 아님 제가 설계 자체를 잘못한걸까요?

답변 2

·

답변을 작성해보세요.

1

스킬이 10000개 있는 것도 아니라 1번도 딱히 상관없고,
쿨타임 관리는 마지막 사용 시간을 기록해서 체크하는 고전적인 방법도 있으니
적당히 섞어서 응용하면 됩니다.

0

조재한님의 프로필

조재한

질문자

2021.09.06

1번도 나쁜 방법은 아니었군요. 감사합니다!