mirror of
https://github.com/open-goal/jak-project
synced 2026-09-08 03:46:51 -04:00
[decomp] game-info (#779)
* support more process stuff * more of game info * add ref file * progress on save
This commit is contained in:
+62
-56
@@ -74,34 +74,37 @@
|
||||
(the-as game-task (current-task (-> obj tasks)))
|
||||
)
|
||||
(close-current! (-> obj tasks))
|
||||
(let* ((s5-1 (get-process *default-dead-pool* manipy #x4000))
|
||||
(v1-8 (when s5-1
|
||||
(let ((t9-4 (method-of-type manipy activate)))
|
||||
(t9-4
|
||||
(the-as manipy s5-1)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-1
|
||||
manipy-init
|
||||
(-> obj root trans)
|
||||
(-> obj entity)
|
||||
*flutflut-naked-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-1 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set!
|
||||
(-> obj flutflut)
|
||||
(new 'static 'handle :process v1-8 :pid (-> v1-8 0 pid))
|
||||
(let ((s5-1 (get-process *default-dead-pool* manipy #x4000)))
|
||||
(set! (-> obj flutflut) (ppointer->handle (when s5-1
|
||||
(let
|
||||
((t9-4
|
||||
(method-of-type
|
||||
manipy
|
||||
activate
|
||||
)
|
||||
)
|
||||
)
|
||||
(t9-4
|
||||
(the-as manipy s5-1)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-1
|
||||
manipy-init
|
||||
(-> obj root trans)
|
||||
(-> obj entity)
|
||||
*flutflut-naked-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-1 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(let ((a1-4 (new 'stack-no-clear 'event-message-block)))
|
||||
@@ -118,34 +121,37 @@
|
||||
(set! (-> a1-5 param 0) (the-as uint #t))
|
||||
(send-event-function (handle->process (-> obj flutflut)) a1-5)
|
||||
)
|
||||
(let* ((s5-2 (get-process *default-dead-pool* manipy #x4000))
|
||||
(v1-28 (when s5-2
|
||||
(let ((t9-9 (method-of-type manipy activate)))
|
||||
(t9-9
|
||||
(the-as manipy s5-2)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-2
|
||||
manipy-init
|
||||
(-> obj root trans)
|
||||
(-> obj entity)
|
||||
*flutflutegg-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-2 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set!
|
||||
(-> obj egg)
|
||||
(new 'static 'handle :process v1-28 :pid (-> v1-28 0 pid))
|
||||
(let ((s5-2 (get-process *default-dead-pool* manipy #x4000)))
|
||||
(set! (-> obj egg) (ppointer->handle (when s5-2
|
||||
(let
|
||||
((t9-9
|
||||
(method-of-type
|
||||
manipy
|
||||
activate
|
||||
)
|
||||
)
|
||||
)
|
||||
(t9-9
|
||||
(the-as manipy s5-2)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-2
|
||||
manipy-init
|
||||
(-> obj root trans)
|
||||
(-> obj entity)
|
||||
*flutflutegg-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-2 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(let ((a1-9 (new 'stack-no-clear 'event-message-block)))
|
||||
|
||||
+72
-56
@@ -101,34 +101,47 @@
|
||||
;; definition for function muse-to-idle
|
||||
(defbehavior muse-to-idle sculptor ((arg0 muse))
|
||||
(when (not (handle->process (-> arg0 incomming-attack-id)))
|
||||
(let* ((s5-0 (get-process *default-dead-pool* manipy #x4000))
|
||||
(v1-5 (when s5-0
|
||||
(let ((t9-1 (method-of-type manipy activate)))
|
||||
(t9-1
|
||||
(the-as manipy s5-0)
|
||||
arg0
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-0
|
||||
manipy-init
|
||||
(-> arg0 collide-info trans)
|
||||
(-> arg0 entity)
|
||||
*sculptor-muse-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-0 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set!
|
||||
(-> arg0 incomming-attack-id)
|
||||
(new 'static 'handle :process v1-5 :pid (-> v1-5 0 pid))
|
||||
(let ((s5-0 (get-process *default-dead-pool* manipy #x4000)))
|
||||
(set! (-> arg0 incomming-attack-id) (ppointer->handle (when s5-0
|
||||
(let
|
||||
((t9-1
|
||||
(method-of-type
|
||||
manipy
|
||||
activate
|
||||
)
|
||||
)
|
||||
)
|
||||
(t9-1
|
||||
(the-as
|
||||
manipy
|
||||
s5-0
|
||||
)
|
||||
arg0
|
||||
'manipy
|
||||
(the-as
|
||||
pointer
|
||||
#x70004000
|
||||
)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-0
|
||||
manipy-init
|
||||
(->
|
||||
arg0
|
||||
collide-info
|
||||
trans
|
||||
)
|
||||
(-> arg0 entity)
|
||||
*sculptor-muse-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-0 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -277,34 +290,37 @@
|
||||
(the-as game-task (current-task (-> obj tasks)))
|
||||
)
|
||||
(close-current! (-> obj tasks))
|
||||
(let* ((s5-1 (get-process *default-dead-pool* manipy #x4000))
|
||||
(v1-12 (when s5-1
|
||||
(let ((t9-5 (method-of-type manipy activate)))
|
||||
(t9-5
|
||||
(the-as manipy s5-1)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-1
|
||||
manipy-init
|
||||
(-> obj root trans)
|
||||
(-> obj entity)
|
||||
*sculptor-muse-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-1 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set!
|
||||
(-> obj muse)
|
||||
(new 'static 'handle :process v1-12 :pid (-> v1-12 0 pid))
|
||||
(let ((s5-1 (get-process *default-dead-pool* manipy #x4000)))
|
||||
(set! (-> obj muse) (ppointer->handle (when s5-1
|
||||
(let
|
||||
((t9-5
|
||||
(method-of-type
|
||||
manipy
|
||||
activate
|
||||
)
|
||||
)
|
||||
)
|
||||
(t9-5
|
||||
(the-as manipy s5-1)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-1
|
||||
manipy-init
|
||||
(-> obj root trans)
|
||||
(-> obj entity)
|
||||
*sculptor-muse-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-1 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(let ((v1-18 (handle->process (-> obj muse))))
|
||||
|
||||
@@ -152,15 +152,15 @@
|
||||
(momentum-speed float :offset-assert 296)
|
||||
(acceleration float :offset-assert 300)
|
||||
(rotate-speed float :offset-assert 304)
|
||||
(turn-time uint64 :offset-assert 312)
|
||||
(frustration-time uint64 :offset-assert 320)
|
||||
(turn-time int64 :offset-assert 312)
|
||||
(frustration-time int64 :offset-assert 320)
|
||||
(speed-scale float :offset-assert 328)
|
||||
(neck joint-mod :offset-assert 332)
|
||||
(reaction-time uint64 :offset-assert 336)
|
||||
(notice-time uint64 :offset-assert 344)
|
||||
(state-timeout uint64 :offset-assert 352)
|
||||
(free-time uint64 :offset-assert 360)
|
||||
(touch-time uint64 :offset-assert 368)
|
||||
(reaction-time int64 :offset-assert 336)
|
||||
(notice-time int64 :offset-assert 344)
|
||||
(state-timeout int64 :offset-assert 352)
|
||||
(free-time int64 :offset-assert 360)
|
||||
(touch-time int64 :offset-assert 368)
|
||||
(nav-enemy-flags uint32 :offset-assert 376)
|
||||
(incomming-attack-id handle :offset-assert 384)
|
||||
(jump-return-state (state process) :offset-assert 392)
|
||||
|
||||
+114
-136
@@ -109,10 +109,7 @@
|
||||
(not *target*)
|
||||
(and
|
||||
(zero? (logand (-> *target* state-flags) #x80f8))
|
||||
(>=
|
||||
(the-as int (- (-> *display* base-frame-counter) (-> obj touch-time)))
|
||||
15
|
||||
)
|
||||
(>= (- (-> *display* base-frame-counter) (-> obj touch-time)) 15)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -459,13 +456,13 @@ nav-enemy-default-event-handler
|
||||
(-> obj collide-info)
|
||||
(-> obj nav target-pos)
|
||||
(-> obj rotate-speed)
|
||||
(the-as int (-> obj turn-time))
|
||||
(-> obj turn-time)
|
||||
)
|
||||
(seek-toward-heading-vec!
|
||||
(-> obj collide-info)
|
||||
(-> obj nav travel)
|
||||
(-> obj rotate-speed)
|
||||
(the-as int (-> obj turn-time))
|
||||
(-> obj turn-time)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -602,7 +599,7 @@ nav-enemy-default-event-handler
|
||||
(-> self collide-info)
|
||||
(target-pos 0)
|
||||
(-> self rotate-speed)
|
||||
(the-as int (-> self turn-time))
|
||||
(-> self turn-time)
|
||||
)
|
||||
)
|
||||
(nav-enemy-simple-post)
|
||||
@@ -699,8 +696,8 @@ nav-enemy-default-event-handler
|
||||
((logtest? (-> self nav-enemy-flags) 1)
|
||||
(when
|
||||
(>=
|
||||
(the-as int (- (-> *display* base-frame-counter) (-> self notice-time)))
|
||||
(the-as int (-> self reaction-time))
|
||||
(- (-> *display* base-frame-counter) (-> self notice-time))
|
||||
(-> self reaction-time)
|
||||
)
|
||||
(set! gp-0 #t)
|
||||
(set! (-> self nav-enemy-flags) (logand -2 (-> self nav-enemy-flags)))
|
||||
@@ -931,7 +928,10 @@ nav-enemy-default-event-handler
|
||||
(set! (-> v1-14 num-func) num-func-identity)
|
||||
(set! (-> v1-14 frame-num) 0.0)
|
||||
)
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(set!
|
||||
(-> self collide-info status)
|
||||
(logand -8 (-> self collide-info status))
|
||||
@@ -1013,7 +1013,7 @@ nav-enemy-default-event-handler
|
||||
(-> self collide-info)
|
||||
arg0
|
||||
(-> self rotate-speed)
|
||||
(the-as int (-> self turn-time))
|
||||
(-> self turn-time)
|
||||
)
|
||||
(suspend)
|
||||
(let ((a0-8 (-> self skel root-channel 0)))
|
||||
@@ -1027,7 +1027,7 @@ nav-enemy-default-event-handler
|
||||
(set!
|
||||
v1-16
|
||||
(or
|
||||
(>= (the-as int (- (-> *display* base-frame-counter) s4-0)) 3000)
|
||||
(>= (- (-> *display* base-frame-counter) s4-0) 3000)
|
||||
(nav-enemy-facing-direction? arg0 arg1)
|
||||
)
|
||||
)
|
||||
@@ -1097,7 +1097,10 @@ nav-enemy-default-event-handler
|
||||
:enter
|
||||
(behavior ()
|
||||
(nav-enemy-neck-control-inactive)
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(if (-> self nav-info move-to-ground)
|
||||
(dummy-60
|
||||
(-> self collide-info)
|
||||
@@ -1108,7 +1111,7 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
)
|
||||
(set! (-> self nav-enemy-flags) (logand -7 (-> self nav-enemy-flags)))
|
||||
(set! (-> self state-timeout) (the-as uint 300))
|
||||
(set! (-> self state-timeout) 300)
|
||||
(none)
|
||||
)
|
||||
:trans
|
||||
@@ -1126,11 +1129,8 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
)
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(the-as int (-> self state-timeout))
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
(-> self state-timeout)
|
||||
)
|
||||
(nonzero? (-> self draw))
|
||||
(logtest? (-> self draw status) 8)
|
||||
@@ -1184,18 +1184,21 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:enter
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(set!
|
||||
(-> self nav flags)
|
||||
(the-as nav-control-flags (the-as int (logior #x80000 (-> self nav flags))))
|
||||
)
|
||||
(set! (-> self nav-enemy-flags) (logand -5 (-> self nav-enemy-flags)))
|
||||
(logior! (-> self nav-enemy-flags) 8)
|
||||
(set! (-> self state-timeout) (the-as uint 300))
|
||||
(set! (-> self state-timeout) 300)
|
||||
(set! (-> self target-speed) (-> self nav-info walk-travel-speed))
|
||||
(set! (-> self acceleration) (-> self nav-info walk-acceleration))
|
||||
(set! (-> self rotate-speed) (-> self nav-info walk-rotate-speed))
|
||||
(set! (-> self turn-time) (the-as uint (-> self nav-info walk-turn-time)))
|
||||
(set! (-> self turn-time) (the-as int (-> self nav-info walk-turn-time)))
|
||||
(none)
|
||||
)
|
||||
:exit
|
||||
@@ -1207,19 +1210,13 @@ nav-enemy-default-event-handler
|
||||
(behavior ()
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
30
|
||||
)
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(the-as int (-> self state-timeout))
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
(-> self state-timeout)
|
||||
)
|
||||
(if (and (nonzero? (-> self draw)) (logtest? (-> self draw status) 8))
|
||||
(set! (-> self free-time) (-> *display* base-frame-counter))
|
||||
@@ -1236,10 +1233,7 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
)
|
||||
)
|
||||
(>=
|
||||
(the-as int (- (-> *display* base-frame-counter) (-> self free-time)))
|
||||
600
|
||||
)
|
||||
(>= (- (-> *display* base-frame-counter) (-> self free-time)) 600)
|
||||
)
|
||||
(go-virtual nav-enemy-idle)
|
||||
)
|
||||
@@ -1546,7 +1540,7 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
(dummy-11 (-> self nav) (-> self nav target-pos))
|
||||
(set! (-> self rotate-speed) (-> self nav-info run-rotate-speed))
|
||||
(set! (-> self turn-time) (the-as uint (-> self nav-info run-turn-time)))
|
||||
(set! (-> self turn-time) (the-as int (-> self nav-info run-turn-time)))
|
||||
(none)
|
||||
)
|
||||
:code
|
||||
@@ -1595,7 +1589,7 @@ nav-enemy-default-event-handler
|
||||
(-> self collide-info)
|
||||
(-> self nav travel)
|
||||
(-> self rotate-speed)
|
||||
(the-as int (-> self turn-time))
|
||||
(-> self turn-time)
|
||||
)
|
||||
(suspend)
|
||||
(let ((a0-4 (-> self skel root-channel 0)))
|
||||
@@ -1638,18 +1632,18 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:enter
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(none)
|
||||
)
|
||||
:trans
|
||||
(behavior ()
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(the-as int (-> self reaction-time))
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
(-> self reaction-time)
|
||||
)
|
||||
(if
|
||||
(or
|
||||
@@ -1841,13 +1835,16 @@ nav-enemy-default-event-handler
|
||||
:enter
|
||||
(behavior ()
|
||||
(nav-enemy-neck-control-look-at)
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(set! (-> self free-time) (-> *display* base-frame-counter))
|
||||
(logior! (-> self nav-enemy-flags) 4)
|
||||
(set! (-> self target-speed) (-> self nav-info run-travel-speed))
|
||||
(set! (-> self acceleration) (-> self nav-info run-acceleration))
|
||||
(set! (-> self rotate-speed) (-> self nav-info run-rotate-speed))
|
||||
(set! (-> self turn-time) (the-as uint (-> self nav-info run-turn-time)))
|
||||
(set! (-> self turn-time) (the-as int (-> self nav-info run-turn-time)))
|
||||
(nav-enemy-reset-frustration)
|
||||
(none)
|
||||
)
|
||||
@@ -1871,22 +1868,13 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(the-as int (-> self reaction-time))
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
(-> self reaction-time)
|
||||
)
|
||||
(if
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (-> self frustration-time))
|
||||
)
|
||||
(the-as
|
||||
int
|
||||
(+ (-> self reaction-time) (-> self nav-info frustration-time))
|
||||
)
|
||||
(- (-> *display* base-frame-counter) (-> self frustration-time))
|
||||
(+ (-> self reaction-time) (-> self nav-info frustration-time))
|
||||
)
|
||||
(logior! (-> self nav-enemy-flags) 8192)
|
||||
)
|
||||
@@ -1899,11 +1887,7 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
(cond
|
||||
((logtest? #x20000 (-> self nav flags))
|
||||
(if
|
||||
(>=
|
||||
(the-as int (- (-> *display* base-frame-counter) (-> self free-time)))
|
||||
300
|
||||
)
|
||||
(if (>= (- (-> *display* base-frame-counter) (-> self free-time)) 300)
|
||||
(go-virtual nav-enemy-patrol)
|
||||
)
|
||||
)
|
||||
@@ -1959,7 +1943,10 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:enter
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(let*
|
||||
((f30-0
|
||||
(vector-vector-distance (-> self collide-info trans) (target-pos 0))
|
||||
@@ -1977,22 +1964,19 @@ nav-enemy-default-event-handler
|
||||
(if (< f30-0 40960.0)
|
||||
(go-virtual nav-enemy-stare)
|
||||
)
|
||||
(set! (-> self state-timeout) (the-as uint gp-1))
|
||||
(set! (-> self state-timeout) gp-1)
|
||||
)
|
||||
(set! (-> self target-speed) (-> self nav-info walk-travel-speed))
|
||||
(set! (-> self acceleration) (-> self nav-info walk-acceleration))
|
||||
(set! (-> self rotate-speed) (-> self nav-info walk-rotate-speed))
|
||||
(set! (-> self turn-time) (the-as uint (-> self nav-info walk-turn-time)))
|
||||
(set! (-> self turn-time) (the-as int (-> self nav-info walk-turn-time)))
|
||||
(none)
|
||||
)
|
||||
:trans
|
||||
(behavior ()
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
30
|
||||
)
|
||||
(if (logtest? (-> *target* state-flags) 128)
|
||||
@@ -2019,11 +2003,8 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
(logtest? #x20000 (-> self nav flags))
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(the-as int (-> self state-timeout))
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
(-> self state-timeout)
|
||||
)
|
||||
)
|
||||
(go-virtual nav-enemy-stare)
|
||||
@@ -2076,27 +2057,27 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:enter
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(set! (-> self nav-enemy-flags) (logand -17 (-> self nav-enemy-flags)))
|
||||
(let
|
||||
((f0-0 (vector-vector-distance (-> self collide-info trans) (target-pos 0)))
|
||||
)
|
||||
(set!
|
||||
(-> self state-timeout)
|
||||
(the-as
|
||||
uint
|
||||
(the
|
||||
int
|
||||
(+
|
||||
(lerp-scale 3000.0 0.0 f0-0 12288.0 122880.0)
|
||||
(nav-enemy-rnd-float-range 0.0 900.0)
|
||||
)
|
||||
(the
|
||||
int
|
||||
(+
|
||||
(lerp-scale 3000.0 0.0 f0-0 12288.0 122880.0)
|
||||
(nav-enemy-rnd-float-range 0.0 900.0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> self rotate-speed) (-> self nav-info run-rotate-speed))
|
||||
(set! (-> self turn-time) (the-as uint (-> self nav-info run-turn-time)))
|
||||
(set! (-> self turn-time) (the-as int (-> self nav-info run-turn-time)))
|
||||
(set! (-> self collide-info transv quad) (-> *null-vector* quad))
|
||||
(none)
|
||||
)
|
||||
@@ -2109,10 +2090,7 @@ nav-enemy-default-event-handler
|
||||
(behavior ()
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
30
|
||||
)
|
||||
(if (logtest? (-> *target* state-flags) 128)
|
||||
@@ -2123,11 +2101,8 @@ nav-enemy-default-event-handler
|
||||
(if
|
||||
(and
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (-> self notice-time))
|
||||
)
|
||||
(the-as int (-> self reaction-time))
|
||||
(- (-> *display* base-frame-counter) (-> self notice-time))
|
||||
(-> self reaction-time)
|
||||
)
|
||||
(not (nav-enemy-frustrated?))
|
||||
)
|
||||
@@ -2167,11 +2142,8 @@ nav-enemy-default-event-handler
|
||||
(set! (-> self nav-enemy-flags) (logand -5 (-> self nav-enemy-flags)))
|
||||
(if
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(the-as int (-> self state-timeout))
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
(-> self state-timeout)
|
||||
)
|
||||
(go-virtual nav-enemy-give-up)
|
||||
)
|
||||
@@ -2214,7 +2186,10 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:enter
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(nav-enemy-neck-control-inactive)
|
||||
(set! (-> self nav-enemy-flags) (logand -5 (-> self nav-enemy-flags)))
|
||||
(none)
|
||||
@@ -2223,10 +2198,7 @@ nav-enemy-default-event-handler
|
||||
(behavior ()
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
30
|
||||
)
|
||||
(if (TODO-RENAME-46 self (-> self nav-info notice-distance))
|
||||
@@ -2352,16 +2324,7 @@ nav-enemy-default-event-handler
|
||||
(set! (-> a1-0 from) self)
|
||||
(set! (-> a1-0 num-params) 0)
|
||||
(set! (-> a1-0 message) 'child-die)
|
||||
(let ((t9-0 send-event-function)
|
||||
(v1-1 (-> self parent))
|
||||
)
|
||||
(t9-0 (the-as process (if v1-1
|
||||
(-> v1-1 0 self)
|
||||
)
|
||||
)
|
||||
a1-0
|
||||
)
|
||||
)
|
||||
(send-event-function (ppointer->process (-> self parent)) a1-0)
|
||||
)
|
||||
(none)
|
||||
)
|
||||
@@ -2445,13 +2408,16 @@ nav-enemy-default-event-handler
|
||||
(-> self collide-info)
|
||||
(-> self jump-dest)
|
||||
(-> self rotate-speed)
|
||||
(the-as int (-> self turn-time))
|
||||
(-> self turn-time)
|
||||
)
|
||||
)
|
||||
(when (logtest? (-> self nav-enemy-flags) 8)
|
||||
(let
|
||||
((f30-0
|
||||
(the float (- (-> *display* base-frame-counter) (-> self jump-time)))
|
||||
(the
|
||||
float
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self jump-time)))
|
||||
)
|
||||
)
|
||||
)
|
||||
(let
|
||||
@@ -2598,7 +2564,7 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
)
|
||||
(set! (-> self collide-info status) (logand -8 (-> self collide-info status)))
|
||||
(set! (-> self jump-time) (-> *display* base-frame-counter))
|
||||
(set! (-> self jump-time) (the-as uint (-> *display* base-frame-counter)))
|
||||
(logior! (-> self nav-enemy-flags) 8)
|
||||
(cond
|
||||
((logtest? (-> self nav-enemy-flags) 1024)
|
||||
@@ -2659,7 +2625,10 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
(while
|
||||
(<
|
||||
(the float (- (-> *display* base-frame-counter) (-> self jump-time)))
|
||||
(the
|
||||
float
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self jump-time)))
|
||||
)
|
||||
(-> self jump-trajectory time)
|
||||
)
|
||||
(suspend)
|
||||
@@ -2775,7 +2744,10 @@ nav-enemy-default-event-handler
|
||||
nav-enemy-jump-event-handler
|
||||
:enter
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(if
|
||||
(and
|
||||
(-> self nav-info use-jump-blocked)
|
||||
@@ -2846,13 +2818,13 @@ nav-enemy-default-event-handler
|
||||
(-> self collide-info)
|
||||
(-> self nav target-pos)
|
||||
(-> self rotate-speed)
|
||||
(the-as int (-> self turn-time))
|
||||
(-> self turn-time)
|
||||
)
|
||||
(seek-toward-heading-vec!
|
||||
(-> self collide-info)
|
||||
(-> self nav travel)
|
||||
(-> self rotate-speed)
|
||||
(the-as int (-> self turn-time))
|
||||
(-> self turn-time)
|
||||
)
|
||||
)
|
||||
(vector-v++!
|
||||
@@ -2882,7 +2854,10 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:enter
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(logclear! (-> self nav flags) (nav-control-flags bit19))
|
||||
(let ((gp-0 (new 'stack-no-clear 'vector)))
|
||||
(set! (-> gp-0 quad) (-> self collide-info transv quad))
|
||||
@@ -2899,10 +2874,7 @@ nav-enemy-default-event-handler
|
||||
(if
|
||||
(or
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
150
|
||||
)
|
||||
(logtest? #x80000 (-> self nav flags))
|
||||
@@ -2931,17 +2903,17 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:enter
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(none)
|
||||
)
|
||||
:trans
|
||||
(behavior ()
|
||||
(if
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (the-as uint (-> self state-time)))
|
||||
)
|
||||
(- (-> *display* base-frame-counter) (the-as int (-> self state-time)))
|
||||
150
|
||||
)
|
||||
(go (-> self jump-return-state))
|
||||
@@ -3013,7 +2985,10 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:code
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(logior! (-> self nav-enemy-flags) 2048)
|
||||
(ja-channel-push! 1 30)
|
||||
(let ((f30-0 (nav-enemy-rnd-float-range 0.8 1.2)))
|
||||
@@ -3046,7 +3021,7 @@ nav-enemy-default-event-handler
|
||||
(let ((gp-0 (nav-enemy-rnd-int-range 0 150))
|
||||
(s5-0 (-> *display* base-frame-counter))
|
||||
)
|
||||
(until (>= (the-as int (- (-> *display* base-frame-counter) s5-0)) gp-0)
|
||||
(until (>= (- (-> *display* base-frame-counter) s5-0) gp-0)
|
||||
(let ((a0-12 (-> self skel root-channel 0)))
|
||||
(set! (-> a0-12 param 0) f30-0)
|
||||
(joint-control-channel-group-eval!
|
||||
@@ -3083,7 +3058,10 @@ nav-enemy-default-event-handler
|
||||
)
|
||||
:code
|
||||
(behavior ()
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(nav-enemy-initialize-jump (-> self event-param-point))
|
||||
(nav-enemy-neck-control-look-at)
|
||||
(logior! (-> self nav-enemy-flags) 16)
|
||||
@@ -3173,7 +3151,7 @@ nav-enemy-default-event-handler
|
||||
(-> *FACT-bank* default-pill-inc)
|
||||
)
|
||||
)
|
||||
(set! (-> obj reaction-time) (the-as uint (nav-enemy-rnd-int-range 30 240)))
|
||||
(set! (-> obj reaction-time) (nav-enemy-rnd-int-range 30 240))
|
||||
(set! (-> obj speed-scale) 1.0)
|
||||
(logior! (-> obj nav-enemy-flags) 4216)
|
||||
0
|
||||
@@ -3184,7 +3162,7 @@ nav-enemy-default-event-handler
|
||||
(defmethod TODO-RENAME-49 nav-enemy ((obj nav-enemy) (arg0 nav-enemy-info))
|
||||
(set! (-> obj nav-info) arg0)
|
||||
(set! (-> obj rotate-speed) (-> obj nav-info walk-rotate-speed))
|
||||
(set! (-> obj turn-time) (the-as uint (-> obj nav-info walk-turn-time)))
|
||||
(set! (-> obj turn-time) (the-as int (-> obj nav-info walk-turn-time)))
|
||||
(when (and (!= (-> obj nav-info neck-joint) -1) (zero? (-> obj neck)))
|
||||
(set!
|
||||
(-> obj neck)
|
||||
|
||||
+5
-11
@@ -450,7 +450,7 @@
|
||||
(sim-time-remaining float :offset-assert 688)
|
||||
(float-height-offset float :offset-assert 692)
|
||||
(player-attack-id int32 :offset-assert 696)
|
||||
(player-bonk-timeout uint64 :offset-assert 704)
|
||||
(player-bonk-timeout int64 :offset-assert 704)
|
||||
(water-anim water-anim :offset-assert 712)
|
||||
(player-contact basic :offset-assert 716)
|
||||
(player-impulse collide-shape-prim-mesh :offset-assert 720)
|
||||
@@ -735,10 +735,7 @@
|
||||
(('bonk)
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (-> self player-bonk-timeout))
|
||||
)
|
||||
(- (-> *display* base-frame-counter) (-> self player-bonk-timeout))
|
||||
(the-as int (-> self info player-force-timeout))
|
||||
)
|
||||
(set! (-> self player-bonk-timeout) (-> *display* base-frame-counter))
|
||||
@@ -787,12 +784,9 @@
|
||||
((= (-> arg3 param 1) 'flop)
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(-
|
||||
(-> *display* base-frame-counter)
|
||||
(-> self player-bonk-timeout)
|
||||
)
|
||||
(-
|
||||
(-> *display* base-frame-counter)
|
||||
(-> self player-bonk-timeout)
|
||||
)
|
||||
(the-as int (-> self info player-force-timeout))
|
||||
)
|
||||
|
||||
+14
-21
@@ -3,10 +3,10 @@
|
||||
|
||||
;; definition of type ticky
|
||||
(deftype ticky (structure)
|
||||
((delay-til-ramp uint64 :offset-assert 0)
|
||||
(delay-til-timeout uint64 :offset-assert 8)
|
||||
(starting-time uint64 :offset-assert 16)
|
||||
(last-tick-time uint64 :offset-assert 24)
|
||||
((delay-til-ramp int64 :offset-assert 0)
|
||||
(delay-til-timeout int64 :offset-assert 8)
|
||||
(starting-time int64 :offset-assert 16)
|
||||
(last-tick-time int64 :offset-assert 24)
|
||||
)
|
||||
:method-count-assert 12
|
||||
:size-assert #x20
|
||||
@@ -32,9 +32,12 @@
|
||||
;; INFO: Return type mismatch int vs none.
|
||||
(defmethod sleep ticky ((obj ticky) (arg0 uint))
|
||||
(set! (-> obj starting-time) (-> *display* base-frame-counter))
|
||||
(set! (-> obj delay-til-timeout) arg0)
|
||||
(set! (-> obj delay-til-ramp) (max 0 (the-as int (+ arg0 -1200))))
|
||||
(set! (-> obj last-tick-time) (the-as uint 0))
|
||||
(set! (-> obj delay-til-timeout) (the-as int arg0))
|
||||
(set!
|
||||
(-> obj delay-til-ramp)
|
||||
(the-as int (max 0 (the-as int (+ arg0 -1200))))
|
||||
)
|
||||
(set! (-> obj last-tick-time) 0)
|
||||
0
|
||||
(none)
|
||||
)
|
||||
@@ -44,7 +47,7 @@
|
||||
(let ((gp-0 #f))
|
||||
(let ((v1-2 (- (-> *display* base-frame-counter) (-> obj starting-time))))
|
||||
(cond
|
||||
((>= (the-as int v1-2) (the-as int (-> obj delay-til-timeout)))
|
||||
((>= v1-2 (-> obj delay-til-timeout))
|
||||
(set! gp-0 #t)
|
||||
)
|
||||
(else
|
||||
@@ -53,7 +56,7 @@
|
||||
(fmin
|
||||
1.0
|
||||
(/
|
||||
(the float (max 0 (the-as int (- v1-2 (-> obj delay-til-ramp)))))
|
||||
(the float (max 0 (- v1-2 (-> obj delay-til-ramp))))
|
||||
(the float (- (-> obj delay-til-timeout) (-> obj delay-til-ramp)))
|
||||
)
|
||||
)
|
||||
@@ -61,13 +64,7 @@
|
||||
(v1-7 (the int (lerp 105.0 41.0 f0-1)))
|
||||
)
|
||||
(when
|
||||
(>=
|
||||
(the-as
|
||||
int
|
||||
(- (-> *display* base-frame-counter) (-> obj last-tick-time))
|
||||
)
|
||||
v1-7
|
||||
)
|
||||
(>= (- (-> *display* base-frame-counter) (-> obj last-tick-time)) v1-7)
|
||||
(set! (-> obj last-tick-time) (-> *display* base-frame-counter))
|
||||
(sound-play-by-name
|
||||
(static-sound-name "stopwatch")
|
||||
@@ -90,11 +87,7 @@
|
||||
;; definition for method 10 of type ticky
|
||||
(defmethod reached-delay? ticky ((obj ticky) (arg0 uint))
|
||||
(>=
|
||||
(the-as int (- (-> *display* base-frame-counter) (-> obj starting-time)))
|
||||
(- (-> *display* base-frame-counter) (-> obj starting-time))
|
||||
(the-as int arg0)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -101,11 +101,7 @@
|
||||
)
|
||||
(camera-change-to "camera-160" 150 #f)
|
||||
(let ((gp-0 (-> *display* base-frame-counter)))
|
||||
(until
|
||||
(>=
|
||||
(the-as int (- (-> *display* base-frame-counter) gp-0))
|
||||
900
|
||||
)
|
||||
(until (>= (- (-> *display* base-frame-counter) gp-0) 900)
|
||||
(suspend)
|
||||
)
|
||||
)
|
||||
@@ -141,9 +137,12 @@
|
||||
)
|
||||
(save-reminder gp-0 (logior v1-1 2) 0)
|
||||
)
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
(set!
|
||||
(-> self state-time)
|
||||
(the-as seconds (-> *display* base-frame-counter))
|
||||
)
|
||||
(let ((gp-1 (-> *display* base-frame-counter)))
|
||||
(until (>= (the-as int (- (-> *display* base-frame-counter) gp-1)) 300)
|
||||
(until (>= (- (-> *display* base-frame-counter) gp-1) 300)
|
||||
(suspend)
|
||||
)
|
||||
)
|
||||
|
||||
+40
-85
@@ -434,20 +434,14 @@
|
||||
(v1-69 (the-as number (logior #x3f800000 v1-68)))
|
||||
)
|
||||
(<
|
||||
(the-as
|
||||
int
|
||||
(-
|
||||
s5-0
|
||||
(the-as
|
||||
uint
|
||||
(the
|
||||
int
|
||||
(* f30-1 (+ f28-0 (* f26-0 (+ -1.0 (the-as float v1-69)))))
|
||||
)
|
||||
)
|
||||
(-
|
||||
s5-0
|
||||
(the
|
||||
int
|
||||
(* f30-1 (+ f28-0 (* f26-0 (+ -1.0 (the-as float v1-69)))))
|
||||
)
|
||||
)
|
||||
(the-as int gp-1)
|
||||
gp-1
|
||||
)
|
||||
)
|
||||
(suspend)
|
||||
@@ -514,23 +508,17 @@
|
||||
(v1-105 (the-as number (logior #x3f800000 v1-104)))
|
||||
)
|
||||
(<
|
||||
(the-as
|
||||
int
|
||||
(-
|
||||
s5-1
|
||||
(the-as
|
||||
uint
|
||||
(the
|
||||
int
|
||||
(*
|
||||
f30-2
|
||||
(+ f28-1 (* f26-1 (+ -1.0 (the-as float v1-105))))
|
||||
)
|
||||
)
|
||||
(-
|
||||
s5-1
|
||||
(the
|
||||
int
|
||||
(*
|
||||
f30-2
|
||||
(+ f28-1 (* f26-1 (+ -1.0 (the-as float v1-105))))
|
||||
)
|
||||
)
|
||||
)
|
||||
(the-as int gp-2)
|
||||
gp-2
|
||||
)
|
||||
)
|
||||
(suspend)
|
||||
@@ -644,23 +632,17 @@
|
||||
(v1-165 (the-as number (logior #x3f800000 v1-164)))
|
||||
)
|
||||
(<
|
||||
(the-as
|
||||
int
|
||||
(-
|
||||
s5-2
|
||||
(the-as
|
||||
uint
|
||||
(the
|
||||
int
|
||||
(*
|
||||
f30-3
|
||||
(+ f28-2 (* f26-2 (+ -1.0 (the-as float v1-165))))
|
||||
)
|
||||
)
|
||||
(-
|
||||
s5-2
|
||||
(the
|
||||
int
|
||||
(*
|
||||
f30-3
|
||||
(+ f28-2 (* f26-2 (+ -1.0 (the-as float v1-165))))
|
||||
)
|
||||
)
|
||||
)
|
||||
(the-as int gp-3)
|
||||
gp-3
|
||||
)
|
||||
)
|
||||
(suspend)
|
||||
@@ -808,23 +790,14 @@
|
||||
(v1-238 (the-as number (logior #x3f800000 v1-237)))
|
||||
)
|
||||
(<
|
||||
(the-as
|
||||
int
|
||||
(-
|
||||
s5-3
|
||||
(the-as
|
||||
uint
|
||||
(the
|
||||
int
|
||||
(*
|
||||
f30-4
|
||||
(+ f28-3 (* f26-3 (+ -1.0 (the-as float v1-238))))
|
||||
)
|
||||
)
|
||||
)
|
||||
(-
|
||||
s5-3
|
||||
(the
|
||||
int
|
||||
(* f30-4 (+ f28-3 (* f26-3 (+ -1.0 (the-as float v1-238)))))
|
||||
)
|
||||
)
|
||||
(the-as int gp-4)
|
||||
gp-4
|
||||
)
|
||||
)
|
||||
(suspend)
|
||||
@@ -884,23 +857,14 @@
|
||||
(v1-269 (the-as number (logior #x3f800000 v1-268)))
|
||||
)
|
||||
(<
|
||||
(the-as
|
||||
int
|
||||
(-
|
||||
s5-4
|
||||
(the-as
|
||||
uint
|
||||
(the
|
||||
int
|
||||
(*
|
||||
f30-5
|
||||
(+ f28-4 (* f26-4 (+ -1.0 (the-as float v1-269))))
|
||||
)
|
||||
)
|
||||
)
|
||||
(-
|
||||
s5-4
|
||||
(the
|
||||
int
|
||||
(* f30-5 (+ f28-4 (* f26-4 (+ -1.0 (the-as float v1-269)))))
|
||||
)
|
||||
)
|
||||
(the-as int gp-5)
|
||||
gp-5
|
||||
)
|
||||
)
|
||||
(suspend)
|
||||
@@ -957,23 +921,14 @@
|
||||
(v1-302 (the-as number (logior #x3f800000 v1-301)))
|
||||
)
|
||||
(<
|
||||
(the-as
|
||||
int
|
||||
(-
|
||||
s5-5
|
||||
(the-as
|
||||
uint
|
||||
(the
|
||||
int
|
||||
(*
|
||||
f30-6
|
||||
(+ f28-5 (* f26-5 (+ -1.0 (the-as float v1-302))))
|
||||
)
|
||||
)
|
||||
)
|
||||
(-
|
||||
s5-5
|
||||
(the
|
||||
int
|
||||
(* f30-6 (+ f28-5 (* f26-5 (+ -1.0 (the-as float v1-302)))))
|
||||
)
|
||||
)
|
||||
(the-as int gp-6)
|
||||
gp-6
|
||||
)
|
||||
)
|
||||
(suspend)
|
||||
|
||||
+31
-28
@@ -630,34 +630,37 @@
|
||||
(set-setting! *setting-control* pp 'music-volume-movie 'abs 0.0 0)
|
||||
(copy-settings-from-target! *setting-control*)
|
||||
(close-status! (-> obj tasks) (task-status need-reward-speech))
|
||||
(let* ((s5-2 (get-process *default-dead-pool* manipy #x4000))
|
||||
(v1-41 (when s5-2
|
||||
(let ((t9-15 (method-of-type manipy activate)))
|
||||
(t9-15
|
||||
(the-as manipy s5-2)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-2
|
||||
manipy-init
|
||||
(-> obj root trans)
|
||||
(-> obj entity)
|
||||
*assistant-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-2 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set!
|
||||
(-> obj assistant)
|
||||
(new 'static 'handle :process v1-41 :pid (-> v1-41 0 pid))
|
||||
(let ((s5-2 (get-process *default-dead-pool* manipy #x4000)))
|
||||
(set! (-> obj assistant) (ppointer->handle (when s5-2
|
||||
(let
|
||||
((t9-15
|
||||
(method-of-type
|
||||
manipy
|
||||
activate
|
||||
)
|
||||
)
|
||||
)
|
||||
(t9-15
|
||||
(the-as manipy s5-2)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s5-2
|
||||
manipy-init
|
||||
(-> obj root trans)
|
||||
(-> obj entity)
|
||||
*assistant-sg*
|
||||
#f
|
||||
)
|
||||
(-> s5-2 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(let ((a1-16 (new 'stack-no-clear 'event-message-block)))
|
||||
|
||||
+1
-17
@@ -177,23 +177,7 @@
|
||||
(set! (-> s5-1 from) pp)
|
||||
(set! (-> s5-1 num-params) 1)
|
||||
(set! (-> s5-1 message) 'clone)
|
||||
(let* ((a0-10 obj)
|
||||
(v1-19 (if a0-10
|
||||
(-> a0-10 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set!
|
||||
(-> s5-1 param 0)
|
||||
(the-as
|
||||
uint
|
||||
(logior
|
||||
(shl (-> v1-19 0 pid) 32)
|
||||
(new 'static 'handle :process v1-19)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> s5-1 param 0) (the-as uint (process->handle obj)))
|
||||
(send-event-function
|
||||
(-> (entity-by-type allpontoons) extra process)
|
||||
s5-1
|
||||
|
||||
+95
-70
@@ -665,17 +665,24 @@
|
||||
gp-0
|
||||
)
|
||||
)
|
||||
(a1-1 (if v1-1
|
||||
(->
|
||||
(the-as
|
||||
collide-shape
|
||||
v1-1
|
||||
)
|
||||
root-prim
|
||||
prim-core
|
||||
)
|
||||
(-> self root trans)
|
||||
)
|
||||
)
|
||||
)
|
||||
(if v1-1
|
||||
(->
|
||||
(the-as collide-shape v1-1)
|
||||
root-prim
|
||||
prim-core
|
||||
)
|
||||
(-> self root trans)
|
||||
(dummy-11
|
||||
(-> self part)
|
||||
(the-as vector a1-1)
|
||||
)
|
||||
)
|
||||
((method-of-object (-> self part) dummy-11))
|
||||
0
|
||||
(none)
|
||||
)
|
||||
@@ -690,34 +697,42 @@
|
||||
)
|
||||
)
|
||||
(vector<-cspace! s4-0 (-> obj node-list data 5))
|
||||
(let* ((s3-0 (get-process *default-dead-pool* manipy #x4000))
|
||||
(v1-13 (when s3-0
|
||||
(let ((t9-8 (method-of-type manipy activate)))
|
||||
(t9-8
|
||||
(the-as manipy s3-0)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s3-0
|
||||
manipy-init
|
||||
s4-0
|
||||
(-> obj entity)
|
||||
*fuel-cell-sg*
|
||||
(new 'static 'vector :w 4915.2)
|
||||
)
|
||||
(-> s3-0 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set!
|
||||
(-> obj right-eye-cell)
|
||||
(new 'static 'handle :process v1-13 :pid (-> v1-13 0 pid))
|
||||
(let ((s3-0 (get-process *default-dead-pool* manipy #x4000)))
|
||||
(set! (-> obj right-eye-cell) (ppointer->handle (when s3-0
|
||||
(let
|
||||
((t9-8
|
||||
(method-of-type
|
||||
manipy
|
||||
activate
|
||||
)
|
||||
)
|
||||
)
|
||||
(t9-8
|
||||
(the-as manipy s3-0)
|
||||
obj
|
||||
'manipy
|
||||
(the-as
|
||||
pointer
|
||||
#x70004000
|
||||
)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s3-0
|
||||
manipy-init
|
||||
s4-0
|
||||
(-> obj entity)
|
||||
*fuel-cell-sg*
|
||||
(new 'static 'vector
|
||||
:w 4915.2
|
||||
)
|
||||
)
|
||||
(-> s3-0 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(let ((a1-9 (new 'stack-no-clear 'event-message-block)))
|
||||
@@ -730,9 +745,10 @@
|
||||
uint
|
||||
(lambda :behavior oracle
|
||||
()
|
||||
(let ((v0-0 (dummy-9 (-> *part-group-id-table* 63) self)))
|
||||
(set! (-> self part) (the-as sparticle-launch-control v0-0))
|
||||
v0-0
|
||||
(let
|
||||
((v0-0 (create-launch-control (-> *part-group-id-table* 63) self)))
|
||||
(set! (-> self part) v0-0)
|
||||
(the-as sparticle-launch-group v0-0)
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -755,34 +771,42 @@
|
||||
)
|
||||
)
|
||||
(vector<-cspace! s4-0 (-> obj node-list data 6))
|
||||
(let* ((s3-1 (get-process *default-dead-pool* manipy #x4000))
|
||||
(v1-33 (when s3-1
|
||||
(let ((t9-15 (method-of-type manipy activate)))
|
||||
(t9-15
|
||||
(the-as manipy s3-1)
|
||||
obj
|
||||
'manipy
|
||||
(the-as pointer #x70004000)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s3-1
|
||||
manipy-init
|
||||
s4-0
|
||||
(-> obj entity)
|
||||
*fuel-cell-sg*
|
||||
(new 'static 'vector :w 4915.2)
|
||||
)
|
||||
(-> s3-1 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set!
|
||||
(-> obj left-eye-cell)
|
||||
(new 'static 'handle :process v1-33 :pid (-> v1-33 0 pid))
|
||||
(let ((s3-1 (get-process *default-dead-pool* manipy #x4000)))
|
||||
(set! (-> obj left-eye-cell) (ppointer->handle (when s3-1
|
||||
(let
|
||||
((t9-15
|
||||
(method-of-type
|
||||
manipy
|
||||
activate
|
||||
)
|
||||
)
|
||||
)
|
||||
(t9-15
|
||||
(the-as manipy s3-1)
|
||||
obj
|
||||
'manipy
|
||||
(the-as
|
||||
pointer
|
||||
#x70004000
|
||||
)
|
||||
)
|
||||
)
|
||||
((the-as
|
||||
(function process function object object object object object)
|
||||
run-function-in-process
|
||||
)
|
||||
s3-1
|
||||
manipy-init
|
||||
s4-0
|
||||
(-> obj entity)
|
||||
*fuel-cell-sg*
|
||||
(new 'static 'vector
|
||||
:w 4915.2
|
||||
)
|
||||
)
|
||||
(-> s3-1 ppointer)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(let ((a1-16 (new 'stack-no-clear 'event-message-block)))
|
||||
@@ -795,9 +819,10 @@
|
||||
uint
|
||||
(lambda :behavior oracle
|
||||
()
|
||||
(let ((v0-0 (dummy-9 (-> *part-group-id-table* 63) self)))
|
||||
(set! (-> self part) (the-as sparticle-launch-control v0-0))
|
||||
v0-0
|
||||
(let
|
||||
((v0-0 (create-launch-control (-> *part-group-id-table* 63) self)))
|
||||
(set! (-> self part) v0-0)
|
||||
(the-as sparticle-launch-group v0-0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user