This commit is contained in:
Hat Kid
2026-04-15 02:29:58 +02:00
parent 21a148f9ea
commit c8653b2d51
256 changed files with 18768 additions and 22290 deletions
+176 -176
View File
@@ -809,7 +809,6 @@
;; WARN: new jak 2 until loop case, check carefully
(defmethod init-from-sql! ((this mysql-nav-graph) (arg0 string) (arg1 string))
"Query the database and initialize the [[mysql-nav-graph]] and all it's related components"
(local-vars (sv-16 string) (sv-32 int) (sv-48 int) (sv-64 int))
(set! (-> this node-array length) 0)
(set! (-> this edge-array length) 0)
(set! (-> this visnode-array length) 0)
@@ -857,35 +856,36 @@
(set! (-> nav-node angle) (* 182.04445 (string->float (-> s2-1 data (+ s1-0 5)))))
(set! (-> nav-node radius) (* 4096.0 (string->float (-> s2-1 data (+ s1-0 6)))))
(set! (-> nav-node nav_node_flag) (nav-node-flag))
(set! sv-16 (new 'global 'string 0 (-> s2-1 data (+ s1-0 7))))
(copy-string<-string sv-16 (-> s2-1 data (+ s1-0 7)))
(until #f
(cond
((string-prefix= "visited" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag visited))
)
((string-prefix= "blocked" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag blocked))
)
((string-prefix= "pedestrian" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag pedestrian))
)
((string-prefix= "selected" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag selected))
)
((string-prefix= "hidden" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag hidden))
)
(else
#t
(goto cfg-27)
)
)
(let ((a1-16 (string-skip-to-char (-> sv-16 data) (the-as uint 44))))
(if (= (-> a1-16 0) 44)
(set! a1-16 (&-> a1-16 1))
(let ((sv-16 (new 'global 'string 0 (-> s2-1 data (+ s1-0 7)))))
(copy-string<-string sv-16 (-> s2-1 data (+ s1-0 7)))
(until #f
(cond
((string-prefix= "visited" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag visited))
)
((string-prefix= "blocked" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag blocked))
)
((string-prefix= "pedestrian" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag pedestrian))
)
((string-prefix= "selected" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag selected))
)
((string-prefix= "hidden" sv-16)
(logior! (-> nav-node nav_node_flag) (nav-node-flag hidden))
)
(else
#t
(goto cfg-27)
)
(string-suck-up! sv-16 a1-16)
)
(let ((a1-16 (string-skip-to-char (-> sv-16 data) (the-as uint 44))))
(if (= (-> a1-16 0) 44)
(set! a1-16 (&-> a1-16 1))
)
(string-suck-up! sv-16 a1-16)
)
)
)
#f
@@ -929,155 +929,155 @@
(let ((s2-2 0))
(while (< s2-2 (-> s3-3 len))
(when (= (string->int (-> s3-3 data (+ s2-2 11))) (-> this nav_graph_id))
(let ((s0-2 (string->int (-> s3-3 data (+ s2-2 1)))))
(set! sv-32 (string->int (-> s3-3 data (+ s2-2 2))))
(set! sv-48 (indexof-nav-node this s0-2))
(set! sv-64 (indexof-nav-node this sv-32))
(let ((nav-edge (-> this edge-array data (-> this edge-array length))))
(when (and (!= sv-48 -1) (!= sv-64 -1))
(set! (-> nav-edge nav_graph_id) (-> this nav_graph_id))
(set! (-> nav-edge nav_edge_id) (the-as uint (string->int (-> s3-3 data s2-2))))
(set! (-> nav-edge nav_node_id_1) (the-as uint s0-2))
(set! (-> nav-edge nav_node_id_2) (the-as uint sv-32))
(set! (-> nav-edge mysql-save-flag) (mysql-save-flag))
(set! (-> nav-edge runtime-id) (the-as uint (-> this edge-array length)))
(set! (-> nav-edge runtime-node-id-1) sv-48)
(set! (-> nav-edge runtime-node-id-2) sv-64)
(let ((s0-3 (-> s3-3 data (+ s2-2 3))))
(cond
((string= "default" s0-3)
(set! (-> nav-edge directionality) (nav-directionality default))
0
)
((string= "directed" s0-3)
(set! (-> nav-edge directionality) (nav-directionality directed))
)
((string= "bi_directional" s0-3)
(set! (-> nav-edge directionality) (nav-directionality bi_directional))
)
)
(let* ((s0-2 (string->int (-> s3-3 data (+ s2-2 1))))
(sv-32 (string->int (-> s3-3 data (+ s2-2 2))))
(sv-48 (indexof-nav-node this s0-2))
(sv-64 (indexof-nav-node this sv-32))
(nav-edge (-> this edge-array data (-> this edge-array length)))
)
(when (and (!= sv-48 -1) (!= sv-64 -1))
(set! (-> nav-edge nav_graph_id) (-> this nav_graph_id))
(set! (-> nav-edge nav_edge_id) (the-as uint (string->int (-> s3-3 data s2-2))))
(set! (-> nav-edge nav_node_id_1) (the-as uint s0-2))
(set! (-> nav-edge nav_node_id_2) (the-as uint sv-32))
(set! (-> nav-edge mysql-save-flag) (mysql-save-flag))
(set! (-> nav-edge runtime-id) (the-as uint (-> this edge-array length)))
(set! (-> nav-edge runtime-node-id-1) sv-48)
(set! (-> nav-edge runtime-node-id-2) sv-64)
(let ((s0-3 (-> s3-3 data (+ s2-2 3))))
(cond
((string= "default" s0-3)
(set! (-> nav-edge directionality) (nav-directionality default))
0
)
((string= "directed" s0-3)
(set! (-> nav-edge directionality) (nav-directionality directed))
)
((string= "bi_directional" s0-3)
(set! (-> nav-edge directionality) (nav-directionality bi_directional))
)
)
(set! (-> nav-edge speed_limit) (* 4096.0 (string->float (-> s3-3 data (+ s2-2 4)))))
(set! (-> nav-edge density) (string->float (-> s3-3 data (+ s2-2 5))))
(set! (-> nav-edge traffic_edge_flag) 0)
(let ((s0-4 (new 'global 'string 0 (-> s3-3 data (+ s2-2 6)))))
(copy-string<-string s0-4 (-> s3-3 data (+ s2-2 6)))
(until #f
(cond
((string-prefix= "pedestrian" s0-4)
(logior! (-> nav-edge traffic_edge_flag) 1)
)
(else
#t
(goto cfg-58)
)
)
(let ((a1-30 (string-skip-to-char (-> s0-4 data) (the-as uint 44))))
(if (= (-> a1-30 0) 44)
(set! a1-30 (&-> a1-30 1))
)
(string-suck-up! s0-4 a1-30)
)
)
)
#f
(label cfg-58)
(set! (-> nav-edge nav_clock_mask) (nav-clock-mask))
(let ((s0-5 (new 'global 'string 0 (-> s3-3 data (+ s2-2 7)))))
(copy-string<-string s0-5 (-> s3-3 data (+ s2-2 7)))
(until #f
(cond
((string-prefix= "phase-1a" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-1a))
)
((string-prefix= "phase-1" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-1))
)
((string-prefix= "phase-2a" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-2a))
)
((string-prefix= "phase-2" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-2))
)
((string-prefix= "phase-3a" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-3a))
)
((string-prefix= "phase-3" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-3))
)
((string-prefix= "phase-4a" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-4a))
)
((string-prefix= "phase-4" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-4))
)
(else
#t
(goto cfg-80)
)
)
(let ((a1-42 (string-skip-to-char (-> s0-5 data) (the-as uint 44))))
(if (= (-> a1-42 0) 44)
(set! a1-42 (&-> a1-42 1))
)
(string-suck-up! s0-5 a1-42)
)
)
)
#f
(label cfg-80)
(let ((s0-6 (-> s3-3 data (+ s2-2 8))))
(cond
((string= "no-clock" s0-6)
(set! (-> nav-edge nav_clock_type) (nav-clock-type no-clock))
0
)
((string= "clock2" s0-6)
(set! (-> nav-edge nav_clock_type) (nav-clock-type clock2))
)
((string= "clock3" s0-6)
(set! (-> nav-edge nav_clock_type) (nav-clock-type clock3))
)
((string= "clock4" s0-6)
(set! (-> nav-edge nav_clock_type) (nav-clock-type clock4))
)
)
)
(set! (-> nav-edge width) (* 4096.0 (string->float (-> s3-3 data (+ s2-2 9)))))
(set! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag))
(let ((s0-7 (new 'global 'string 0 (-> s3-3 data (+ s2-2 10)))))
(copy-string<-string s0-7 (-> s3-3 data (+ s2-2 10)))
(until #f
(cond
((string-prefix= "pass-red" s0-7)
(logior! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag pass-red))
)
((string-prefix= "pass-green" s0-7)
(logior! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag pass-green))
)
((string-prefix= "pass-yellow" s0-7)
(logior! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag pass-yellow))
)
((string-prefix= "pass-blue" s0-7)
(logior! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag pass-blue))
)
(else
#t
(goto cfg-102)
)
)
(let ((a1-54 (string-skip-to-char (-> s0-7 data) (the-as uint 44))))
(if (= (-> a1-54 0) 44)
(set! a1-54 (&-> a1-54 1))
)
(string-suck-up! s0-7 a1-54)
)
)
)
#f
(label cfg-102)
(+! (-> this edge-array length) 1)
)
(set! (-> nav-edge speed_limit) (* 4096.0 (string->float (-> s3-3 data (+ s2-2 4)))))
(set! (-> nav-edge density) (string->float (-> s3-3 data (+ s2-2 5))))
(set! (-> nav-edge traffic_edge_flag) 0)
(let ((s0-4 (new 'global 'string 0 (-> s3-3 data (+ s2-2 6)))))
(copy-string<-string s0-4 (-> s3-3 data (+ s2-2 6)))
(until #f
(cond
((string-prefix= "pedestrian" s0-4)
(logior! (-> nav-edge traffic_edge_flag) 1)
)
(else
#t
(goto cfg-58)
)
)
(let ((a1-30 (string-skip-to-char (-> s0-4 data) (the-as uint 44))))
(if (= (-> a1-30 0) 44)
(set! a1-30 (&-> a1-30 1))
)
(string-suck-up! s0-4 a1-30)
)
)
)
#f
(label cfg-58)
(set! (-> nav-edge nav_clock_mask) (nav-clock-mask))
(let ((s0-5 (new 'global 'string 0 (-> s3-3 data (+ s2-2 7)))))
(copy-string<-string s0-5 (-> s3-3 data (+ s2-2 7)))
(until #f
(cond
((string-prefix= "phase-1a" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-1a))
)
((string-prefix= "phase-1" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-1))
)
((string-prefix= "phase-2a" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-2a))
)
((string-prefix= "phase-2" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-2))
)
((string-prefix= "phase-3a" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-3a))
)
((string-prefix= "phase-3" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-3))
)
((string-prefix= "phase-4a" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-4a))
)
((string-prefix= "phase-4" s0-5)
(logior! (-> nav-edge nav_clock_mask) (nav-clock-mask phase-4))
)
(else
#t
(goto cfg-80)
)
)
(let ((a1-42 (string-skip-to-char (-> s0-5 data) (the-as uint 44))))
(if (= (-> a1-42 0) 44)
(set! a1-42 (&-> a1-42 1))
)
(string-suck-up! s0-5 a1-42)
)
)
)
#f
(label cfg-80)
(let ((s0-6 (-> s3-3 data (+ s2-2 8))))
(cond
((string= "no-clock" s0-6)
(set! (-> nav-edge nav_clock_type) (nav-clock-type no-clock))
0
)
((string= "clock2" s0-6)
(set! (-> nav-edge nav_clock_type) (nav-clock-type clock2))
)
((string= "clock3" s0-6)
(set! (-> nav-edge nav_clock_type) (nav-clock-type clock3))
)
((string= "clock4" s0-6)
(set! (-> nav-edge nav_clock_type) (nav-clock-type clock4))
)
)
)
(set! (-> nav-edge width) (* 4096.0 (string->float (-> s3-3 data (+ s2-2 9)))))
(set! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag))
(let ((s0-7 (new 'global 'string 0 (-> s3-3 data (+ s2-2 10)))))
(copy-string<-string s0-7 (-> s3-3 data (+ s2-2 10)))
(until #f
(cond
((string-prefix= "pass-red" s0-7)
(logior! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag pass-red))
)
((string-prefix= "pass-green" s0-7)
(logior! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag pass-green))
)
((string-prefix= "pass-yellow" s0-7)
(logior! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag pass-yellow))
)
((string-prefix= "pass-blue" s0-7)
(logior! (-> nav-edge minimap_edge_flag) (nav-minimap-edge-flag pass-blue))
)
(else
#t
(goto cfg-102)
)
)
(let ((a1-54 (string-skip-to-char (-> s0-7 data) (the-as uint 44))))
(if (= (-> a1-54 0) 44)
(set! a1-54 (&-> a1-54 1))
)
(string-suck-up! s0-7 a1-54)
)
)
)
#f
(label cfg-102)
(+! (-> this edge-array length) 1)
)
)
)
+116 -131
View File
@@ -499,7 +499,6 @@
;; INFO: Used lq/sq
;; WARN: Return type mismatch int vs none.
(defmethod nav-graph-editor-method-28 ((this nav-graph-editor))
(local-vars (sv-144 int) (sv-160 (function _varargs_ object)))
(rlet ((vf0 :class vf)
(vf4 :class vf)
(vf5 :class vf)
@@ -520,11 +519,7 @@
(set! (-> v1-8 w) (-> s2-0 radius))
)
(set! (-> s2-0 cam-dist) (vector-vector-distance-squared s3-0 (camera-pos)))
(let ((f0-6 (-> s2-0 cam-dist))
(f1-0 (-> this clipping-dist))
)
(set! (-> s2-0 visible) (< f0-6 (* f1-0 f1-0)))
)
(set! (-> s2-0 visible) (< (-> s2-0 cam-dist) (square (-> this clipping-dist))))
(if (or (and (-> this vehicle-edit-mode) (logtest? (-> s2-0 nav_node_flag) (nav-node-flag pedestrian)))
(and (not (-> this vehicle-edit-mode)) (not (logtest? (-> s2-0 nav_node_flag) (nav-node-flag pedestrian))))
)
@@ -559,48 +554,46 @@
(add-debug-x #t (bucket-id debug2) s3-0 *color-red*)
(let ((s1-1 add-debug-text-3d)
(s0-1 #t)
(sv-144 324)
)
(set! sv-144 324)
(set! sv-160 format)
(let ((a0-16 (clear *temp-string*))
(a1-8 "~D")
(a2-6 (-> s2-0 nav_mesh_id))
(format (clear *temp-string*) "~D" (-> s2-0 nav_mesh_id))
(let ((a2-7 *temp-string*)
(a3-2 s3-0)
(v1-24 (-> s2-0 level_name))
)
(sv-160 a0-16 a1-8 a2-6)
)
(let* ((a2-7 *temp-string*)
(a3-2 s3-0)
(v1-24 (-> s2-0 level_name))
(t0-1 (cond
((= v1-24 'ctyport)
3
)
((= v1-24 'ctyinda)
4
)
((= v1-24 'ctyindb)
5
)
((= v1-24 'ctypal)
6
)
((= v1-24 'ctysluma)
7
)
((= v1-24 'ctyslumb)
8
)
((= v1-24 'ctyslumc)
9
)
(else
1
)
)
)
(t1-0 #f)
(s1-1
s0-1
(the-as bucket-id sv-144)
a2-7
a3-2
(cond
((= v1-24 'ctyport)
(font-color red)
)
(s1-1 s0-1 (the-as bucket-id sv-144) a2-7 a3-2 (the-as font-color t0-1) (the-as vector2h t1-0))
((= v1-24 'ctyinda)
(font-color orange)
)
((= v1-24 'ctyindb)
(font-color yellow)
)
((= v1-24 'ctypal)
(font-color green)
)
((= v1-24 'ctysluma)
(font-color blue)
)
((= v1-24 'ctyslumb)
(font-color cyan)
)
((= v1-24 'ctyslumc)
(font-color pink)
)
(else
(font-color white)
)
)
(the-as vector2h #f)
)
)
)
(let ((s1-2 (new 'stack-no-clear 'vector)))
@@ -1077,7 +1070,6 @@
;; INFO: Used lq/sq
;; WARN: Return type mismatch symbol vs none.
(defmethod nav-graph-editor-method-43 ((this nav-graph-editor))
(local-vars (sv-128 vector) (sv-144 vector))
(rlet ((vf0 :class vf)
(vf4 :class vf)
(vf5 :class vf)
@@ -1111,9 +1103,9 @@
)
(let ((f30-0 0.0)
(s0-1 ray-cylinder-intersect)
(sv-128 (-> this mouse-pos))
(sv-144 (new 'stack-no-clear 'vector))
)
(set! sv-128 (-> this mouse-pos))
(set! sv-144 (new 'stack-no-clear 'vector))
(let ((v1-18 (-> this mouse-hit-pick))
(a0-13 (-> this mouse-pos))
)
@@ -1123,18 +1115,21 @@
(.mov.vf.w vf6 vf0)
(.sub.vf.xyz vf6 vf4 vf5)
(.svf (&-> sv-144 quad) vf6)
(let ((a3-3 (vector-normalize-copy! (new 'stack-no-clear 'vector) s2-0 1.0))
(t0-0 1024.0)
(t1-0 (vector-length s2-0))
(t2-0 s3-0)
)
(when (< f30-0 (s0-1 sv-128 sv-144 s1-0 a3-3 t0-0 t1-0 t2-0))
(let ((f0-1 (vector-vector-distance s3-0 (-> this mouse-pos))))
(when (or (= (-> this selected-index) -1) (< f0-1 (-> this selected-dist)))
(set! (-> this selected-index) s4-0)
(set! (-> this selected-dist) f0-1)
(set! (-> this selected-node-edge?) #f)
)
(when (< f30-0 (s0-1
sv-128
sv-144
s1-0
(vector-normalize-copy! (new 'stack-no-clear 'vector) s2-0 1.0)
1024.0
(vector-length s2-0)
s3-0
)
)
(let ((f0-1 (vector-vector-distance s3-0 (-> this mouse-pos))))
(when (or (= (-> this selected-index) -1) (< f0-1 (-> this selected-dist)))
(set! (-> this selected-index) s4-0)
(set! (-> this selected-dist) f0-1)
(set! (-> this selected-node-edge?) #f)
)
)
)
@@ -2235,16 +2230,6 @@
;; definition for function smooth-nav-graph
;; INFO: Used lq/sq
(defun smooth-nav-graph ((arg0 string))
(local-vars
(sv-96 int)
(sv-112 int)
(sv-128 int)
(sv-144 mysql-nav-edge)
(sv-160 vector)
(sv-176 vector)
(sv-192 vector)
(sv-208 vector)
)
(rlet ((vf0 :class vf)
(vf4 :class vf)
(vf5 :class vf)
@@ -2257,52 +2242,54 @@
(s2-0 (new-stack-vector0))
(s0-0 (new-stack-vector0))
(s1-0 (new-stack-vector0))
(sv-96 0)
(sv-112 0)
)
(set! sv-96 0)
(set! sv-112 0)
(when (and (not (logtest? (-> s3-0 mysql-save-flag) (mysql-save-flag delete))) (= (-> s3-0 level_name) arg0))
(set! sv-128 0)
(while (< sv-128 (-> s5-0 edge-array length))
(set! sv-144 (-> s5-0 edge-array data sv-128))
(when (not (logtest? (-> sv-144 mysql-save-flag) (mysql-save-flag delete)))
(when (= (-> sv-144 runtime-node-id-1) s4-0)
(let ((v1-27 (-> s5-0 node-array data (-> sv-144 runtime-node-id-1)))
(a1-3 (-> s5-0 node-array data (-> sv-144 runtime-node-id-2)))
)
(set! sv-176 s1-0)
(set! sv-160 s1-0)
(let ((v0-0 (vector-normalize! (vector-! (new 'stack-no-clear 'vector) (-> a1-3 position) (-> v1-27 position)) 1.0))
(let ((sv-128 0))
(while (< sv-128 (-> s5-0 edge-array length))
(let ((sv-144 (-> s5-0 edge-array data sv-128)))
(when (not (logtest? (-> sv-144 mysql-save-flag) (mysql-save-flag delete)))
(when (= (-> sv-144 runtime-node-id-1) s4-0)
(let ((v1-27 (-> s5-0 node-array data (-> sv-144 runtime-node-id-1)))
(a1-3 (-> s5-0 node-array data (-> sv-144 runtime-node-id-2)))
(sv-176 s1-0)
)
(let ((sv-160 s1-0)
(v0-0 (vector-normalize! (vector-! (new 'stack-no-clear 'vector) (-> a1-3 position) (-> v1-27 position)) 1.0))
)
(.mov.vf.w vf6 vf0)
(.lvf vf4 (&-> sv-160 quad))
(.lvf vf5 (&-> v0-0 quad))
)
(.mov.vf.w vf6 vf0)
(.lvf vf4 (&-> sv-160 quad))
(.lvf vf5 (&-> v0-0 quad))
(.add.vf.xyz vf6 vf4 vf5)
(.svf (&-> sv-176 quad) vf6)
)
(+! sv-112 1)
sv-112
)
(when (= (-> sv-144 runtime-node-id-2) s4-0)
(let ((v1-40 (-> s5-0 node-array data (-> sv-144 runtime-node-id-1)))
(a1-9 (-> s5-0 node-array data (-> sv-144 runtime-node-id-2)))
(sv-208 s0-0)
)
(let ((sv-192 s0-0)
(v0-1 (vector-normalize! (vector-! (new 'stack-no-clear 'vector) (-> a1-9 position) (-> v1-40 position)) 1.0))
)
(.mov.vf.w vf6 vf0)
(.lvf vf4 (&-> sv-192 quad))
(.lvf vf5 (&-> v0-1 quad))
)
(.add.vf.xyz vf6 vf4 vf5)
(.svf (&-> sv-208 quad) vf6)
)
(+! sv-96 1)
sv-96
)
)
(.add.vf.xyz vf6 vf4 vf5)
(.svf (&-> sv-176 quad) vf6)
(set! sv-112 (+ sv-112 1))
sv-112
)
(when (= (-> sv-144 runtime-node-id-2) s4-0)
(let ((v1-40 (-> s5-0 node-array data (-> sv-144 runtime-node-id-1)))
(a1-9 (-> s5-0 node-array data (-> sv-144 runtime-node-id-2)))
)
(set! sv-208 s0-0)
(set! sv-192 s0-0)
(let ((v0-1 (vector-normalize! (vector-! (new 'stack-no-clear 'vector) (-> a1-9 position) (-> v1-40 position)) 1.0))
)
(.mov.vf.w vf6 vf0)
(.lvf vf4 (&-> sv-192 quad))
(.lvf vf5 (&-> v0-1 quad))
)
)
(.add.vf.xyz vf6 vf4 vf5)
(.svf (&-> sv-208 quad) vf6)
(set! sv-96 (+ sv-96 1))
sv-96
)
(+! sv-128 1)
)
(set! sv-128 (+ sv-128 1))
)
(cond
((and (>= sv-112 2) (= sv-96 1))
@@ -2350,7 +2337,6 @@
;; definition for function update-width
;; INFO: Used lq/sq
(defun update-width ((arg0 string))
(local-vars (sv-16 (array entity-nav-mesh)) (sv-32 int) (sv-48 uint) (sv-64 entity-nav-mesh))
(let ((s5-0 (-> (ppointer->process *nav-graph-editor*) nav-graph)))
(dotimes (s4-0 (-> s5-0 edge-array length))
(let ((s3-0 (-> s5-0 edge-array data s4-0)))
@@ -2368,32 +2354,31 @@
(dotimes (s0-0 (-> *level* length))
(let ((v1-25 (-> *level* level s0-0)))
(when (= (-> v1-25 status) 'active)
(set! sv-16 (-> v1-25 bsp nav-meshes))
(when (nonzero? sv-16)
(set! sv-32 0)
(while (< sv-32 (-> sv-16 length))
(set! sv-64 (-> sv-16 sv-32))
(set! sv-48 (-> sv-64 aid))
(let ((v1-36 (if (type? sv-64 entity-nav-mesh)
sv-64
)
)
)
(when (and v1-36 (= sv-48 (-> s2-0 nav_mesh_id)))
(let* ((f0-0 (nav-mesh-method-35 (-> v1-36 nav-mesh) (-> s2-0 position) (-> s1-0 position) 16384.0))
(f0-1 (+ -409.6 f0-0))
(let ((sv-16 (-> v1-25 bsp nav-meshes)))
(when (nonzero? sv-16)
(let ((sv-32 0))
(while (< sv-32 (-> sv-16 length))
(let* ((sv-64 (-> sv-16 sv-32))
(sv-48 (-> sv-64 aid))
(v1-36 (as-type sv-64 entity-nav-mesh))
)
(when (and (< 0.0 f0-1) (!= f0-1 (-> s3-0 width)))
(set! (-> s3-0 width) f0-1)
(logior! (-> s3-0 mysql-save-flag) (mysql-save-flag update))
)
(if (>= 0.0 f0-1)
(format #t "!!!! edge ~D ~D outside nav-mesh~%" (-> s2-0 nav_node_id) (-> s1-0 nav_node_id))
(when (and v1-36 (= sv-48 (-> s2-0 nav_mesh_id)))
(let* ((f0-0 (nav-mesh-method-35 (-> v1-36 nav-mesh) (-> s2-0 position) (-> s1-0 position) 16384.0))
(f0-1 (+ -409.6 f0-0))
)
(when (and (< 0.0 f0-1) (!= f0-1 (-> s3-0 width)))
(set! (-> s3-0 width) f0-1)
(logior! (-> s3-0 mysql-save-flag) (mysql-save-flag update))
)
(if (>= 0.0 f0-1)
(format #t "!!!! edge ~D ~D outside nav-mesh~%" (-> s2-0 nav_node_id) (-> s1-0 nav_node_id))
)
)
)
)
(+! sv-32 1)
)
)
(set! sv-32 (+ sv-32 1))
)
)
)