mirror of
https://github.com/open-goal/jak-project
synced 2026-07-08 14:36:52 -04:00
d/jak2: finish cylinder | mech-h | font-data most of text and history and chip away at a bunch of other files (#1802)
* d/jak2: finish `cylinder` * d/jak2: mostly finish `history` * d/jak2: finish a bit of `ripple` and `sync-info` * d/jak2: finish `font-data` and chip away at some other files * d/jak2: most of `text` done, a bit of `script` - symbol arr issue in `level-info` * d/jak2: finish `mech-h` * lint: format * tests: fix typeconsistency * d/jak2: address feedback
This commit is contained in:
+203
-149
@@ -5599,14 +5599,14 @@
|
||||
(other-name-1 symbol :offset 24)
|
||||
(packages pair :offset-assert 32) ;; guess on type
|
||||
(memory-mode uint32 :offset-assert 36)
|
||||
(music-bank basic :offset-assert 40)
|
||||
(ambient-sounds basic :offset-assert 44)
|
||||
(music-bank symbol :offset-assert 40)
|
||||
(ambient-sounds symbol :offset-assert 44)
|
||||
(sound-reverb float :offset-assert 48)
|
||||
(mood-func symbol :offset-assert 52)
|
||||
(mood-init symbol :offset-assert 56)
|
||||
(ocean basic :offset-assert 60)
|
||||
(sky basic :offset-assert 64)
|
||||
(use-camera-other basic :offset-assert 68)
|
||||
(ocean symbol :offset-assert 60)
|
||||
(sky symbol :offset-assert 64)
|
||||
(use-camera-other symbol :offset-assert 68)
|
||||
(part-engine-max int32 :offset-assert 72)
|
||||
(city-map-bits uint64 :offset-assert 80)
|
||||
(continues pair :offset-assert 88)
|
||||
@@ -5626,8 +5626,8 @@
|
||||
(deactivate-func symbol :offset-assert 152)
|
||||
(kill-func symbol :offset-assert 156)
|
||||
(borrow-size uint16 2 :offset-assert 160)
|
||||
(borrow-level symbol 2 :offset-assert 164)
|
||||
(borrow-display? basic 2 :offset-assert 172)
|
||||
(borrow-level symbol 2 :offset-assert 164)
|
||||
(borrow-display? symbol 2 :offset-assert 172)
|
||||
(base-task-mask task-mask :offset-assert 180)
|
||||
(texture-anim symbol 10 :offset-assert 184 :score -1)
|
||||
(texture-anim-tfrag symbol :offset 184)
|
||||
@@ -5652,13 +5652,13 @@
|
||||
(ocean-alpha float :offset-assert 280)
|
||||
(extra-sound-bank pair :offset-assert 284)
|
||||
)
|
||||
:pack-me
|
||||
:method-count-assert 9
|
||||
:size-assert #x120
|
||||
:flag-assert #x900000120
|
||||
;; Failed to read fields.
|
||||
)
|
||||
(declare-type drawable basic)
|
||||
|
||||
(declare-type drawable basic)
|
||||
(deftype login-state (basic)
|
||||
((state int32 :offset-assert 4)
|
||||
(pos uint32 :offset-assert 8)
|
||||
@@ -5682,6 +5682,7 @@
|
||||
(ten 10)
|
||||
)
|
||||
|
||||
(declare-type game-text-id uint32)
|
||||
(deftype level (basic)
|
||||
((name symbol :offset-assert 4)
|
||||
(load-name basic :offset-assert 8)
|
||||
@@ -5778,7 +5779,7 @@
|
||||
(debug-print-region-splitbox (_type_ vector object) none 20) ;; (vis-load (_type_) uint 20)
|
||||
(get-art-group-by-name (_type_ string) art-group 21) ;; (unused-21 (_type_) none 21)
|
||||
(level-method-22 () none 22) ;; (birth (_type_) _type_ 22)
|
||||
(level-method-23 () none 23) ;; (level-status-set! (_type_ symbol) _type_ 23)
|
||||
(lookup-text (_type_ game-text-id symbol) string 23) ;; (level-status-set! (_type_ symbol) _type_ 23)
|
||||
(level-method-24 () none 24)
|
||||
(birth (_type_) _type_ 25) ;; (init-vis (_type_) int 25)
|
||||
(level-status-update! (_type_ symbol) _type_ 26)
|
||||
@@ -6397,7 +6398,7 @@
|
||||
((length int32 :offset-assert 4)
|
||||
(language-id int32 :offset-assert 8)
|
||||
(group-name string :offset-assert 12) ;; guessed by decompiler
|
||||
(data game-text :dynamic :offset-assert 16) ;; guessed by decompiler
|
||||
(data game-text :dynamic :inline :offset-assert 16) ;; guessed by decompiler
|
||||
)
|
||||
:method-count-assert 10
|
||||
:size-assert #x10
|
||||
@@ -11335,14 +11336,14 @@
|
||||
(:methods
|
||||
(continue-point-method-9 () none 9) ;; (debug-draw! (_type_) none 9)
|
||||
(continue-point-method-10 () none 10)
|
||||
(continue-point-method-11 () none 11)
|
||||
(continue-point-method-11 (_type_) none 11)
|
||||
)
|
||||
)
|
||||
|
||||
(defenum mc-status-code
|
||||
:type uint32
|
||||
; (busy 0)
|
||||
; (ok 1)
|
||||
;; (busy 0)
|
||||
(ok 1)
|
||||
; (bad-handle 2)
|
||||
; (format-failed 3)
|
||||
; (internal-error 4)
|
||||
@@ -11367,7 +11368,7 @@
|
||||
|
||||
(deftype game-info (basic)
|
||||
((mode symbol :offset-assert 4) ;; guessed by decompiler
|
||||
(save-name basic :offset-assert 8)
|
||||
(save-name string :offset-assert 8)
|
||||
(life float :offset-assert 12)
|
||||
(life-max float :offset-assert 16)
|
||||
(money float :offset-assert 20)
|
||||
@@ -11403,7 +11404,7 @@
|
||||
(perm-list entity-perm-array :offset-assert 232) ;; guessed by decompiler
|
||||
(task-perm-list entity-perm-array :offset-assert 236) ;; guessed by decompiler
|
||||
(current-continue continue-point :offset-assert 240) ;; guessed by decompiler
|
||||
(last-continue basic :offset-assert 244)
|
||||
(last-continue continue-point :offset-assert 244)
|
||||
(unknown-pad3 uint32 3)
|
||||
(task-counter uint32 :offset-assert 260)
|
||||
(unknown-pad4 uint32)
|
||||
@@ -11449,7 +11450,7 @@
|
||||
(distance float :offset-assert 540)
|
||||
(kiosk-timeout uint64 :offset-assert 544)
|
||||
(pause-start-time time-frame :offset-assert 552)
|
||||
(game-score basic :offset-assert 560)
|
||||
(game-score (array highscore-info) :offset-assert 560)
|
||||
(goal float :offset-assert 564)
|
||||
(miss float :offset-assert 568)
|
||||
(miss-max float :offset-assert 572)
|
||||
@@ -11467,8 +11468,8 @@
|
||||
(:methods
|
||||
(initialize! (_type_ symbol game-save string) _type_ 9)
|
||||
(game-info-method-10 () none 10) ;; (adjust (_type_ symbol float handle) float 10)
|
||||
(game-info-method-11 () none 11) ;; (task-complete? (_type_ game-task) symbol 11)
|
||||
(game-info-method-12 () none 12) ;; (lookup-entity-perm-by-aid (_type_ actor-id) entity-perm 12)
|
||||
(task-complete? (_type_ game-task) symbol 11)
|
||||
(game-info-method-12 (_type_) none 12) ;; (lookup-entity-perm-by-aid (_type_ actor-id) entity-perm 12)
|
||||
(game-info-method-13 () none 13) ;; (get-entity-task-perm (_type_ game-task) entity-perm 13)
|
||||
(game-info-method-14 () none 14) ;; 14)
|
||||
(game-info-method-15 () none 15)
|
||||
@@ -13621,7 +13622,7 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(deftype script-form (structure)
|
||||
((name basic :offset-assert 0)
|
||||
((name string :offset-assert 0)
|
||||
(spec basic :offset-assert 4)
|
||||
(func basic :offset-assert 8)
|
||||
)
|
||||
@@ -13797,13 +13798,13 @@
|
||||
:size-assert #x10
|
||||
:flag-assert #x1000000010
|
||||
(:methods
|
||||
(sync-info-method-9 () none 9) ;; (get-current-value (_type_ float) float 9)
|
||||
(sync-info-method-10 () none 10) ;; (get-current-phase-no-mod (_type_) float 10)
|
||||
(sync-info-method-11 () none 11) ;; (get-current-phase (_type_) float 11)
|
||||
(sync-info-method-12 () none 12) ;; (get-current-value-with-mirror (_type_ float) float 12)
|
||||
(sync-info-method-13 () none 13) ;; (get-current-phase-with-mirror (_type_) float 13)
|
||||
(sync-info-method-14 () none 14) ;; (setup-params! (_type_ uint float float float) none 14)
|
||||
(sync-info-method-15 () none 15) ;; (load-params! (_type_ process uint float float float) symbol 15)
|
||||
(sync-info-method-9 (_type_) none 9) ;; (get-current-value (_type_ float) float 9)
|
||||
(get-phase-offset "Get the offset, as a fraction of period" (_type_) float 10)
|
||||
(get-norm! "Abstract method, stubbed" (_type_) float 11)
|
||||
(multiply-norm! "Multiples result of `get-norm!` by the provided float" (_type_ float object) float 12)
|
||||
(initialize! "Abstract method, stubbed" () none 13)
|
||||
(sync-info-method-14 (_type_ time-frame) time-frame 14)
|
||||
(sync-info-method-15 (_type_ float) none 15) ;; (load-params! (_type_ process uint float float float) symbol 15)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -15085,12 +15086,11 @@
|
||||
:method-count-assert 12
|
||||
:size-assert #x50
|
||||
:flag-assert #xc00000050
|
||||
;; Failed to read fields.
|
||||
(:methods
|
||||
(new (symbol type process-drawable int float collide-spec) _type_ 0)
|
||||
(initialize (_type_ process-drawable int float collide-spec) impact-control :behavior process 9)
|
||||
(update-from-cspace (_type_) none 10)
|
||||
(impact-control-method-11 () none 11)
|
||||
(impact-control-method-11 (_type_) none 11)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -15099,7 +15099,6 @@
|
||||
:method-count-assert 12
|
||||
:size-assert #x20
|
||||
:flag-assert #xc00000020
|
||||
;; Failed to read fields.
|
||||
(:methods
|
||||
(new (symbol type vector vector) _type_ 0)
|
||||
(initialize (_type_ vector vector) point-tracker 9)
|
||||
@@ -15115,7 +15114,6 @@
|
||||
:method-count-assert 14
|
||||
:size-assert #x30
|
||||
:flag-assert #xe00000030
|
||||
;; Failed to read fields.
|
||||
(:methods
|
||||
(combo-tracker-method-12 () none 12)
|
||||
(combo-tracker-method-13 () none 13)
|
||||
@@ -17509,7 +17507,7 @@
|
||||
(bit-5 5)
|
||||
(subtask-complete 6)
|
||||
(bit-7 7)
|
||||
(bit-8 8)
|
||||
(complete 8)
|
||||
(bit-9 9)
|
||||
(bit-10 10)
|
||||
)
|
||||
@@ -20774,9 +20772,9 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
;; (define-extern raw-ray-sphere-intersect function) ;; (function float float)
|
||||
;; (define-extern ray-sphere-intersect function) ;; (function vector vector vector float float)
|
||||
(define-extern ray-sphere-intersect (function vector vector vector float float))
|
||||
;; (define-extern ray-circle-intersect function) ;; (function vector vector vector float float)
|
||||
;; (define-extern ray-cylinder-intersect function) ;; (function vector vector vector vector float float vector float)
|
||||
(define-extern ray-cylinder-intersect (function vector vector vector vector float float vector float))
|
||||
;; (define-extern ray-plane-intersect function) ;; (function vector vector vector vector vector vector vector float)
|
||||
;; (define-extern ray-triangle-intersect function) ;; (function vector vector float matrix vector vector float)
|
||||
;; (define-extern collide-do-primitives function) ;; (function float)
|
||||
@@ -20862,27 +20860,24 @@
|
||||
;; cylinder ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
#|
|
||||
|
||||
(deftype cylinder-verts (structure)
|
||||
((vert vector 24 :offset-assert 0) ;; guessed by decompiler
|
||||
((vert vector 24 :inline :offset-assert 0) ;; guessed by decompiler
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x180
|
||||
:flag-assert #x900000180
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype cylinder-flat-verts (structure)
|
||||
((vert vector 10 :offset-assert 0) ;; guessed by decompiler
|
||||
((vert vector 10 :inline :offset-assert 0) ;; guessed by decompiler
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #xa0
|
||||
:flag-assert #x9000000a0
|
||||
)
|
||||
|#
|
||||
|
||||
;; (define-extern ray-arbitrary-circle-intersect function) ;; (function vector vector vector vector float float)
|
||||
(define-extern ray-arbitrary-circle-intersect (function vector vector vector vector float float))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; wind-work ;;
|
||||
@@ -21313,10 +21308,10 @@
|
||||
;; (define-extern debug-reset-buffers function) ;; (function symbol)
|
||||
(define-extern debug-draw-buffers (function symbol))
|
||||
(define-extern add-debug-line (function symbol bucket-id vector vector rgba symbol rgba symbol))
|
||||
;; (define-extern add-debug-line2d function) ;; (function symbol bucket-id vector vector vector symbol)
|
||||
(define-extern add-debug-line2d (function symbol bucket-id vector vector vector symbol))
|
||||
;; (define-extern add-debug-box function) ;; (function symbol bucket-id vector vector rgba symbol)
|
||||
;; (define-extern add-debug-box-with-transform function)
|
||||
;; (define-extern add-debug-x function) ;; (function symbol bucket-id vector rgba symbol)
|
||||
(define-extern add-debug-x (function symbol bucket-id vector rgba symbol))
|
||||
;; (define-extern add-debug-cross function)
|
||||
(define-extern add-debug-text-3d (function symbol bucket-id string vector font-color vector2h symbol))
|
||||
;; (define-extern add-debug-sphere-with-transform function) ;; (function symbol bucket-id vector meters matrix rgba symbol)
|
||||
@@ -21325,7 +21320,7 @@
|
||||
;; (define-extern add-debug-spheres function) ;; (function symbol bucket-id (inline-array vector) int rgba symbol)
|
||||
;; (define-extern add-debug-line-sphere function)
|
||||
;; (define-extern add-debug-circle function) ;; (function symbol bucket-id vector float rgba matrix symbol)
|
||||
;; (define-extern add-debug-vector function) ;; (function symbol bucket-id vector vector meters rgba symbol)
|
||||
(define-extern add-debug-vector (function symbol bucket-id vector vector meters rgba symbol))
|
||||
(define-extern add-debug-matrix (function symbol bucket-id matrix float matrix))
|
||||
;; (define-extern add-debug-rot-matrix function) ;; (function symbol bucket-id matrix vector matrix)
|
||||
;; (define-extern add-debug-quaternion function)
|
||||
@@ -21361,70 +21356,122 @@
|
||||
;; history ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
#|
|
||||
(defenum collide-status
|
||||
:bitfield #t
|
||||
:type uint64
|
||||
(on-surface 0)
|
||||
(on-ground 1)
|
||||
(touch-surface 2)
|
||||
(touch-wall 3)
|
||||
(touch-ceiling 4)
|
||||
(touch-actor 5)
|
||||
(on-special-surface 6)
|
||||
(touch-edge 7)
|
||||
(no-touch 8)
|
||||
(blocked 9)
|
||||
(on-water 10)
|
||||
(impact-surface 11)
|
||||
(touch-background 12)
|
||||
(stuck 13)
|
||||
(touch-ceiling-sticky 14)
|
||||
(glance 15)
|
||||
(probe-hit 16)
|
||||
)
|
||||
|
||||
(defenum history-channel
|
||||
:type uint8
|
||||
(trans 0)
|
||||
(transv 1)
|
||||
(transv-in 2)
|
||||
(transv-out 3)
|
||||
(intersect 4)
|
||||
(local-normal 5)
|
||||
(surface-normal 6)
|
||||
(collide-status 7)
|
||||
(pat 8)
|
||||
(time 9)
|
||||
(friction 10))
|
||||
|
||||
(deftype history-elt (structure)
|
||||
((record-tag-bytes UNKNOWN 4 :offset-assert 0)
|
||||
(record-tag uint32 :offset-assert 0)
|
||||
(record-id uint16 :offset-assert 0)
|
||||
(owner uint8 :offset-assert 2)
|
||||
(channel uint8 :offset-assert 4)
|
||||
(timestamp uint64 :offset-assert 8)
|
||||
((record-tag-bytes uint8 4 :offset-assert 0)
|
||||
(record-tag uint32 :offset 0)
|
||||
(record-id uint16 :offset 0)
|
||||
(owner uint8 :offset 2)
|
||||
(channel history-channel :offset-assert 4)
|
||||
(timestamp time-frame :offset-assert 8)
|
||||
(origin vector :inline :offset-assert 16)
|
||||
(bytes UNKNOWN 16 :offset-assert 32)
|
||||
(vector vector :inline :offset-assert 32)
|
||||
(float float :offset-assert 32)
|
||||
(collide-status uint64 :offset-assert 32)
|
||||
(collide-reaction-flag uint32 :offset-assert 40)
|
||||
(pat uint32 :offset-assert 32)
|
||||
(bytes uint8 16 :offset-assert 32)
|
||||
(vector vector :inline :offset 32)
|
||||
(float float :offset 32)
|
||||
(collide-status collide-status :offset 32)
|
||||
(collide-reaction-flag uint32 :offset 40)
|
||||
(pat pat-surface :offset 32)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x30
|
||||
:flag-assert #x900000030
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype history-iterator (basic)
|
||||
((max-age uint32 :offset-assert 4)
|
||||
(owner uint8 :offset-assert 8)
|
||||
(proc basic :offset-assert 12)
|
||||
(proc process :offset-assert 12)
|
||||
(out basic :offset-assert 16)
|
||||
(channel-mask uint64 :offset-assert 24)
|
||||
(index int32 :offset-assert 32)
|
||||
(done? basic :offset-assert 36)
|
||||
(done? symbol :offset-assert 36)
|
||||
)
|
||||
:method-count-assert 12
|
||||
:size-assert #x28
|
||||
:flag-assert #xc00000028
|
||||
;; field out uses ~A with a signed load
|
||||
(:methods
|
||||
(history-iterator-method-9 () none 9)
|
||||
(history-iterator-method-10 () none 10)
|
||||
(history-iterator-method-11 () none 11)
|
||||
(new (symbol type uint32) _type_ 0)
|
||||
(frame-counter-delta
|
||||
"Returns the difference between [[*display*]]'s `base-clock.frame-counter` and the elt's `timestamp`"
|
||||
(_type_ history-elt) time-frame 9)
|
||||
(update-entries!
|
||||
"Iterate through each [[history-elt]] in [[*history*]]
|
||||
- If we hit the end set `done?` to true
|
||||
- If the `timestamp` on the elt, minus the current framecounter exceeds `max-age`, we are also done, return #f
|
||||
- However if we find an elt who's `owner` matches the iterator's, break out early returning that `elt`"
|
||||
(_type_) history-elt 10)
|
||||
(history-iterator-method-11
|
||||
"TODO - Unsure of the purpose
|
||||
`min(1.0, ((history-elt.timestamp - 1) + frame-counter) / (max-age + 1)) - 1.0`"
|
||||
(_type_ history-elt) float 11)
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype history (basic)
|
||||
((alloc-index int32 :offset-assert 4)
|
||||
(allocated-length int32 :offset-assert 8)
|
||||
(elts UNKNOWN :dynamic :offset-assert 16)
|
||||
(elts history-elt :dynamic :inline :offset 16)
|
||||
)
|
||||
:method-count-assert 11
|
||||
:size-assert #x10
|
||||
:flag-assert #xb00000010
|
||||
(:methods
|
||||
(history-method-9 () none 9)
|
||||
(history-method-10 () none 10)
|
||||
(new (symbol type int) _type_ 0)
|
||||
(clear-record-tags!
|
||||
"First grab the latest [[history-elt]] at `alloc-index`
|
||||
1. update it's `channel`, `record-id` and `owner` from the provided args
|
||||
2. - if it's `record-tag` is zero -- return it
|
||||
- otherwise, iterate through all `elts` until one is found that does not match it's `timestamp`
|
||||
- if not `0` out the `record-tag` for that elt and continue iteration"
|
||||
(_type_ history-channel uint uint) history-elt 9)
|
||||
(clear-history-entries!
|
||||
"Iterates through each [[history-elt]] in the `elt` dynamic array
|
||||
For each entry:
|
||||
- clear `timestamp`
|
||||
- clear `record-tag`"
|
||||
(_type_) none 10)
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
;; (define-extern history-channel->string function)
|
||||
;; (define-extern *history* object)
|
||||
;; (define-extern history-print function)
|
||||
;; (define-extern history-draw function)
|
||||
(define-extern history-channel->string (function history-channel string))
|
||||
(define-extern *history* history)
|
||||
(define-extern history-print (function history-iterator none))
|
||||
(define-extern history-draw (function history-iterator none))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; merc-vu1 ;;
|
||||
@@ -21580,39 +21627,47 @@
|
||||
;; ripple ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
#|
|
||||
(deftype ripple-request (structure)
|
||||
((waveform ripple-wave :offset-assert 0) ;; guessed by decompiler
|
||||
(effect merc-effect :offset-assert 4)
|
||||
)
|
||||
:pack-me
|
||||
:method-count-assert 9
|
||||
:size-assert #x8
|
||||
:flag-assert #x900000008
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype ripple-globals (structure)
|
||||
((count int32 :offset-assert 0)
|
||||
(requests ripple-request 16 :offset-assert 4) ;; guessed by decompiler
|
||||
(requests ripple-request 16 :inline :offset-assert 4) ;; guessed by decompiler
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x84
|
||||
:flag-assert #x900000084
|
||||
)
|
||||
|#
|
||||
|
||||
;; (define-extern *ripple-globals* object) ;; ripple-globals
|
||||
;; (define-extern ripple-make-request function) ;; (function ripple-wave merc-effect none)
|
||||
;; (define-extern ripple-update-waveform-offs function) ;; (function ripple-wave-set none)
|
||||
;; (define-extern ripple-execute-init function) ;; (function none)
|
||||
;; (define-extern ripple-create-wave-table function) ;; (function ripple-wave-set int)
|
||||
;; (define-extern ripple-apply-wave-table function) ;; (function merc-effect symbol)
|
||||
(define-extern ripple-execute (function none))
|
||||
;; (define-extern ripple-matrix-scale function) ;; function
|
||||
;; (define-extern ripple-add-debug-sphere function) ;; (function process-drawable vector float float none)
|
||||
;; (define-extern ripple-slow-add-sine-waves function) ;; (function ripple-wave-set float float float)
|
||||
;; (define-extern ripple-find-height function) ;; (function process-drawable int vector float)
|
||||
(define-extern *ripple-globals* "A collection of [[ripple-request]] (max of 16)" ripple-globals)
|
||||
(define-extern ripple-make-request
|
||||
"Iterate through [[*ripple-globals*]] `requests` looking for the one that matches the provided `effect`
|
||||
If NOT found, append a new [[ripple-request]] with the providded `effect` and `waveform` to the end of the `requests`.
|
||||
|
||||
NOTE: There can only be 16 effects at a given time, NOOP if already at that limit!"
|
||||
(function ripple-wave merc-effect none))
|
||||
(define-extern ripple-update-waveform-offs (function ripple-wave-set none))
|
||||
(define-extern ripple-execute-init "TODO - Handled by MIPS2C" (function none))
|
||||
(define-extern ripple-create-wave-table "TODO - Handled by MIPS2C" (function ripple-wave-set int))
|
||||
(define-extern ripple-apply-wave-table "TODO - Handled by MIPS2C" (function merc-effect symbol))
|
||||
(define-extern ripple-execute
|
||||
"Iterate through [[*ripple-globals*]] requests, from the end to index `0`
|
||||
For each request, if it has a `waveform` create the wave-table via `ripple-create-wave-table`
|
||||
Then for each `waveform` apply the `effect` using `ripple-apply-wave-table`
|
||||
|
||||
Once completed, all `requests` have been processed and the `count` is reset to `0`"
|
||||
(function none))
|
||||
(define-extern ripple-matrix-scale "TODO - Handled by MIPS2C" function)
|
||||
(define-extern ripple-add-debug-sphere (function process-drawable vector float float none))
|
||||
(define-extern ripple-slow-add-sine-waves (function ripple-wave-set float float float))
|
||||
(define-extern ripple-find-height (function process-drawable int vector float))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; bones ;;
|
||||
@@ -22009,8 +22064,8 @@
|
||||
;; font-data ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
;; (define-extern *font12-table* object) ;; (inline-array vector)
|
||||
;; (define-extern *font24-table* object) ;; (inline-array vector)
|
||||
(define-extern *font12-table* (inline-array vector))
|
||||
(define-extern *font24-table* (inline-array vector))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; font ;;
|
||||
@@ -22018,8 +22073,8 @@
|
||||
|
||||
;; (define-extern gen-font-12 function)
|
||||
;; (define-extern draw-string-asm function)
|
||||
;; (define-extern draw-string function) ;; (function string dma-buffer font-context float)
|
||||
;; (define-extern get-string-length function) ;; (function string font-context float)
|
||||
(define-extern draw-string (function string dma-buffer font-context float))
|
||||
(define-extern get-string-length (function string font-context float))
|
||||
(define-extern draw-string-xy (function string dma-buffer int int font-color font-flags float))
|
||||
;; (define-extern draw-string-adv function) ;; (function string dma-buffer font-context none)
|
||||
|
||||
@@ -22691,14 +22746,14 @@
|
||||
;; game-info ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
;; (define-extern *default-continue* continue-point) ;; continue-point
|
||||
(define-extern *default-continue* continue-point)
|
||||
;; (define-extern task-level->string function)
|
||||
;; (define-extern level-name->task-level function)
|
||||
;; (define-extern trsq->continue-point function) ;; (function trsq none)
|
||||
(define-extern position->stream (function string symbol symbol none))
|
||||
;; (define-extern bug-report-display function)
|
||||
;; (define-extern print-continues function)
|
||||
;; (define-extern *highscore-info-array* array)
|
||||
(define-extern *highscore-info-array* (array highscore-info))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; game-task ;;
|
||||
@@ -24115,34 +24170,30 @@
|
||||
;; text ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
#|
|
||||
(deftype game-text-info (basic)
|
||||
()
|
||||
:method-count-assert 10
|
||||
:size-assert #x10
|
||||
:flag-assert #xa00000010
|
||||
;; Failed to read fields.
|
||||
(:methods
|
||||
(game-text-info-method-9 () none 9) ;; (lookup-text! (_type_ game-text-id symbol) string 9)
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
;; (define-extern *expand-buf-number* object)
|
||||
;; (define-extern *game-text-word* object) ;; string
|
||||
;; (define-extern *game-text-line* object) ;; string
|
||||
;; (define-extern *expanded-text-line0* object)
|
||||
;; (define-extern *expanded-text-line1* object)
|
||||
;; (define-extern *level-text-file-load-flag* object) ;; symbol
|
||||
;; (define-extern convert-korean-text function)
|
||||
;; (define-extern text-is-loading object) ;; symbol
|
||||
;; (define-extern load-game-text-info function) ;; (function string symbol kheap int)
|
||||
(define-extern load-level-text-files (function int none))
|
||||
;; (define-extern draw-debug-text-box function) ;; (function font-context none)
|
||||
;; (define-extern print-game-text-scaled function) ;; (function string float font-context int none)
|
||||
;; (define-extern print-game-text function) ;; (function string font-context symbol int int float)
|
||||
;; (define-extern disable-level-text-file-loading function) ;; (function none)
|
||||
;; (define-extern enable-level-text-file-loading function) ;; (function none)
|
||||
(define-extern *expand-buf-number* int)
|
||||
(define-extern *game-text-word* string)
|
||||
(define-extern *game-text-line* string)
|
||||
(define-extern *expanded-text-line0* string)
|
||||
(define-extern *expanded-text-line1* string)
|
||||
(define-extern *level-text-file-load-flag* symbol)
|
||||
(define-extern convert-korean-text
|
||||
"Converts the provided [[game-text]] into korean. Returns a [[string]]"
|
||||
(function game-text string))
|
||||
(define-extern text-is-loading symbol)
|
||||
(define-extern load-game-text-info
|
||||
"Load text, if needed. txt-name is the group name, curr-text is the _symbol_ for
|
||||
the game-text-info, and heap is the heap to load to. The heap will be cleared."
|
||||
(function string symbol kheap int))
|
||||
(define-extern load-level-text-files
|
||||
"Load the text files needed for level idx.
|
||||
This function made more sense back when text files were split up, but in the end they put everything
|
||||
in a single text group and file."
|
||||
(function int none))
|
||||
(define-extern draw-debug-text-box "Draws some lines" (function font-context none))
|
||||
(define-extern print-game-text-scaled "Print text, with a given scaling" (function string float font-context int none))
|
||||
(define-extern print-game-text "Print text." (function string font-context symbol int int float))
|
||||
(define-extern disable-level-text-file-loading "Disables [[*level-text-file-load-flag*]]" (function none))
|
||||
(define-extern enable-level-text-file-loading "Disables [[*level-text-file-load-flag*]]" (function none))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; collide-hash ;;
|
||||
@@ -25283,7 +25334,7 @@
|
||||
;; (define-extern camera-plot-float-func function) ;; (function float float float float (function float float) vector4w none)
|
||||
;; (define-extern camera-line-setup function) ;; (function vector4w none)
|
||||
;; (define-extern camera-line-draw function) ;; (function vector vector symbol)
|
||||
;; (define-extern camera-line function) ;; (function vector vector vector4w none)
|
||||
(define-extern camera-line (function vector vector vector4w none))
|
||||
;; (define-extern camera-line-rel function) ;; (function vector vector vector4w none)
|
||||
;; (define-extern camera-line-rel-len function) ;; (function vector vector float vector4w none)
|
||||
;; (define-extern camera-sphere function) ;; (function vector float vector none)
|
||||
@@ -25427,19 +25478,24 @@
|
||||
;; script ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
;; (define-extern command-get-int function) ;; (function object int int)
|
||||
;; (define-extern command-get-float function) ;; (function object float float)
|
||||
;; (define-extern command-get-time function) ;; (function object int int)
|
||||
;; (define-extern command-get-param function) ;; (function object object object)
|
||||
;; (define-extern command-get-quoted-param function) ;; (function object object object)
|
||||
;; (define-extern command-get-process function) ;; (function object process process :behavior camera-tracker)
|
||||
;; (define-extern command-get-entity function)
|
||||
;; (define-extern command-get-trans function) ;; (function object vector vector)
|
||||
;; (define-extern key-assoc function)
|
||||
;; (define-extern *script-form* object)
|
||||
(define-extern command-get-int (function object int int))
|
||||
(define-extern command-get-float (function object float float))
|
||||
(define-extern command-get-time (function object int int))
|
||||
(define-extern command-get-param (function object object object))
|
||||
(define-extern command-get-quoted-param (function object object object))
|
||||
;; (define-extern command-get-process (function object process process :behavior camera-tracker))
|
||||
(define-extern command-get-entity
|
||||
"- If `search` is a [[process]] - return it's `entity`
|
||||
- If `search` is an [[entity]] - return it
|
||||
- If `search` is a [[string]] - return the result of [[entity-by-name]]
|
||||
- If `search` is [[null?]] or [[empty]] or if no other condition passes, return `fallback`"
|
||||
(function object entity entity))
|
||||
(define-extern command-get-trans (function object vector vector))
|
||||
(define-extern key-assoc (function none))
|
||||
(define-extern *script-form* int)
|
||||
;; (define-extern level-from-heap function)
|
||||
;; (define-extern *syntax-context* object)
|
||||
;; (define-extern *script-context* object)
|
||||
(define-extern *syntax-context* int)
|
||||
(define-extern *script-context* int)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; generic-obs ;;
|
||||
@@ -26906,10 +26962,9 @@
|
||||
;; mech-h ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
#|
|
||||
(deftype mech-info (basic)
|
||||
((entity basic :offset-assert 4)
|
||||
(hud UNKNOWN 1 :offset-assert 8)
|
||||
(hud uint64 1 :offset-assert 8) ;; handle?
|
||||
(mech-trans vector :inline :offset-assert 16)
|
||||
(mech-quat vector :inline :offset-assert 32)
|
||||
(mech-scale vector :inline :offset-assert 48)
|
||||
@@ -26936,15 +26991,15 @@
|
||||
(shield-value float :offset-assert 204)
|
||||
(shield-max float :offset-assert 208)
|
||||
(walk-anim-leg int32 :offset-assert 212)
|
||||
(state-impact? UNKNOWN 1 :offset-assert 216)
|
||||
(state-impact UNKNOWN 1 :offset-assert 224)
|
||||
(state-impact? symbol 1 :offset-assert 216)
|
||||
(state-impact impact-control 1 :inline :offset-assert 224)
|
||||
(thruster-flame-width meters :offset-assert 304)
|
||||
(thruster-flame-length meters :offset-assert 308)
|
||||
(thruster-local-pos UNKNOWN 2 :offset-assert 320)
|
||||
(exhaust-local-pos UNKNOWN 2 :offset-assert 352)
|
||||
(exhaust-local-dir UNKNOWN 2 :offset-assert 384)
|
||||
(smoke-local-pos UNKNOWN 2 :offset-assert 416)
|
||||
(smoke-local-vel UNKNOWN 2 :offset-assert 448)
|
||||
(thruster-local-pos vector 2 :inline :offset-assert 320)
|
||||
(exhaust-local-pos vector 2 :inline :offset-assert 352)
|
||||
(exhaust-local-dir vector 2 :inline :offset-assert 384)
|
||||
(smoke-local-pos vector 2 :inline :offset-assert 416)
|
||||
(smoke-local-vel vector 2 :inline :offset-assert 448)
|
||||
(particle-system-2d basic :offset-assert 480)
|
||||
(particle-system-3d basic :offset-assert 484)
|
||||
(part-thruster basic :offset-assert 488)
|
||||
@@ -26957,9 +27012,8 @@
|
||||
:size-assert #x1fc
|
||||
:flag-assert #x9000001fc
|
||||
)
|
||||
|#
|
||||
|
||||
;; (define-extern *mech-shadow-control* shadow-control)
|
||||
(define-extern *mech-shadow-control* shadow-control)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; menu ;;
|
||||
|
||||
@@ -7,8 +7,6 @@
|
||||
[23, "(function process symbol)"],
|
||||
[17, "(function process symbol)"]
|
||||
],
|
||||
"level": [[5, "(function none)"]],
|
||||
"main": [[3, "(function none :behavior process)"]],
|
||||
"profile": [[9, "(function profile-segment-array profile-collapse none)"]],
|
||||
"bigmap-h": [
|
||||
[1, "(function external-art-buffer none)"],
|
||||
@@ -24,7 +22,7 @@
|
||||
[9, "(function none)"],
|
||||
[8, "(function none)"],
|
||||
[7, "(function time-frame none)"],
|
||||
[3, "(function none)"]
|
||||
[3, "(function none :behavior process)"]
|
||||
],
|
||||
|
||||
"level-info": [
|
||||
@@ -38,7 +36,5 @@
|
||||
[24, "(function level-group int symbol)"]
|
||||
],
|
||||
|
||||
"gsound": [
|
||||
[1, "(function none)"]
|
||||
]
|
||||
"gsound": [[1, "(function none)"]]
|
||||
}
|
||||
|
||||
@@ -60,9 +60,6 @@
|
||||
"(method 224 bot)",
|
||||
"(method 77 rapid-gunner)",
|
||||
// until loop without nop:
|
||||
"(method 9 history)",
|
||||
"history-print",
|
||||
"history-draw",
|
||||
"(method 9 sparticle-launcher)",
|
||||
"(method 18 tracking-spline)",
|
||||
"cam-string-find-position-rel!",
|
||||
@@ -187,7 +184,12 @@
|
||||
"display-loop-main",
|
||||
"lookup-level-info",
|
||||
"(method 24 level-group)",
|
||||
"(method 19 level-group)"
|
||||
"(method 19 level-group)",
|
||||
// script
|
||||
"command-get-time",
|
||||
"command-get-param",
|
||||
"command-get-quoted-param",
|
||||
"command-get-entity"
|
||||
],
|
||||
|
||||
// If format is used with the wrong number of arguments,
|
||||
|
||||
@@ -73,5 +73,15 @@
|
||||
["L364", "(pointer uint64)", 1],
|
||||
["L367", "(pointer uint64)", 1],
|
||||
["L362", "(pointer uint64)", 1]
|
||||
],
|
||||
"font-data": [
|
||||
["L1", "(inline-array vector)", 250],
|
||||
["L2", "(inline-array vector)", 250]
|
||||
],
|
||||
"script": [["L2358", "vector4"]],
|
||||
"text": [
|
||||
["L96", "vector4"],
|
||||
["L95", "matrix"],
|
||||
["L96", "vector4w"]
|
||||
]
|
||||
}
|
||||
|
||||
@@ -166,9 +166,7 @@
|
||||
|
||||
"string->sound-name": [[16, "qword"]],
|
||||
|
||||
"doppler-pitch-shift": [
|
||||
[16, ["inline-array", "vector", 2]]
|
||||
],
|
||||
"doppler-pitch-shift": [[16, ["inline-array", "vector", 2]]],
|
||||
|
||||
"(anon-function 1 gsound)": [
|
||||
[16, ["array", "symbol", 4]],
|
||||
@@ -176,6 +174,19 @@
|
||||
],
|
||||
"matrix<-parented-transformq!": [[16, "vector"]],
|
||||
|
||||
"(method 9 cylinder)": [
|
||||
[48, "cylinder-verts"],
|
||||
[432, "cylinder-verts"],
|
||||
[816, "matrix"],
|
||||
[880, "matrix"]
|
||||
],
|
||||
|
||||
"(method 9 cylinder-flat)": [
|
||||
[48, "cylinder-flat-verts"],
|
||||
[208, "cylinder-flat-verts"],
|
||||
[368, "matrix"],
|
||||
[432, "vector"]
|
||||
],
|
||||
|
||||
"want-to-board?": [
|
||||
[16, "vector"],
|
||||
|
||||
@@ -510,50 +510,22 @@
|
||||
"update-mood-village1": [[[21, 66], "gp", "(pointer float)"]],
|
||||
"update-mood-consite": [[[84, 110], "s4", "(pointer float)"]],
|
||||
"desaturate-mood-colors": [[[20, 92], "a0", "(inline-array mood-color)"]],
|
||||
"ramdisk-load": [
|
||||
[[7, 12], "v1", "ramdisk-rpc-load"]
|
||||
],
|
||||
"(method 10 engine-sound-pers)": [
|
||||
[[2, 19], "v1", "sound-rpc-set-param"]
|
||||
],
|
||||
"ramdisk-load": [[[7, 12], "v1", "ramdisk-rpc-load"]],
|
||||
"(method 10 engine-sound-pers)": [[[2, 19], "v1", "sound-rpc-set-param"]],
|
||||
|
||||
"check-irx-version": [
|
||||
[[3, 51], "gp", "sound-rpc-get-irx-version"]
|
||||
],
|
||||
"check-irx-version": [[[3, 51], "gp", "sound-rpc-get-irx-version"]],
|
||||
|
||||
"sound-bank-iop-store": [
|
||||
[[7, 11], "v1", "sound-rpc-bank-cmd"]
|
||||
],
|
||||
"sound-bank-iop-free": [
|
||||
[[7, 12], "v1", "sound-rpc-bank-cmd"]
|
||||
],
|
||||
"sound-bank-load": [
|
||||
[[7, 12], "v1", "sound-rpc-load-bank"]
|
||||
],
|
||||
"sound-bank-load-from-iop": [
|
||||
[[7, 12], "v1", "sound-rpc-load-bank"]
|
||||
],
|
||||
"sound-bank-load-from-ee": [
|
||||
[[8, 14], "v1", "sound-rpc-load-bank"]
|
||||
],
|
||||
"sound-bank-unload": [
|
||||
[[6, 11], "v1", "sound-rpc-unload-bank"]
|
||||
],
|
||||
"sound-music-load": [
|
||||
[[6, 11], "v1", "sound-rpc-load-music"]
|
||||
],
|
||||
"sound-music-unload": [
|
||||
[[3, 8], "v1", "sound-rpc-unload-music"]
|
||||
],
|
||||
"set-language": [
|
||||
[[7, 12], "v1", "sound-rpc-set-language"]
|
||||
],
|
||||
"sound-set-stereo-mode": [
|
||||
[[4, 9], "v1", "sound-rpc-set-stereo-mode"]
|
||||
],
|
||||
"list-sounds": [
|
||||
[[3, 7], "v1", "sound-rpc-list-sounds"]
|
||||
],
|
||||
"sound-bank-iop-store": [[[7, 11], "v1", "sound-rpc-bank-cmd"]],
|
||||
"sound-bank-iop-free": [[[7, 12], "v1", "sound-rpc-bank-cmd"]],
|
||||
"sound-bank-load": [[[7, 12], "v1", "sound-rpc-load-bank"]],
|
||||
"sound-bank-load-from-iop": [[[7, 12], "v1", "sound-rpc-load-bank"]],
|
||||
"sound-bank-load-from-ee": [[[8, 14], "v1", "sound-rpc-load-bank"]],
|
||||
"sound-bank-unload": [[[6, 11], "v1", "sound-rpc-unload-bank"]],
|
||||
"sound-music-load": [[[6, 11], "v1", "sound-rpc-load-music"]],
|
||||
"sound-music-unload": [[[3, 8], "v1", "sound-rpc-unload-music"]],
|
||||
"set-language": [[[7, 12], "v1", "sound-rpc-set-language"]],
|
||||
"sound-set-stereo-mode": [[[4, 9], "v1", "sound-rpc-set-stereo-mode"]],
|
||||
"list-sounds": [[[3, 7], "v1", "sound-rpc-list-sounds"]],
|
||||
"string->sound-name": [[[2, 18], "a1", "(pointer uint8)"]],
|
||||
"sound-set-volume": [[[3, 16], "v1", "sound-rpc-set-master-volume"]],
|
||||
"sound-set-reverb": [[[5, 25], "v1", "sound-rpc-set-reverb"]],
|
||||
@@ -602,5 +574,15 @@
|
||||
[3, "v1", "target"],
|
||||
[14, "a0", "target"]
|
||||
],
|
||||
"(method 10 history)": [[[8, 10], "a1", "history-elt"]],
|
||||
"(method 10 history-iterator)": [[[20, 35], "a2", "history-elt"]],
|
||||
"command-get-time": [[119, "gp", "(pointer float)"]],
|
||||
"command-get-param": [[122, "gp", "(pointer float)"]],
|
||||
"command-get-entity": [[10, "gp", "process"]],
|
||||
"print-game-text": [
|
||||
[225, "v1", "float"],
|
||||
[241, "v1", "float"]
|
||||
],
|
||||
|
||||
"placeholder-do-not-add-below": []
|
||||
}
|
||||
|
||||
@@ -83,5 +83,17 @@
|
||||
"vars": {
|
||||
"v1-2": "current-gun"
|
||||
}
|
||||
},
|
||||
|
||||
"(method 10 cylinder)": {
|
||||
"args": ["obj", "ray1", "ray2"]
|
||||
},
|
||||
|
||||
"ripple-make-request": {
|
||||
"args": ["waveform", "effect"]
|
||||
},
|
||||
|
||||
"command-get-entity": {
|
||||
"args": ["search", "fallback"]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
// if you want to filter to only some object names.
|
||||
// it will make the decompiler much faster.
|
||||
"allowed_objects": ["mood-tables"],
|
||||
"allowed_objects": [],
|
||||
"banned_objects": ["effect-control"],
|
||||
|
||||
////////////////////////////
|
||||
|
||||
@@ -5,6 +5,9 @@
|
||||
;; name in dgo: cam-debug-h
|
||||
;; dgos: ENGINE, GAME
|
||||
|
||||
;; NOTE - for cylinder
|
||||
(define-extern camera-line (function vector vector vector4w none))
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
(declare-file (debug))
|
||||
|
||||
@@ -7,3 +7,514 @@
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
(define *font12-table* (new 'static 'inline-array vector 250
|
||||
(new 'static 'vector :x 0.0039 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0322 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0634 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0634 :z 1.0 :w 22.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0634 :z 1.0 :w 19.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0634 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0634 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0634 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0634 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0634 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0634 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0634 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0947 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0947 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0947 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0947 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0947 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0947 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0947 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0947 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0947 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0947 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1259 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1259 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1259 :z 1.0 :w 11.25)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1259 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1572 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1572 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1572 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1572 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1572 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1572 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1572 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1572 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1572 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1572 :z 1.0 :w 17.25)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1884 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1884 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1884 :z 1.0 :w 15.75)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1884 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1884 :z 1.0 :w 14.25)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1884 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1884 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1884 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1884 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1884 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2197 :z 1.0 :w 15.75)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2197 :z 1.0 :w 19.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2197 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2197 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2197 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2197 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2197 :z 1.0 :w 15.75)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2197 :z 1.0 :w 12.75)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2197 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2197 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2509 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2509 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2509 :z 1.0 :w 17.25)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2509 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2509 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2509 :z 1.0 :w 9.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2509 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2509 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2509 :z 1.0 :w 19.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2509 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2822 :z 1.0 :w 6.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2822 :z 1.0 :w 14.25)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2822 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2822 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2822 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2822 :z 1.0 :w 12.75)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2822 :z 1.0 :w 12.75)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2822 :z 1.0 :w 17.25)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2822 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2822 :z 1.0 :w 9.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3134 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3134 :z 1.0 :w 14.25)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3134 :z 1.0 :w 9.75)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3134 :z 1.0 :w 18.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3134 :z 1.0 :w 14.25)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3134 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3134 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3134 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3134 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3134 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3447 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3447 :z 1.0 :w 12.75)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3447 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3447 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3447 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3447 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3447 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3447 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3447 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3447 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3759 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3759 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.7509 :z 1.0 :w 16.0)
|
||||
)
|
||||
)
|
||||
|
||||
(define *font24-table* (new 'static 'inline-array vector 250
|
||||
(new 'static 'vector :x 0.0039 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0322 :z 1.0 :w 19.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0322 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0322 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0634 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0634 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0634 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0634 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0634 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0634 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0634 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0634 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0634 :z 1.0 :w 17.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0634 :z 1.0 :w 17.5)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0947 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0947 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0947 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0947 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0947 :z 1.0 :w 14.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0947 :z 1.0 :w 14.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0947 :z 1.0 :w 22.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0947 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0947 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1259 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1259 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1259 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1259 :z 1.0 :w 14.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1259 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1259 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1259 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1259 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1259 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1259 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1572 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1572 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1572 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1572 :z 1.0 :w 20.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1572 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1572 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1572 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1572 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1572 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1884 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1884 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1884 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1884 :z 1.0 :w 19.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1884 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1884 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1884 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1884 :z 1.0 :w 10.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1884 :z 1.0 :w 19.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1884 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2197 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2197 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2197 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2197 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2197 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2197 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2197 :z 1.0 :w 19.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2197 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2197 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2197 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2509 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2509 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2509 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2509 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2509 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2509 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2509 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2509 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2509 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2509 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2822 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2822 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2822 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2822 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2822 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2822 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2822 :z 1.0 :w 17.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2822 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2822 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2822 :z 1.0 :w 10.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3134 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3134 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3134 :z 1.0 :w 10.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3134 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3134 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3134 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3134 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3134 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3134 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3134 :z 1.0 :w 17.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3447 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3447 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3447 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3447 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3447 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3447 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3447 :z 1.0 :w 20.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3447 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3447 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3447 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.7509 :z 1.0 :w 16.0)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -5,5 +5,7 @@
|
||||
;; name in dgo: debug
|
||||
;; dgos: ENGINE, GAME
|
||||
|
||||
(define-extern add-debug-line2d (function symbol bucket-id vector vector vector symbol))
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
|
||||
@@ -5,5 +5,433 @@
|
||||
;; name in dgo: history
|
||||
;; dgos: ENGINE, GAME
|
||||
|
||||
(defenum collide-status
|
||||
:bitfield #t
|
||||
:type uint64
|
||||
(on-surface 0)
|
||||
(on-ground 1)
|
||||
(touch-surface 2)
|
||||
(touch-wall 3)
|
||||
(touch-ceiling 4)
|
||||
(touch-actor 5)
|
||||
(on-special-surface 6)
|
||||
(touch-edge 7)
|
||||
(no-touch 8)
|
||||
(blocked 9)
|
||||
(on-water 10)
|
||||
(impact-surface 11)
|
||||
(touch-background 12)
|
||||
(stuck 13)
|
||||
(touch-ceiling-sticky 14)
|
||||
(glance 15)
|
||||
(probe-hit 16)
|
||||
)
|
||||
|
||||
(defenum history-channel
|
||||
:type uint8
|
||||
(trans 0)
|
||||
(transv 1)
|
||||
(transv-in 2)
|
||||
(transv-out 3)
|
||||
(intersect 4)
|
||||
(local-normal 5)
|
||||
(surface-normal 6)
|
||||
(collide-status 7)
|
||||
(pat 8)
|
||||
(time 9)
|
||||
(friction 10))
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
;; this file is debug only
|
||||
(declare-file (debug))
|
||||
(when *debug-segment*
|
||||
(defun history-channel->string ((arg0 history-channel))
|
||||
(case arg0
|
||||
(((history-channel friction))
|
||||
"friction"
|
||||
)
|
||||
(((history-channel transv-out))
|
||||
"transv-out"
|
||||
)
|
||||
(((history-channel pat))
|
||||
"pat"
|
||||
)
|
||||
(((history-channel transv-in))
|
||||
"transv-in"
|
||||
)
|
||||
(((history-channel trans))
|
||||
"trans"
|
||||
)
|
||||
(((history-channel local-normal))
|
||||
"local-normal"
|
||||
)
|
||||
(((history-channel collide-status))
|
||||
"collide-status"
|
||||
)
|
||||
(((history-channel time))
|
||||
"time"
|
||||
)
|
||||
(((history-channel intersect))
|
||||
"intersect"
|
||||
)
|
||||
(((history-channel surface-normal))
|
||||
"surface-normal"
|
||||
)
|
||||
(((history-channel transv))
|
||||
"transv"
|
||||
)
|
||||
(else
|
||||
"*unknown*"
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(deftype history-elt (structure)
|
||||
((record-tag-bytes uint8 4 :offset-assert 0)
|
||||
(record-tag uint32 :offset 0)
|
||||
(record-id uint16 :offset 0)
|
||||
(owner uint8 :offset 2)
|
||||
(channel history-channel :offset-assert 4)
|
||||
(timestamp time-frame :offset-assert 8)
|
||||
(origin vector :inline :offset-assert 16)
|
||||
(bytes uint8 16 :offset-assert 32)
|
||||
(vector vector :inline :offset 32)
|
||||
(float float :offset 32)
|
||||
(collide-status collide-status :offset 32)
|
||||
(collide-reaction-flag uint32 :offset 40)
|
||||
(pat pat-surface :offset 32)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x30
|
||||
:flag-assert #x900000030
|
||||
)
|
||||
|
||||
(deftype history-iterator (basic)
|
||||
((max-age uint32 :offset-assert 4)
|
||||
(owner uint8 :offset-assert 8)
|
||||
(proc process :offset-assert 12)
|
||||
(out basic :offset-assert 16)
|
||||
(channel-mask uint64 :offset-assert 24)
|
||||
(index int32 :offset-assert 32)
|
||||
(done? symbol :offset-assert 36)
|
||||
)
|
||||
:method-count-assert 12
|
||||
:size-assert #x28
|
||||
:flag-assert #xc00000028
|
||||
(:methods
|
||||
(new (symbol type uint32) _type_ 0)
|
||||
(frame-counter-delta (_type_ history-elt) time-frame 9)
|
||||
(update-entries! (_type_) history-elt 10)
|
||||
(history-iterator-method-11 (_type_ history-elt) float 11)
|
||||
)
|
||||
)
|
||||
|
||||
(deftype history (basic)
|
||||
((alloc-index int32 :offset-assert 4)
|
||||
(allocated-length int32 :offset-assert 8)
|
||||
(elts history-elt :inline :dynamic :offset 16)
|
||||
)
|
||||
:method-count-assert 11
|
||||
:size-assert #x10
|
||||
:flag-assert #xb00000010
|
||||
(:methods
|
||||
(new (symbol type int) _type_ 0)
|
||||
(clear-record-tags! (_type_ history-channel uint uint) history-elt 9)
|
||||
(clear-history-entries! (_type_) none 10)
|
||||
)
|
||||
)
|
||||
|
||||
(defmethod length history ((obj history))
|
||||
(-> obj allocated-length)
|
||||
)
|
||||
|
||||
(defmethod asize-of history ((obj history))
|
||||
(the-as int (+ (-> obj type size) (* 48 (-> obj allocated-length))))
|
||||
)
|
||||
|
||||
(defmethod new history ((allocation symbol) (type-to-make type) (arg0 int))
|
||||
(let ((v0-0 (object-new allocation type-to-make (the-as int (+ (-> type-to-make size) (* 48 arg0))))))
|
||||
(set! (-> v0-0 allocated-length) arg0)
|
||||
v0-0
|
||||
)
|
||||
)
|
||||
|
||||
(defmethod clear-history-entries! history ((obj history))
|
||||
"Iterates through each [[history-elt]] in the `elt` dynamic array
|
||||
For each entry:
|
||||
- clear `timestamp`
|
||||
- clear `record-tag`"
|
||||
(set! (-> obj alloc-index) 0)
|
||||
(countdown (v1-0 (-> obj allocated-length))
|
||||
(let ((a1-3 (-> obj elts v1-0)))
|
||||
(set! (-> a1-3 record-tag) (the-as uint 0))
|
||||
(set! (-> a1-3 timestamp) 0)
|
||||
)
|
||||
0
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
(define-perm *history* history (new 'debug 'history 4096))
|
||||
|
||||
(clear-history-entries! *history*)
|
||||
|
||||
;; WARN: new jak 2 until loop case, check carefully
|
||||
(defmethod clear-record-tags! history ((obj history) (arg0 history-channel) (arg1 uint) (arg2 uint))
|
||||
"First grab the latest [[history-elt]] at `alloc-index`
|
||||
1. update it's `channel`, `record-id` and `owner` from the provided args
|
||||
2. - if it's `record-tag` is zero -- return it
|
||||
- otherwise, iterate through all `elts` until one is found that does not match it's `timestamp`
|
||||
- if not `0` out the `record-tag` for that elt and continue iteration"
|
||||
(let* ((t1-0 (-> obj alloc-index))
|
||||
(v1-0 (-> obj elts))
|
||||
(v0-0 (-> v1-0 t1-0))
|
||||
)
|
||||
(let ((t2-0 (-> v0-0 record-tag))
|
||||
(t0-2 (-> v0-0 timestamp))
|
||||
)
|
||||
(set! (-> v0-0 channel) arg0)
|
||||
(set! (-> v0-0 record-id) arg1)
|
||||
(set! (-> v0-0 owner) arg2)
|
||||
(set! (-> v0-0 timestamp) (-> *display* base-clock frame-counter))
|
||||
(let* ((a1-4 (-> obj allocated-length))
|
||||
(a2-2 (mod (+ t1-0 1) a1-4))
|
||||
)
|
||||
(set! (-> obj alloc-index) a2-2)
|
||||
(when (nonzero? t2-0)
|
||||
(until #f
|
||||
(let ((a0-4 (-> v1-0 a2-2)))
|
||||
(if (!= t0-2 (-> a0-4 timestamp))
|
||||
(return v0-0)
|
||||
)
|
||||
(set! (-> a0-4 record-tag) (the-as uint 0))
|
||||
)
|
||||
(set! a2-2 (mod (+ a2-2 1) a1-4))
|
||||
)
|
||||
#f
|
||||
)
|
||||
)
|
||||
)
|
||||
v0-0
|
||||
)
|
||||
)
|
||||
|
||||
(defmethod new history-iterator ((allocation symbol) (type-to-make type) (arg0 uint32))
|
||||
(let ((v0-0 (object-new allocation type-to-make (the-as int (-> type-to-make size)))))
|
||||
(set! (-> v0-0 max-age) (the-as uint arg0))
|
||||
(set! (-> v0-0 owner) (the-as uint 1))
|
||||
(set! (-> v0-0 proc) #f)
|
||||
(set! (-> v0-0 out) *stdcon*)
|
||||
(set! (-> v0-0 channel-mask) (the-as uint -1))
|
||||
(set! (-> v0-0 index) (-> *history* alloc-index))
|
||||
(set! (-> v0-0 done?) #f)
|
||||
v0-0
|
||||
)
|
||||
)
|
||||
|
||||
(defmethod update-entries! history-iterator ((obj history-iterator))
|
||||
"Iterate through each [[history-elt]] in [[*history*]]
|
||||
- If we hit the end set `done?` to true
|
||||
- If the `timestamp` on the elt, minus the current framecounter exceeds `max-age`, we are also done, return #f
|
||||
- However if we find an elt who's `owner` matches the iterator's, break out early returning that `elt`"
|
||||
(let ((v1-0 *history*)
|
||||
(a1-2 (-> *display* base-clock frame-counter))
|
||||
)
|
||||
(while (not (-> obj done?))
|
||||
(let ((a2-1 (+ (-> obj index) -1)))
|
||||
(if (< a2-1 0)
|
||||
(set! a2-1 (+ (-> v1-0 allocated-length) -1))
|
||||
)
|
||||
(set! (-> obj index) a2-1)
|
||||
(if (= a2-1 (-> v1-0 alloc-index))
|
||||
(set! (-> obj done?) #t)
|
||||
)
|
||||
(let ((a2-5 (-> v1-0 elts a2-1)))
|
||||
(when (nonzero? (-> a2-5 record-tag))
|
||||
(when (< (the-as time-frame (-> obj max-age)) (- a1-2 (-> a2-5 timestamp)))
|
||||
(set! (-> obj done?) #t)
|
||||
(return (the-as history-elt #f))
|
||||
)
|
||||
(if (= (-> a2-5 owner) (-> obj owner))
|
||||
(return a2-5)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(the-as history-elt #f)
|
||||
)
|
||||
|
||||
(defmethod history-iterator-method-11 history-iterator ((obj history-iterator) (arg0 history-elt))
|
||||
"TODO - Unsure of the purpose
|
||||
`min(1.0, ((history-elt.timestamp - 1) + frame-counter) / (max-age + 1)) - 1.0`"
|
||||
(- 1.0 (fmin 1.0 (/ (the float (+ (- 1 (-> arg0 timestamp)) (-> *display* base-clock frame-counter)))
|
||||
(the float (+ (-> obj max-age) 1))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defmethod frame-counter-delta history-iterator ((obj history-iterator) (arg0 history-elt))
|
||||
"Returns the difference between [[*display*]]'s `base-clock.frame-counter` and the elt's `timestamp`"
|
||||
(- (-> *display* base-clock frame-counter) (-> arg0 timestamp))
|
||||
)
|
||||
|
||||
(defun history-print ((arg0 history-iterator))
|
||||
(local-vars
|
||||
(sv-16 basic)
|
||||
(sv-24 int)
|
||||
(sv-32 int)
|
||||
(sv-40 history-elt)
|
||||
(sv-48 time-frame)
|
||||
(sv-56 uint)
|
||||
(sv-64 collide-status)
|
||||
(sv-72 float)
|
||||
(sv-80 string)
|
||||
(sv-96 string)
|
||||
)
|
||||
(set! sv-16 (-> arg0 out))
|
||||
(set! sv-24 -1)
|
||||
(set! sv-32 0)
|
||||
(until #f
|
||||
(set! sv-40 (update-entries! arg0))
|
||||
(if (not sv-40)
|
||||
(goto cfg-71)
|
||||
)
|
||||
(when (logtest? (-> arg0 channel-mask) (ash 1 (-> sv-40 channel)))
|
||||
(set! sv-48 (frame-counter-delta arg0 sv-40))
|
||||
(set! sv-56 (-> sv-40 record-id))
|
||||
(cond
|
||||
((!= sv-24 sv-48)
|
||||
(set! sv-24 (the-as int sv-48))
|
||||
(set! sv-32 (the-as int sv-56))
|
||||
(format sv-16 "~3D ~4X " sv-48 (-> sv-40 record-id))
|
||||
)
|
||||
((!= sv-32 sv-56)
|
||||
(set! sv-32 (the-as int sv-56))
|
||||
(format sv-16 " ~4X " (-> sv-40 record-id))
|
||||
)
|
||||
(else
|
||||
(format sv-16 " ")
|
||||
)
|
||||
)
|
||||
(let ((v1-22 (-> sv-40 channel)))
|
||||
(cond
|
||||
((or (= v1-22 (history-channel trans))
|
||||
(or (= v1-22 (history-channel transv))
|
||||
(= v1-22 (history-channel transv-in))
|
||||
(= v1-22 (history-channel transv-out))
|
||||
(= v1-22 (history-channel intersect))
|
||||
)
|
||||
)
|
||||
(format
|
||||
sv-16
|
||||
"~-15S: ~14Mm ~14Mm ~14Mm~%"
|
||||
(history-channel->string (-> sv-40 channel))
|
||||
(-> sv-40 vector x)
|
||||
(-> sv-40 vector y)
|
||||
(-> sv-40 vector z)
|
||||
)
|
||||
)
|
||||
((or (= v1-22 (history-channel local-normal)) (= v1-22 (history-channel surface-normal)))
|
||||
(format
|
||||
sv-16
|
||||
"~-15S: ~14f ~14f ~14f~%"
|
||||
(history-channel->string (-> sv-40 channel))
|
||||
(-> sv-40 vector x)
|
||||
(-> sv-40 vector y)
|
||||
(-> sv-40 vector z)
|
||||
)
|
||||
)
|
||||
((= v1-22 (history-channel pat))
|
||||
(let* ((s2-0 (-> sv-40 vector x))
|
||||
(s5-2 format)
|
||||
(s4-2 sv-16)
|
||||
(s3-2 "~-15S: #x~6X mode:~-8S material:~-10S event:~S~%")
|
||||
(s1-0 (history-channel->string (-> sv-40 channel)))
|
||||
(s0-0 s2-0)
|
||||
)
|
||||
(set! sv-80 (pat-mode->string (the-as pat-surface s2-0)))
|
||||
(set! sv-96 (pat-material->string (the-as pat-surface s2-0)))
|
||||
(let ((t2-0 (pat-event->string (the-as pat-surface s2-0))))
|
||||
(s5-2 s4-2 s3-2 s1-0 s0-0 sv-80 sv-96 t2-0)
|
||||
)
|
||||
)
|
||||
)
|
||||
((= v1-22 (history-channel collide-status))
|
||||
(set! sv-64 (-> sv-40 collide-status))
|
||||
(set! sv-72 (-> sv-40 vector z))
|
||||
(format sv-16 "~-15S: #x~6X " (history-channel->string (-> sv-40 channel)) sv-64)
|
||||
(let ((s5-4 sv-64))
|
||||
(if (= (logand s5-4 (collide-status touch-background)) (collide-status touch-background))
|
||||
(format sv-16 "touch-background ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status on-special-surface)) (collide-status on-special-surface))
|
||||
(format sv-16 "on-special-surface ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-wall)) (collide-status touch-wall))
|
||||
(format sv-16 "touch-wall ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status on-surface)) (collide-status on-surface))
|
||||
(format sv-16 "on-surface ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status impact-surface)) (collide-status impact-surface))
|
||||
(format sv-16 "impact-surface ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-ceiling)) (collide-status touch-ceiling))
|
||||
(format sv-16 "touch-ceiling ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status on-ground)) (collide-status on-ground))
|
||||
(format sv-16 "on-ground ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status glance)) (collide-status glance))
|
||||
(format sv-16 "glance ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status blocked)) (collide-status blocked))
|
||||
(format sv-16 "blocked ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-edge)) (collide-status touch-edge))
|
||||
(format sv-16 "touch-edge ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-ceiling-sticky)) (collide-status touch-ceiling-sticky))
|
||||
(format sv-16 "touch-ceiling-sticky ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status on-water)) (collide-status on-water))
|
||||
(format sv-16 "on-water ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-actor)) (collide-status touch-actor))
|
||||
(format sv-16 "touch-actor ")
|
||||
)
|
||||
(if (= (logand (collide-status probe-hit) s5-4) (collide-status probe-hit))
|
||||
(format sv-16 "probe-hit ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status stuck)) (collide-status stuck))
|
||||
(format sv-16 "stuck ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status no-touch)) (collide-status no-touch))
|
||||
(format sv-16 "no-touch ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-surface)) (collide-status touch-surface))
|
||||
(format sv-16 "touch-surface ")
|
||||
)
|
||||
)
|
||||
(format sv-16 " #x~6X~%" sv-72)
|
||||
)
|
||||
((= v1-22 (history-channel friction))
|
||||
(let ((f30-0 (-> sv-40 vector x)))
|
||||
(format sv-16 "~-15S: ~f~%" (history-channel->string (-> sv-40 channel)) f30-0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
#f
|
||||
(label cfg-71)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
(bit-5 5)
|
||||
(subtask-complete 6)
|
||||
(bit-7 7)
|
||||
(bit-8 8)
|
||||
(complete 8)
|
||||
(bit-9 9)
|
||||
(bit-10 10)
|
||||
)
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
(defenum mc-status-code
|
||||
:type uint32
|
||||
; (busy 0)
|
||||
; (ok 1)
|
||||
(ok 1)
|
||||
; (bad-handle 2)
|
||||
; (format-failed 3)
|
||||
; (internal-error 4)
|
||||
@@ -197,7 +197,7 @@
|
||||
(:methods
|
||||
(continue-point-method-9 () none 9)
|
||||
(continue-point-method-10 () none 10)
|
||||
(continue-point-method-11 () none 11)
|
||||
(continue-point-method-11 (_type_) none 11)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -227,100 +227,100 @@
|
||||
)
|
||||
|
||||
(deftype game-info (basic)
|
||||
((mode symbol :offset-assert 4)
|
||||
(save-name basic :offset-assert 8)
|
||||
(life float :offset-assert 12)
|
||||
(life-max float :offset-assert 16)
|
||||
(money float :offset-assert 20)
|
||||
(money-total float :offset-assert 24)
|
||||
(money-per-level uint8 32 :offset-assert 28)
|
||||
(deaths-per-level uint8 32 :offset-assert 60)
|
||||
(buzzer-total float :offset-assert 92)
|
||||
(fuel float :offset-assert 96)
|
||||
(gem float :offset-assert 100)
|
||||
(gem-total float :offset-assert 104)
|
||||
(skill float :offset-assert 108)
|
||||
(skill-total float :offset-assert 112)
|
||||
(karma float :offset-assert 116)
|
||||
(eco-pill-dark float :offset-assert 120)
|
||||
(eco-pill-dark-total float :offset-assert 124)
|
||||
(features uint64 :offset-assert 128)
|
||||
(debug-features uint64 :offset-assert 136)
|
||||
(secrets uint32 :offset-assert 144)
|
||||
(unknown-pad1 uint32 :offset-assert 148)
|
||||
(purchase-secrets uint32 :offset-assert 152)
|
||||
(unknown-pad2 uint32 :offset-assert 156)
|
||||
(gun-type int32 :offset-assert 160)
|
||||
(gun-ammo float 4 :offset-assert 164)
|
||||
(shield float :offset-assert 180)
|
||||
(score float :offset-assert 184)
|
||||
(score-owner uint64 :offset-assert 192)
|
||||
(timer uint64 :offset-assert 200)
|
||||
(timer-owner uint64 :offset-assert 208)
|
||||
(timer-flash basic :offset-assert 216)
|
||||
(counter float :offset-assert 220)
|
||||
(counter-flash basic :offset-assert 224)
|
||||
(attack-id uint32 :offset-assert 228)
|
||||
(perm-list entity-perm-array :offset-assert 232)
|
||||
(task-perm-list entity-perm-array :offset-assert 236)
|
||||
(current-continue continue-point :offset-assert 240)
|
||||
(last-continue basic :offset-assert 244)
|
||||
(unknown-pad3 uint32 3 :offset-assert 248)
|
||||
(task-counter uint32 :offset-assert 260)
|
||||
(unknown-pad4 uint32 :offset-assert 264)
|
||||
(level-opened uint8 32 :offset-assert 268)
|
||||
(total-deaths int32 :offset-assert 300)
|
||||
(continue-deaths int32 :offset-assert 304)
|
||||
(task-deaths int32 :offset-assert 308)
|
||||
(total-trys int32 :offset-assert 312)
|
||||
(game-start-time time-frame :offset-assert 320)
|
||||
(continue-time time-frame :offset-assert 328)
|
||||
(death-time time-frame :offset-assert 336)
|
||||
(hit-time time-frame :offset-assert 344)
|
||||
(task-pickup-time time-frame :offset-assert 352)
|
||||
(unknown-array1 (array uint64) :offset-assert 360)
|
||||
(unknown-array2 (array uint64) :offset-assert 364)
|
||||
(unknown-array3 (array uint64) :offset-assert 368)
|
||||
(death-pos vector-array :offset 372)
|
||||
(stop-watch-start uint64 :offset-assert 376)
|
||||
(stop-watch-stop uint64 :offset-assert 384)
|
||||
(blackout-time time-frame :offset-assert 392)
|
||||
(letterbox-time time-frame :offset-assert 400)
|
||||
(hint-play-time time-frame :offset-assert 408)
|
||||
(display-text-time time-frame :offset-assert 416)
|
||||
(display-text-handle uint64 :offset-assert 424)
|
||||
(death-movie-tick int32 :offset-assert 432)
|
||||
(want-auto-save symbol :offset-assert 436)
|
||||
(auto-save-proc handle :offset-assert 440)
|
||||
(auto-save-status mc-status-code :offset-assert 448)
|
||||
(auto-save-card int32 :offset-assert 452)
|
||||
(auto-save-which int32 :offset-assert 456)
|
||||
(auto-save-count int32 :offset-assert 460)
|
||||
(pov-camera-handle uint64 :offset-assert 464)
|
||||
(other-camera-handle uint64 :offset-assert 472)
|
||||
(controller uint64 2 :offset-assert 480)
|
||||
(race-timer uint64 :offset-assert 496)
|
||||
(race-current-lap-count int32 :offset-assert 504)
|
||||
(race-total-lap-count int32 :offset-assert 508)
|
||||
(race-position int32 :offset-assert 512)
|
||||
(race-number-turbos int32 :offset-assert 516)
|
||||
(bot-health uint32 3 :offset-assert 520)
|
||||
(demo-state uint32 :offset-assert 532)
|
||||
(wanted-flash basic :offset-assert 536)
|
||||
(distance float :offset-assert 540)
|
||||
(kiosk-timeout uint64 :offset-assert 544)
|
||||
(pause-start-time time-frame :offset-assert 552)
|
||||
(game-score basic :offset-assert 560)
|
||||
(goal float :offset-assert 564)
|
||||
(miss float :offset-assert 568)
|
||||
(miss-max float :offset-assert 572)
|
||||
(unknown-array4 (array uint64) :offset-assert 576)
|
||||
(live-eco-pill-count int32 :offset-assert 580)
|
||||
(live-gem-count int32 :offset-assert 584)
|
||||
(air-supply float :offset-assert 588)
|
||||
(homing-beacon int32 :offset-assert 592)
|
||||
(dark-eco-pickup int32 :offset-assert 596)
|
||||
(green-eco-pickup int32 :offset-assert 600)
|
||||
((mode symbol :offset-assert 4)
|
||||
(save-name string :offset-assert 8)
|
||||
(life float :offset-assert 12)
|
||||
(life-max float :offset-assert 16)
|
||||
(money float :offset-assert 20)
|
||||
(money-total float :offset-assert 24)
|
||||
(money-per-level uint8 32 :offset-assert 28)
|
||||
(deaths-per-level uint8 32 :offset-assert 60)
|
||||
(buzzer-total float :offset-assert 92)
|
||||
(fuel float :offset-assert 96)
|
||||
(gem float :offset-assert 100)
|
||||
(gem-total float :offset-assert 104)
|
||||
(skill float :offset-assert 108)
|
||||
(skill-total float :offset-assert 112)
|
||||
(karma float :offset-assert 116)
|
||||
(eco-pill-dark float :offset-assert 120)
|
||||
(eco-pill-dark-total float :offset-assert 124)
|
||||
(features uint64 :offset-assert 128)
|
||||
(debug-features uint64 :offset-assert 136)
|
||||
(secrets uint32 :offset-assert 144)
|
||||
(unknown-pad1 uint32 :offset-assert 148)
|
||||
(purchase-secrets uint32 :offset-assert 152)
|
||||
(unknown-pad2 uint32 :offset-assert 156)
|
||||
(gun-type int32 :offset-assert 160)
|
||||
(gun-ammo float 4 :offset-assert 164)
|
||||
(shield float :offset-assert 180)
|
||||
(score float :offset-assert 184)
|
||||
(score-owner uint64 :offset-assert 192)
|
||||
(timer uint64 :offset-assert 200)
|
||||
(timer-owner uint64 :offset-assert 208)
|
||||
(timer-flash basic :offset-assert 216)
|
||||
(counter float :offset-assert 220)
|
||||
(counter-flash basic :offset-assert 224)
|
||||
(attack-id uint32 :offset-assert 228)
|
||||
(perm-list entity-perm-array :offset-assert 232)
|
||||
(task-perm-list entity-perm-array :offset-assert 236)
|
||||
(current-continue continue-point :offset-assert 240)
|
||||
(last-continue continue-point :offset-assert 244)
|
||||
(unknown-pad3 uint32 3 :offset-assert 248)
|
||||
(task-counter uint32 :offset-assert 260)
|
||||
(unknown-pad4 uint32 :offset-assert 264)
|
||||
(level-opened uint8 32 :offset-assert 268)
|
||||
(total-deaths int32 :offset-assert 300)
|
||||
(continue-deaths int32 :offset-assert 304)
|
||||
(task-deaths int32 :offset-assert 308)
|
||||
(total-trys int32 :offset-assert 312)
|
||||
(game-start-time time-frame :offset-assert 320)
|
||||
(continue-time time-frame :offset-assert 328)
|
||||
(death-time time-frame :offset-assert 336)
|
||||
(hit-time time-frame :offset-assert 344)
|
||||
(task-pickup-time time-frame :offset-assert 352)
|
||||
(unknown-array1 (array uint64) :offset-assert 360)
|
||||
(unknown-array2 (array uint64) :offset-assert 364)
|
||||
(unknown-array3 (array uint64) :offset-assert 368)
|
||||
(death-pos vector-array :offset 372)
|
||||
(stop-watch-start uint64 :offset-assert 376)
|
||||
(stop-watch-stop uint64 :offset-assert 384)
|
||||
(blackout-time time-frame :offset-assert 392)
|
||||
(letterbox-time time-frame :offset-assert 400)
|
||||
(hint-play-time time-frame :offset-assert 408)
|
||||
(display-text-time time-frame :offset-assert 416)
|
||||
(display-text-handle uint64 :offset-assert 424)
|
||||
(death-movie-tick int32 :offset-assert 432)
|
||||
(want-auto-save symbol :offset-assert 436)
|
||||
(auto-save-proc handle :offset-assert 440)
|
||||
(auto-save-status mc-status-code :offset-assert 448)
|
||||
(auto-save-card int32 :offset-assert 452)
|
||||
(auto-save-which int32 :offset-assert 456)
|
||||
(auto-save-count int32 :offset-assert 460)
|
||||
(pov-camera-handle uint64 :offset-assert 464)
|
||||
(other-camera-handle uint64 :offset-assert 472)
|
||||
(controller uint64 2 :offset-assert 480)
|
||||
(race-timer uint64 :offset-assert 496)
|
||||
(race-current-lap-count int32 :offset-assert 504)
|
||||
(race-total-lap-count int32 :offset-assert 508)
|
||||
(race-position int32 :offset-assert 512)
|
||||
(race-number-turbos int32 :offset-assert 516)
|
||||
(bot-health uint32 3 :offset-assert 520)
|
||||
(demo-state uint32 :offset-assert 532)
|
||||
(wanted-flash basic :offset-assert 536)
|
||||
(distance float :offset-assert 540)
|
||||
(kiosk-timeout uint64 :offset-assert 544)
|
||||
(pause-start-time time-frame :offset-assert 552)
|
||||
(game-score (array highscore-info) :offset-assert 560)
|
||||
(goal float :offset-assert 564)
|
||||
(miss float :offset-assert 568)
|
||||
(miss-max float :offset-assert 572)
|
||||
(unknown-array4 (array uint64) :offset-assert 576)
|
||||
(live-eco-pill-count int32 :offset-assert 580)
|
||||
(live-gem-count int32 :offset-assert 584)
|
||||
(air-supply float :offset-assert 588)
|
||||
(homing-beacon int32 :offset-assert 592)
|
||||
(dark-eco-pickup int32 :offset-assert 596)
|
||||
(green-eco-pickup int32 :offset-assert 600)
|
||||
)
|
||||
:method-count-assert 31
|
||||
:size-assert #x25c
|
||||
@@ -328,8 +328,8 @@
|
||||
(:methods
|
||||
(initialize! (_type_ symbol game-save string) _type_ 9)
|
||||
(game-info-method-10 () none 10)
|
||||
(game-info-method-11 () none 11)
|
||||
(game-info-method-12 () none 12)
|
||||
(task-complete? (_type_ game-task) symbol 11)
|
||||
(game-info-method-12 (_type_) none 12)
|
||||
(game-info-method-13 () none 13)
|
||||
(game-info-method-14 () none 14)
|
||||
(game-info-method-15 () none 15)
|
||||
|
||||
@@ -5,5 +5,8 @@
|
||||
;; name in dgo: settings
|
||||
;; dgos: ENGINE, GAME
|
||||
|
||||
;; NOTE - for text
|
||||
(define-extern *setting-control* setting-control)
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
|
||||
@@ -7,3 +7,379 @@
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
(defmethod ray-capsule-intersect cylinder ((obj cylinder) (ray1 vector) (ray2 vector))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
(vf2 :class vf)
|
||||
(vf3 :class vf)
|
||||
(vf4 :class vf)
|
||||
)
|
||||
(init-vf0-vector)
|
||||
(let ((t2-0 (new 'stack-no-clear 'vector))
|
||||
(s4-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
0.0
|
||||
0.0
|
||||
(let ((f30-0 (ray-cylinder-intersect ray1 ray2 (-> obj origin) (-> obj axis) (-> obj radius) (-> obj length) t2-0))
|
||||
)
|
||||
(let ((f0-5 (ray-sphere-intersect ray1 ray2 (-> obj origin) (-> obj radius))))
|
||||
(if (and (>= f0-5 0.0) (or (< f30-0 0.0) (< f0-5 f30-0)))
|
||||
(set! f30-0 f0-5)
|
||||
)
|
||||
)
|
||||
(let ((v1-5 s4-0))
|
||||
(let ((a0-3 (-> obj origin))
|
||||
(a1-3 (-> obj axis))
|
||||
(f0-6 (-> obj length))
|
||||
)
|
||||
(.lvf vf2 (&-> a1-3 quad))
|
||||
(.lvf vf1 (&-> a0-3 quad))
|
||||
(let ((a0-4 f0-6))
|
||||
(.mov vf3 a0-4)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> v1-5 quad) vf4)
|
||||
)
|
||||
(let ((f0-8 (ray-sphere-intersect ray1 ray2 s4-0 (-> obj radius))))
|
||||
(if (and (>= f0-8 0.0) (or (< f30-0 0.0) (< f0-8 f30-0)))
|
||||
(set! f30-0 f0-8)
|
||||
)
|
||||
)
|
||||
f30-0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(deftype cylinder-verts (structure)
|
||||
((vert vector 24 :inline :offset-assert 0)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x180
|
||||
:flag-assert #x900000180
|
||||
)
|
||||
|
||||
(defmethod debug-draw cylinder ((obj cylinder) (arg0 vector4w))
|
||||
(local-vars
|
||||
(sv-896 matrix)
|
||||
(sv-912 vector)
|
||||
(sv-928 vector)
|
||||
(sv-944 vector)
|
||||
(sv-960 vector)
|
||||
(sv-976 vector)
|
||||
(sv-992 vector)
|
||||
(sv-1008 vector)
|
||||
(sv-1024 vector)
|
||||
(sv-1040 vector)
|
||||
(sv-1056 vector)
|
||||
(sv-1072 vector)
|
||||
(sv-1088 vector)
|
||||
)
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
(vf2 :class vf)
|
||||
(vf3 :class vf)
|
||||
(vf4 :class vf)
|
||||
(vf5 :class vf)
|
||||
(vf6 :class vf)
|
||||
)
|
||||
(init-vf0-vector)
|
||||
(let ((s1-0 (new 'stack-no-clear 'vector))
|
||||
(s0-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
(if (< 0.999 (fabs (-> obj axis y)))
|
||||
(vector-cross! s1-0 (-> obj axis) (new 'static 'vector :z 1.0))
|
||||
(vector-cross! s1-0 (-> obj axis) (new 'static 'vector :y 1.0))
|
||||
)
|
||||
(vector-normalize! s1-0 (-> obj radius))
|
||||
(vector-float*! s0-0 (-> obj axis) (* 0.125 (-> obj length)))
|
||||
(let ((s5-0 (new 'stack-no-clear 'cylinder-verts))
|
||||
(s4-0 (new 'stack-no-clear 'cylinder-verts))
|
||||
(s3-0 (new 'stack-no-clear 'matrix))
|
||||
)
|
||||
(matrix-axis-angle! s3-0 (-> obj axis) 4096.0)
|
||||
(set! sv-896 (new 'stack-no-clear 'matrix))
|
||||
(vector-matrix*! (the-as vector sv-896) (-> obj origin) s3-0)
|
||||
(let ((v1-6 (-> s3-0 trans)))
|
||||
(.lvf vf4 (&-> (-> obj origin) quad))
|
||||
(.lvf vf5 (&-> sv-896 vector 0 quad))
|
||||
(.mov.vf vf6 vf0 :mask #b1000)
|
||||
(.sub.vf vf6 vf4 vf5 :mask #b111)
|
||||
(.svf (&-> v1-6 quad) vf6)
|
||||
)
|
||||
(dotimes (v1-7 8)
|
||||
(vector+! (-> s5-0 vert (+ v1-7 8)) (-> obj origin) s1-0)
|
||||
(let ((a0-16 (-> s5-0 vert (+ v1-7 8))))
|
||||
(let ((a1-13 (-> s5-0 vert (+ v1-7 8)))
|
||||
(a2-4 s0-0)
|
||||
(f0-5 (the float v1-7))
|
||||
)
|
||||
(.lvf vf2 (&-> a2-4 quad))
|
||||
(.lvf vf1 (&-> a1-13 quad))
|
||||
(let ((a1-14 f0-5))
|
||||
(.mov vf3 a1-14)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> a0-16 quad) vf4)
|
||||
)
|
||||
)
|
||||
(dotimes (s0-1 8)
|
||||
(set! sv-944 (-> s5-0 vert s0-1))
|
||||
(set! sv-912 (-> obj origin))
|
||||
(set! sv-928 s1-0)
|
||||
(let ((f0-8 (cos (* 2048.0 (the float (- 7 s0-1))))))
|
||||
(.lvf vf2 (&-> sv-928 quad))
|
||||
(.lvf vf1 (&-> sv-912 quad))
|
||||
(let ((v1-19 f0-8))
|
||||
(.mov vf3 v1-19)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> sv-944 quad) vf4)
|
||||
(set! sv-992 (-> s5-0 vert s0-1))
|
||||
(set! sv-960 (-> s5-0 vert s0-1))
|
||||
(set! sv-976 (-> obj axis))
|
||||
(let ((f0-13 (* (- (-> obj radius)) (sin (* 2048.0 (the float (- 7 s0-1)))))))
|
||||
(.lvf vf2 (&-> sv-976 quad))
|
||||
(.lvf vf1 (&-> sv-960 quad))
|
||||
(let ((v1-33 f0-13))
|
||||
(.mov vf3 v1-33)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> sv-992 quad) vf4)
|
||||
(set! sv-1040 (-> s5-0 vert (+ s0-1 16)))
|
||||
(set! sv-1008 (-> obj origin))
|
||||
(set! sv-1024 s1-0)
|
||||
(let ((f0-16 (cos (* 2048.0 (the float s0-1)))))
|
||||
(.lvf vf2 (&-> sv-1024 quad))
|
||||
(.lvf vf1 (&-> sv-1008 quad))
|
||||
(let ((v1-43 f0-16))
|
||||
(.mov vf3 v1-43)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> sv-1040 quad) vf4)
|
||||
(set! sv-1088 (-> s5-0 vert (+ s0-1 16)))
|
||||
(set! sv-1056 (-> s5-0 vert (+ s0-1 16)))
|
||||
(set! sv-1072 (-> obj axis))
|
||||
(let ((f0-21 (+ (-> obj length) (* (-> obj radius) (sin (* 2048.0 (the float s0-1)))))))
|
||||
(.lvf vf2 (&-> sv-1072 quad))
|
||||
(.lvf vf1 (&-> sv-1056 quad))
|
||||
(let ((v1-57 f0-21))
|
||||
(.mov vf3 v1-57)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> sv-1088 quad) vf4)
|
||||
)
|
||||
(dotimes (s2-1 16)
|
||||
(dotimes (s1-1 24)
|
||||
(vector-matrix*! (-> s4-0 vert s1-1) (-> s5-0 vert s1-1) s3-0)
|
||||
(camera-line (-> s5-0 vert s1-1) (-> s4-0 vert s1-1) arg0)
|
||||
(if (nonzero? s1-1)
|
||||
(camera-line (-> s5-0 vert s1-1) (-> s5-0 vert (+ s1-1 -1)) arg0)
|
||||
)
|
||||
)
|
||||
(let ((v1-77 s5-0))
|
||||
(set! s5-0 s4-0)
|
||||
(set! s4-0 v1-77)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
)
|
||||
|
||||
(defun ray-arbitrary-circle-intersect ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector) (arg4 float))
|
||||
(let* ((v1-1 (vector-! (new 'stack-no-clear 'vector) arg2 arg0))
|
||||
(f0-2 (/ (vector-dot v1-1 arg3) (vector-dot arg1 arg3)))
|
||||
)
|
||||
(cond
|
||||
((or (< 1.0 f0-2) (< f0-2 0.0))
|
||||
-100000000.0
|
||||
)
|
||||
((let ((a0-8 (new 'stack-no-clear 'vector)))
|
||||
(vector-float*! a0-8 arg1 f0-2)
|
||||
(vector-! a0-8 a0-8 v1-1)
|
||||
(< (vector-dot a0-8 a0-8) (* arg4 arg4))
|
||||
)
|
||||
f0-2
|
||||
)
|
||||
(else
|
||||
-100000000.0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defmethod ray-flat-cyl-intersect cylinder-flat ((obj cylinder-flat) (arg0 vector) (arg1 vector))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
(vf2 :class vf)
|
||||
(vf3 :class vf)
|
||||
(vf4 :class vf)
|
||||
)
|
||||
(init-vf0-vector)
|
||||
(let ((gp-0 (new 'stack-no-clear 'vector))
|
||||
(s5-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
0.0
|
||||
0.0
|
||||
(let ((f30-0 (ray-cylinder-intersect arg0 arg1 (-> obj origin) (-> obj axis) (-> obj radius) (-> obj length) gp-0))
|
||||
)
|
||||
(let ((f0-5 (ray-arbitrary-circle-intersect arg0 arg1 (-> obj origin) (-> obj axis) (-> obj radius))))
|
||||
(when (and (>= f0-5 0.0) (or (< f30-0 0.0) (< f0-5 f30-0)))
|
||||
(set! f30-0 f0-5)
|
||||
(set! (-> gp-0 quad) (-> obj origin quad))
|
||||
)
|
||||
)
|
||||
(let ((v1-5 s5-0))
|
||||
(let ((a0-5 (-> obj origin))
|
||||
(a1-3 (-> obj axis))
|
||||
(f0-6 (-> obj length))
|
||||
)
|
||||
(.lvf vf2 (&-> a1-3 quad))
|
||||
(.lvf vf1 (&-> a0-5 quad))
|
||||
(let ((a0-6 f0-6))
|
||||
(.mov vf3 a0-6)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> v1-5 quad) vf4)
|
||||
)
|
||||
(let ((f0-8 (ray-arbitrary-circle-intersect arg0 arg1 s5-0 (-> obj axis) (-> obj radius))))
|
||||
(when (and (>= f0-8 0.0) (or (< f30-0 0.0) (< f0-8 f30-0)))
|
||||
(set! f30-0 f0-8)
|
||||
(set! (-> gp-0 quad) (-> s5-0 quad))
|
||||
)
|
||||
)
|
||||
f30-0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(deftype cylinder-flat-verts (structure)
|
||||
((vert vector 10 :inline :offset-assert 0)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #xa0
|
||||
:flag-assert #x9000000a0
|
||||
)
|
||||
|
||||
(defmethod debug-draw cylinder-flat ((obj cylinder-flat) (arg0 vector4w))
|
||||
(local-vars (sv-448 vector))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
(vf2 :class vf)
|
||||
(vf3 :class vf)
|
||||
(vf4 :class vf)
|
||||
(vf5 :class vf)
|
||||
(vf6 :class vf)
|
||||
)
|
||||
(init-vf0-vector)
|
||||
(let ((s1-0 (new 'stack-no-clear 'vector))
|
||||
(s0-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
(if (< 0.999 (fabs (-> obj axis y)))
|
||||
(vector-cross! s1-0 (-> obj axis) (new 'static 'vector :z 1.0))
|
||||
(vector-cross! s1-0 (-> obj axis) (new 'static 'vector :y 1.0))
|
||||
)
|
||||
(vector-normalize! s1-0 (-> obj radius))
|
||||
(vector-float*! s0-0 (-> obj axis) (* 0.14285715 (-> obj length)))
|
||||
(let ((s5-0 (new 'stack-no-clear 'cylinder-flat-verts))
|
||||
(s4-0 (new 'stack-no-clear 'cylinder-flat-verts))
|
||||
(s3-0 (new 'stack-no-clear 'matrix))
|
||||
)
|
||||
(matrix-axis-angle! s3-0 (-> obj axis) 4096.0)
|
||||
(set! sv-448 (new 'stack-no-clear 'vector))
|
||||
(vector-matrix*! sv-448 (-> obj origin) s3-0)
|
||||
(let ((v1-6 (-> s3-0 trans)))
|
||||
(.lvf vf4 (&-> (-> obj origin) quad))
|
||||
(.lvf vf5 (&-> sv-448 quad))
|
||||
(.mov.vf vf6 vf0 :mask #b1000)
|
||||
(.sub.vf vf6 vf4 vf5 :mask #b111)
|
||||
(.svf (&-> v1-6 quad) vf6)
|
||||
)
|
||||
(dotimes (v1-7 8)
|
||||
(vector+! (-> s5-0 vert (+ v1-7 1)) (-> obj origin) s1-0)
|
||||
(let ((a0-16 (-> s5-0 vert (+ v1-7 1))))
|
||||
(let ((a1-13 (-> s5-0 vert (+ v1-7 1)))
|
||||
(a2-4 s0-0)
|
||||
(f0-5 (the float v1-7))
|
||||
)
|
||||
(.lvf vf2 (&-> a2-4 quad))
|
||||
(.lvf vf1 (&-> a1-13 quad))
|
||||
(let ((a1-14 f0-5))
|
||||
(.mov vf3 a1-14)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> a0-16 quad) vf4)
|
||||
)
|
||||
)
|
||||
(set! (-> s5-0 vert 0 quad) (-> obj origin quad))
|
||||
(let ((v1-11 (-> s5-0 vert 9)))
|
||||
(let ((a0-19 (-> obj origin))
|
||||
(a1-15 (-> obj axis))
|
||||
(f0-6 (-> obj length))
|
||||
)
|
||||
(.lvf vf2 (&-> a1-15 quad))
|
||||
(.lvf vf1 (&-> a0-19 quad))
|
||||
(let ((a0-20 f0-6))
|
||||
(.mov vf3 a0-20)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> v1-11 quad) vf4)
|
||||
)
|
||||
(dotimes (s2-1 16)
|
||||
(dotimes (s1-1 10)
|
||||
(vector-matrix*! (-> s4-0 vert s1-1) (-> s5-0 vert s1-1) s3-0)
|
||||
(camera-line (-> s5-0 vert s1-1) (-> s4-0 vert s1-1) arg0)
|
||||
(if (nonzero? s1-1)
|
||||
(camera-line (-> s5-0 vert s1-1) (-> s5-0 vert (+ s1-1 -1)) arg0)
|
||||
)
|
||||
)
|
||||
(let ((v1-28 s5-0))
|
||||
(set! s5-0 s4-0)
|
||||
(set! s4-0 v1-28)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -88,6 +88,8 @@
|
||||
(movie2 18) ;; 0x40000
|
||||
)
|
||||
|
||||
(declare-type game-text-id uint32)
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
(deftype level-vis-info (basic)
|
||||
@@ -126,14 +128,14 @@
|
||||
(other-name-1 symbol :offset 24)
|
||||
(packages pair :offset-assert 32)
|
||||
(memory-mode uint32 :offset-assert 36)
|
||||
(music-bank basic :offset-assert 40)
|
||||
(ambient-sounds basic :offset-assert 44)
|
||||
(music-bank symbol :offset-assert 40)
|
||||
(ambient-sounds symbol :offset-assert 44)
|
||||
(sound-reverb float :offset-assert 48)
|
||||
(mood-func symbol :offset-assert 52)
|
||||
(mood-init symbol :offset-assert 56)
|
||||
(ocean basic :offset-assert 60)
|
||||
(sky basic :offset-assert 64)
|
||||
(use-camera-other basic :offset-assert 68)
|
||||
(ocean symbol :offset-assert 60)
|
||||
(sky symbol :offset-assert 64)
|
||||
(use-camera-other symbol :offset-assert 68)
|
||||
(part-engine-max int32 :offset-assert 72)
|
||||
(city-map-bits uint64 :offset-assert 80)
|
||||
(continues pair :offset-assert 88)
|
||||
@@ -154,7 +156,7 @@
|
||||
(kill-func symbol :offset-assert 156)
|
||||
(borrow-size uint16 2 :offset-assert 160)
|
||||
(borrow-level symbol 2 :offset-assert 164)
|
||||
(borrow-display? basic 2 :offset-assert 172)
|
||||
(borrow-display? symbol 2 :offset-assert 172)
|
||||
(base-task-mask task-mask :offset-assert 180)
|
||||
(texture-anim symbol 10 :offset-assert 184)
|
||||
(texture-anim-tfrag symbol :offset 184)
|
||||
@@ -179,6 +181,7 @@
|
||||
(ocean-alpha float :offset-assert 280)
|
||||
(extra-sound-bank pair :offset-assert 284)
|
||||
)
|
||||
:pack-me
|
||||
:method-count-assert 9
|
||||
:size-assert #x120
|
||||
:flag-assert #x900000120
|
||||
@@ -287,7 +290,7 @@
|
||||
(debug-print-region-splitbox (_type_ vector object) none 20)
|
||||
(get-art-group-by-name (_type_ string) art-group 21)
|
||||
(level-method-22 () none 22)
|
||||
(level-method-23 () none 23)
|
||||
(lookup-text (_type_ game-text-id symbol) string 23)
|
||||
(level-method-24 () none 24)
|
||||
(birth (_type_) _type_ 25)
|
||||
(level-status-update! (_type_ symbol) _type_ 26)
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
(new (symbol type process-drawable int float collide-spec) _type_ 0)
|
||||
(initialize (_type_ process-drawable int float collide-spec) impact-control :behavior process 9)
|
||||
(update-from-cspace (_type_) none 10)
|
||||
(impact-control-method-11 () none 11)
|
||||
(impact-control-method-11 (_type_) none 11)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
@@ -7,3 +7,101 @@
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
(deftype mech-info (basic)
|
||||
((entity basic :offset-assert 4)
|
||||
(hud uint64 1 :offset-assert 8)
|
||||
(mech-trans vector :inline :offset-assert 16)
|
||||
(mech-quat vector :inline :offset-assert 32)
|
||||
(mech-scale vector :inline :offset-assert 48)
|
||||
(engine-sound-id uint32 :offset-assert 64)
|
||||
(engine-sound-volume float :offset-assert 68)
|
||||
(engine-sound-pitch float :offset-assert 72)
|
||||
(thrust-sound-id uint32 :offset-assert 76)
|
||||
(drag-sound-id uint32 :offset-assert 80)
|
||||
(whine-sound-id uint32 :offset-assert 84)
|
||||
(mech-start-time time-frame :offset-assert 88)
|
||||
(mech-time time-frame :offset-assert 96)
|
||||
(no-get-off-time time-frame :offset-assert 104)
|
||||
(stick-lock basic :offset-assert 112)
|
||||
(stick-off basic :offset-assert 116)
|
||||
(forward-vel meters :offset-assert 120)
|
||||
(jump-thrust meters :offset-assert 124)
|
||||
(jump-thrust-fuel float :offset-assert 128)
|
||||
(unstuck-time time-frame :offset-assert 136)
|
||||
(stuck-count int32 :offset-assert 144)
|
||||
(back-touch-point vector :inline :offset-assert 160)
|
||||
(back-touch-trans vector :inline :offset-assert 176)
|
||||
(back-touch-time time-frame :offset-assert 192)
|
||||
(attack-id uint32 :offset-assert 200)
|
||||
(shield-value float :offset-assert 204)
|
||||
(shield-max float :offset-assert 208)
|
||||
(walk-anim-leg int32 :offset-assert 212)
|
||||
(state-impact? symbol 1 :offset-assert 216)
|
||||
(state-impact impact-control 1 :inline :offset-assert 224)
|
||||
(thruster-flame-width meters :offset-assert 304)
|
||||
(thruster-flame-length meters :offset-assert 308)
|
||||
(thruster-local-pos vector 2 :inline :offset-assert 320)
|
||||
(exhaust-local-pos vector 2 :inline :offset-assert 352)
|
||||
(exhaust-local-dir vector 2 :inline :offset-assert 384)
|
||||
(smoke-local-pos vector 2 :inline :offset-assert 416)
|
||||
(smoke-local-vel vector 2 :inline :offset-assert 448)
|
||||
(particle-system-2d basic :offset-assert 480)
|
||||
(particle-system-3d basic :offset-assert 484)
|
||||
(part-thruster basic :offset-assert 488)
|
||||
(part-thruster-scale-x sp-field-init-spec :offset-assert 492)
|
||||
(part-thruster-scale-y sp-field-init-spec :offset-assert 496)
|
||||
(part-quat quaternion :offset-assert 500)
|
||||
(part-vel vector :offset-assert 504)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x1fc
|
||||
:flag-assert #x9000001fc
|
||||
)
|
||||
|
||||
(let ((a0-2 (new 'static 'skeleton-group
|
||||
:name "skel-mech"
|
||||
:extra #f
|
||||
:info #f
|
||||
:art-group-name "mech"
|
||||
:bounds (new 'static 'vector :w 18432.0)
|
||||
:version #x7
|
||||
:shadow 2
|
||||
:origin-joint-index 3
|
||||
:shadow-joint-index 3
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> a0-2 jgeo) 0)
|
||||
(set! (-> a0-2 janim) 3)
|
||||
(set! (-> a0-2 mgeo 0) 1)
|
||||
(set! (-> a0-2 lod-dist 0) 4095996000.0)
|
||||
(add-to-loading-level a0-2)
|
||||
)
|
||||
|
||||
(define *mech-shadow-control*
|
||||
(new 'static 'shadow-control :settings (new 'static 'shadow-settings
|
||||
:center (new 'static 'vector :w (the-as float #xa))
|
||||
:shadow-dir (new 'static 'vector :y -1.0 :w 614400.0)
|
||||
:bot-plane (new 'static 'plane :y 1.0 :w 81920.0)
|
||||
:top-plane (new 'static 'plane :y 1.0 :w 2048.0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(let ((a0-3 (new 'static 'skeleton-group
|
||||
:name "skel-mech-explode"
|
||||
:extra #f
|
||||
:info #f
|
||||
:art-group-name "mech"
|
||||
:bounds (new 'static 'vector :w 18432.0)
|
||||
:version #x7
|
||||
:origin-joint-index 3
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> a0-3 jgeo) 39)
|
||||
(set! (-> a0-3 janim) 41)
|
||||
(set! (-> a0-3 mgeo 0) 40)
|
||||
(set! (-> a0-3 lod-dist 0) 4095996000.0)
|
||||
(add-to-loading-level a0-3)
|
||||
)
|
||||
|
||||
@@ -18,10 +18,10 @@
|
||||
)
|
||||
|
||||
(deftype game-text-info (basic)
|
||||
((length int32 :offset-assert 4)
|
||||
(language-id int32 :offset-assert 8)
|
||||
(group-name string :offset-assert 12)
|
||||
(data game-text :dynamic :offset-assert 16)
|
||||
((length int32 :offset-assert 4)
|
||||
(language-id int32 :offset-assert 8)
|
||||
(group-name string :offset-assert 12)
|
||||
(data game-text :inline :dynamic :offset-assert 16)
|
||||
)
|
||||
:method-count-assert 10
|
||||
:size-assert #x10
|
||||
|
||||
@@ -11,9 +11,9 @@
|
||||
;; DECOMP BEGINS
|
||||
|
||||
(deftype script-form (structure)
|
||||
((name basic :offset-assert 0)
|
||||
(spec basic :offset-assert 4)
|
||||
(func basic :offset-assert 8)
|
||||
((name string :offset-assert 0)
|
||||
(spec basic :offset-assert 4)
|
||||
(func basic :offset-assert 8)
|
||||
)
|
||||
:method-count-assert 10
|
||||
:size-assert #xc
|
||||
|
||||
@@ -36,13 +36,13 @@
|
||||
:size-assert #x10
|
||||
:flag-assert #x1000000010
|
||||
(:methods
|
||||
(sync-info-method-9 () none 9)
|
||||
(sync-info-method-10 () none 10)
|
||||
(sync-info-method-11 () none 11)
|
||||
(sync-info-method-12 () none 12)
|
||||
(sync-info-method-13 () none 13)
|
||||
(sync-info-method-14 () none 14)
|
||||
(sync-info-method-15 () none 15)
|
||||
(sync-info-method-9 (_type_) none 9)
|
||||
(get-phase-offset (_type_) float 10)
|
||||
(get-norm! (_type_) float 11)
|
||||
(multiply-norm! (_type_ float object) float 12)
|
||||
(initialize! () none 13)
|
||||
(sync-info-method-14 (_type_ time-frame) time-frame 14)
|
||||
(sync-info-method-15 (_type_ float) none 15)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
+516
@@ -0,0 +1,516 @@
|
||||
;;-*-Lisp-*-
|
||||
(in-package goal)
|
||||
|
||||
;; definition for symbol *font12-table*, type (inline-array vector)
|
||||
(define *font12-table* (new 'static 'inline-array vector 250
|
||||
(new 'static 'vector :x 0.0039 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0322 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0634 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0634 :z 1.0 :w 22.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0634 :z 1.0 :w 19.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0634 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0634 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0634 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0634 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0634 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0634 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0634 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0947 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0947 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0947 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0947 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0947 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0947 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0947 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0947 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0947 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0947 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1259 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1259 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1259 :z 1.0 :w 11.25)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1259 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1259 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1572 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1572 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1572 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1572 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1572 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1572 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1572 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1572 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1572 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1572 :z 1.0 :w 17.25)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1884 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1884 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1884 :z 1.0 :w 15.75)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1884 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1884 :z 1.0 :w 14.25)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1884 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1884 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1884 :z 1.0 :w 7.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1884 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1884 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2197 :z 1.0 :w 15.75)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2197 :z 1.0 :w 19.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2197 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2197 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2197 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2197 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2197 :z 1.0 :w 15.75)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2197 :z 1.0 :w 12.75)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2197 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2197 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2509 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2509 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2509 :z 1.0 :w 17.25)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2509 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2509 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2509 :z 1.0 :w 9.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2509 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2509 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2509 :z 1.0 :w 19.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2509 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2822 :z 1.0 :w 6.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2822 :z 1.0 :w 14.25)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2822 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2822 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2822 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2822 :z 1.0 :w 12.75)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2822 :z 1.0 :w 12.75)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2822 :z 1.0 :w 17.25)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2822 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2822 :z 1.0 :w 9.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3134 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3134 :z 1.0 :w 14.25)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3134 :z 1.0 :w 9.75)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3134 :z 1.0 :w 18.5)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3134 :z 1.0 :w 14.25)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3134 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3134 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3134 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3134 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3134 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3447 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3447 :z 1.0 :w 12.75)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3447 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3447 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3447 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3447 :z 1.0 :w 16.5)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3447 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3447 :z 1.0 :w 10.5)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3447 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3447 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3759 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3759 :z 1.0 :w 13.5)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3759 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4072 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4384 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4697 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.7509 :z 1.0 :w 16.0)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for symbol *font24-table*, type (inline-array vector)
|
||||
(define *font24-table* (new 'static 'inline-array vector 250
|
||||
(new 'static 'vector :x 0.0039 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0322 :z 1.0 :w 19.5)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0322 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0322 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0322 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0322 :z 1.0 :w 12.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0634 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0634 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0634 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0634 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0634 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0634 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0634 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0634 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0634 :z 1.0 :w 17.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0634 :z 1.0 :w 17.5)
|
||||
(new 'static 'vector :x 0.0039 :y 0.0947 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.0947 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.0947 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.0947 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.0947 :z 1.0 :w 14.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.0947 :z 1.0 :w 14.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.0947 :z 1.0 :w 22.5)
|
||||
(new 'static 'vector :x 0.6601 :y 0.0947 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.0947 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.0947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1259 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1259 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1259 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1259 :z 1.0 :w 14.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1259 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1259 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1259 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1259 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1259 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1259 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1572 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1572 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1572 :z 1.0 :w 11.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1572 :z 1.0 :w 20.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1572 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1572 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1572 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1572 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1572 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.1884 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.1884 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.1884 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.1884 :z 1.0 :w 19.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.1884 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.1884 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.1884 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.1884 :z 1.0 :w 10.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.1884 :z 1.0 :w 19.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.1884 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2197 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2197 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2197 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2197 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2197 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2197 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2197 :z 1.0 :w 19.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2197 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2197 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2197 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2509 :z 1.0 :w 26.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2509 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2509 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2509 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2509 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2509 :z 1.0 :w 15.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2509 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2509 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2509 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2509 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.2822 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.2822 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.2822 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.2822 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.2822 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.2822 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.2822 :z 1.0 :w 17.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.2822 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.2822 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.2822 :z 1.0 :w 10.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3134 :z 1.0 :w 18.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3134 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3134 :z 1.0 :w 10.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3134 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3134 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3134 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3134 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3134 :z 1.0 :w 25.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3134 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3134 :z 1.0 :w 17.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3447 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3447 :z 1.0 :w 22.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3447 :z 1.0 :w 21.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3447 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3447 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3447 :z 1.0 :w 23.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3447 :z 1.0 :w 20.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3447 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3447 :z 1.0 :w 27.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3447 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.3759 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4072 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4384 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.4697 :z 1.0 :w 24.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5009 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5322 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5634 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.5947 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6259 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6572 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.6884 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.7197 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0039 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.0976 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.1914 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.2851 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.3789 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.4726 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.5664 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.6601 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.7539 :y 0.7509 :z 1.0 :w 16.0)
|
||||
(new 'static 'vector :x 0.8476 :y 0.7509 :z 1.0 :w 16.0)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
+951
@@ -0,0 +1,951 @@
|
||||
;;-*-Lisp-*-
|
||||
(in-package goal)
|
||||
|
||||
;; this file is debug only
|
||||
(declare-file (debug))
|
||||
(when *debug-segment*
|
||||
;; definition for function history-channel->string
|
||||
(defun history-channel->string ((arg0 history-channel))
|
||||
(case arg0
|
||||
(((history-channel friction))
|
||||
"friction"
|
||||
)
|
||||
(((history-channel transv-out))
|
||||
"transv-out"
|
||||
)
|
||||
(((history-channel pat))
|
||||
"pat"
|
||||
)
|
||||
(((history-channel transv-in))
|
||||
"transv-in"
|
||||
)
|
||||
(((history-channel trans))
|
||||
"trans"
|
||||
)
|
||||
(((history-channel local-normal))
|
||||
"local-normal"
|
||||
)
|
||||
(((history-channel collide-status))
|
||||
"collide-status"
|
||||
)
|
||||
(((history-channel time))
|
||||
"time"
|
||||
)
|
||||
(((history-channel intersect))
|
||||
"intersect"
|
||||
)
|
||||
(((history-channel surface-normal))
|
||||
"surface-normal"
|
||||
)
|
||||
(((history-channel transv))
|
||||
"transv"
|
||||
)
|
||||
(else
|
||||
"*unknown*"
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition of type history-elt
|
||||
(deftype history-elt (structure)
|
||||
((record-tag-bytes uint8 4 :offset-assert 0)
|
||||
(record-tag uint32 :offset 0)
|
||||
(record-id uint16 :offset 0)
|
||||
(owner uint8 :offset 2)
|
||||
(channel history-channel :offset-assert 4)
|
||||
(timestamp time-frame :offset-assert 8)
|
||||
(origin vector :inline :offset-assert 16)
|
||||
(bytes uint8 16 :offset-assert 32)
|
||||
(vector vector :inline :offset 32)
|
||||
(float float :offset 32)
|
||||
(collide-status collide-status :offset 32)
|
||||
(collide-reaction-flag uint32 :offset 40)
|
||||
(pat pat-surface :offset 32)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x30
|
||||
:flag-assert #x900000030
|
||||
)
|
||||
|
||||
;; definition for method 3 of type history-elt
|
||||
(defmethod inspect history-elt ((obj history-elt))
|
||||
(when (not obj)
|
||||
(set! obj obj)
|
||||
(goto cfg-4)
|
||||
)
|
||||
(format #t "[~8x] ~A~%" obj 'history-elt)
|
||||
(format #t "~1Trecord-tag-bytes[4] @ #x~X~%" (-> obj record-tag-bytes))
|
||||
(format #t "~1Trecord-tag: ~D~%" (-> obj record-tag))
|
||||
(format #t "~1Trecord-id: ~D~%" (-> obj record-id))
|
||||
(format #t "~1Towner: ~D~%" (-> obj owner))
|
||||
(format #t "~1Tchannel: ~D~%" (-> obj channel))
|
||||
(format #t "~1Ttimestamp: ~D~%" (-> obj timestamp))
|
||||
(format #t "~1Torigin: #<vector @ #x~X>~%" (-> obj origin))
|
||||
(format #t "~1Tbytes[16] @ #x~X~%" (-> obj bytes))
|
||||
(format #t "~1Tvector: #<vector @ #x~X>~%" (-> obj bytes))
|
||||
(format #t "~1Tfloat: ~f~%" (-> obj vector x))
|
||||
(format #t "~1Tcollide-status: ~D~%" (-> obj collide-status))
|
||||
(format #t "~1Tcollide-reaction-flag: ~D~%" (-> obj vector z))
|
||||
(format #t "~1Tpat: ~D~%" (-> obj vector x))
|
||||
(label cfg-4)
|
||||
obj
|
||||
)
|
||||
|
||||
;; definition of type history-iterator
|
||||
(deftype history-iterator (basic)
|
||||
((max-age uint32 :offset-assert 4)
|
||||
(owner uint8 :offset-assert 8)
|
||||
(proc process :offset-assert 12)
|
||||
(out basic :offset-assert 16)
|
||||
(channel-mask uint64 :offset-assert 24)
|
||||
(index int32 :offset-assert 32)
|
||||
(done? symbol :offset-assert 36)
|
||||
)
|
||||
:method-count-assert 12
|
||||
:size-assert #x28
|
||||
:flag-assert #xc00000028
|
||||
(:methods
|
||||
(new (symbol type uint32) _type_ 0)
|
||||
(frame-counter-delta (_type_ history-elt) time-frame 9)
|
||||
(update-entries! (_type_) history-elt 10)
|
||||
(history-iterator-method-11 (_type_ history-elt) float 11)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type history-iterator
|
||||
(defmethod inspect history-iterator ((obj history-iterator))
|
||||
(when (not obj)
|
||||
(set! obj obj)
|
||||
(goto cfg-4)
|
||||
)
|
||||
(format #t "[~8x] ~A~%" obj (-> obj type))
|
||||
(format #t "~1Tmax-age: ~D~%" (-> obj max-age))
|
||||
(format #t "~1Towner: ~D~%" (-> obj owner))
|
||||
(format #t "~1Tproc: ~A~%" (-> obj proc))
|
||||
(format #t "~1Tout: ~A~%" (-> obj out))
|
||||
(format #t "~1Tchannel-mask: ~D~%" (-> obj channel-mask))
|
||||
(format #t "~1Tindex: ~D~%" (-> obj index))
|
||||
(format #t "~1Tdone?: ~A~%" (-> obj done?))
|
||||
(label cfg-4)
|
||||
obj
|
||||
)
|
||||
|
||||
;; definition of type history
|
||||
(deftype history (basic)
|
||||
((alloc-index int32 :offset-assert 4)
|
||||
(allocated-length int32 :offset-assert 8)
|
||||
(elts history-elt :inline :dynamic :offset 16)
|
||||
)
|
||||
:method-count-assert 11
|
||||
:size-assert #x10
|
||||
:flag-assert #xb00000010
|
||||
(:methods
|
||||
(new (symbol type int) _type_ 0)
|
||||
(clear-record-tags! (_type_ history-channel uint uint) history-elt 9)
|
||||
(clear-history-entries! (_type_) none 10)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 3 of type history
|
||||
(defmethod inspect history ((obj history))
|
||||
(when (not obj)
|
||||
(set! obj obj)
|
||||
(goto cfg-4)
|
||||
)
|
||||
(format #t "[~8x] ~A~%" obj (-> obj type))
|
||||
(format #t "~1Talloc-index: ~D~%" (-> obj alloc-index))
|
||||
(format #t "~1Tallocated-length: ~D~%" (-> obj allocated-length))
|
||||
(format #t "~1Telts[0] @ #x~X~%" (-> obj elts))
|
||||
(label cfg-4)
|
||||
obj
|
||||
)
|
||||
|
||||
;; definition for method 4 of type history
|
||||
(defmethod length history ((obj history))
|
||||
(-> obj allocated-length)
|
||||
)
|
||||
|
||||
;; definition for method 5 of type history
|
||||
;; INFO: Return type mismatch uint vs int.
|
||||
(defmethod asize-of history ((obj history))
|
||||
(the-as int (+ (-> obj type size) (* 48 (-> obj allocated-length))))
|
||||
)
|
||||
|
||||
;; definition for method 0 of type history
|
||||
(defmethod new history ((allocation symbol) (type-to-make type) (arg0 int))
|
||||
(let ((v0-0 (object-new allocation type-to-make (the-as int (+ (-> type-to-make size) (* 48 arg0))))))
|
||||
(set! (-> v0-0 allocated-length) arg0)
|
||||
v0-0
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 10 of type history
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defmethod clear-history-entries! history ((obj history))
|
||||
"Iterates through each [[history-elt]] in the `elt` dynamic array
|
||||
For each entry:
|
||||
- clear `timestamp`
|
||||
- clear `record-tag`"
|
||||
(set! (-> obj alloc-index) 0)
|
||||
(countdown (v1-0 (-> obj allocated-length))
|
||||
(let ((a1-3 (-> obj elts v1-0)))
|
||||
(set! (-> a1-3 record-tag) (the-as uint 0))
|
||||
(set! (-> a1-3 timestamp) 0)
|
||||
)
|
||||
0
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition (perm) for symbol *history*, type history
|
||||
(define-perm *history* history (new 'debug 'history 4096))
|
||||
|
||||
;; failed to figure out what this is:
|
||||
(clear-history-entries! *history*)
|
||||
|
||||
;; definition for method 9 of type history
|
||||
;; WARN: new jak 2 until loop case, check carefully
|
||||
(defmethod clear-record-tags! history ((obj history) (arg0 history-channel) (arg1 uint) (arg2 uint))
|
||||
"First grab the latest [[history-elt]] at `alloc-index`
|
||||
1. update it's `channel`, `record-id` and `owner` from the provided args
|
||||
2. - if it's `record-tag` is zero -- return it
|
||||
- otherwise, iterate through all `elts` until one is found that does not match it's `timestamp`
|
||||
- if not `0` out the `record-tag` for that elt and continue iteration"
|
||||
(let* ((t1-0 (-> obj alloc-index))
|
||||
(v1-0 (-> obj elts))
|
||||
(v0-0 (-> v1-0 t1-0))
|
||||
)
|
||||
(let ((t2-0 (-> v0-0 record-tag))
|
||||
(t0-2 (-> v0-0 timestamp))
|
||||
)
|
||||
(set! (-> v0-0 channel) arg0)
|
||||
(set! (-> v0-0 record-id) arg1)
|
||||
(set! (-> v0-0 owner) arg2)
|
||||
(set! (-> v0-0 timestamp) (-> *display* base-clock frame-counter))
|
||||
(let* ((a1-4 (-> obj allocated-length))
|
||||
(a2-2 (mod (+ t1-0 1) a1-4))
|
||||
)
|
||||
(set! (-> obj alloc-index) a2-2)
|
||||
(when (nonzero? t2-0)
|
||||
(until #f
|
||||
(let ((a0-4 (-> v1-0 a2-2)))
|
||||
(if (!= t0-2 (-> a0-4 timestamp))
|
||||
(return v0-0)
|
||||
)
|
||||
(set! (-> a0-4 record-tag) (the-as uint 0))
|
||||
)
|
||||
(set! a2-2 (mod (+ a2-2 1) a1-4))
|
||||
)
|
||||
#f
|
||||
)
|
||||
)
|
||||
)
|
||||
v0-0
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 0 of type history-iterator
|
||||
(defmethod new history-iterator ((allocation symbol) (type-to-make type) (arg0 uint32))
|
||||
(let ((v0-0 (object-new allocation type-to-make (the-as int (-> type-to-make size)))))
|
||||
(set! (-> v0-0 max-age) (the-as uint arg0))
|
||||
(set! (-> v0-0 owner) (the-as uint 1))
|
||||
(set! (-> v0-0 proc) #f)
|
||||
(set! (-> v0-0 out) *stdcon*)
|
||||
(set! (-> v0-0 channel-mask) (the-as uint -1))
|
||||
(set! (-> v0-0 index) (-> *history* alloc-index))
|
||||
(set! (-> v0-0 done?) #f)
|
||||
v0-0
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 10 of type history-iterator
|
||||
(defmethod update-entries! history-iterator ((obj history-iterator))
|
||||
"Iterate through each [[history-elt]] in [[*history*]]
|
||||
- If we hit the end set `done?` to true
|
||||
- If the `timestamp` on the elt, minus the current framecounter exceeds `max-age`, we are also done, return #f
|
||||
- However if we find an elt who's `owner` matches the iterator's, break out early returning that `elt`"
|
||||
(let ((v1-0 *history*)
|
||||
(a1-2 (-> *display* base-clock frame-counter))
|
||||
)
|
||||
(while (not (-> obj done?))
|
||||
(let ((a2-1 (+ (-> obj index) -1)))
|
||||
(if (< a2-1 0)
|
||||
(set! a2-1 (+ (-> v1-0 allocated-length) -1))
|
||||
)
|
||||
(set! (-> obj index) a2-1)
|
||||
(if (= a2-1 (-> v1-0 alloc-index))
|
||||
(set! (-> obj done?) #t)
|
||||
)
|
||||
(let ((a2-5 (-> v1-0 elts a2-1)))
|
||||
(when (nonzero? (-> a2-5 record-tag))
|
||||
(when (< (the-as time-frame (-> obj max-age)) (- a1-2 (-> a2-5 timestamp)))
|
||||
(set! (-> obj done?) #t)
|
||||
(return (the-as history-elt #f))
|
||||
)
|
||||
(if (= (-> a2-5 owner) (-> obj owner))
|
||||
(return a2-5)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(the-as history-elt #f)
|
||||
)
|
||||
|
||||
;; definition for method 11 of type history-iterator
|
||||
(defmethod history-iterator-method-11 history-iterator ((obj history-iterator) (arg0 history-elt))
|
||||
"TODO - Unsure of the purpose
|
||||
`min(1.0, ((history-elt.timestamp - 1) + frame-counter) / (max-age + 1)) - 1.0`"
|
||||
(- 1.0 (fmin 1.0 (/ (the float (+ (- 1 (-> arg0 timestamp)) (-> *display* base-clock frame-counter)))
|
||||
(the float (+ (-> obj max-age) 1))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 9 of type history-iterator
|
||||
(defmethod frame-counter-delta history-iterator ((obj history-iterator) (arg0 history-elt))
|
||||
"Returns the difference between [[*display*]]'s `base-clock.frame-counter` and the elt's `timestamp`"
|
||||
(- (-> *display* base-clock frame-counter) (-> arg0 timestamp))
|
||||
)
|
||||
|
||||
;; definition for function history-print
|
||||
;; INFO: Used lq/sq
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
;; WARN: new jak 2 until loop case, check carefully
|
||||
(defun history-print ((arg0 history-iterator))
|
||||
(local-vars
|
||||
(sv-16 basic)
|
||||
(sv-24 int)
|
||||
(sv-32 int)
|
||||
(sv-40 history-elt)
|
||||
(sv-48 time-frame)
|
||||
(sv-56 uint)
|
||||
(sv-64 collide-status)
|
||||
(sv-72 float)
|
||||
(sv-80 string)
|
||||
(sv-96 string)
|
||||
)
|
||||
(set! sv-16 (-> arg0 out))
|
||||
(set! sv-24 -1)
|
||||
(set! sv-32 0)
|
||||
(until #f
|
||||
(set! sv-40 (update-entries! arg0))
|
||||
(if (not sv-40)
|
||||
(goto cfg-71)
|
||||
)
|
||||
(when (logtest? (-> arg0 channel-mask) (ash 1 (-> sv-40 channel)))
|
||||
(set! sv-48 (frame-counter-delta arg0 sv-40))
|
||||
(set! sv-56 (-> sv-40 record-id))
|
||||
(cond
|
||||
((!= sv-24 sv-48)
|
||||
(set! sv-24 (the-as int sv-48))
|
||||
(set! sv-32 (the-as int sv-56))
|
||||
(format sv-16 "~3D ~4X " sv-48 (-> sv-40 record-id))
|
||||
)
|
||||
((!= sv-32 sv-56)
|
||||
(set! sv-32 (the-as int sv-56))
|
||||
(format sv-16 " ~4X " (-> sv-40 record-id))
|
||||
)
|
||||
(else
|
||||
(format sv-16 " ")
|
||||
)
|
||||
)
|
||||
(let ((v1-22 (-> sv-40 channel)))
|
||||
(cond
|
||||
((or (= v1-22 (history-channel trans))
|
||||
(or (= v1-22 (history-channel transv))
|
||||
(= v1-22 (history-channel transv-in))
|
||||
(= v1-22 (history-channel transv-out))
|
||||
(= v1-22 (history-channel intersect))
|
||||
)
|
||||
)
|
||||
(format
|
||||
sv-16
|
||||
"~-15S: ~14Mm ~14Mm ~14Mm~%"
|
||||
(history-channel->string (-> sv-40 channel))
|
||||
(-> sv-40 vector x)
|
||||
(-> sv-40 vector y)
|
||||
(-> sv-40 vector z)
|
||||
)
|
||||
)
|
||||
((or (= v1-22 (history-channel local-normal)) (= v1-22 (history-channel surface-normal)))
|
||||
(format
|
||||
sv-16
|
||||
"~-15S: ~14f ~14f ~14f~%"
|
||||
(history-channel->string (-> sv-40 channel))
|
||||
(-> sv-40 vector x)
|
||||
(-> sv-40 vector y)
|
||||
(-> sv-40 vector z)
|
||||
)
|
||||
)
|
||||
((= v1-22 (history-channel pat))
|
||||
(let* ((s2-0 (-> sv-40 vector x))
|
||||
(s5-2 format)
|
||||
(s4-2 sv-16)
|
||||
(s3-2 "~-15S: #x~6X mode:~-8S material:~-10S event:~S~%")
|
||||
(s1-0 (history-channel->string (-> sv-40 channel)))
|
||||
(s0-0 s2-0)
|
||||
)
|
||||
(set! sv-80 (pat-mode->string (the-as pat-surface s2-0)))
|
||||
(set! sv-96 (pat-material->string (the-as pat-surface s2-0)))
|
||||
(let ((t2-0 (pat-event->string (the-as pat-surface s2-0))))
|
||||
(s5-2 s4-2 s3-2 s1-0 s0-0 sv-80 sv-96 t2-0)
|
||||
)
|
||||
)
|
||||
)
|
||||
((= v1-22 (history-channel collide-status))
|
||||
(set! sv-64 (-> sv-40 collide-status))
|
||||
(set! sv-72 (-> sv-40 vector z))
|
||||
(format sv-16 "~-15S: #x~6X " (history-channel->string (-> sv-40 channel)) sv-64)
|
||||
(let ((s5-4 sv-64))
|
||||
(if (= (logand s5-4 (collide-status touch-background)) (collide-status touch-background))
|
||||
(format sv-16 "touch-background ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status on-special-surface)) (collide-status on-special-surface))
|
||||
(format sv-16 "on-special-surface ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-wall)) (collide-status touch-wall))
|
||||
(format sv-16 "touch-wall ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status on-surface)) (collide-status on-surface))
|
||||
(format sv-16 "on-surface ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status impact-surface)) (collide-status impact-surface))
|
||||
(format sv-16 "impact-surface ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-ceiling)) (collide-status touch-ceiling))
|
||||
(format sv-16 "touch-ceiling ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status on-ground)) (collide-status on-ground))
|
||||
(format sv-16 "on-ground ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status glance)) (collide-status glance))
|
||||
(format sv-16 "glance ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status blocked)) (collide-status blocked))
|
||||
(format sv-16 "blocked ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-edge)) (collide-status touch-edge))
|
||||
(format sv-16 "touch-edge ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-ceiling-sticky)) (collide-status touch-ceiling-sticky))
|
||||
(format sv-16 "touch-ceiling-sticky ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status on-water)) (collide-status on-water))
|
||||
(format sv-16 "on-water ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-actor)) (collide-status touch-actor))
|
||||
(format sv-16 "touch-actor ")
|
||||
)
|
||||
(if (= (logand (collide-status probe-hit) s5-4) (collide-status probe-hit))
|
||||
(format sv-16 "probe-hit ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status stuck)) (collide-status stuck))
|
||||
(format sv-16 "stuck ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status no-touch)) (collide-status no-touch))
|
||||
(format sv-16 "no-touch ")
|
||||
)
|
||||
(if (= (logand s5-4 (collide-status touch-surface)) (collide-status touch-surface))
|
||||
(format sv-16 "touch-surface ")
|
||||
)
|
||||
)
|
||||
(format sv-16 " #x~6X~%" sv-72)
|
||||
)
|
||||
((= v1-22 (history-channel friction))
|
||||
(let ((f30-0 (-> sv-40 vector x)))
|
||||
(format sv-16 "~-15S: ~f~%" (history-channel->string (-> sv-40 channel)) f30-0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
#f
|
||||
(label cfg-71)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for function history-draw
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
;; ERROR: Expression building failed: In history-draw: Unmatched field: start bit 24, size 40, signed? true, type rgba
|
||||
(defun history-draw ((arg0 history-iterator))
|
||||
(local-vars
|
||||
(v0-0 history-elt)
|
||||
(v0-3 symbol)
|
||||
(v0-4 symbol)
|
||||
(v0-5 symbol)
|
||||
(v0-6 symbol)
|
||||
(v0-7 symbol)
|
||||
(v0-8 symbol)
|
||||
(v0-9 symbol)
|
||||
(v0-10 symbol)
|
||||
(v0-11 symbol)
|
||||
(v0-12 int)
|
||||
(v1-0 type)
|
||||
(v1-8 int)
|
||||
(v1-9 int)
|
||||
(v1-11 int)
|
||||
(v1-13 int)
|
||||
(v1-15 int)
|
||||
(v1-17 int)
|
||||
(v1-18 int)
|
||||
(v1-19 int)
|
||||
(v1-20 int)
|
||||
(v1-21 int)
|
||||
(a0-1 history-iterator)
|
||||
(a0-7 history-channel)
|
||||
(a0-9 symbol)
|
||||
(a0-10 symbol)
|
||||
(a0-11 (pointer uint8))
|
||||
(a0-12 (pointer uint8))
|
||||
(a0-13 symbol)
|
||||
(a0-14 symbol)
|
||||
(a0-15 (pointer uint8))
|
||||
(a0-16 symbol)
|
||||
(a0-18 symbol)
|
||||
(a0-20 symbol)
|
||||
(a0-22 number)
|
||||
(a0-23 int)
|
||||
(a0-24 int)
|
||||
(a0-25 int)
|
||||
(a0-26 pat-mode-info)
|
||||
(a0-27 rgba)
|
||||
(a0-28 rgba)
|
||||
(a0-29 symbol)
|
||||
(a0-31 float)
|
||||
(a0-33 vector)
|
||||
(a0-34 symbol)
|
||||
(a1-5 int)
|
||||
(a1-6 int)
|
||||
(a1-7 int)
|
||||
(a1-9 int)
|
||||
(a1-10 int)
|
||||
(a1-11 int)
|
||||
(a1-13 int)
|
||||
(a1-14 int)
|
||||
(a1-16 int)
|
||||
(a1-17 int)
|
||||
(a1-19 int)
|
||||
(a1-20 history-channel)
|
||||
(a1-21 symbol)
|
||||
(a1-23 (inline-array pat-mode-info))
|
||||
(a1-24 uint)
|
||||
(a1-25 int)
|
||||
(a1-26 int)
|
||||
(a1-28 int)
|
||||
(a1-29 float)
|
||||
(a1-30 float)
|
||||
(a1-31 int)
|
||||
(a2-1 (pointer uint8))
|
||||
(a2-2 (pointer uint8))
|
||||
(a2-3 (pointer uint8))
|
||||
(a2-4 (pointer uint8))
|
||||
(a2-5 vector)
|
||||
(a2-6 vector)
|
||||
(a2-7 vector)
|
||||
(a2-8 symbol)
|
||||
(a2-9 history-channel)
|
||||
(a2-10 vector)
|
||||
(a2-11 vector)
|
||||
(a3-0 (pointer uint8))
|
||||
(a3-1 int)
|
||||
(a3-2 int)
|
||||
(a3-3 (pointer uint8))
|
||||
(a3-4 int)
|
||||
(a3-5 int)
|
||||
(a3-6 (pointer uint8))
|
||||
(a3-7 (pointer uint8))
|
||||
(a3-8 (pointer uint8))
|
||||
(a3-9 (pointer uint8))
|
||||
(a3-10 vector)
|
||||
(t0-0 int)
|
||||
(t0-1 int)
|
||||
(t0-2 int)
|
||||
(t0-3 int)
|
||||
(t0-4 int)
|
||||
(t0-5 int)
|
||||
(t0-6 int)
|
||||
(t0-7 int)
|
||||
(t0-8 int)
|
||||
(t1-0 symbol)
|
||||
(t1-1 symbol)
|
||||
(t1-2 int)
|
||||
(t1-3 int)
|
||||
(t1-4 int)
|
||||
(t1-5 int)
|
||||
(t1-6 int)
|
||||
(t1-7 rgba)
|
||||
(t1-8 rgba)
|
||||
(t1-9 int)
|
||||
(t1-10 int)
|
||||
(t2-0 int)
|
||||
(t2-1 int)
|
||||
(s5-0 history-elt)
|
||||
(t9-0 (function history-iterator history-elt))
|
||||
(t9-3 (function symbol bucket-id vector vector rgba symbol rgba symbol))
|
||||
(t9-4 (function symbol bucket-id vector rgba symbol))
|
||||
(t9-5 (function symbol bucket-id vector vector rgba symbol rgba symbol))
|
||||
(t9-6 (function symbol bucket-id vector rgba symbol))
|
||||
(t9-7 (function symbol bucket-id vector vector meters rgba symbol))
|
||||
(t9-8 (function symbol bucket-id vector vector meters rgba symbol))
|
||||
(t9-9 (function symbol bucket-id vector vector meters rgba symbol))
|
||||
(t9-10 (function symbol bucket-id vector vector meters rgba symbol))
|
||||
(t9-11 (function symbol bucket-id vector vector meters rgba symbol))
|
||||
(f0-3 float)
|
||||
(f0-4 float)
|
||||
(f0-5 float)
|
||||
(f0-6 float)
|
||||
(f1-0 float)
|
||||
(f1-1 float)
|
||||
(sv-16 (pointer uint8))
|
||||
(sv-20 (pointer uint8))
|
||||
(sv-24 number)
|
||||
)
|
||||
(set! sv-16 #f)
|
||||
(set! sv-20 #f)
|
||||
(set! sv-24 0)
|
||||
(until (begin
|
||||
(when (logtest? (-> arg0 channel-mask) (ash 1 (-> s5-0 channel)))
|
||||
(cond
|
||||
((= a0-7 (history-channel trans))
|
||||
(cond
|
||||
(sv-16
|
||||
(set! t9-3 add-debug-line)
|
||||
(set! a0-9 #t)
|
||||
(set! a1-5 318)
|
||||
(set! a2-1 sv-16)
|
||||
(set! a3-0 (-> s5-0 bytes))
|
||||
(set! t0-0 #xffff00)
|
||||
(set! v1-9 (shl v1-8 24))
|
||||
(set! t0-1 (logior #xffff00 (shl v1-8 24)))
|
||||
(set! t1-0 #f)
|
||||
(set! t2-0 -1)
|
||||
(call! a0-9 a1-5 a2-1 a3-0 t0-1 t1-0 t2-0)
|
||||
(set! v1-10 v0-3)
|
||||
)
|
||||
(else
|
||||
(set! t9-4 add-debug-x)
|
||||
(set! a0-10 #t)
|
||||
(set! a1-6 318)
|
||||
(set! a2-2 (-> s5-0 bytes))
|
||||
(set! a3-1 #xffff00)
|
||||
(set! v1-11 (sll v1-8 24))
|
||||
(set! a3-2 (logior a3-1 v1-11))
|
||||
(call! a0-10 a1-6 a2-2 a3-2)
|
||||
(set! v1-12 v0-4)
|
||||
)
|
||||
)
|
||||
(set! a0-11 (-> s5-0 bytes))
|
||||
(set! sv-16 a0-11)
|
||||
)
|
||||
((begin (set! a1-7 4) (= a0-7 a1-7))
|
||||
(cond
|
||||
((begin (set! a0-12 sv-20) a0-12)
|
||||
(set! t9-5 add-debug-line)
|
||||
(set! a0-13 #t)
|
||||
(set! a1-9 318)
|
||||
(set! a2-3 sv-20)
|
||||
(set! a3-3 (-> s5-0 bytes))
|
||||
(set! t0-2 #xffffff)
|
||||
(set! v1-13 (sll v1-8 24))
|
||||
(set! t0-3 (logior t0-2 v1-13))
|
||||
(set! t1-1 #f)
|
||||
(set! t2-1 -1)
|
||||
(call! a0-13 a1-9 a2-3 a3-3 t0-3 t1-1 t2-1)
|
||||
(set! v1-14 v0-5)
|
||||
)
|
||||
(else
|
||||
(set! t9-6 add-debug-x)
|
||||
(set! a0-14 #t)
|
||||
(set! a1-10 318)
|
||||
(set! a2-4 (-> s5-0 bytes))
|
||||
(set! a3-4 #xffffff)
|
||||
(set! v1-15 (sll v1-8 24))
|
||||
(set! a3-5 (logior a3-4 v1-15))
|
||||
(call! a0-14 a1-10 a2-4 a3-5)
|
||||
(set! v1-16 v0-6)
|
||||
)
|
||||
)
|
||||
(set! a0-15 (-> s5-0 bytes))
|
||||
(set! sv-20 a0-15)
|
||||
)
|
||||
((begin (set! a1-11 1) (= a0-7 a1-11))
|
||||
(set! t9-7 add-debug-vector)
|
||||
(set! a0-16 #t)
|
||||
(set! a1-13 318)
|
||||
(set! a2-5 (-> s5-0 origin))
|
||||
(set! a3-6 (-> s5-0 bytes))
|
||||
(set! t0-4 #x3dcccccd)
|
||||
(set! v1-17 (sll v1-8 24))
|
||||
(set! t1-2 (logior v1-17 #xff00))
|
||||
(call! a0-16 a1-13 a2-5 a3-6 t0-4 t1-2)
|
||||
(set! a0-17 v0-7)
|
||||
)
|
||||
((begin (set! a1-14 2) (= a0-7 a1-14))
|
||||
(set! t9-8 add-debug-vector)
|
||||
(set! a0-18 #t)
|
||||
(set! a1-16 318)
|
||||
(set! a2-6 (-> s5-0 origin))
|
||||
(set! a3-7 (-> s5-0 bytes))
|
||||
(set! t0-5 #x3dcccccd)
|
||||
(set! t1-3 #x408040)
|
||||
(set! v1-18 (sll v1-8 24))
|
||||
(set! t1-4 (logior t1-3 v1-18))
|
||||
(call! a0-18 a1-16 a2-6 a3-7 t0-5 t1-4)
|
||||
(set! a0-19 v0-8)
|
||||
)
|
||||
((begin (set! a1-17 3) (= a0-7 a1-17))
|
||||
(set! t9-9 add-debug-vector)
|
||||
(set! a0-20 #t)
|
||||
(set! a1-19 318)
|
||||
(set! a2-7 (-> s5-0 origin))
|
||||
(set! a3-8 (-> s5-0 bytes))
|
||||
(set! t0-6 #x3dcccccd)
|
||||
(set! t1-5 #x404080)
|
||||
(set! v1-19 (sll v1-8 24))
|
||||
(set! t1-6 (logior t1-5 v1-19))
|
||||
(call! a0-20 a1-19 a2-7 a3-8 t0-6 t1-6)
|
||||
(set! a0-21 v0-9)
|
||||
)
|
||||
((begin
|
||||
(or (begin (set! a1-20 (+ a0-7 -5)) (set! a2-8 (zero? a1-20)) a2-8)
|
||||
(begin (set! a2-9 (+ a0-7 -6)) (set! a1-21 (zero? a2-9)))
|
||||
)
|
||||
a1-21
|
||||
)
|
||||
(set! a0-22 sv-24)
|
||||
(set! a0-23 (sll a0-22 54))
|
||||
(set! a0-24 (srl a0-23 61))
|
||||
(set! a0-25 (sll a0-24 4))
|
||||
(set! a1-23 *pat-mode-info*)
|
||||
(set! a0-26 (+ a0-25 a1-23))
|
||||
(set! a0-27 (-> a0-26 hilite-color))
|
||||
(set! a1-24 (the-as uint #xffffffff00ffffff))
|
||||
(set! a0-28 (logand a0-27 a1-24))
|
||||
(set! t1-7 a0-28)
|
||||
(set! t9-10 add-debug-vector)
|
||||
(set! a0-29 #t)
|
||||
(set! a1-25 318)
|
||||
(set! a2-10 (-> s5-0 origin))
|
||||
(set! a3-9 (-> s5-0 bytes))
|
||||
(set! t0-7 #x45800000)
|
||||
(set! v1-20 (sll v1-8 24))
|
||||
(set! t1-8 (logior t1-7 v1-20))
|
||||
(call! a0-29 a1-25 a2-10 a3-9 t0-7 t1-8)
|
||||
(set! a0-30 v0-10)
|
||||
)
|
||||
((begin (set! a1-26 8) (= a0-7 a1-26))
|
||||
(set! a0-31 (-> s5-0 vector x))
|
||||
(set! sv-24 a0-31)
|
||||
)
|
||||
((begin (set! a1-28 10) (= a0-7 a1-28))
|
||||
(set! f0-3 (-> s5-0 vector x))
|
||||
(set! a3-10 (new 'stack-no-clear 'vector))
|
||||
(set! a0-33 a3-10)
|
||||
(set! f1-0 0.0)
|
||||
(set! (-> a0-33 x) f1-0)
|
||||
(set! a1-29 -8192.0)
|
||||
(set! f1-1 (gpr->fpr a1-29))
|
||||
(set! f0-4 (*.s f1-1 f0-3))
|
||||
(set! (-> a0-33 y) f0-4)
|
||||
(set! f0-5 0.0)
|
||||
(set! (-> a0-33 z) f0-5)
|
||||
(set! a1-30 1.0)
|
||||
(set! f0-6 (gpr->fpr a1-30))
|
||||
(set! (-> a0-33 w) f0-6)
|
||||
(set! t9-11 add-debug-vector)
|
||||
(set! a0-34 #t)
|
||||
(set! a1-31 318)
|
||||
(set! a2-11 (-> s5-0 origin))
|
||||
(set! t0-8 #x3f800000)
|
||||
(set! t1-9 #xffffff)
|
||||
(set! v1-21 (sll v1-8 24))
|
||||
(set! t1-10 (logior t1-9 v1-21))
|
||||
(call! a0-34 a1-31 a2-11 a3-10 t0-8 t1-10)
|
||||
(set! a0-35 v0-11)
|
||||
)
|
||||
)
|
||||
)
|
||||
#f
|
||||
)
|
||||
(if (begin
|
||||
(set! a0-1 arg0)
|
||||
(set! v1-0 (-> a0-1 type))
|
||||
(set! t9-0 (method-of-type v1-0 update-entries!))
|
||||
(set! v0-0 (call! a0-1))
|
||||
(set! s5-0 v0-0)
|
||||
(not s5-0)
|
||||
)
|
||||
(begin (goto cfg-34))
|
||||
)
|
||||
)
|
||||
(label cfg-34)
|
||||
(set! v0-12 0)
|
||||
(ret-none)
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
0
|
||||
|
||||
)
|
||||
+97
-97
@@ -188,7 +188,7 @@
|
||||
(:methods
|
||||
(continue-point-method-9 () none 9)
|
||||
(continue-point-method-10 () none 10)
|
||||
(continue-point-method-11 () none 11)
|
||||
(continue-point-method-11 (_type_) none 11)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -222,100 +222,100 @@
|
||||
|
||||
;; definition of type game-info
|
||||
(deftype game-info (basic)
|
||||
((mode symbol :offset-assert 4)
|
||||
(save-name basic :offset-assert 8)
|
||||
(life float :offset-assert 12)
|
||||
(life-max float :offset-assert 16)
|
||||
(money float :offset-assert 20)
|
||||
(money-total float :offset-assert 24)
|
||||
(money-per-level uint8 32 :offset-assert 28)
|
||||
(deaths-per-level uint8 32 :offset-assert 60)
|
||||
(buzzer-total float :offset-assert 92)
|
||||
(fuel float :offset-assert 96)
|
||||
(gem float :offset-assert 100)
|
||||
(gem-total float :offset-assert 104)
|
||||
(skill float :offset-assert 108)
|
||||
(skill-total float :offset-assert 112)
|
||||
(karma float :offset-assert 116)
|
||||
(eco-pill-dark float :offset-assert 120)
|
||||
(eco-pill-dark-total float :offset-assert 124)
|
||||
(features uint64 :offset-assert 128)
|
||||
(debug-features uint64 :offset-assert 136)
|
||||
(secrets uint32 :offset-assert 144)
|
||||
(unknown-pad1 uint32 :offset-assert 148)
|
||||
(purchase-secrets uint32 :offset-assert 152)
|
||||
(unknown-pad2 uint32 :offset-assert 156)
|
||||
(gun-type int32 :offset-assert 160)
|
||||
(gun-ammo float 4 :offset-assert 164)
|
||||
(shield float :offset-assert 180)
|
||||
(score float :offset-assert 184)
|
||||
(score-owner uint64 :offset-assert 192)
|
||||
(timer uint64 :offset-assert 200)
|
||||
(timer-owner uint64 :offset-assert 208)
|
||||
(timer-flash basic :offset-assert 216)
|
||||
(counter float :offset-assert 220)
|
||||
(counter-flash basic :offset-assert 224)
|
||||
(attack-id uint32 :offset-assert 228)
|
||||
(perm-list entity-perm-array :offset-assert 232)
|
||||
(task-perm-list entity-perm-array :offset-assert 236)
|
||||
(current-continue continue-point :offset-assert 240)
|
||||
(last-continue basic :offset-assert 244)
|
||||
(unknown-pad3 uint32 3 :offset-assert 248)
|
||||
(task-counter uint32 :offset-assert 260)
|
||||
(unknown-pad4 uint32 :offset-assert 264)
|
||||
(level-opened uint8 32 :offset-assert 268)
|
||||
(total-deaths int32 :offset-assert 300)
|
||||
(continue-deaths int32 :offset-assert 304)
|
||||
(task-deaths int32 :offset-assert 308)
|
||||
(total-trys int32 :offset-assert 312)
|
||||
(game-start-time time-frame :offset-assert 320)
|
||||
(continue-time time-frame :offset-assert 328)
|
||||
(death-time time-frame :offset-assert 336)
|
||||
(hit-time time-frame :offset-assert 344)
|
||||
(task-pickup-time time-frame :offset-assert 352)
|
||||
(unknown-array1 (array uint64) :offset-assert 360)
|
||||
(unknown-array2 (array uint64) :offset-assert 364)
|
||||
(unknown-array3 (array uint64) :offset-assert 368)
|
||||
(death-pos vector-array :offset 372)
|
||||
(stop-watch-start uint64 :offset-assert 376)
|
||||
(stop-watch-stop uint64 :offset-assert 384)
|
||||
(blackout-time time-frame :offset-assert 392)
|
||||
(letterbox-time time-frame :offset-assert 400)
|
||||
(hint-play-time time-frame :offset-assert 408)
|
||||
(display-text-time time-frame :offset-assert 416)
|
||||
(display-text-handle uint64 :offset-assert 424)
|
||||
(death-movie-tick int32 :offset-assert 432)
|
||||
(want-auto-save symbol :offset-assert 436)
|
||||
(auto-save-proc handle :offset-assert 440)
|
||||
(auto-save-status mc-status-code :offset-assert 448)
|
||||
(auto-save-card int32 :offset-assert 452)
|
||||
(auto-save-which int32 :offset-assert 456)
|
||||
(auto-save-count int32 :offset-assert 460)
|
||||
(pov-camera-handle uint64 :offset-assert 464)
|
||||
(other-camera-handle uint64 :offset-assert 472)
|
||||
(controller uint64 2 :offset-assert 480)
|
||||
(race-timer uint64 :offset-assert 496)
|
||||
(race-current-lap-count int32 :offset-assert 504)
|
||||
(race-total-lap-count int32 :offset-assert 508)
|
||||
(race-position int32 :offset-assert 512)
|
||||
(race-number-turbos int32 :offset-assert 516)
|
||||
(bot-health uint32 3 :offset-assert 520)
|
||||
(demo-state uint32 :offset-assert 532)
|
||||
(wanted-flash basic :offset-assert 536)
|
||||
(distance float :offset-assert 540)
|
||||
(kiosk-timeout uint64 :offset-assert 544)
|
||||
(pause-start-time time-frame :offset-assert 552)
|
||||
(game-score basic :offset-assert 560)
|
||||
(goal float :offset-assert 564)
|
||||
(miss float :offset-assert 568)
|
||||
(miss-max float :offset-assert 572)
|
||||
(unknown-array4 (array uint64) :offset-assert 576)
|
||||
(live-eco-pill-count int32 :offset-assert 580)
|
||||
(live-gem-count int32 :offset-assert 584)
|
||||
(air-supply float :offset-assert 588)
|
||||
(homing-beacon int32 :offset-assert 592)
|
||||
(dark-eco-pickup int32 :offset-assert 596)
|
||||
(green-eco-pickup int32 :offset-assert 600)
|
||||
((mode symbol :offset-assert 4)
|
||||
(save-name string :offset-assert 8)
|
||||
(life float :offset-assert 12)
|
||||
(life-max float :offset-assert 16)
|
||||
(money float :offset-assert 20)
|
||||
(money-total float :offset-assert 24)
|
||||
(money-per-level uint8 32 :offset-assert 28)
|
||||
(deaths-per-level uint8 32 :offset-assert 60)
|
||||
(buzzer-total float :offset-assert 92)
|
||||
(fuel float :offset-assert 96)
|
||||
(gem float :offset-assert 100)
|
||||
(gem-total float :offset-assert 104)
|
||||
(skill float :offset-assert 108)
|
||||
(skill-total float :offset-assert 112)
|
||||
(karma float :offset-assert 116)
|
||||
(eco-pill-dark float :offset-assert 120)
|
||||
(eco-pill-dark-total float :offset-assert 124)
|
||||
(features uint64 :offset-assert 128)
|
||||
(debug-features uint64 :offset-assert 136)
|
||||
(secrets uint32 :offset-assert 144)
|
||||
(unknown-pad1 uint32 :offset-assert 148)
|
||||
(purchase-secrets uint32 :offset-assert 152)
|
||||
(unknown-pad2 uint32 :offset-assert 156)
|
||||
(gun-type int32 :offset-assert 160)
|
||||
(gun-ammo float 4 :offset-assert 164)
|
||||
(shield float :offset-assert 180)
|
||||
(score float :offset-assert 184)
|
||||
(score-owner uint64 :offset-assert 192)
|
||||
(timer uint64 :offset-assert 200)
|
||||
(timer-owner uint64 :offset-assert 208)
|
||||
(timer-flash basic :offset-assert 216)
|
||||
(counter float :offset-assert 220)
|
||||
(counter-flash basic :offset-assert 224)
|
||||
(attack-id uint32 :offset-assert 228)
|
||||
(perm-list entity-perm-array :offset-assert 232)
|
||||
(task-perm-list entity-perm-array :offset-assert 236)
|
||||
(current-continue continue-point :offset-assert 240)
|
||||
(last-continue continue-point :offset-assert 244)
|
||||
(unknown-pad3 uint32 3 :offset-assert 248)
|
||||
(task-counter uint32 :offset-assert 260)
|
||||
(unknown-pad4 uint32 :offset-assert 264)
|
||||
(level-opened uint8 32 :offset-assert 268)
|
||||
(total-deaths int32 :offset-assert 300)
|
||||
(continue-deaths int32 :offset-assert 304)
|
||||
(task-deaths int32 :offset-assert 308)
|
||||
(total-trys int32 :offset-assert 312)
|
||||
(game-start-time time-frame :offset-assert 320)
|
||||
(continue-time time-frame :offset-assert 328)
|
||||
(death-time time-frame :offset-assert 336)
|
||||
(hit-time time-frame :offset-assert 344)
|
||||
(task-pickup-time time-frame :offset-assert 352)
|
||||
(unknown-array1 (array uint64) :offset-assert 360)
|
||||
(unknown-array2 (array uint64) :offset-assert 364)
|
||||
(unknown-array3 (array uint64) :offset-assert 368)
|
||||
(death-pos vector-array :offset 372)
|
||||
(stop-watch-start uint64 :offset-assert 376)
|
||||
(stop-watch-stop uint64 :offset-assert 384)
|
||||
(blackout-time time-frame :offset-assert 392)
|
||||
(letterbox-time time-frame :offset-assert 400)
|
||||
(hint-play-time time-frame :offset-assert 408)
|
||||
(display-text-time time-frame :offset-assert 416)
|
||||
(display-text-handle uint64 :offset-assert 424)
|
||||
(death-movie-tick int32 :offset-assert 432)
|
||||
(want-auto-save symbol :offset-assert 436)
|
||||
(auto-save-proc handle :offset-assert 440)
|
||||
(auto-save-status mc-status-code :offset-assert 448)
|
||||
(auto-save-card int32 :offset-assert 452)
|
||||
(auto-save-which int32 :offset-assert 456)
|
||||
(auto-save-count int32 :offset-assert 460)
|
||||
(pov-camera-handle uint64 :offset-assert 464)
|
||||
(other-camera-handle uint64 :offset-assert 472)
|
||||
(controller uint64 2 :offset-assert 480)
|
||||
(race-timer uint64 :offset-assert 496)
|
||||
(race-current-lap-count int32 :offset-assert 504)
|
||||
(race-total-lap-count int32 :offset-assert 508)
|
||||
(race-position int32 :offset-assert 512)
|
||||
(race-number-turbos int32 :offset-assert 516)
|
||||
(bot-health uint32 3 :offset-assert 520)
|
||||
(demo-state uint32 :offset-assert 532)
|
||||
(wanted-flash basic :offset-assert 536)
|
||||
(distance float :offset-assert 540)
|
||||
(kiosk-timeout uint64 :offset-assert 544)
|
||||
(pause-start-time time-frame :offset-assert 552)
|
||||
(game-score (array highscore-info) :offset-assert 560)
|
||||
(goal float :offset-assert 564)
|
||||
(miss float :offset-assert 568)
|
||||
(miss-max float :offset-assert 572)
|
||||
(unknown-array4 (array uint64) :offset-assert 576)
|
||||
(live-eco-pill-count int32 :offset-assert 580)
|
||||
(live-gem-count int32 :offset-assert 584)
|
||||
(air-supply float :offset-assert 588)
|
||||
(homing-beacon int32 :offset-assert 592)
|
||||
(dark-eco-pickup int32 :offset-assert 596)
|
||||
(green-eco-pickup int32 :offset-assert 600)
|
||||
)
|
||||
:method-count-assert 31
|
||||
:size-assert #x25c
|
||||
@@ -323,8 +323,8 @@
|
||||
(:methods
|
||||
(initialize! (_type_ symbol game-save string) _type_ 9)
|
||||
(game-info-method-10 () none 10)
|
||||
(game-info-method-11 () none 11)
|
||||
(game-info-method-12 () none 12)
|
||||
(task-complete? (_type_ game-task) symbol 11)
|
||||
(game-info-method-12 (_type_) none 12)
|
||||
(game-info-method-13 () none 13)
|
||||
(game-info-method-14 () none 14)
|
||||
(game-info-method-15 () none 15)
|
||||
|
||||
+415
@@ -0,0 +1,415 @@
|
||||
;;-*-Lisp-*-
|
||||
(in-package goal)
|
||||
|
||||
;; definition for method 10 of type cylinder
|
||||
(defmethod ray-capsule-intersect cylinder ((obj cylinder) (ray1 vector) (ray2 vector))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
(vf2 :class vf)
|
||||
(vf3 :class vf)
|
||||
(vf4 :class vf)
|
||||
)
|
||||
(init-vf0-vector)
|
||||
(let ((t2-0 (new 'stack-no-clear 'vector))
|
||||
(s4-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
0.0
|
||||
0.0
|
||||
(let ((f30-0 (ray-cylinder-intersect ray1 ray2 (-> obj origin) (-> obj axis) (-> obj radius) (-> obj length) t2-0))
|
||||
)
|
||||
(let ((f0-5 (ray-sphere-intersect ray1 ray2 (-> obj origin) (-> obj radius))))
|
||||
(if (and (>= f0-5 0.0) (or (< f30-0 0.0) (< f0-5 f30-0)))
|
||||
(set! f30-0 f0-5)
|
||||
)
|
||||
)
|
||||
(let ((v1-5 s4-0))
|
||||
(let ((a0-3 (-> obj origin))
|
||||
(a1-3 (-> obj axis))
|
||||
(f0-6 (-> obj length))
|
||||
)
|
||||
(.lvf vf2 (&-> a1-3 quad))
|
||||
(.lvf vf1 (&-> a0-3 quad))
|
||||
(let ((a0-4 f0-6))
|
||||
(.mov vf3 a0-4)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> v1-5 quad) vf4)
|
||||
)
|
||||
(let ((f0-8 (ray-sphere-intersect ray1 ray2 s4-0 (-> obj radius))))
|
||||
(if (and (>= f0-8 0.0) (or (< f30-0 0.0) (< f0-8 f30-0)))
|
||||
(set! f30-0 f0-8)
|
||||
)
|
||||
)
|
||||
f30-0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition of type cylinder-verts
|
||||
(deftype cylinder-verts (structure)
|
||||
((vert vector 24 :inline :offset-assert 0)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x180
|
||||
:flag-assert #x900000180
|
||||
)
|
||||
|
||||
;; definition for method 3 of type cylinder-verts
|
||||
(defmethod inspect cylinder-verts ((obj cylinder-verts))
|
||||
(when (not obj)
|
||||
(set! obj obj)
|
||||
(goto cfg-4)
|
||||
)
|
||||
(format #t "[~8x] ~A~%" obj 'cylinder-verts)
|
||||
(format #t "~1Tvert[24] @ #x~X~%" (-> obj vert))
|
||||
(label cfg-4)
|
||||
obj
|
||||
)
|
||||
|
||||
;; definition for method 9 of type cylinder
|
||||
;; INFO: Used lq/sq
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defmethod debug-draw cylinder ((obj cylinder) (arg0 vector4w))
|
||||
(local-vars
|
||||
(sv-896 matrix)
|
||||
(sv-912 vector)
|
||||
(sv-928 vector)
|
||||
(sv-944 vector)
|
||||
(sv-960 vector)
|
||||
(sv-976 vector)
|
||||
(sv-992 vector)
|
||||
(sv-1008 vector)
|
||||
(sv-1024 vector)
|
||||
(sv-1040 vector)
|
||||
(sv-1056 vector)
|
||||
(sv-1072 vector)
|
||||
(sv-1088 vector)
|
||||
)
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
(vf2 :class vf)
|
||||
(vf3 :class vf)
|
||||
(vf4 :class vf)
|
||||
(vf5 :class vf)
|
||||
(vf6 :class vf)
|
||||
)
|
||||
(init-vf0-vector)
|
||||
(let ((s1-0 (new 'stack-no-clear 'vector))
|
||||
(s0-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
(if (< 0.999 (fabs (-> obj axis y)))
|
||||
(vector-cross! s1-0 (-> obj axis) (new 'static 'vector :z 1.0))
|
||||
(vector-cross! s1-0 (-> obj axis) (new 'static 'vector :y 1.0))
|
||||
)
|
||||
(vector-normalize! s1-0 (-> obj radius))
|
||||
(vector-float*! s0-0 (-> obj axis) (* 0.125 (-> obj length)))
|
||||
(let ((s5-0 (new 'stack-no-clear 'cylinder-verts))
|
||||
(s4-0 (new 'stack-no-clear 'cylinder-verts))
|
||||
(s3-0 (new 'stack-no-clear 'matrix))
|
||||
)
|
||||
(matrix-axis-angle! s3-0 (-> obj axis) 4096.0)
|
||||
(set! sv-896 (new 'stack-no-clear 'matrix))
|
||||
(vector-matrix*! (the-as vector sv-896) (-> obj origin) s3-0)
|
||||
(let ((v1-6 (-> s3-0 trans)))
|
||||
(.lvf vf4 (&-> (-> obj origin) quad))
|
||||
(.lvf vf5 (&-> sv-896 vector 0 quad))
|
||||
(.mov.vf vf6 vf0 :mask #b1000)
|
||||
(.sub.vf vf6 vf4 vf5 :mask #b111)
|
||||
(.svf (&-> v1-6 quad) vf6)
|
||||
)
|
||||
(dotimes (v1-7 8)
|
||||
(vector+! (-> s5-0 vert (+ v1-7 8)) (-> obj origin) s1-0)
|
||||
(let ((a0-16 (-> s5-0 vert (+ v1-7 8))))
|
||||
(let ((a1-13 (-> s5-0 vert (+ v1-7 8)))
|
||||
(a2-4 s0-0)
|
||||
(f0-5 (the float v1-7))
|
||||
)
|
||||
(.lvf vf2 (&-> a2-4 quad))
|
||||
(.lvf vf1 (&-> a1-13 quad))
|
||||
(let ((a1-14 f0-5))
|
||||
(.mov vf3 a1-14)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> a0-16 quad) vf4)
|
||||
)
|
||||
)
|
||||
(dotimes (s0-1 8)
|
||||
(set! sv-944 (-> s5-0 vert s0-1))
|
||||
(set! sv-912 (-> obj origin))
|
||||
(set! sv-928 s1-0)
|
||||
(let ((f0-8 (cos (* 2048.0 (the float (- 7 s0-1))))))
|
||||
(.lvf vf2 (&-> sv-928 quad))
|
||||
(.lvf vf1 (&-> sv-912 quad))
|
||||
(let ((v1-19 f0-8))
|
||||
(.mov vf3 v1-19)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> sv-944 quad) vf4)
|
||||
(set! sv-992 (-> s5-0 vert s0-1))
|
||||
(set! sv-960 (-> s5-0 vert s0-1))
|
||||
(set! sv-976 (-> obj axis))
|
||||
(let ((f0-13 (* (- (-> obj radius)) (sin (* 2048.0 (the float (- 7 s0-1)))))))
|
||||
(.lvf vf2 (&-> sv-976 quad))
|
||||
(.lvf vf1 (&-> sv-960 quad))
|
||||
(let ((v1-33 f0-13))
|
||||
(.mov vf3 v1-33)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> sv-992 quad) vf4)
|
||||
(set! sv-1040 (-> s5-0 vert (+ s0-1 16)))
|
||||
(set! sv-1008 (-> obj origin))
|
||||
(set! sv-1024 s1-0)
|
||||
(let ((f0-16 (cos (* 2048.0 (the float s0-1)))))
|
||||
(.lvf vf2 (&-> sv-1024 quad))
|
||||
(.lvf vf1 (&-> sv-1008 quad))
|
||||
(let ((v1-43 f0-16))
|
||||
(.mov vf3 v1-43)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> sv-1040 quad) vf4)
|
||||
(set! sv-1088 (-> s5-0 vert (+ s0-1 16)))
|
||||
(set! sv-1056 (-> s5-0 vert (+ s0-1 16)))
|
||||
(set! sv-1072 (-> obj axis))
|
||||
(let ((f0-21 (+ (-> obj length) (* (-> obj radius) (sin (* 2048.0 (the float s0-1)))))))
|
||||
(.lvf vf2 (&-> sv-1072 quad))
|
||||
(.lvf vf1 (&-> sv-1056 quad))
|
||||
(let ((v1-57 f0-21))
|
||||
(.mov vf3 v1-57)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> sv-1088 quad) vf4)
|
||||
)
|
||||
(dotimes (s2-1 16)
|
||||
(dotimes (s1-1 24)
|
||||
(vector-matrix*! (-> s4-0 vert s1-1) (-> s5-0 vert s1-1) s3-0)
|
||||
(camera-line (-> s5-0 vert s1-1) (-> s4-0 vert s1-1) arg0)
|
||||
(if (nonzero? s1-1)
|
||||
(camera-line (-> s5-0 vert s1-1) (-> s5-0 vert (+ s1-1 -1)) arg0)
|
||||
)
|
||||
)
|
||||
(let ((v1-77 s5-0))
|
||||
(set! s5-0 s4-0)
|
||||
(set! s4-0 v1-77)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for function ray-arbitrary-circle-intersect
|
||||
(defun ray-arbitrary-circle-intersect ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector) (arg4 float))
|
||||
(let* ((v1-1 (vector-! (new 'stack-no-clear 'vector) arg2 arg0))
|
||||
(f0-2 (/ (vector-dot v1-1 arg3) (vector-dot arg1 arg3)))
|
||||
)
|
||||
(cond
|
||||
((or (< 1.0 f0-2) (< f0-2 0.0))
|
||||
-100000000.0
|
||||
)
|
||||
((let ((a0-8 (new 'stack-no-clear 'vector)))
|
||||
(vector-float*! a0-8 arg1 f0-2)
|
||||
(vector-! a0-8 a0-8 v1-1)
|
||||
(< (vector-dot a0-8 a0-8) (* arg4 arg4))
|
||||
)
|
||||
f0-2
|
||||
)
|
||||
(else
|
||||
-100000000.0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 10 of type cylinder-flat
|
||||
;; INFO: Used lq/sq
|
||||
(defmethod ray-flat-cyl-intersect cylinder-flat ((obj cylinder-flat) (arg0 vector) (arg1 vector))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
(vf2 :class vf)
|
||||
(vf3 :class vf)
|
||||
(vf4 :class vf)
|
||||
)
|
||||
(init-vf0-vector)
|
||||
(let ((gp-0 (new 'stack-no-clear 'vector))
|
||||
(s5-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
0.0
|
||||
0.0
|
||||
(let ((f30-0 (ray-cylinder-intersect arg0 arg1 (-> obj origin) (-> obj axis) (-> obj radius) (-> obj length) gp-0))
|
||||
)
|
||||
(let ((f0-5 (ray-arbitrary-circle-intersect arg0 arg1 (-> obj origin) (-> obj axis) (-> obj radius))))
|
||||
(when (and (>= f0-5 0.0) (or (< f30-0 0.0) (< f0-5 f30-0)))
|
||||
(set! f30-0 f0-5)
|
||||
(set! (-> gp-0 quad) (-> obj origin quad))
|
||||
)
|
||||
)
|
||||
(let ((v1-5 s5-0))
|
||||
(let ((a0-5 (-> obj origin))
|
||||
(a1-3 (-> obj axis))
|
||||
(f0-6 (-> obj length))
|
||||
)
|
||||
(.lvf vf2 (&-> a1-3 quad))
|
||||
(.lvf vf1 (&-> a0-5 quad))
|
||||
(let ((a0-6 f0-6))
|
||||
(.mov vf3 a0-6)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> v1-5 quad) vf4)
|
||||
)
|
||||
(let ((f0-8 (ray-arbitrary-circle-intersect arg0 arg1 s5-0 (-> obj axis) (-> obj radius))))
|
||||
(when (and (>= f0-8 0.0) (or (< f30-0 0.0) (< f0-8 f30-0)))
|
||||
(set! f30-0 f0-8)
|
||||
(set! (-> gp-0 quad) (-> s5-0 quad))
|
||||
)
|
||||
)
|
||||
f30-0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition of type cylinder-flat-verts
|
||||
(deftype cylinder-flat-verts (structure)
|
||||
((vert vector 10 :inline :offset-assert 0)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #xa0
|
||||
:flag-assert #x9000000a0
|
||||
)
|
||||
|
||||
;; definition for method 3 of type cylinder-flat-verts
|
||||
(defmethod inspect cylinder-flat-verts ((obj cylinder-flat-verts))
|
||||
(when (not obj)
|
||||
(set! obj obj)
|
||||
(goto cfg-4)
|
||||
)
|
||||
(format #t "[~8x] ~A~%" obj 'cylinder-flat-verts)
|
||||
(format #t "~1Tvert[10] @ #x~X~%" (-> obj vert))
|
||||
(label cfg-4)
|
||||
obj
|
||||
)
|
||||
|
||||
;; definition for method 9 of type cylinder-flat
|
||||
;; INFO: Used lq/sq
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defmethod debug-draw cylinder-flat ((obj cylinder-flat) (arg0 vector4w))
|
||||
(local-vars (sv-448 vector))
|
||||
(rlet ((acc :class vf)
|
||||
(vf0 :class vf)
|
||||
(vf1 :class vf)
|
||||
(vf2 :class vf)
|
||||
(vf3 :class vf)
|
||||
(vf4 :class vf)
|
||||
(vf5 :class vf)
|
||||
(vf6 :class vf)
|
||||
)
|
||||
(init-vf0-vector)
|
||||
(let ((s1-0 (new 'stack-no-clear 'vector))
|
||||
(s0-0 (new 'stack-no-clear 'vector))
|
||||
)
|
||||
(if (< 0.999 (fabs (-> obj axis y)))
|
||||
(vector-cross! s1-0 (-> obj axis) (new 'static 'vector :z 1.0))
|
||||
(vector-cross! s1-0 (-> obj axis) (new 'static 'vector :y 1.0))
|
||||
)
|
||||
(vector-normalize! s1-0 (-> obj radius))
|
||||
(vector-float*! s0-0 (-> obj axis) (* 0.14285715 (-> obj length)))
|
||||
(let ((s5-0 (new 'stack-no-clear 'cylinder-flat-verts))
|
||||
(s4-0 (new 'stack-no-clear 'cylinder-flat-verts))
|
||||
(s3-0 (new 'stack-no-clear 'matrix))
|
||||
)
|
||||
(matrix-axis-angle! s3-0 (-> obj axis) 4096.0)
|
||||
(set! sv-448 (new 'stack-no-clear 'vector))
|
||||
(vector-matrix*! sv-448 (-> obj origin) s3-0)
|
||||
(let ((v1-6 (-> s3-0 trans)))
|
||||
(.lvf vf4 (&-> (-> obj origin) quad))
|
||||
(.lvf vf5 (&-> sv-448 quad))
|
||||
(.mov.vf vf6 vf0 :mask #b1000)
|
||||
(.sub.vf vf6 vf4 vf5 :mask #b111)
|
||||
(.svf (&-> v1-6 quad) vf6)
|
||||
)
|
||||
(dotimes (v1-7 8)
|
||||
(vector+! (-> s5-0 vert (+ v1-7 1)) (-> obj origin) s1-0)
|
||||
(let ((a0-16 (-> s5-0 vert (+ v1-7 1))))
|
||||
(let ((a1-13 (-> s5-0 vert (+ v1-7 1)))
|
||||
(a2-4 s0-0)
|
||||
(f0-5 (the float v1-7))
|
||||
)
|
||||
(.lvf vf2 (&-> a2-4 quad))
|
||||
(.lvf vf1 (&-> a1-13 quad))
|
||||
(let ((a1-14 f0-5))
|
||||
(.mov vf3 a1-14)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> a0-16 quad) vf4)
|
||||
)
|
||||
)
|
||||
(set! (-> s5-0 vert 0 quad) (-> obj origin quad))
|
||||
(let ((v1-11 (-> s5-0 vert 9)))
|
||||
(let ((a0-19 (-> obj origin))
|
||||
(a1-15 (-> obj axis))
|
||||
(f0-6 (-> obj length))
|
||||
)
|
||||
(.lvf vf2 (&-> a1-15 quad))
|
||||
(.lvf vf1 (&-> a0-19 quad))
|
||||
(let ((a0-20 f0-6))
|
||||
(.mov vf3 a0-20)
|
||||
)
|
||||
)
|
||||
(.add.x.vf vf4 vf0 vf0 :mask #b1000)
|
||||
(.mul.x.vf acc vf2 vf3)
|
||||
(.add.mul.w.vf vf4 vf1 vf0 acc :mask #b111)
|
||||
(.svf (&-> v1-11 quad) vf4)
|
||||
)
|
||||
(dotimes (s2-1 16)
|
||||
(dotimes (s1-1 10)
|
||||
(vector-matrix*! (-> s4-0 vert s1-1) (-> s5-0 vert s1-1) s3-0)
|
||||
(camera-line (-> s5-0 vert s1-1) (-> s4-0 vert s1-1) arg0)
|
||||
(if (nonzero? s1-1)
|
||||
(camera-line (-> s5-0 vert s1-1) (-> s5-0 vert (+ s1-1 -1)) arg0)
|
||||
)
|
||||
)
|
||||
(let ((v1-28 s5-0))
|
||||
(set! s5-0 s4-0)
|
||||
(set! s4-0 v1-28)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
+8
-7
@@ -164,14 +164,14 @@
|
||||
(other-name-1 symbol :offset 24)
|
||||
(packages pair :offset-assert 32)
|
||||
(memory-mode uint32 :offset-assert 36)
|
||||
(music-bank basic :offset-assert 40)
|
||||
(ambient-sounds basic :offset-assert 44)
|
||||
(music-bank symbol :offset-assert 40)
|
||||
(ambient-sounds symbol :offset-assert 44)
|
||||
(sound-reverb float :offset-assert 48)
|
||||
(mood-func symbol :offset-assert 52)
|
||||
(mood-init symbol :offset-assert 56)
|
||||
(ocean basic :offset-assert 60)
|
||||
(sky basic :offset-assert 64)
|
||||
(use-camera-other basic :offset-assert 68)
|
||||
(ocean symbol :offset-assert 60)
|
||||
(sky symbol :offset-assert 64)
|
||||
(use-camera-other symbol :offset-assert 68)
|
||||
(part-engine-max int32 :offset-assert 72)
|
||||
(city-map-bits uint64 :offset-assert 80)
|
||||
(continues pair :offset-assert 88)
|
||||
@@ -192,7 +192,7 @@
|
||||
(kill-func symbol :offset-assert 156)
|
||||
(borrow-size uint16 2 :offset-assert 160)
|
||||
(borrow-level symbol 2 :offset-assert 164)
|
||||
(borrow-display? basic 2 :offset-assert 172)
|
||||
(borrow-display? symbol 2 :offset-assert 172)
|
||||
(base-task-mask task-mask :offset-assert 180)
|
||||
(texture-anim symbol 10 :offset-assert 184)
|
||||
(texture-anim-tfrag symbol :offset 184)
|
||||
@@ -217,6 +217,7 @@
|
||||
(ocean-alpha float :offset-assert 280)
|
||||
(extra-sound-bank pair :offset-assert 284)
|
||||
)
|
||||
:pack-me
|
||||
:method-count-assert 9
|
||||
:size-assert #x120
|
||||
:flag-assert #x900000120
|
||||
@@ -484,7 +485,7 @@
|
||||
(debug-print-region-splitbox (_type_ vector object) none 20)
|
||||
(get-art-group-by-name (_type_ string) art-group 21)
|
||||
(level-method-22 () none 22)
|
||||
(level-method-23 () none 23)
|
||||
(lookup-text (_type_ game-text-id symbol) string 23)
|
||||
(level-method-24 () none 24)
|
||||
(birth (_type_) _type_ 25)
|
||||
(level-status-update! (_type_ symbol) _type_ 26)
|
||||
|
||||
+1
-5
@@ -56,7 +56,7 @@
|
||||
(new (symbol type process-drawable int float collide-spec) _type_ 0)
|
||||
(initialize (_type_ process-drawable int float collide-spec) impact-control :behavior process 9)
|
||||
(update-from-cspace (_type_) none 10)
|
||||
(impact-control-method-11 () none 11)
|
||||
(impact-control-method-11 (_type_) none 11)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -264,7 +264,3 @@
|
||||
|
||||
;; failed to figure out what this is:
|
||||
0
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+163
@@ -0,0 +1,163 @@
|
||||
;;-*-Lisp-*-
|
||||
(in-package goal)
|
||||
|
||||
;; definition of type mech-info
|
||||
(deftype mech-info (basic)
|
||||
((entity basic :offset-assert 4)
|
||||
(hud uint64 1 :offset-assert 8)
|
||||
(mech-trans vector :inline :offset-assert 16)
|
||||
(mech-quat vector :inline :offset-assert 32)
|
||||
(mech-scale vector :inline :offset-assert 48)
|
||||
(engine-sound-id uint32 :offset-assert 64)
|
||||
(engine-sound-volume float :offset-assert 68)
|
||||
(engine-sound-pitch float :offset-assert 72)
|
||||
(thrust-sound-id uint32 :offset-assert 76)
|
||||
(drag-sound-id uint32 :offset-assert 80)
|
||||
(whine-sound-id uint32 :offset-assert 84)
|
||||
(mech-start-time time-frame :offset-assert 88)
|
||||
(mech-time time-frame :offset-assert 96)
|
||||
(no-get-off-time time-frame :offset-assert 104)
|
||||
(stick-lock basic :offset-assert 112)
|
||||
(stick-off basic :offset-assert 116)
|
||||
(forward-vel meters :offset-assert 120)
|
||||
(jump-thrust meters :offset-assert 124)
|
||||
(jump-thrust-fuel float :offset-assert 128)
|
||||
(unstuck-time time-frame :offset-assert 136)
|
||||
(stuck-count int32 :offset-assert 144)
|
||||
(back-touch-point vector :inline :offset-assert 160)
|
||||
(back-touch-trans vector :inline :offset-assert 176)
|
||||
(back-touch-time time-frame :offset-assert 192)
|
||||
(attack-id uint32 :offset-assert 200)
|
||||
(shield-value float :offset-assert 204)
|
||||
(shield-max float :offset-assert 208)
|
||||
(walk-anim-leg int32 :offset-assert 212)
|
||||
(state-impact? symbol 1 :offset-assert 216)
|
||||
(state-impact impact-control 1 :inline :offset-assert 224)
|
||||
(thruster-flame-width meters :offset-assert 304)
|
||||
(thruster-flame-length meters :offset-assert 308)
|
||||
(thruster-local-pos vector 2 :inline :offset-assert 320)
|
||||
(exhaust-local-pos vector 2 :inline :offset-assert 352)
|
||||
(exhaust-local-dir vector 2 :inline :offset-assert 384)
|
||||
(smoke-local-pos vector 2 :inline :offset-assert 416)
|
||||
(smoke-local-vel vector 2 :inline :offset-assert 448)
|
||||
(particle-system-2d basic :offset-assert 480)
|
||||
(particle-system-3d basic :offset-assert 484)
|
||||
(part-thruster basic :offset-assert 488)
|
||||
(part-thruster-scale-x sp-field-init-spec :offset-assert 492)
|
||||
(part-thruster-scale-y sp-field-init-spec :offset-assert 496)
|
||||
(part-quat quaternion :offset-assert 500)
|
||||
(part-vel vector :offset-assert 504)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x1fc
|
||||
:flag-assert #x9000001fc
|
||||
)
|
||||
|
||||
;; definition for method 3 of type mech-info
|
||||
(defmethod inspect mech-info ((obj mech-info))
|
||||
(when (not obj)
|
||||
(set! obj obj)
|
||||
(goto cfg-4)
|
||||
)
|
||||
(format #t "[~8x] ~A~%" obj (-> obj type))
|
||||
(format #t "~1Tentity: ~A~%" (-> obj entity))
|
||||
(format #t "~1Thud[1] @ #x~X~%" (-> obj hud))
|
||||
(format #t "~1Tmech-trans: ~`vector`P~%" (-> obj mech-trans))
|
||||
(format #t "~1Tmech-quat: ~`vector`P~%" (-> obj mech-quat))
|
||||
(format #t "~1Tmech-scale: ~`vector`P~%" (-> obj mech-scale))
|
||||
(format #t "~1Tengine-sound-id: ~D~%" (-> obj engine-sound-id))
|
||||
(format #t "~1Tengine-sound-volume: ~f~%" (-> obj engine-sound-volume))
|
||||
(format #t "~1Tengine-sound-pitch: ~f~%" (-> obj engine-sound-pitch))
|
||||
(format #t "~1Tthrust-sound-id: ~D~%" (-> obj thrust-sound-id))
|
||||
(format #t "~1Tdrag-sound-id: ~D~%" (-> obj drag-sound-id))
|
||||
(format #t "~1Twhine-sound-id: ~D~%" (-> obj whine-sound-id))
|
||||
(format #t "~1Tmech-start-time: ~D~%" (-> obj mech-start-time))
|
||||
(format #t "~1Tmech-time: ~D~%" (-> obj mech-time))
|
||||
(format #t "~1Tno-get-off-time: ~D~%" (-> obj no-get-off-time))
|
||||
(format #t "~1Tstick-lock: ~A~%" (-> obj stick-lock))
|
||||
(format #t "~1Tstick-off: ~A~%" (-> obj stick-off))
|
||||
(format #t "~1Tforward-vel: (meters ~m)~%" (-> obj forward-vel))
|
||||
(format #t "~1Tjump-thrust: (meters ~m)~%" (-> obj jump-thrust))
|
||||
(format #t "~1Tjump-thrust-fuel: ~f~%" (-> obj jump-thrust-fuel))
|
||||
(format #t "~1Tunstuck-time: ~D~%" (-> obj unstuck-time))
|
||||
(format #t "~1Tstuck-count: ~D~%" (-> obj stuck-count))
|
||||
(format #t "~1Tback-touch-point: ~`vector`P~%" (-> obj back-touch-point))
|
||||
(format #t "~1Tback-touch-trans: ~`vector`P~%" (-> obj back-touch-trans))
|
||||
(format #t "~1Tback-touch-time: ~D~%" (-> obj back-touch-time))
|
||||
(format #t "~1Tattack-id: ~D~%" (-> obj attack-id))
|
||||
(format #t "~1Tshield-value: ~f~%" (-> obj shield-value))
|
||||
(format #t "~1Tshield-max: ~f~%" (-> obj shield-max))
|
||||
(format #t "~1Twalk-anim-leg: ~D~%" (-> obj walk-anim-leg))
|
||||
(format #t "~1Tstate-impact?[1] @ #x~X~%" (-> obj state-impact?))
|
||||
(format #t "~1Tstate-impact[1] @ #x~X~%" (-> obj state-impact))
|
||||
(format #t "~1Tthruster-flame-width: (meters ~m)~%" (-> obj thruster-flame-width))
|
||||
(format #t "~1Tthruster-flame-length: (meters ~m)~%" (-> obj thruster-flame-length))
|
||||
(format #t "~1Tthruster-local-pos[2] @ #x~X~%" (-> obj thruster-local-pos))
|
||||
(format #t "~1Texhaust-local-pos[2] @ #x~X~%" (-> obj exhaust-local-pos))
|
||||
(format #t "~1Texhaust-local-dir[2] @ #x~X~%" (-> obj exhaust-local-dir))
|
||||
(format #t "~1Tsmoke-local-pos[2] @ #x~X~%" (-> obj smoke-local-pos))
|
||||
(format #t "~1Tsmoke-local-vel[2] @ #x~X~%" (-> obj smoke-local-vel))
|
||||
(format #t "~1Tparticle-system-2d: ~A~%" (-> obj particle-system-2d))
|
||||
(format #t "~1Tparticle-system-3d: ~A~%" (-> obj particle-system-3d))
|
||||
(format #t "~1Tpart-thruster: ~A~%" (-> obj part-thruster))
|
||||
(format #t "~1Tpart-thruster-scale-x: #<sp-field-init-spec @ #x~X>~%" (-> obj part-thruster-scale-x))
|
||||
(format #t "~1Tpart-thruster-scale-y: #<sp-field-init-spec @ #x~X>~%" (-> obj part-thruster-scale-y))
|
||||
(format #t "~1Tpart-quat: #<quaternion @ #x~X>~%" (-> obj part-quat))
|
||||
(format #t "~1Tpart-vel: #<vector @ #x~X>~%" (-> obj part-vel))
|
||||
(label cfg-4)
|
||||
obj
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
(let ((a0-2 (new 'static 'skeleton-group
|
||||
:name "skel-mech"
|
||||
:extra #f
|
||||
:info #f
|
||||
:art-group-name "mech"
|
||||
:bounds (new 'static 'vector :w 18432.0)
|
||||
:version #x7
|
||||
:shadow 2
|
||||
:origin-joint-index 3
|
||||
:shadow-joint-index 3
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> a0-2 jgeo) 0)
|
||||
(set! (-> a0-2 janim) 3)
|
||||
(set! (-> a0-2 mgeo 0) 1)
|
||||
(set! (-> a0-2 lod-dist 0) 4095996000.0)
|
||||
(add-to-loading-level a0-2)
|
||||
)
|
||||
|
||||
;; definition for symbol *mech-shadow-control*, type shadow-control
|
||||
(define *mech-shadow-control*
|
||||
(new 'static 'shadow-control :settings (new 'static 'shadow-settings
|
||||
:center (new 'static 'vector :w (the-as float #xa))
|
||||
:shadow-dir (new 'static 'vector :y -1.0 :w 614400.0)
|
||||
:bot-plane (new 'static 'plane :y 1.0 :w 81920.0)
|
||||
:top-plane (new 'static 'plane :y 1.0 :w 2048.0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
(let ((a0-3 (new 'static 'skeleton-group
|
||||
:name "skel-mech-explode"
|
||||
:extra #f
|
||||
:info #f
|
||||
:art-group-name "mech"
|
||||
:bounds (new 'static 'vector :w 18432.0)
|
||||
:version #x7
|
||||
:origin-joint-index 3
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> a0-3 jgeo) 39)
|
||||
(set! (-> a0-3 janim) 41)
|
||||
(set! (-> a0-3 mgeo 0) 40)
|
||||
(set! (-> a0-3 lod-dist 0) 4095996000.0)
|
||||
(add-to-loading-level a0-3)
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
0
|
||||
+5
-8
@@ -27,10 +27,10 @@
|
||||
|
||||
;; definition of type game-text-info
|
||||
(deftype game-text-info (basic)
|
||||
((length int32 :offset-assert 4)
|
||||
(language-id int32 :offset-assert 8)
|
||||
(group-name string :offset-assert 12)
|
||||
(data game-text :dynamic :offset-assert 16)
|
||||
((length int32 :offset-assert 4)
|
||||
(language-id int32 :offset-assert 8)
|
||||
(group-name string :offset-assert 12)
|
||||
(data game-text :inline :dynamic :offset-assert 16)
|
||||
)
|
||||
:method-count-assert 10
|
||||
:size-assert #x10
|
||||
@@ -41,6 +41,7 @@
|
||||
)
|
||||
|
||||
;; definition for method 3 of type game-text-info
|
||||
;; INFO: this function exists in multiple non-identical object files
|
||||
(defmethod inspect game-text-info ((obj game-text-info))
|
||||
(when (not obj)
|
||||
(set! obj obj)
|
||||
@@ -66,7 +67,3 @@
|
||||
|
||||
;; failed to figure out what this is:
|
||||
0
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+652
@@ -0,0 +1,652 @@
|
||||
;;-*-Lisp-*-
|
||||
(in-package goal)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
(kmemopen global "text")
|
||||
|
||||
;; definition for symbol *expand-buf-number*, type int
|
||||
(define *expand-buf-number* 0)
|
||||
|
||||
;; definition for symbol *game-text-word*, type string
|
||||
(define *game-text-word* (new 'global 'string 256 (the-as string #f)))
|
||||
|
||||
;; definition for symbol *game-text-line*, type string
|
||||
(define *game-text-line* (new 'global 'string 1024 (the-as string #f)))
|
||||
|
||||
;; definition for symbol *expanded-text-line0*, type string
|
||||
(define *expanded-text-line0* (new 'global 'string 1024 (the-as string #f)))
|
||||
|
||||
;; definition for symbol *expanded-text-line1*, type string
|
||||
(define *expanded-text-line1* (new 'global 'string 1024 (the-as string #f)))
|
||||
|
||||
;; definition for symbol *level-text-file-load-flag*, type symbol
|
||||
(define *level-text-file-load-flag* #t)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
(when (zero? (-> *common-text-heap* base))
|
||||
(let ((gp-0 *common-text-heap*))
|
||||
(set! (-> gp-0 base) (kmalloc global #x10000 (kmalloc-flags) "heap"))
|
||||
(set! (-> gp-0 current) (-> gp-0 base))
|
||||
(set! (-> gp-0 top-base) (&+ (-> gp-0 base) #x10000))
|
||||
(set! (-> gp-0 top) (-> gp-0 top-base))
|
||||
)
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
(kmemclose)
|
||||
|
||||
;; definition for method 7 of type game-text-info
|
||||
(defmethod relocate game-text-info ((obj game-text-info) (arg0 int))
|
||||
(let ((v1-1 (-> *level* loading-level)))
|
||||
(when v1-1
|
||||
(set! (-> v1-1 loaded-text-info (-> v1-1 loaded-text-info-count)) obj)
|
||||
(+! (-> v1-1 loaded-text-info-count) 1)
|
||||
)
|
||||
)
|
||||
obj
|
||||
)
|
||||
|
||||
;; definition for method 4 of type game-text-info
|
||||
(defmethod length game-text-info ((obj game-text-info))
|
||||
(-> obj length)
|
||||
)
|
||||
|
||||
;; definition for method 5 of type game-text-info
|
||||
;; INFO: Return type mismatch uint vs int.
|
||||
(defmethod asize-of game-text-info ((obj game-text-info))
|
||||
(the-as int (+ (-> obj type size) (* (-> obj length) 8)))
|
||||
)
|
||||
|
||||
;; definition for method 3 of type game-text-info
|
||||
;; INFO: this function exists in multiple non-identical object files
|
||||
(defmethod inspect game-text-info ((obj game-text-info))
|
||||
(format #t "[~8x] ~A~%" obj (-> obj type))
|
||||
(format #t "~Tlength: ~D~%" (-> obj length))
|
||||
(format #t "~Tlanguage-id: ~D~%" (-> obj language-id))
|
||||
(format #t "~Tgroup-name: ~A~%" (-> obj group-name))
|
||||
(format #t "~Tdata[~D]: @ #x~X~%" (-> obj length) (-> obj data))
|
||||
(dotimes (s5-0 (-> obj length))
|
||||
(format #t "~T [~D] #x~X ~A~%" s5-0 (-> obj data s5-0 id) (-> obj data s5-0 text))
|
||||
)
|
||||
obj
|
||||
)
|
||||
|
||||
;; definition for method 8 of type game-text-info
|
||||
(defmethod mem-usage game-text-info ((obj game-text-info) (arg0 memory-usage-block) (arg1 int))
|
||||
(set! (-> arg0 length) (max 84 (-> arg0 length)))
|
||||
(set! (-> arg0 data 83 name) "string")
|
||||
(+! (-> arg0 data 83 count) 1)
|
||||
(let ((v1-6 (asize-of obj)))
|
||||
(+! (-> arg0 data 83 used) v1-6)
|
||||
(+! (-> arg0 data 83 total) (logand -16 (+ v1-6 15)))
|
||||
)
|
||||
(dotimes (s4-0 (-> obj length))
|
||||
(set! (-> arg0 length) (max 84 (-> arg0 length)))
|
||||
(set! (-> arg0 data 83 name) "string")
|
||||
(+! (-> arg0 data 83 count) 1)
|
||||
(let ((v1-18 (asize-of (-> obj data s4-0 text))))
|
||||
(+! (-> arg0 data 83 used) v1-18)
|
||||
(+! (-> arg0 data 83 total) (logand -16 (+ v1-18 15)))
|
||||
)
|
||||
)
|
||||
obj
|
||||
)
|
||||
|
||||
;; definition for function convert-korean-text
|
||||
(defun convert-korean-text ((arg0 game-text))
|
||||
(local-vars (v1-21 int))
|
||||
"Converts the provided [[game-text]] into korean. Returns a [[string]]"
|
||||
(let ((gp-0 (&-> arg0 text)))
|
||||
*expanded-text-line0*
|
||||
(let ((s4-0 0))
|
||||
0
|
||||
(let ((s1-0 0)
|
||||
(s5-0 ((method-of-type string length) (the-as string arg0)))
|
||||
)
|
||||
(set! *expand-buf-number* (logxor *expand-buf-number* 1))
|
||||
(let ((s3-0 (if (zero? *expand-buf-number*)
|
||||
*expanded-text-line0*
|
||||
*expanded-text-line1*
|
||||
)
|
||||
)
|
||||
)
|
||||
(let ((s2-0 (+ (-> s3-0 allocated-length) -1)))
|
||||
(clear s3-0)
|
||||
(while (< s4-0 s5-0)
|
||||
(cond
|
||||
((= (-> (the-as (pointer uint8) (&+ gp-0 s4-0))) 3)
|
||||
(+! s4-0 1)
|
||||
(while (and (< s4-0 s5-0)
|
||||
(!= (-> (the-as (pointer uint8) (&+ gp-0 s4-0))) 3)
|
||||
(!= (-> (the-as (pointer uint8) (&+ gp-0 s4-0))) 4)
|
||||
)
|
||||
(set! (-> s3-0 data s1-0) (-> (the-as (pointer uint8) (&+ gp-0 s4-0))))
|
||||
(+! s4-0 1)
|
||||
(+! s1-0 1)
|
||||
)
|
||||
)
|
||||
(else
|
||||
(let ((v1-17 (+ s4-0 1)))
|
||||
(-> (the-as (pointer uint8) (&+ gp-0 v1-17)))
|
||||
(set! s4-0 (+ v1-17 1))
|
||||
)
|
||||
(set! (-> s3-0 data s1-0) (the-as uint 126))
|
||||
(let ((v1-19 (+ s1-0 1)))
|
||||
(set! (-> s3-0 data v1-19) (the-as uint 89))
|
||||
(let ((v1-20 (+ v1-19 1)))
|
||||
(while (and (< s4-0 s5-0)
|
||||
(< v1-20 s2-0)
|
||||
(!= (-> (the-as (pointer uint8) (&+ gp-0 s4-0))) 3)
|
||||
(!= (-> (the-as (pointer uint8) (&+ gp-0 s4-0))) 4)
|
||||
)
|
||||
(cond
|
||||
((= (-> (the-as (pointer uint8) (&+ gp-0 s4-0))) 5)
|
||||
(set! (-> s3-0 data v1-20) (the-as uint 1))
|
||||
(+! s4-0 1)
|
||||
(set! v1-21 (+ v1-20 1))
|
||||
)
|
||||
(else
|
||||
(set! (-> s3-0 data v1-20) (the-as uint 3))
|
||||
(set! v1-21 (+ v1-20 1))
|
||||
)
|
||||
)
|
||||
(set! (-> s3-0 data v1-21) (-> (the-as (pointer uint8) (&+ gp-0 s4-0))))
|
||||
(+! s4-0 1)
|
||||
(let ((v1-22 (+ v1-21 1)))
|
||||
(set! (-> s3-0 data v1-22) (the-as uint 126))
|
||||
(let ((v1-23 (+ v1-22 1)))
|
||||
(set! (-> s3-0 data v1-23) (the-as uint 90))
|
||||
(set! v1-20 (+ v1-23 1))
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> s3-0 data v1-20) (the-as uint 126))
|
||||
(let ((v1-24 (+ v1-20 1)))
|
||||
(set! (-> s3-0 data v1-24) (the-as uint 43))
|
||||
(let ((v1-25 (+ v1-24 1)))
|
||||
(set! (-> s3-0 data v1-25) (the-as uint 50))
|
||||
(let ((v1-26 (+ v1-25 1)))
|
||||
(set! (-> s3-0 data v1-26) (the-as uint 54))
|
||||
(let ((v1-27 (+ v1-26 1)))
|
||||
(set! (-> s3-0 data v1-27) (the-as uint 72))
|
||||
(set! s1-0 (+ v1-27 1))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> s3-0 data s1-0) (the-as uint 0))
|
||||
s3-0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 9 of type game-text-info
|
||||
(defmethod lookup-text! game-text-info ((obj game-text-info) (arg0 game-text-id) (arg1 symbol))
|
||||
(cond
|
||||
((= obj #f)
|
||||
(cond
|
||||
(arg1
|
||||
(the-as string #f)
|
||||
)
|
||||
(else
|
||||
(format (clear *temp-string*) "NO GAME TEXT")
|
||||
*temp-string*
|
||||
)
|
||||
)
|
||||
)
|
||||
(else
|
||||
(let* ((a1-2 0)
|
||||
(a3-0 (+ (-> obj length) 1))
|
||||
(v1-2 (/ (+ a1-2 a3-0) 2))
|
||||
)
|
||||
(let ((t0-0 -1))
|
||||
(while (and (!= (-> obj data v1-2 id) arg0) (!= v1-2 t0-0))
|
||||
(if (< (the-as uint arg0) (the-as uint (-> obj data v1-2 id)))
|
||||
(set! a3-0 v1-2)
|
||||
(set! a1-2 v1-2)
|
||||
)
|
||||
(set! t0-0 v1-2)
|
||||
(set! v1-2 (/ (+ a1-2 a3-0) 2))
|
||||
)
|
||||
)
|
||||
(cond
|
||||
((!= (-> obj data v1-2 id) arg0)
|
||||
(cond
|
||||
(arg1
|
||||
(the-as string #f)
|
||||
)
|
||||
(else
|
||||
(format (clear *temp-string*) "UNKNOWN ID ~X" arg0)
|
||||
*temp-string*
|
||||
)
|
||||
)
|
||||
)
|
||||
((= (-> obj language-id) 6)
|
||||
(convert-korean-text (the-as game-text (-> obj data v1-2 text)))
|
||||
)
|
||||
(else
|
||||
(-> obj data v1-2 text)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for method 23 of type level
|
||||
(defmethod lookup-text level ((obj level) (arg0 game-text-id) (arg1 symbol))
|
||||
(let ((v1-0 *common-text*))
|
||||
(dotimes (a3-0 (-> obj loaded-text-info-count))
|
||||
(if (= (-> obj loaded-text-info a3-0 language-id) (-> *setting-control* user-current language))
|
||||
(set! v1-0 (-> obj loaded-text-info a3-0))
|
||||
)
|
||||
)
|
||||
(lookup-text! v1-0 arg0 arg1)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for symbol text-is-loading, type symbol
|
||||
(define text-is-loading #f)
|
||||
|
||||
;; definition for function load-game-text-info
|
||||
;; ERROR: function was not converted to expressions. Cannot decompile.
|
||||
|
||||
;; definition for function load-level-text-files
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defun load-level-text-files ((arg0 int))
|
||||
"Load the text files needed for level idx.
|
||||
This function made more sense back when text files were split up, but in the end they put everything
|
||||
in a single text group and file."
|
||||
(if (or *level-text-file-load-flag* (>= arg0 0))
|
||||
(load-game-text-info "common" '*common-text* *common-text-heap*)
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for function draw-debug-text-box
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defun draw-debug-text-box ((arg0 font-context))
|
||||
"Draws some lines"
|
||||
(when *cheat-mode*
|
||||
(let ((s5-0 (new 'static 'vector4w))
|
||||
(gp-0 (new 'static 'matrix))
|
||||
)
|
||||
(let ((v1-2 (-> gp-0 data)))
|
||||
(set! (-> v1-2 0) (the-as float (the int (+ -256.0 (-> arg0 origin x)))))
|
||||
(set! (-> v1-2 1) (the-as float (the int (+ -208.0 (-> arg0 origin y)))))
|
||||
(set! (-> v1-2 2) 0.0)
|
||||
(set! (-> v1-2 3) (the-as float #x1))
|
||||
)
|
||||
(let ((v1-3 (&-> gp-0 data 4)))
|
||||
(set! (-> v1-3 0) (the-as float (the int (+ -256.0 (-> arg0 width) (-> arg0 origin x)))))
|
||||
(set! (-> v1-3 1) (the-as float (the int (+ -208.0 (-> arg0 origin y)))))
|
||||
(set! (-> v1-3 2) 0.0)
|
||||
(set! (-> v1-3 3) (the-as float #x1))
|
||||
)
|
||||
(let ((v1-4 (&-> gp-0 data 8)))
|
||||
(set! (-> v1-4 0) (the-as float (the int (+ -256.0 (-> arg0 width) (-> arg0 origin x)))))
|
||||
(set! (-> v1-4 1) (the-as float (the int (+ -208.0 (-> arg0 height) (-> arg0 origin y)))))
|
||||
(set! (-> v1-4 2) 0.0)
|
||||
(set! (-> v1-4 3) (the-as float #x1))
|
||||
)
|
||||
(set-vector!
|
||||
(-> gp-0 trans)
|
||||
(the-as float (the int (+ -256.0 (-> arg0 origin x))))
|
||||
(the-as float (the int (+ -208.0 (-> arg0 height) (-> arg0 origin y))))
|
||||
0.0
|
||||
(the-as float #x1)
|
||||
)
|
||||
(set-vector! s5-0 128 128 128 128)
|
||||
(add-debug-line2d
|
||||
#t
|
||||
(bucket-id bucket-318)
|
||||
(the-as vector (-> gp-0 data))
|
||||
(the-as vector (&-> gp-0 data 4))
|
||||
(the-as vector s5-0)
|
||||
)
|
||||
(add-debug-line2d
|
||||
#t
|
||||
(bucket-id bucket-318)
|
||||
(the-as vector (&-> gp-0 data 4))
|
||||
(the-as vector (&-> gp-0 data 8))
|
||||
(the-as vector s5-0)
|
||||
)
|
||||
(add-debug-line2d
|
||||
#t
|
||||
(bucket-id bucket-318)
|
||||
(the-as vector (&-> gp-0 data 8))
|
||||
(-> gp-0 trans)
|
||||
(the-as vector s5-0)
|
||||
)
|
||||
(add-debug-line2d
|
||||
#t
|
||||
(bucket-id bucket-318)
|
||||
(-> gp-0 trans)
|
||||
(the-as vector (-> gp-0 data))
|
||||
(the-as vector s5-0)
|
||||
)
|
||||
)
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for function print-game-text-scaled
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defun print-game-text-scaled ((arg0 string) (arg1 float) (arg2 font-context) (arg3 int))
|
||||
"Print text, with a given scaling"
|
||||
(let ((f26-0 (-> arg2 width))
|
||||
(f30-0 (-> arg2 height))
|
||||
(f24-0 (-> arg2 origin x))
|
||||
(f22-0 (-> arg2 origin y))
|
||||
(f28-0 (-> arg2 scale))
|
||||
)
|
||||
(let ((f0-1 (* (-> arg2 width) arg1))
|
||||
(f1-2 (* (-> arg2 height) arg1))
|
||||
)
|
||||
(if (logtest? (-> arg2 flags) (font-flags middle))
|
||||
(+! (-> arg2 origin x) (* 0.5 (- f26-0 f0-1)))
|
||||
)
|
||||
(if (logtest? (-> arg2 flags) (font-flags left))
|
||||
(+! (-> arg2 origin y) (* 0.5 (- f30-0 f1-2)))
|
||||
)
|
||||
(let ((v1-10 arg2))
|
||||
(set! (-> v1-10 scale) (* f28-0 arg1))
|
||||
)
|
||||
(set! (-> arg2 width) f0-1)
|
||||
(set! (-> arg2 height) f1-2)
|
||||
)
|
||||
(print-game-text arg0 arg2 #f 44 320)
|
||||
(set! (-> arg2 origin x) f24-0)
|
||||
(set! (-> arg2 origin y) f22-0)
|
||||
(set! (-> arg2 width) f26-0)
|
||||
(set! (-> arg2 height) f30-0)
|
||||
(set! (-> arg2 scale) f28-0)
|
||||
)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for function print-game-text
|
||||
;; WARN: Stack slot offset 48 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 20 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 52 signed mismatch
|
||||
;; WARN: Stack slot offset 44 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 40 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 48 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 20 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 52 signed mismatch
|
||||
;; WARN: Stack slot offset 44 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 40 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 48 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 20 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 52 signed mismatch
|
||||
;; WARN: Stack slot offset 44 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 48 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 20 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 48 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 20 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 52 signed mismatch
|
||||
;; WARN: Stack slot offset 44 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 40 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 48 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 20 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 52 signed mismatch
|
||||
;; WARN: Stack slot offset 44 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 40 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 48 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 20 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
;; WARN: Stack slot offset 52 signed mismatch
|
||||
;; WARN: Stack slot offset 44 signed mismatch
|
||||
;; WARN: Stack slot offset 36 signed mismatch
|
||||
;; WARN: Stack slot offset 48 signed mismatch
|
||||
;; WARN: Stack slot offset 16 signed mismatch
|
||||
;; WARN: Stack slot offset 20 signed mismatch
|
||||
;; WARN: Stack slot offset 56 signed mismatch
|
||||
(defun print-game-text ((arg0 string) (arg1 font-context) (arg2 symbol) (arg3 int) (arg4 int))
|
||||
(local-vars
|
||||
(sv-16 float)
|
||||
(sv-20 float)
|
||||
(sv-24 font-flags)
|
||||
(sv-28 font-color)
|
||||
(sv-32 (pointer uint8))
|
||||
(sv-36 float)
|
||||
(sv-40 float)
|
||||
(sv-44 float)
|
||||
(sv-48 float)
|
||||
(sv-52 int)
|
||||
(sv-56 float)
|
||||
(sv-64 int)
|
||||
(sv-72 uint)
|
||||
(sv-80 int)
|
||||
(sv-88 int)
|
||||
(sv-96 int)
|
||||
(sv-104 uint)
|
||||
(sv-108 symbol)
|
||||
(sv-112 int)
|
||||
(sv-120 int)
|
||||
)
|
||||
"Print text."
|
||||
(cond
|
||||
((< 0.1 (-> arg1 scale))
|
||||
(set! sv-16 (-> arg1 origin x))
|
||||
(set! sv-20 (-> arg1 origin y))
|
||||
(set! sv-24 (-> arg1 flags))
|
||||
(set! sv-28 (-> arg1 color))
|
||||
(when (logtest? (-> arg1 flags) (font-flags left))
|
||||
(logclear! (-> arg1 flags) (font-flags left))
|
||||
(+! (-> arg1 origin y)
|
||||
(the float (the int (* 0.5 (- (-> arg1 height) (print-game-text arg0 arg1 #t 44 320)))))
|
||||
)
|
||||
)
|
||||
(set! sv-32 (-> arg0 data))
|
||||
(set! sv-36 (-> arg1 origin x))
|
||||
(set! sv-40 (-> arg1 origin x))
|
||||
(set! sv-44 (+ (-> arg1 origin x) (-> arg1 width)))
|
||||
(set! sv-48 (+ (-> arg1 origin y) (-> arg1 height)))
|
||||
(set! sv-52 (gpr->fpr (.asm.sllv.r0 (get-string-length " " arg1))))
|
||||
(set! sv-56 (* (if (logtest? (-> arg1 flags) (font-flags large))
|
||||
(the float arg3)
|
||||
28.0
|
||||
)
|
||||
(-> arg1 scale)
|
||||
)
|
||||
)
|
||||
(set! sv-64 0)
|
||||
(if (logtest? (-> arg1 flags) (font-flags middle))
|
||||
(+! (-> arg1 origin x) (* 0.5 (-> arg1 width)))
|
||||
)
|
||||
(set! sv-72 (-> sv-32 0))
|
||||
(set! sv-80 0)
|
||||
(set! sv-88 0)
|
||||
(set! sv-96 0)
|
||||
(set! sv-104 (-> sv-32 1))
|
||||
(set! sv-108 (the-as symbol #f))
|
||||
(set! sv-112 0)
|
||||
(set! sv-120 0)
|
||||
(set! (-> *game-text-line* data 0) (the-as uint 0))
|
||||
(while (and (not (and (zero? sv-72) (zero? sv-80) (zero? sv-88))) (>= sv-48 (-> arg1 origin y)))
|
||||
(set! sv-120 0)
|
||||
(set! sv-32 (&-> sv-32 1))
|
||||
(set! sv-104 (-> sv-32 0))
|
||||
(set! sv-32 (&-> sv-32 -1))
|
||||
(cond
|
||||
((and (> sv-72 0) (< sv-72 (the-as uint 4)))
|
||||
(set! (-> *game-text-word* data sv-80) sv-72)
|
||||
(set! sv-80 (+ sv-80 1))
|
||||
(set! (-> *game-text-word* data sv-80) sv-104)
|
||||
(set! sv-80 (+ sv-80 1))
|
||||
(set! sv-32 (&-> sv-32 1))
|
||||
)
|
||||
((= sv-72 32)
|
||||
(set! (-> *game-text-word* data sv-80) sv-72)
|
||||
(set! sv-80 (+ sv-80 1))
|
||||
(set! sv-108 #t)
|
||||
)
|
||||
((zero? sv-72)
|
||||
(if (nonzero? sv-80)
|
||||
(set! sv-108 #t)
|
||||
)
|
||||
(set! sv-112 (+ sv-112 1))
|
||||
)
|
||||
((and (= sv-72 92) (= sv-104 92))
|
||||
(set! sv-32 (&-> sv-32 1))
|
||||
(if (nonzero? sv-80)
|
||||
(set! sv-108 #t)
|
||||
)
|
||||
(set! sv-112 (+ sv-112 1))
|
||||
)
|
||||
((and (= sv-72 95) (= sv-104 95))
|
||||
(set! sv-32 (&-> sv-32 1))
|
||||
(set! (-> *game-text-word* data sv-80) (the-as uint 32))
|
||||
(set! sv-80 (+ sv-80 1))
|
||||
)
|
||||
(else
|
||||
(set! (-> *game-text-word* data sv-80) sv-72)
|
||||
(set! sv-80 (+ sv-80 1))
|
||||
)
|
||||
)
|
||||
(when sv-108
|
||||
(set! (-> *game-text-word* data sv-80) (the-as uint 0))
|
||||
(let ((f30-1 sv-36))
|
||||
(set! sv-120 (the int (the-as float (.asm.sllv.r0 (get-string-length *game-text-word* arg1)))))
|
||||
(let ((f0-26 (+ f30-1 (the float sv-120))))
|
||||
(if (= (-> *game-text-word* data (+ sv-80 -1)) 32)
|
||||
(set! f0-26 (- f0-26 (the-as float sv-52)))
|
||||
)
|
||||
(cond
|
||||
((< sv-44 f0-26)
|
||||
(set! sv-112 (+ sv-112 1))
|
||||
)
|
||||
(else
|
||||
(copy-charp<-charp (&-> *game-text-line* data sv-88) (-> *game-text-word* data))
|
||||
(set! sv-88 (+ sv-88 sv-80))
|
||||
(set! sv-80 0)
|
||||
(set! sv-36 (+ sv-36 (the float sv-120)))
|
||||
(set! sv-108 (the-as symbol #f))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(while (> sv-112 0)
|
||||
(let ((f30-2 (+ (-> arg1 origin y) sv-56)))
|
||||
(when (and (>= sv-96 (the-as int (-> arg1 start-line))) #t)
|
||||
(when (= (-> *game-text-line* data (+ sv-88 -1)) 32)
|
||||
(set! (-> *game-text-line* data (+ sv-88 -1)) (the-as uint 0))
|
||||
0
|
||||
)
|
||||
(if (nonzero? (-> *game-text-line* data 0))
|
||||
(set! sv-64 (+ sv-64 1))
|
||||
)
|
||||
(when (not arg2)
|
||||
(let* ((s2-1 (-> *display* frames (-> *display* on-screen) global-buf))
|
||||
(s3-1 (-> s2-1 base))
|
||||
)
|
||||
(draw-string *game-text-line* s2-1 arg1)
|
||||
(set! (-> arg1 color) (-> *font-work* last-color))
|
||||
(let ((a3-2 (-> s2-1 base)))
|
||||
(let ((v1-121 (-> s2-1 base)))
|
||||
(set! (-> (the-as (pointer int64) v1-121)) #x20000000)
|
||||
(s.w! (+ v1-121 8) 0)
|
||||
(s.w! (+ v1-121 12) 0)
|
||||
(set! (-> s2-1 base) (&+ v1-121 16))
|
||||
)
|
||||
(dma-bucket-insert-tag
|
||||
(the-as (inline-array dma-bucket) (-> *display* frames (-> *display* on-screen) bucket-group))
|
||||
(the-as bucket-id arg4)
|
||||
s3-1
|
||||
(the-as (pointer dma-tag) a3-2)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> arg1 origin y) f30-2)
|
||||
)
|
||||
)
|
||||
(set! sv-96 (+ sv-96 1))
|
||||
(set! (-> *game-text-line* data 0) (the-as uint 0))
|
||||
(set! sv-88 0)
|
||||
(set! sv-112 (+ sv-112 -1))
|
||||
(set! sv-36 sv-40)
|
||||
(when sv-108
|
||||
(copy-charp<-charp (&-> *game-text-line* data sv-88) (-> *game-text-word* data))
|
||||
(set! sv-88 (+ sv-88 sv-80))
|
||||
(set! sv-80 0)
|
||||
(set! sv-108 (the-as symbol #f))
|
||||
(set! sv-36 (+ sv-36 (the float sv-120)))
|
||||
)
|
||||
)
|
||||
(when (nonzero? sv-72)
|
||||
(set! sv-32 (&-> sv-32 1))
|
||||
(set! sv-72 (-> sv-32 0))
|
||||
)
|
||||
)
|
||||
(set! (-> arg1 origin x) sv-16)
|
||||
(set! (-> arg1 origin y) sv-20)
|
||||
(set! (-> arg1 flags) sv-24)
|
||||
(set! (-> arg1 color) sv-28)
|
||||
(if (> sv-64 0)
|
||||
(* sv-56 (the float sv-64))
|
||||
0.0
|
||||
)
|
||||
)
|
||||
(else
|
||||
0.0
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
;; definition for function disable-level-text-file-loading
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defun disable-level-text-file-loading ()
|
||||
"Disables [[*level-text-file-load-flag*]]"
|
||||
(set! *level-text-file-load-flag* #f)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
;; definition for function enable-level-text-file-loading
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defun enable-level-text-file-loading ()
|
||||
"Disables [[*level-text-file-load-flag*]]"
|
||||
(set! *level-text-file-load-flag* #t)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
+3
-7
@@ -3,9 +3,9 @@
|
||||
|
||||
;; definition of type script-form
|
||||
(deftype script-form (structure)
|
||||
((name basic :offset-assert 0)
|
||||
(spec basic :offset-assert 4)
|
||||
(func basic :offset-assert 8)
|
||||
((name string :offset-assert 0)
|
||||
(spec basic :offset-assert 4)
|
||||
(func basic :offset-assert 8)
|
||||
)
|
||||
:method-count-assert 10
|
||||
:size-assert #xc
|
||||
@@ -101,7 +101,3 @@
|
||||
|
||||
;; failed to figure out what this is:
|
||||
0
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+7
-11
@@ -48,13 +48,13 @@
|
||||
:size-assert #x10
|
||||
:flag-assert #x1000000010
|
||||
(:methods
|
||||
(sync-info-method-9 () none 9)
|
||||
(sync-info-method-10 () none 10)
|
||||
(sync-info-method-11 () none 11)
|
||||
(sync-info-method-12 () none 12)
|
||||
(sync-info-method-13 () none 13)
|
||||
(sync-info-method-14 () none 14)
|
||||
(sync-info-method-15 () none 15)
|
||||
(sync-info-method-9 (_type_) none 9)
|
||||
(get-phase-offset (_type_) float 10)
|
||||
(get-norm! (_type_) float 11)
|
||||
(multiply-norm! (_type_ float object) float 12)
|
||||
(initialize! () none 13)
|
||||
(sync-info-method-14 (_type_ time-frame) time-frame 14)
|
||||
(sync-info-method-15 (_type_ float) none 15)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -339,7 +339,3 @@
|
||||
|
||||
;; failed to figure out what this is:
|
||||
0
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -36,8 +36,15 @@
|
||||
// cache asm
|
||||
"invalidate-cache-line",
|
||||
// asm, weird vector dot
|
||||
"(method 17 trsqv)"
|
||||
"(method 17 trsqv)",
|
||||
// history - rgba issues
|
||||
"history-draw",
|
||||
// text - cfg failure
|
||||
"load-game-text-info",
|
||||
// - never fixed this one in jak 1, assumed there was an original bug?
|
||||
"print-game-text",
|
||||
|
||||
"i-hopefully-will-never-exist-dont-add-anything-after-me-please"
|
||||
],
|
||||
|
||||
"skip_compile_states": {}
|
||||
|
||||
Reference in New Issue
Block a user