본문 바로가기

유니티/스크립트

유니티 특정 시간동안 조건을 유지할 경우

반응형

특정 시간동안 조건을 유지할 경우

특정 시간동안 값이 변하지 않을 경우

원하는 함수를 실행하게 하는 코드를 작성해보았다.

이번에도 Rx프로그래밍인 UniRx를 기반으로 제작해보았다.

각 함수들에 대한 자세한 설명은 글 하단 참조하기!

예제

-'조건'이 'false에서 true'가 되고 '2'초 후 계속 'true'일 경우 '함수'를 실행

'조건' -> Select

'false에서 true' -> DistinctUntilChanged

'2' -> Throttle // Delay 쓰면 안됨!!!

'true' -> Where

함수 -> 'Subscribe'

 


        // User Detect Stream
        this.UpdateAsObservable()
            .Select(_ => 조건)
            .DistinctUntilChanged()
            .Throttle(TimeSpan.FromSeconds(2))
            .Where(_ => 조건)
            .Subscribe(_ => StartCoroutine(함수()));

 

 

 

 

 

 

참고

 

 

[C#] LINQ 프로젝션 작업, 표준 쿼리 연산자

표준 쿼리 연산자는 LINQ 패턴을 형성하는 메서드입니다. 프로젝션 작업은 이후에 사용할 속성으로만 구성된 새 양식으로 개체를 변환하는 작업을 가리킵니다. ​ 예를 들어 문자열의 배열로 이

doobudubu.tistory.com

 

[C#] LINQ 데이터 필터링, 표준 쿼리 연산자

표준 쿼리 연산자는 LINQ 패턴을 형성하는 메서드입니다. 이를 잘 활용하기 위해 하나하나 정리해보도록 하겠습니다. 순서는 내맘대로. 가장 쉬워보이는거 먼저 정리하겠습니다. 오늘은 데이터

doobudubu.tistory.com

 

반응형