[decomp] game-info (#779)

* support more process stuff

* more of game info

* add ref file

* progress on save
This commit is contained in:
water111
2021-08-22 20:12:47 -04:00
committed by GitHub
parent 30d1e1d6c9
commit 403bb5f4de
117 changed files with 6234 additions and 2243 deletions
+62 -56
View File
@@ -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
View File
@@ -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))))
+7 -7
View File
@@ -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
View File
@@ -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
View File
@@ -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
View File
@@ -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
View File
@@ -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
View File
@@ -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
View File
@@ -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
View File
@@ -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)
)
)
)