address _almost_ all feedback

This commit is contained in:
Tyler Wilding
2021-08-14 12:45:25 -04:00
parent 9f36419e37
commit b3dc755f06
14 changed files with 209 additions and 338 deletions
+1 -1
View File
@@ -135,7 +135,7 @@ std::string TextDb::get_info_for(const Object& o, bool* terminate_compiler_error
*/
std::string TextDb::get_info_for(const std::shared_ptr<SourceText>& frag, int offset) const {
std::string result = "text from " + frag->get_description() +
", line: " + std::to_string(frag->get_line_idx(offset)) + "\n";
", line: " + std::to_string(frag->get_line_idx(offset) + 1) + "\n";
result += frag->get_line_containing_offset(offset) + "\n";
return result;
}
+25 -25
View File
@@ -9710,7 +9710,7 @@
:flag-assert #xc00000028
(:methods
(new (symbol type process pickup-type float) _type_ 0)
(dummy-9 () uint 9) ;; See nav-enemy::process-drawable-death-event-handler
(TODO-RENAME-9 (_type_ symbol process-tree fact-info int) uint 9) ;; See nav-enemy::process-drawable-death-event-handler
(reset! (_type_ symbol) none 10)
(dummy-11 (_type_) float 11)
)
@@ -10856,7 +10856,7 @@
(dummy-30 () none 30)
(dummy-31 () none 31)
(dummy-32 () none 32)
(dummy-33 () none 33)
(dummy-33 (_type_ vector uint) none 33)
(dummy-34 () none 34)
(dummy-35 (_type_) none 35)
(dummy-36 () none 36)
@@ -10877,7 +10877,7 @@
(dummy-51 () none 51)
(dummy-52 () none 52)
(dummy-53 () none 53)
(dummy-54 () none 54)
(dummy-54 (_type_ int int) none 54)
(dummy-55 () none 55)
)
)
@@ -10914,12 +10914,12 @@
:flag-assert #x41000001bc
(:methods
(dummy-56 () none 56)
(dummy-57 () none 57)
(dummy-58 () none 58)
(dummy-59 () none 59)
(dummy-60 () none 60)
(dummy-57 (_type_ vector) none 57)
(dummy-58 (_type_ vector) none 58)
(dummy-59 (_type_ vector uint float symbol symbol symbol) none 59)
(dummy-60 (_type_ float float symbol uint) none 60)
(dummy-61 () none 61)
(dummy-62 () none 62)
(dummy-62 (_type_ vector float) vector 62)
(dummy-63 () none 63)
(dummy-64 () none 64)
)
@@ -14412,7 +14412,7 @@
(new (symbol type collide-shape int float) _type_)
(dummy-9 () none 9)
(point-in-bounds? (_type_ vector) symbol 10)
(dummy-11 () none 11)
(dummy-11 (_type_ vector) none 11)
(dummy-12 () none 12)
(dummy-13 () none 13)
(dummy-14 () none 14)
@@ -14420,16 +14420,16 @@
(dummy-16 (_type_ vector) symbol 16) ; see - nav-enemy-test-point-in-nav-mesh?
(dummy-17 () none 17)
(dummy-18 () none 18)
(dummy-19 () none 19)
(dummy-19 (_type_ vector collide-shape-moving vector float) none 19)
(dummy-20 () none 20)
(dummy-21 () none 21)
(dummy-22 () none 22)
(dummy-23 () none 23)
(dummy-24 () none 24)
(dummy-24 (_type_ float symbol) none 24)
(dummy-25 (_type_ vector float) symbol 25) ; see - nav-enemy-test-point-near-nav-mesh?
(dummy-26 () none 26)
(dummy-26 (_type_) none 26)
(dummy-27 () none 27)
(dummy-28 () none 28)
(dummy-28 (_type_ int) none 28)
(should-display? (_type_) symbol 29)
(dummy-30 () none 30)
(dummy-31 () none 31)
@@ -21986,18 +21986,18 @@
(shadow-max-y meters :offset-assert 168)
(shadow-min-y meters :offset-assert 172)
(shadow-locus-dist meters :offset-assert 176)
(use-align basic :offset-assert 180)
(draw-shadow basic :offset-assert 184)
(move-to-ground basic :offset-assert 188)
(hover-if-no-ground basic :offset-assert 192)
(use-momentum basic :offset-assert 196)
(use-flee basic :offset-assert 200)
(use-proximity-notice basic :offset-assert 204)
(use-jump-blocked basic :offset-assert 208)
(use-jump-patrol basic :offset-assert 212)
(use-align symbol :offset-assert 180)
(draw-shadow symbol :offset-assert 184)
(move-to-ground symbol :offset-assert 188)
(hover-if-no-ground symbol :offset-assert 192)
(use-momentum symbol :offset-assert 196)
(use-flee symbol :offset-assert 200)
(use-proximity-notice symbol :offset-assert 204)
(use-jump-blocked symbol :offset-assert 208)
(use-jump-patrol symbol :offset-assert 212)
(gnd-collide-with uint64 :offset-assert 216)
(debug-draw-neck basic :offset-assert 224)
(debug-draw-jump basic :offset-assert 228)
(debug-draw-neck symbol :offset-assert 224)
(debug-draw-jump symbol :offset-assert 228)
)
:method-count-assert 9
:size-assert #xe8
@@ -22118,7 +22118,7 @@
(define-extern nav-enemy-execute-custom-jump (function int float float none :behavior nav-enemy))
(define-extern nav-enemy-initialize-custom-jump (function vector symbol float float float none :behavior nav-enemy))
(define-extern nav-enemy-simple-post (function none :behavior nav-enemy)) ;; TODO not confirmed
(define-extern nav-enemy-fall-and-play-death-anim (function art-joint-anim int float none :behavior nav-enemy)) ;; second arg is whatever is passed to align-control::11
(define-extern nav-enemy-fall-and-play-death-anim (function art-joint-anim float float float int none :behavior nav-enemy)) ;; second arg is whatever is passed to align-control::11
(define-extern nav-enemy-neck-control-inactive (function none :behavior nav-enemy))
(define-extern nav-enemy-frustrated? (function symbol :behavior nav-enemy))
(define-extern nav-enemy-player-at-frustration-point? (function symbol :behavior nav-enemy))
@@ -3,7 +3,7 @@
// if you want to filter to only some object names.
// it will make the decompiler much faster.
"allowed_objects": [],
"allowed_objects": ["nav-enemy"],
////////////////////////////
// CODE ANALYSIS OPTIONS
@@ -1990,21 +1990,8 @@
"(method 27 sunken-elevator)": [
[37, "v1", "art-joint-anim"]
],
"(method 42 nav-enemy)": [
[[5, 9], "t9", "(function object object)"]
],
"nav-enemy-test-point-near-nav-mesh?": [
[[0, 999], "s6", "nav-enemy"]
],
"nav-enemy-get-new-patrol-point": [
[[0, 999], "s6", "nav-enemy"]
],
"nav-enemy-set-base-collide-sphere-collide-with": [
[[0, 999], "s6", "nav-enemy"],
[19, "v1", "collide-shape-prim-group"],
[23, "s2", "collide-shape-prim"],
[32, "v1", "collide-shape-prim-sphere"],
+7 -7
View File
@@ -253,7 +253,7 @@
(dummy-30 () none 30)
(dummy-31 () none 31)
(dummy-32 () none 32)
(dummy-33 () none 33)
(dummy-33 (_type_ vector uint) none 33)
(dummy-34 () none 34)
(dummy-35 (_type_) none 35)
(dummy-36 () none 36)
@@ -274,7 +274,7 @@
(dummy-51 () none 51)
(dummy-52 () none 52)
(dummy-53 () none 53)
(dummy-54 () none 54)
(dummy-54 (_type_ int int) none 54)
(dummy-55 () none 55)
)
)
@@ -312,12 +312,12 @@
:flag-assert #x41000001bc
(:methods
(dummy-56 () none 56)
(dummy-57 () none 57)
(dummy-58 () none 58)
(dummy-59 () none 59)
(dummy-60 () none 60)
(dummy-57 (_type_ vector) none 57)
(dummy-58 (_type_ vector) none 58)
(dummy-59 (_type_ vector uint float symbol symbol symbol) none 59)
(dummy-60 (_type_ float float symbol uint) none 60)
(dummy-61 () none 61)
(dummy-62 () none 62)
(dummy-62 (_type_ vector float) vector 62)
(dummy-63 () none 63)
(dummy-64 () none 64)
)
+1 -1
View File
@@ -82,7 +82,7 @@
:flag-assert #xc00000028
(:methods
(new (symbol type process pickup-type float) _type_ 0)
(dummy-9 () uint 9) ;; See nav-enemy::process-drawable-death-event-handler
(TODO-RENAME-9 (_type_ symbol process-tree fact-info int) uint 9) ;; See nav-enemy::process-drawable-death-event-handler
(reset! (_type_ symbol) none 10)
(dummy-11 (_type_) float 11)
)
+5 -5
View File
@@ -238,7 +238,7 @@
(new (symbol type collide-shape int float) _type_)
(dummy-9 () none 9)
(point-in-bounds? (_type_ vector) symbol 10)
(dummy-11 () none 11)
(dummy-11 (_type_ vector) none 11)
(dummy-12 () none 12)
(dummy-13 () none 13)
(dummy-14 () none 14)
@@ -246,16 +246,16 @@
(dummy-16 (_type_ vector) symbol 16) ; see - nav-enemy-test-point-in-nav-mesh?
(dummy-17 () none 17)
(dummy-18 () none 18)
(dummy-19 () none 19)
(dummy-19 (_type_ vector collide-shape-moving vector float) none 19)
(dummy-20 () none 20)
(dummy-21 () none 21)
(dummy-22 () none 22)
(dummy-23 () none 23)
(dummy-24 () none 24)
(dummy-24 (_type_ float symbol) none 24)
(dummy-25 (_type_ vector float) symbol 25) ; see - nav-enemy-test-point-near-nav-mesh?
(dummy-26 () none 26)
(dummy-26 (_type_) none 26)
(dummy-27 () none 27)
(dummy-28 () none 28)
(dummy-28 (_type_ int) none 28)
(should-display? (_type_) symbol 29)
(dummy-30 () none 30)
(dummy-31 () none 31)
+11 -11
View File
@@ -45,18 +45,18 @@
(shadow-max-y meters :offset-assert 168)
(shadow-min-y meters :offset-assert 172)
(shadow-locus-dist meters :offset-assert 176)
(use-align basic :offset-assert 180)
(draw-shadow basic :offset-assert 184)
(move-to-ground basic :offset-assert 188)
(hover-if-no-ground basic :offset-assert 192)
(use-momentum basic :offset-assert 196)
(use-flee basic :offset-assert 200)
(use-proximity-notice basic :offset-assert 204)
(use-jump-blocked basic :offset-assert 208)
(use-jump-patrol basic :offset-assert 212)
(use-align symbol :offset-assert 180)
(draw-shadow symbol :offset-assert 184)
(move-to-ground symbol :offset-assert 188)
(hover-if-no-ground symbol :offset-assert 192)
(use-momentum symbol :offset-assert 196)
(use-flee symbol :offset-assert 200)
(use-proximity-notice symbol :offset-assert 204)
(use-jump-blocked symbol :offset-assert 208)
(use-jump-patrol symbol :offset-assert 212)
(gnd-collide-with uint64 :offset-assert 216)
(debug-draw-neck basic :offset-assert 224)
(debug-draw-jump basic :offset-assert 228)
(debug-draw-neck symbol :offset-assert 224)
(debug-draw-jump symbol :offset-assert 228)
)
:method-count-assert 9
:size-assert #xe8
+67 -125
View File
@@ -82,32 +82,25 @@
;; definition for method 42 of type nav-enemy
(defmethod TODO-RENAME-42 nav-enemy ((obj nav-enemy))
(local-vars (v1-11 symbol))
(with-pp
(when (<= (-> obj path curve num-cverts) 0)
(let ((t9-0 (the-as (function object object) enter-state))
(a0-1 "no path")
)
(set! (-> pp next-state) process-drawable-art-error)
(t9-0 a0-1)
)
)
(let ((s5-0 3))
0
(let ((s4-0 (-> obj nav destination-pos)))
(until (or v1-11 (<= s5-0 0))
(let ((v1-8 (nav-enemy-rnd-int-count (-> obj path curve num-cverts))))
(eval-path-curve-div! (-> obj path) s4-0 (the float v1-8) 'interp)
)
(+! s5-0 -1)
(set!
v1-11
(< 4096.0 (vector-vector-xz-distance s4-0 (-> obj collide-info trans)))
)
(if (<= (-> obj path curve num-cverts) 0)
(go process-drawable-art-error "no path")
)
(let ((s5-0 3))
0
(let ((s4-0 (-> obj nav destination-pos)))
(until (or v1-11 (<= s5-0 0))
(let ((v1-8 (nav-enemy-rnd-int-count (-> obj path curve num-cverts))))
(eval-path-curve-div! (-> obj path) s4-0 (the float v1-8) 'interp)
)
(+! s5-0 -1)
(set!
v1-11
(< 4096.0 (vector-vector-xz-distance s4-0 (-> obj collide-info trans)))
)
)
)
0
)
0
)
;; definition for method 39 of type nav-enemy
@@ -127,11 +120,7 @@
)
)
)
(let ((t9-0 (method-of-object (-> obj collide-info) dummy-54)))
2
1
(t9-0)
)
(dummy-54 (-> obj collide-info) 2 1)
(set! (-> obj nav-enemy-flags) (logand -257 (-> obj nav-enemy-flags)))
)
((method-of-object (-> obj draw shadow-ctrl) dummy-14))
@@ -281,11 +270,7 @@
(set! (-> v1-0 param 1) (the-as uint a1-1))
)
(when (send-event-function arg0 v1-0)
(let ((t9-1 (method-of-object (-> self collide-info) dummy-54)))
2
0
(t9-1)
)
(dummy-54 (-> self collide-info) 2 0)
(logior! (-> self nav-enemy-flags) 256)
#t
)
@@ -399,13 +384,7 @@
((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block))
(case arg2
(('death-start)
(let ((t9-0 (method-of-object (-> self fact) dummy-9)))
#t
*entity-pool*
(-> self fact)
0
(t9-0)
)
(TODO-RENAME-9 (-> self fact) #t *entity-pool* (-> self fact) 0)
)
(('death-end)
(let ((v0-0 (logior (-> self draw status) 2)))
@@ -438,10 +417,7 @@ nav-enemy-default-event-handler
;; definition for method 40 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod dummy-40 nav-enemy ((obj nav-enemy))
(let ((t9-0 (method-of-object (-> obj nav) dummy-11)))
(-> obj nav target-pos)
(t9-0)
)
(dummy-11 (-> obj nav) (-> obj nav target-pos))
0
(none)
)
@@ -502,14 +478,10 @@ nav-enemy-default-event-handler
)
)
)
(when (-> obj nav-info move-to-ground)
(let ((s5-0 vector-v++!)
(s4-0 (-> obj collide-info transv))
(t9-3 (method-of-object (-> obj collide-info) dummy-62))
)
(set! (-> (new 'stack-no-clear 'vector) quad) (the-as uint128 0))
0.0
(s5-0 s4-0 (the-as vector (t9-3)))
(if (-> obj nav-info move-to-ground)
(vector-v++!
(-> obj collide-info transv)
(dummy-62 (-> obj collide-info) (new-stack-vector0) 0.0)
)
)
0
@@ -546,23 +518,17 @@ nav-enemy-default-event-handler
;; definition for method 38 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod TODO-RENAME-38 nav-enemy ((obj nav-enemy))
(cond
((-> obj nav-info move-to-ground)
(let ((t9-0 (method-of-object (-> obj collide-info) dummy-59)))
(-> obj collide-info transv)
(-> obj nav-info gnd-collide-with)
8192.0
(-> obj nav-info hover-if-no-ground)
(nonzero? (logand (-> obj nav-enemy-flags) #x8000))
(t9-0)
)
)
(else
(let ((t9-1 (method-of-object (-> obj collide-info) dummy-58)))
(-> obj collide-info transv)
(t9-1)
)
(if (-> obj nav-info move-to-ground)
(dummy-59
(-> obj collide-info)
(-> obj collide-info transv)
(-> obj nav-info gnd-collide-with)
8192.0
#f
(-> obj nav-info hover-if-no-ground)
(nonzero? (logand (-> obj nav-enemy-flags) #x8000))
)
(dummy-58 (-> obj collide-info) (-> obj collide-info transv))
)
0
(none)
@@ -611,12 +577,12 @@ nav-enemy-default-event-handler
(logior! (-> self nav flags) (nav-control-flags bit10))
(nav-enemy-get-new-patrol-point)
)
(let ((t9-1 (method-of-object (-> self nav) dummy-19)))
(dummy-19
(-> self nav)
(-> self nav target-pos)
(-> self collide-info)
(-> self nav destination-pos)
(-> self rotate-speed)
(t9-1)
)
(if (logtest? #x200000 (-> self nav flags))
(logclear! (-> self nav flags) (nav-control-flags bit10))
@@ -659,10 +625,7 @@ nav-enemy-default-event-handler
(set! (-> self nav travel quad) (-> gp-1 quad))
)
(vector-normalize! (-> self nav travel) 409600.0)
(let ((t9-3 (method-of-object (-> self nav) dummy-24)))
204.8
(t9-3)
)
(dummy-24 (-> self nav) 204.8 #f)
(vector+!
(-> self nav target-pos)
(-> self collide-info trans)
@@ -693,18 +656,14 @@ nav-enemy-default-event-handler
;; INFO: Return type mismatch int vs none.
;; Used lq/sq
(defbehavior nav-enemy-falling-post nav-enemy ()
(let ((gp-0 vector-v++!)
(s5-0 (-> self collide-info transv))
(t9-0 (method-of-object (-> self collide-info) dummy-62))
)
(set! (-> (new 'stack-no-clear 'vector) quad) (the-as uint128 0))
0.0
(gp-0 s5-0 (the-as vector (t9-0)))
(vector-v++!
(-> self collide-info transv)
(dummy-62 (-> self collide-info) (new-stack-vector0) 0.0)
)
(let ((t9-2 (method-of-object (-> self collide-info) dummy-33)))
(dummy-33
(-> self collide-info)
(-> self collide-info transv)
(-> self collide-info root-prim collide-with)
(t9-2)
)
(nav-enemy-common-post)
0
@@ -715,18 +674,11 @@ nav-enemy-default-event-handler
;; INFO: Return type mismatch int vs none.
;; Used lq/sq
(defbehavior nav-enemy-death-post nav-enemy ()
(let ((gp-0 vector-v++!)
(s5-0 (-> self collide-info transv))
(t9-0 (method-of-object (-> self collide-info) dummy-62))
)
(set! (-> (new 'stack-no-clear 'vector) quad) (the-as uint128 0))
0.0
(gp-0 s5-0 (the-as vector (t9-0)))
)
(let ((t9-2 (method-of-object (-> self collide-info) dummy-57)))
(vector-v++!
(-> self collide-info transv)
(t9-2)
(dummy-62 (-> self collide-info) (new-stack-vector0) 0.0)
)
(dummy-57 (-> self collide-info) (-> self collide-info transv))
(nav-enemy-common-post)
0
(none)
@@ -1002,7 +954,7 @@ nav-enemy-default-event-handler
;; INFO: Return type mismatch int vs none.
(defbehavior
nav-enemy-fall-and-play-death-anim nav-enemy
((arg0 art-joint-anim) (arg1 int) (arg2 float))
((arg0 art-joint-anim) (arg1 float) (arg2 float) (arg3 float) (arg4 int))
(nav-enemy-neck-control-inactive)
(logclear! (-> self mask) (process-mask actor-pause))
(set! (-> self skel root-channel 0 frame-group) arg0)
@@ -1049,7 +1001,7 @@ nav-enemy-default-event-handler
((nonzero? (-> self align))
(when (not s4-1)
(TODO-RENAME-9 (-> self align))
(TODO-RENAME-10 (-> self align) 4098 1.0 (the-as float arg1) 1.0)
(TODO-RENAME-10 (-> self align) 4098 1.0 arg1 1.0)
(when (zero? (logand (-> self align flags) 1))
(let
((f0-6
@@ -1206,13 +1158,13 @@ nav-enemy-default-event-handler
()
(nav-enemy-neck-control-inactive)
(set! (-> self state-time) (-> *display* base-frame-counter))
(when (-> self nav-info move-to-ground)
(let ((t9-1 (method-of-object (-> self collide-info) dummy-60)))
(if (-> self nav-info move-to-ground)
(dummy-60
(-> self collide-info)
40960.0
40960.0
#t
(-> self nav-info gnd-collide-with)
(t9-1)
)
)
(set! (-> self nav-enemy-flags) (logand -7 (-> self nav-enemy-flags)))
@@ -1750,10 +1702,7 @@ nav-enemy-default-event-handler
)
(set! (-> gp-0 target-pos quad) (-> v1-10 quad))
)
(let ((t9-3 (method-of-object (-> self nav) dummy-11)))
(-> self nav target-pos)
(t9-3)
)
(dummy-11 (-> self nav) (-> self nav target-pos))
(set! (-> self rotate-speed) (-> self nav-info run-rotate-speed))
(let ((v0-4 (-> self nav-info run-turn-time)))
(set! (-> self turn-time) (the-as uint v0-4))
@@ -2876,14 +2825,15 @@ nav-enemy-default-event-handler
()
(ja-channel-push! 1 22)
(dummy-48 (-> self collide-info))
(let ((t9-2 nav-enemy-fall-and-play-death-anim)
(a0-4 (-> self draw art-group data (-> self nav-info die-anim)))
(a1-1 1.0)
(a2-0 1.0)
)
(nav-enemy-fall-and-play-death-anim
(the-as
art-joint-anim
(-> self draw art-group data (-> self nav-info die-anim))
)
1.0
1.0
1000000000000000.0
600
(t9-2 (the-as art-joint-anim a0-4) (the-as int a1-1) a2-0)
)
(let ((a1-2 (new 'stack-no-clear 'event-message-block)))
(set! (-> a1-2 from) self)
@@ -3383,10 +3333,7 @@ nav-enemy-default-event-handler
;; Used lq/sq
(defbehavior nav-enemy-jump-land-post nav-enemy ()
(TODO-RENAME-9 (-> self align))
(let ((t9-1 (method-of-object (-> self nav) dummy-11)))
(-> self nav target-pos)
(t9-1)
)
(dummy-11 (-> self nav) (-> self nav target-pos))
(set!
(-> self target-speed)
(seek (-> self target-speed) (-> self nav-info run-travel-speed) 2048.0)
@@ -3428,20 +3375,18 @@ nav-enemy-default-event-handler
(the-as int (-> self turn-time))
)
)
(let ((gp-0 vector-v++!)
(s5-0 (-> self collide-info transv))
(t9-7 (method-of-object (-> self collide-info) dummy-62))
)
(set! (-> (new 'stack-no-clear 'vector) quad) (the-as uint128 0))
0.0
(gp-0 s5-0 (the-as vector (t9-7)))
(vector-v++!
(-> self collide-info transv)
(dummy-62 (-> self collide-info) (new-stack-vector0) 0.0)
)
(let ((t9-9 (method-of-object (-> self collide-info) dummy-59)))
(dummy-59
(-> self collide-info)
(-> self collide-info transv)
(-> self nav-info gnd-collide-with)
8192.0
#f
(-> self nav-info hover-if-no-ground)
(t9-9)
#f
)
(nav-enemy-common-post)
(none)
@@ -3821,7 +3766,7 @@ nav-enemy-default-event-handler
(nav-control-flags display-marks bit0 bit3 bit5 bit6 bit7)
)
(set! (-> obj nav gap-event) 'jump)
((method-of-object (-> obj nav) dummy-26))
(dummy-26 (-> obj nav))
(set! (-> obj path) (new 'process 'path-control obj 'path 0.0))
(logior!
(-> obj path flags)
@@ -3950,10 +3895,7 @@ nav-enemy-default-event-handler
(set! (-> s4-0 quad) (-> obj collide-info trans quad))
(set! (-> obj collide-info trans quad) (-> arg0 quad))
(let ((gp-0 (-> obj nav)))
(let ((t9-0 (method-of-object gp-0 dummy-28)))
-1
(t9-0)
)
(dummy-28 gp-0 -1)
(set! (-> obj collide-info trans quad) (-> s4-0 quad))
(let* ((v1-8 (-> gp-0 mesh origin))
(f0-1 (- (-> arg0 x) (-> v1-8 x)))
@@ -411,7 +411,7 @@
(dummy-30 () none 30)
(dummy-31 () none 31)
(dummy-32 () none 32)
(dummy-33 () none 33)
(dummy-33 (_type_ vector uint) none 33)
(dummy-34 () none 34)
(dummy-35 (_type_) none 35)
(dummy-36 () none 36)
@@ -432,7 +432,7 @@
(dummy-51 () none 51)
(dummy-52 () none 52)
(dummy-53 () none 53)
(dummy-54 () none 54)
(dummy-54 (_type_ int int) none 54)
(dummy-55 () none 55)
)
)
@@ -503,12 +503,12 @@
:flag-assert #x41000001bc
(:methods
(dummy-56 () none 56)
(dummy-57 () none 57)
(dummy-58 () none 58)
(dummy-59 () none 59)
(dummy-60 () none 60)
(dummy-57 (_type_ vector) none 57)
(dummy-58 (_type_ vector) none 58)
(dummy-59 (_type_ vector uint float symbol symbol symbol) none 59)
(dummy-60 (_type_ float float symbol uint) none 60)
(dummy-61 () none 61)
(dummy-62 () none 62)
(dummy-62 (_type_ vector float) vector 62)
(dummy-63 () none 63)
(dummy-64 () none 64)
)
+1 -1
View File
@@ -119,7 +119,7 @@
:flag-assert #xc00000028
(:methods
(new (symbol type process pickup-type float) _type_ 0)
(dummy-9 () uint 9)
(TODO-RENAME-9 (_type_ symbol process-tree fact-info int) uint 9)
(reset! (_type_ symbol) none 10)
(dummy-11 (_type_) float 11)
)
+5 -5
View File
@@ -381,7 +381,7 @@
(new (symbol type collide-shape int float) _type_ 0)
(dummy-9 () none 9)
(point-in-bounds? (_type_ vector) symbol 10)
(dummy-11 () none 11)
(dummy-11 (_type_ vector) none 11)
(dummy-12 () none 12)
(dummy-13 () none 13)
(dummy-14 () none 14)
@@ -389,16 +389,16 @@
(dummy-16 (_type_ vector) symbol 16)
(dummy-17 () none 17)
(dummy-18 () none 18)
(dummy-19 () none 19)
(dummy-19 (_type_ vector collide-shape-moving vector float) none 19)
(dummy-20 () none 20)
(dummy-21 () none 21)
(dummy-22 () none 22)
(dummy-23 () none 23)
(dummy-24 () none 24)
(dummy-24 (_type_ float symbol) none 24)
(dummy-25 (_type_ vector float) symbol 25)
(dummy-26 () none 26)
(dummy-26 (_type_) none 26)
(dummy-27 () none 27)
(dummy-28 () none 28)
(dummy-28 (_type_ int) none 28)
(should-display? (_type_) symbol 29)
(dummy-30 () none 30)
(dummy-31 () none 31)
+11 -11
View File
@@ -42,18 +42,18 @@
(shadow-max-y meters :offset-assert 168)
(shadow-min-y meters :offset-assert 172)
(shadow-locus-dist meters :offset-assert 176)
(use-align basic :offset-assert 180)
(draw-shadow basic :offset-assert 184)
(move-to-ground basic :offset-assert 188)
(hover-if-no-ground basic :offset-assert 192)
(use-momentum basic :offset-assert 196)
(use-flee basic :offset-assert 200)
(use-proximity-notice basic :offset-assert 204)
(use-jump-blocked basic :offset-assert 208)
(use-jump-patrol basic :offset-assert 212)
(use-align symbol :offset-assert 180)
(draw-shadow symbol :offset-assert 184)
(move-to-ground symbol :offset-assert 188)
(hover-if-no-ground symbol :offset-assert 192)
(use-momentum symbol :offset-assert 196)
(use-flee symbol :offset-assert 200)
(use-proximity-notice symbol :offset-assert 204)
(use-jump-blocked symbol :offset-assert 208)
(use-jump-patrol symbol :offset-assert 212)
(gnd-collide-with uint64 :offset-assert 216)
(debug-draw-neck basic :offset-assert 224)
(debug-draw-jump basic :offset-assert 228)
(debug-draw-neck symbol :offset-assert 224)
(debug-draw-jump symbol :offset-assert 228)
)
:method-count-assert 9
:size-assert #xe8
+67 -125
View File
@@ -78,32 +78,25 @@
;; definition for method 42 of type nav-enemy
(defmethod TODO-RENAME-42 nav-enemy ((obj nav-enemy))
(local-vars (v1-11 symbol))
(with-pp
(when (<= (-> obj path curve num-cverts) 0)
(let ((t9-0 (the-as (function object object) enter-state))
(a0-1 "no path")
)
(set! (-> pp next-state) process-drawable-art-error)
(t9-0 a0-1)
)
)
(let ((s5-0 3))
0
(let ((s4-0 (-> obj nav destination-pos)))
(until (or v1-11 (<= s5-0 0))
(let ((v1-8 (nav-enemy-rnd-int-count (-> obj path curve num-cverts))))
(eval-path-curve-div! (-> obj path) s4-0 (the float v1-8) 'interp)
)
(+! s5-0 -1)
(set!
v1-11
(< 4096.0 (vector-vector-xz-distance s4-0 (-> obj collide-info trans)))
)
(if (<= (-> obj path curve num-cverts) 0)
(go process-drawable-art-error "no path")
)
(let ((s5-0 3))
0
(let ((s4-0 (-> obj nav destination-pos)))
(until (or v1-11 (<= s5-0 0))
(let ((v1-8 (nav-enemy-rnd-int-count (-> obj path curve num-cverts))))
(eval-path-curve-div! (-> obj path) s4-0 (the float v1-8) 'interp)
)
(+! s5-0 -1)
(set!
v1-11
(< 4096.0 (vector-vector-xz-distance s4-0 (-> obj collide-info trans)))
)
)
)
0
)
0
)
;; definition for method 39 of type nav-enemy
@@ -123,11 +116,7 @@
)
)
)
(let ((t9-0 (method-of-object (-> obj collide-info) dummy-54)))
2
1
(t9-0)
)
(dummy-54 (-> obj collide-info) 2 1)
(set! (-> obj nav-enemy-flags) (logand -257 (-> obj nav-enemy-flags)))
)
((method-of-object (-> obj draw shadow-ctrl) dummy-14))
@@ -277,11 +266,7 @@
(set! (-> v1-0 param 1) (the-as uint a1-1))
)
(when (send-event-function arg0 v1-0)
(let ((t9-1 (method-of-object (-> self collide-info) dummy-54)))
2
0
(t9-1)
)
(dummy-54 (-> self collide-info) 2 0)
(logior! (-> self nav-enemy-flags) 256)
#t
)
@@ -395,13 +380,7 @@
((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block))
(case arg2
(('death-start)
(let ((t9-0 (method-of-object (-> self fact) dummy-9)))
#t
*entity-pool*
(-> self fact)
0
(t9-0)
)
(TODO-RENAME-9 (-> self fact) #t *entity-pool* (-> self fact) 0)
)
(('death-end)
(let ((v0-0 (logior (-> self draw status) 2)))
@@ -434,10 +413,7 @@ nav-enemy-default-event-handler
;; definition for method 40 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod dummy-40 nav-enemy ((obj nav-enemy))
(let ((t9-0 (method-of-object (-> obj nav) dummy-11)))
(-> obj nav target-pos)
(t9-0)
)
(dummy-11 (-> obj nav) (-> obj nav target-pos))
0
(none)
)
@@ -498,14 +474,10 @@ nav-enemy-default-event-handler
)
)
)
(when (-> obj nav-info move-to-ground)
(let ((s5-0 vector-v++!)
(s4-0 (-> obj collide-info transv))
(t9-3 (method-of-object (-> obj collide-info) dummy-62))
)
(set! (-> (new 'stack-no-clear 'vector) quad) (the-as uint128 0))
0.0
(s5-0 s4-0 (the-as vector (t9-3)))
(if (-> obj nav-info move-to-ground)
(vector-v++!
(-> obj collide-info transv)
(dummy-62 (-> obj collide-info) (new-stack-vector0) 0.0)
)
)
0
@@ -542,23 +514,17 @@ nav-enemy-default-event-handler
;; definition for method 38 of type nav-enemy
;; INFO: Return type mismatch int vs none.
(defmethod TODO-RENAME-38 nav-enemy ((obj nav-enemy))
(cond
((-> obj nav-info move-to-ground)
(let ((t9-0 (method-of-object (-> obj collide-info) dummy-59)))
(-> obj collide-info transv)
(-> obj nav-info gnd-collide-with)
8192.0
(-> obj nav-info hover-if-no-ground)
(nonzero? (logand (-> obj nav-enemy-flags) #x8000))
(t9-0)
)
)
(else
(let ((t9-1 (method-of-object (-> obj collide-info) dummy-58)))
(-> obj collide-info transv)
(t9-1)
)
(if (-> obj nav-info move-to-ground)
(dummy-59
(-> obj collide-info)
(-> obj collide-info transv)
(-> obj nav-info gnd-collide-with)
8192.0
#f
(-> obj nav-info hover-if-no-ground)
(nonzero? (logand (-> obj nav-enemy-flags) #x8000))
)
(dummy-58 (-> obj collide-info) (-> obj collide-info transv))
)
0
(none)
@@ -607,12 +573,12 @@ nav-enemy-default-event-handler
(logior! (-> self nav flags) (nav-control-flags bit10))
(nav-enemy-get-new-patrol-point)
)
(let ((t9-1 (method-of-object (-> self nav) dummy-19)))
(dummy-19
(-> self nav)
(-> self nav target-pos)
(-> self collide-info)
(-> self nav destination-pos)
(-> self rotate-speed)
(t9-1)
)
(if (logtest? #x200000 (-> self nav flags))
(logclear! (-> self nav flags) (nav-control-flags bit10))
@@ -655,10 +621,7 @@ nav-enemy-default-event-handler
(set! (-> self nav travel quad) (-> gp-1 quad))
)
(vector-normalize! (-> self nav travel) 409600.0)
(let ((t9-3 (method-of-object (-> self nav) dummy-24)))
204.8
(t9-3)
)
(dummy-24 (-> self nav) 204.8 #f)
(vector+!
(-> self nav target-pos)
(-> self collide-info trans)
@@ -689,18 +652,14 @@ nav-enemy-default-event-handler
;; INFO: Return type mismatch int vs none.
;; Used lq/sq
(defbehavior nav-enemy-falling-post nav-enemy ()
(let ((gp-0 vector-v++!)
(s5-0 (-> self collide-info transv))
(t9-0 (method-of-object (-> self collide-info) dummy-62))
)
(set! (-> (new 'stack-no-clear 'vector) quad) (the-as uint128 0))
0.0
(gp-0 s5-0 (the-as vector (t9-0)))
(vector-v++!
(-> self collide-info transv)
(dummy-62 (-> self collide-info) (new-stack-vector0) 0.0)
)
(let ((t9-2 (method-of-object (-> self collide-info) dummy-33)))
(dummy-33
(-> self collide-info)
(-> self collide-info transv)
(-> self collide-info root-prim collide-with)
(t9-2)
)
(nav-enemy-common-post)
0
@@ -711,18 +670,11 @@ nav-enemy-default-event-handler
;; INFO: Return type mismatch int vs none.
;; Used lq/sq
(defbehavior nav-enemy-death-post nav-enemy ()
(let ((gp-0 vector-v++!)
(s5-0 (-> self collide-info transv))
(t9-0 (method-of-object (-> self collide-info) dummy-62))
)
(set! (-> (new 'stack-no-clear 'vector) quad) (the-as uint128 0))
0.0
(gp-0 s5-0 (the-as vector (t9-0)))
)
(let ((t9-2 (method-of-object (-> self collide-info) dummy-57)))
(vector-v++!
(-> self collide-info transv)
(t9-2)
(dummy-62 (-> self collide-info) (new-stack-vector0) 0.0)
)
(dummy-57 (-> self collide-info) (-> self collide-info transv))
(nav-enemy-common-post)
0
(none)
@@ -998,7 +950,7 @@ nav-enemy-default-event-handler
;; INFO: Return type mismatch int vs none.
(defbehavior
nav-enemy-fall-and-play-death-anim nav-enemy
((arg0 art-joint-anim) (arg1 int) (arg2 float))
((arg0 art-joint-anim) (arg1 float) (arg2 float) (arg3 float) (arg4 int))
(nav-enemy-neck-control-inactive)
(logclear! (-> self mask) (process-mask actor-pause))
(set! (-> self skel root-channel 0 frame-group) arg0)
@@ -1045,7 +997,7 @@ nav-enemy-default-event-handler
((nonzero? (-> self align))
(when (not s4-1)
(TODO-RENAME-9 (-> self align))
(TODO-RENAME-10 (-> self align) 4098 1.0 (the-as float arg1) 1.0)
(TODO-RENAME-10 (-> self align) 4098 1.0 arg1 1.0)
(when (zero? (logand (-> self align flags) 1))
(let
((f0-6
@@ -1202,13 +1154,13 @@ nav-enemy-default-event-handler
()
(nav-enemy-neck-control-inactive)
(set! (-> self state-time) (-> *display* base-frame-counter))
(when (-> self nav-info move-to-ground)
(let ((t9-1 (method-of-object (-> self collide-info) dummy-60)))
(if (-> self nav-info move-to-ground)
(dummy-60
(-> self collide-info)
40960.0
40960.0
#t
(-> self nav-info gnd-collide-with)
(t9-1)
)
)
(set! (-> self nav-enemy-flags) (logand -7 (-> self nav-enemy-flags)))
@@ -1746,10 +1698,7 @@ nav-enemy-default-event-handler
)
(set! (-> gp-0 target-pos quad) (-> v1-10 quad))
)
(let ((t9-3 (method-of-object (-> self nav) dummy-11)))
(-> self nav target-pos)
(t9-3)
)
(dummy-11 (-> self nav) (-> self nav target-pos))
(set! (-> self rotate-speed) (-> self nav-info run-rotate-speed))
(let ((v0-4 (-> self nav-info run-turn-time)))
(set! (-> self turn-time) (the-as uint v0-4))
@@ -2872,14 +2821,15 @@ nav-enemy-default-event-handler
()
(ja-channel-push! 1 22)
(dummy-48 (-> self collide-info))
(let ((t9-2 nav-enemy-fall-and-play-death-anim)
(a0-4 (-> self draw art-group data (-> self nav-info die-anim)))
(a1-1 1.0)
(a2-0 1.0)
)
(nav-enemy-fall-and-play-death-anim
(the-as
art-joint-anim
(-> self draw art-group data (-> self nav-info die-anim))
)
1.0
1.0
1000000000000000.0
600
(t9-2 (the-as art-joint-anim a0-4) (the-as int a1-1) a2-0)
)
(let ((a1-2 (new 'stack-no-clear 'event-message-block)))
(set! (-> a1-2 from) self)
@@ -3379,10 +3329,7 @@ nav-enemy-default-event-handler
;; Used lq/sq
(defbehavior nav-enemy-jump-land-post nav-enemy ()
(TODO-RENAME-9 (-> self align))
(let ((t9-1 (method-of-object (-> self nav) dummy-11)))
(-> self nav target-pos)
(t9-1)
)
(dummy-11 (-> self nav) (-> self nav target-pos))
(set!
(-> self target-speed)
(seek (-> self target-speed) (-> self nav-info run-travel-speed) 2048.0)
@@ -3424,20 +3371,18 @@ nav-enemy-default-event-handler
(the-as int (-> self turn-time))
)
)
(let ((gp-0 vector-v++!)
(s5-0 (-> self collide-info transv))
(t9-7 (method-of-object (-> self collide-info) dummy-62))
)
(set! (-> (new 'stack-no-clear 'vector) quad) (the-as uint128 0))
0.0
(gp-0 s5-0 (the-as vector (t9-7)))
(vector-v++!
(-> self collide-info transv)
(dummy-62 (-> self collide-info) (new-stack-vector0) 0.0)
)
(let ((t9-9 (method-of-object (-> self collide-info) dummy-59)))
(dummy-59
(-> self collide-info)
(-> self collide-info transv)
(-> self nav-info gnd-collide-with)
8192.0
#f
(-> self nav-info hover-if-no-ground)
(t9-9)
#f
)
(nav-enemy-common-post)
(none)
@@ -3817,7 +3762,7 @@ nav-enemy-default-event-handler
(nav-control-flags display-marks bit0 bit3 bit5 bit6 bit7)
)
(set! (-> obj nav gap-event) 'jump)
((method-of-object (-> obj nav) dummy-26))
(dummy-26 (-> obj nav))
(set! (-> obj path) (new 'process 'path-control obj 'path 0.0))
(logior!
(-> obj path flags)
@@ -3946,10 +3891,7 @@ nav-enemy-default-event-handler
(set! (-> s4-0 quad) (-> obj collide-info trans quad))
(set! (-> obj collide-info trans quad) (-> arg0 quad))
(let ((gp-0 (-> obj nav)))
(let ((t9-0 (method-of-object gp-0 dummy-28)))
-1
(t9-0)
)
(dummy-28 gp-0 -1)
(set! (-> obj collide-info trans quad) (-> s4-0 quad))
(let* ((v1-8 (-> gp-0 mesh origin))
(f0-1 (- (-> arg0 x) (-> v1-8 x)))