[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
+3 -9
View File
@@ -1459,9 +1459,7 @@ nav-enemy-default-event-handler
(if (and (not gp-0) (= (-> self tongue-control forward-scale-control) f30-0))
(go kermit-retract-tongue)
)
(set! (-> self tongue-control forward-scale-control)
(seek (-> self tongue-control forward-scale-control) f30-0 0.25)
)
(seek! (-> self tongue-control forward-scale-control) f30-0 0.25)
)
(suspend)
(let ((a0-5 (-> self skel root-channel 0)))
@@ -1536,9 +1534,7 @@ nav-enemy-default-event-handler
)
(go kermit-retract-tongue)
)
(set! (-> self tongue-pulse-pos)
(seek (-> self tongue-pulse-pos) 1.0 (* 0.3 (-> *display* seconds-per-frame)))
)
(seek! (-> self tongue-pulse-pos) 1.0 (* 0.3 (-> *display* seconds-per-frame)))
(when (and (-> self child-override) (let ((v1-9 (-> self child-override)))
(= (-> (if v1-9
(-> v1-9 0 self-override)
@@ -1651,9 +1647,7 @@ nav-enemy-default-event-handler
)
(until (ja-done? 0)
(if (>= (ja-aframe-num 0) 3.0)
(set! (-> self tongue-control forward-scale-control)
(seek (-> self tongue-control forward-scale-control) 0.0 0.125)
)
(seek! (-> self tongue-control forward-scale-control) 0.0 0.125)
)
(suspend)
(let ((a0-4 (-> self skel root-channel 0)))
+6 -9
View File
@@ -183,16 +183,13 @@ swamp-bat-slave-event-handler
(TODO-RENAME-12 s2-0 gp-0 f30-0)
(vector-cross! s4-0 gp-0 s3-0)
(vector-normalize! s4-0 1.0)
(let ((f0-4
(fmax
(fmin (- (vector-dot (target-pos 0) s4-0) (vector-dot s5-0 s4-0)) (-> self strafe-envelope))
(- (-> self strafe-envelope))
)
)
(let ((f0-4 (fmax
(fmin (- (vector-dot (target-pos 0) s4-0) (vector-dot s5-0 s4-0)) (-> self strafe-envelope))
(- (-> self strafe-envelope))
)
)
)
(set! (-> self strafe-distance)
(seek (-> self strafe-distance) f0-4 (* 20480.0 (-> *display* seconds-per-frame)))
)
(seek! (-> self strafe-distance) f0-4 (* 20480.0 (-> *display* seconds-per-frame)))
)
(vector-float*! s4-0 s4-0 (-> self strafe-distance))
(vector+! (-> self root-override trans) s5-0 s4-0)
+2 -6
View File
@@ -988,18 +988,14 @@
)
)
(let ((f30-1 -2048.0))
(set! (-> self float-height-offset)
(seek (-> self float-height-offset) f30-1 (* 2048.0 (-> *display* seconds-per-frame)))
)
(seek! (-> self float-height-offset) f30-1 (* 2048.0 (-> *display* seconds-per-frame)))
(if (= (-> self float-height-offset) f30-1)
(go-virtual rigid-body-platform-idle)
)
)
)
(else
(set! (-> self float-height-offset)
(seek (-> self float-height-offset) 4096.0 (* 2048.0 (-> *display* seconds-per-frame)))
)
(seek! (-> self float-height-offset) 4096.0 (* 2048.0 (-> *display* seconds-per-frame)))
)
)
(none)