[decompiler] detect seek! and seekl! macros (#1317)

* detect `seek!` and `seekl!`

* fancy struct instead of pair mess

* fixes

* i think this was wrong?

* update refs

* update source

* More logical branching

* even better branching
This commit is contained in:
ManDude
2022-04-18 20:01:44 +01:00
committed by GitHub
parent cbc6987351
commit 66e395d547
109 changed files with 952 additions and 1398 deletions
+1 -3
View File
@@ -622,9 +622,7 @@
)
(set! f0-8 (* 0.75 f0-8))
)
(set! (-> self control unknown-float141)
(seek (-> self control unknown-float141) f0-8 (* 100.0 (-> *display* seconds-per-frame)))
)
(seek! (-> self control unknown-float141) f0-8 (* 100.0 (-> *display* seconds-per-frame)))
)
(let ((f30-0 (-> self control unknown-float141))
(f0-13 (lerp-scale -0.3 0.3 (-> self control unknown-float01) 0.0 81920.0))
+3 -3
View File
@@ -695,14 +695,14 @@
(dummy-28 self)
((-> self update-velocity) self)
(when (logtest? (-> self options) 2)
(set! (-> self tween) (seek (-> self tween) 1.0 (* 0.5 (-> *display* seconds-per-frame))))
(seek! (-> self tween) 1.0 (* 0.5 (-> *display* seconds-per-frame)))
(let ((f0-6 (vector-vector-distance (-> self root-override trans) (-> self target))))
(cond
((< f0-6 20480.0)
(set! (-> self tween) (seek (-> self tween) 1.0 (* 3.0 (-> *display* seconds-per-frame))))
(seek! (-> self tween) 1.0 (* 3.0 (-> *display* seconds-per-frame)))
)
((< f0-6 40960.0)
(set! (-> self tween) (seek (-> self tween) 1.0 (-> *display* seconds-per-frame)))
(seek! (-> self tween) 1.0 (-> *display* seconds-per-frame))
)
)
)
+2 -2
View File
@@ -87,8 +87,8 @@
)
)
(if (< 0.0 f0-8)
(set! (-> self twist) (seek (-> self twist) -0.4 (* 0.3 (-> *display* seconds-per-frame))))
(set! (-> self twist) (seek (-> self twist) 0.4 (* 0.3 (-> *display* seconds-per-frame))))
(seek! (-> self twist) -0.4 (* 0.3 (-> *display* seconds-per-frame)))
(seek! (-> self twist) 0.4 (* 0.3 (-> *display* seconds-per-frame)))
)
)
(let ((a1-9 (new 'stack-no-clear 'event-message-block)))