u3d:強大的dotween。使用dotween處理延時問題,最最最最簡單的辦法

dotween僅僅只有300kb左右,可是能實現不少功能簡單可是處理起來麻煩的問題函數

第一:延時n秒執行一個事件oop

     方法一:使用 Invoke(「方法名」,n秒);spa

                這樣寫要定義方法,一個最簡單的須要4 5行code

    方法二:使用協程,要另起名,寫方法,一樣沒有個5 6 7 8行寫不下來協程

    方法三,用dotween,dotween函數中提供了一個方法dotween.to函數,具體執行,以下blog

float timeCount; void Start () { DOTween.To(() => timeCount, a => timeCount = a, 1, 3).OnComplete(() => print("執行")); }

在原來的基礎上只是增長了兩行代碼,代碼簡單清晰,明瞭,最多把括號裏的「3」改爲定時變量,1能夠隨便給個值事件

第二:每隔n秒執行一下事件class

      這樣,第一想到的確定是start()裏面放while,update()裏面放定時器或者其餘複雜的東西基礎

    一樣,用dotween.to函數變量

Tween t = DOTween.To(() => timeCount, a => timeCount = a, 1, 3).OnStepComplete(() => print("執行")).SetLoops(-1); // t.Kill();

接上面,主要有兩個變換,將延時執行變成循環延時執行 SetLoops(-1)

將OnComplete換成OnStepComplete()這樣就能夠每3秒執行一次事件了,若是不用循環執行了直接如上屏蔽的代碼  t.kill()便可終止循環。

相關文章
相關標籤/搜索