mirror of
https://github.com/open-goal/jak-project.git
synced 2024-11-27 00:10:31 +00:00
decomp3: support for virtual states inheriting from their own type's virtual states, gun-yellow-shot
, gun-red-shot
, gun-dark-shot
(#3438)
This commit is contained in:
parent
afea4f7694
commit
c96e44ab30
@ -355,6 +355,21 @@ FormElement* rewrite_virtual_defstate(
|
||||
inherit_info = {{mot_mr.maps.strings.at(0), mot_mr.maps.strings.at(1)}};
|
||||
}
|
||||
|
||||
// jak 3: some virtual states set their parent here and inherit from their own type's states...
|
||||
std::string maybe_parent_state;
|
||||
std::string maybe_state_type;
|
||||
auto maybe_parent = elt->body()->at(body_idx);
|
||||
auto maybe_parent_matcher =
|
||||
Matcher::set(Matcher::deref(Matcher::any_reg(), false, {DerefTokenMatcher::string("parent")}),
|
||||
Matcher::op(GenericOpMatcher::fixed(FixedOperatorKind::METHOD_OF_TYPE),
|
||||
{Matcher::any_symbol(0), Matcher::any_constant_token(1)}));
|
||||
auto maybe_parent_mr = match(maybe_parent_matcher, maybe_parent);
|
||||
if (maybe_parent_mr.matched) {
|
||||
maybe_state_type = maybe_parent_mr.maps.strings.at(0);
|
||||
maybe_parent_state = maybe_parent_mr.maps.strings.at(1);
|
||||
body_idx++;
|
||||
}
|
||||
|
||||
// checks to check: method type is a state
|
||||
// if inherit matches expected.
|
||||
|
||||
@ -411,7 +426,14 @@ FormElement* rewrite_virtual_defstate(
|
||||
// expected_state_name, type_name);
|
||||
}
|
||||
} else {
|
||||
if (inherit_info) {
|
||||
// if we set our parent state, check that that state's type and this type are the same
|
||||
if (inherit_info && maybe_parent_mr.matched && maybe_state_type == type_name) {
|
||||
env.func->warnings.warning(
|
||||
"Virtual defstate {} is inheriting from state {} which is one of its own type's "
|
||||
"states.",
|
||||
expected_state_name, maybe_parent_state);
|
||||
}
|
||||
if (inherit_info && !maybe_parent_mr.matched) {
|
||||
env.func->warnings.error_and_throw(
|
||||
"Virtual defstate for state {} in type {}: the state wasn't defined in the "
|
||||
"parent but was inherited.",
|
||||
@ -421,7 +443,7 @@ FormElement* rewrite_virtual_defstate(
|
||||
}
|
||||
|
||||
// checks: parent_type_name is the parent
|
||||
if (inherit_info) {
|
||||
if (inherit_info && !maybe_parent_mr.matched) {
|
||||
auto child_type_info = env.dts->ts.lookup_type(type_name);
|
||||
if (child_type_info->get_parent() != inherit_info->parent_type_name) {
|
||||
env.func->warnings.error_and_throw(
|
||||
@ -451,8 +473,13 @@ FormElement* rewrite_virtual_defstate(
|
||||
elt->body(), body_idx + 1, env, expected_state_name, elt->entries().at(0).dest,
|
||||
method_info.type.substitute_for_method_call(type_name), pool, type_name, skip_states);
|
||||
|
||||
return pool.alloc_element<DefstateElement>(type_name, expected_state_name, "", entries, true,
|
||||
state_override);
|
||||
std::string parent_str;
|
||||
if (!maybe_parent_state.empty()) {
|
||||
parent_str = fmt::format("({} {})", type_name, maybe_parent_state);
|
||||
}
|
||||
|
||||
return pool.alloc_element<DefstateElement>(type_name, expected_state_name, parent_str, entries,
|
||||
true, state_override);
|
||||
}
|
||||
|
||||
FormElement* rewrite_virtual_defstate_with_nonvirtual_inherit(
|
||||
@ -481,8 +508,6 @@ FormElement* rewrite_virtual_defstate_with_nonvirtual_inherit(
|
||||
// (set! (-> gp-6 exit) (the-as (function object) L251))
|
||||
// (set! (-> gp-6 trans) (the-as (function object) L253))
|
||||
// )
|
||||
|
||||
// ASSERT(elt->body()->size() > 1);
|
||||
env.func->warnings.warning("Encountered virtual defstate {} with non-virtual inherit.",
|
||||
expected_state_name);
|
||||
// variable at the top of let, contains the static state with name exptected_state_name
|
||||
|
@ -2265,16 +2265,16 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(define-extern matrix-fur-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-fu-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-fu-compose (function matrix vector vector matrix))
|
||||
(define-extern matrix-fr-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-ur-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-f-u-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-f-u-compose (function matrix vector vector matrix))
|
||||
(define-extern matrix-f-r-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-u-f-compose (function matrix vector vector matrix))
|
||||
(define-extern matrix-u-r-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-r-f-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-r-u-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-f-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-f-compose (function matrix vector float matrix))
|
||||
(define-extern matrix-u-compose (function matrix vector vector vector matrix))
|
||||
(define-extern matrix-r-compose (function matrix vector vector vector matrix))
|
||||
|
||||
@ -7449,6 +7449,19 @@
|
||||
(movie0 16)
|
||||
(movie1 17)
|
||||
(movie2 18)
|
||||
(tm19 19)
|
||||
(tm20 20)
|
||||
(tm21 21)
|
||||
(tm22 22)
|
||||
(tm23 23)
|
||||
(tm24 24)
|
||||
(tm25 25)
|
||||
(tm26 26)
|
||||
(tm27 27)
|
||||
(tm28 28)
|
||||
(tm29 29)
|
||||
(tm30 30)
|
||||
(tm31 31)
|
||||
)
|
||||
;; ---level-h:task-mask
|
||||
|
||||
@ -7815,7 +7828,7 @@
|
||||
it will kick out levels as needed to make a free slot, and set up a new level, and start
|
||||
the load. This should only be used when you might want to start a load." (_type_ symbol symbol) level) ;; 12
|
||||
(activate-levels! "Make all levels 'active!" (_type_) int) ;; 13
|
||||
(level-group-method-14 () none) ;; 14 ;; (debug-print-entities (_type_ symbol type) none)
|
||||
(debug-print-entities (_type_ symbol type string) none) ;; 14
|
||||
(debug-draw-actors (_type_ symbol) none) ;; 15
|
||||
(assign-draw-indices "Assign the order for levels to be drawn." (_type_) none) ;; 16
|
||||
(actors-update (_type_) none) ;; 17
|
||||
@ -7824,11 +7837,11 @@
|
||||
(level-get-target-inside "Get the level that the player is 'in'." (_type_) level) ;; 20
|
||||
(init-level-system "If needed, initialize the level system by loading common/art packages and allocating level heaps." (_type_ symbol) none) ;; 21
|
||||
(art-group-get-by-name "Check all levels for an art group with the given name." (_type_ string (pointer level)) art-group) ;; 22 ;; (load-commands-set! (_type_ pair) none)
|
||||
(level-group-method-23 () none) ;; 23 ;; (art-group-get-by-name (_type_ string (pointer uint32)) art-group)
|
||||
(level-group-method-24 () none) ;; 24 ;; (alt-load-command-get-index (_type_ symbol int) pair)
|
||||
(level-group-method-25 () none) ;; 25 ;; (update-vis-volumes (_type_) none)
|
||||
(update-vis-volumes (_type_) none) ;; 23 ;; (art-group-get-by-name (_type_ string (pointer uint32)) art-group)
|
||||
(level-group-method-24 (_type_) none) ;; 24 ;; (alt-load-command-get-index (_type_ symbol int) pair)
|
||||
(print-volume-sizes (_type_) none) ;; 25
|
||||
(status-of-level-and-borrows "Get the combined status of a level and borrow levels." (_type_ symbol symbol) symbol) ;; 26 ;; (update-vis-volumes-from-nav-mesh (_type_) none)
|
||||
(do-nothing "Empty method." (_type_) none) ;; 27 ;; (print-volume-sizes (_type_) none)
|
||||
(do-nothing "Empty method." (_type_) none) ;; 27
|
||||
(load-in-progress? "Is there a load happening now?" (_type_) symbol) ;; 28 ;; (level-status (_type_ symbol) symbol)
|
||||
(is-load-allowed? "Does the exclusive-load setting allow us to load this level?" (_type_ (pointer symbol)) symbol) ;; 29
|
||||
(level-get-most-disposable "Get the level inside this level-group that should
|
||||
@ -17943,7 +17956,7 @@
|
||||
(radius float :offset-assert 56)
|
||||
(duration float :offset-assert 60)
|
||||
(duration-rand float :offset-assert 64)
|
||||
(sound symbol :offset-assert 68)
|
||||
(sound sound-spec :offset-assert 68)
|
||||
(delay float :offset-assert 72)
|
||||
(delay-rand float :offset-assert 76)
|
||||
)
|
||||
@ -20541,7 +20554,7 @@
|
||||
(send-shoves (_type_ process touching-shapes-entry float float float) symbol) ;; 50
|
||||
(above-ground? (_type_ collide-query vector collide-spec float float float) symbol) ;; 51
|
||||
(water-info-init! (_type_ water-info collide-action) water-info) ;; 52
|
||||
(collide-shape-method-53 () none) ;; 53 ;; (iterate-prims (_type_ (function collide-shape-prim none)) none)
|
||||
(iterate-prims (_type_ (function collide-shape-prim none)) none) ;; 53
|
||||
(collide-shape-method-54 () none) ;; 54 ;; (pusher-init (_type_) none)
|
||||
)
|
||||
)
|
||||
@ -23187,6 +23200,7 @@
|
||||
|
||||
(declare-type entity-camera entity)
|
||||
(declare-type entity-nav-mesh structure)
|
||||
(declare-type entity-race-mesh entity)
|
||||
(declare-type city-level-info structure)
|
||||
|
||||
(deftype bsp-node (structure)
|
||||
@ -23238,11 +23252,11 @@
|
||||
; (ambients symbol :offset-assert 156) ;; now just #t?
|
||||
(subdivide-close float :offset 160)
|
||||
(subdivide-far float :offset-assert 164)
|
||||
; (race-meshes (array entity-race-mesh) :offset-assert 168)
|
||||
(race-meshes (array entity-race-mesh) :offset-assert 168)
|
||||
(actor-birth-order (pointer uint32) :offset 172)
|
||||
(light-hash light-hash :offset-assert 176)
|
||||
(nav-meshes (array entity-nav-mesh) :offset-assert 180)
|
||||
; (actor-groups (array actor-group) :offset-assert 184)
|
||||
(actor-groups (array actor-group) :offset-assert 184)
|
||||
(region-trees (array drawable-tree-region-prim) :offset 188)
|
||||
; (region-array region-array :offset-assert 192)
|
||||
(collide-hash collide-hash :offset 196)
|
||||
@ -25078,7 +25092,7 @@
|
||||
:size-assert #x40
|
||||
:flag-assert #xa00000040
|
||||
(:methods
|
||||
(entity-links-method-9 () none) ;; 9 ;; (birth? (_type_ vector) symbol)
|
||||
(birth? (_type_ vector) symbol) ;; 9
|
||||
)
|
||||
)
|
||||
|
||||
@ -25232,7 +25246,7 @@
|
||||
(sx float :offset 12)
|
||||
(sy float :offset 28)
|
||||
(rot float :offset 24)
|
||||
(flag int32 :offset 16)
|
||||
(flag int32 :offset 16 :score 1)
|
||||
(matrix int32 :offset 20)
|
||||
(warp-turns int32 :offset 16)
|
||||
(r float :offset 32)
|
||||
@ -28079,9 +28093,9 @@
|
||||
(nav-mesh-method-19 () none) ;; 19 ;; (clamp-vector-to-mesh-no-gaps (_type_ vector nav-poly vector clamp-travel-vector-to-mesh-return-info) none)
|
||||
(nav-mesh-method-20 () none) ;; 20 ;; (set-normals-from-adjacent-bounds (_type_ clamp-travel-vector-to-mesh-return-info) none)
|
||||
(nav-mesh-method-21 () none) ;; 21 ;; (find-adjacent-bounds-one (_type_ vector nav-poly int int) none)
|
||||
(nav-mesh-method-22 () none) ;; 22 ;; (compute-bounding-box-from-vertices (_type_ vector vector) none)
|
||||
(nav-mesh-method-22 () none) ;; 22
|
||||
(nav-mesh-method-23 () none) ;; 23 ;; (init-from-entity (_type_ entity-nav-mesh) none)
|
||||
(nav-mesh-method-24 () none) ;; 24 ;; (handle-birth (_type_) none)
|
||||
(compute-bounding-box-from-vertices (_type_ vector vector) none) ;; 24 ;; (handle-birth (_type_) none)
|
||||
(nav-mesh-method-25 () none) ;; 25 ;; (handle-kill (_type_) none)
|
||||
(nav-mesh-method-26 () none) ;; 26 ;; (update-navigation (_type_) none)
|
||||
(nav-mesh-method-27 () none) ;; 27 ;; (new-nav-control (_type_ process-drawable) nav-control)
|
||||
@ -28305,7 +28319,7 @@
|
||||
:size-assert #x120
|
||||
:flag-assert #x2f00000120
|
||||
(:methods
|
||||
(nav-control-method-9 () none) ;; 9 ;; (debug-draw (_type_) none)
|
||||
(debug-draw (_type_) none) ;; 9
|
||||
(nav-control-method-10 () none) ;; 10 ;; (point-in-bsphere? (_type_ vector) symbol)
|
||||
(find-poly-containing-point-1 (_type_ vector) nav-poly) ;; 11
|
||||
(cloest-point-on-mesh (_type_ vector vector nav-poly) nav-poly) ;; 12
|
||||
@ -30928,10 +30942,10 @@
|
||||
(define-extern *particle-vel* vector)
|
||||
;; (define-extern birth-func-set-vel function) ;; (function object sparticle-cpuinfo sparticle-launchinfo none)
|
||||
;; (define-extern birth-func-texture-group function) ;; (function int sparticle-cpuinfo sparticle-launchinfo none)
|
||||
;; (define-extern rot-to-particle function)
|
||||
(define-extern rot-to-particle (function degrees sprite-vec-data-2d matrix none))
|
||||
;; (define-extern birth-func-flip-based-on-scale function)
|
||||
;; (define-extern sparticle-2d-spline-align function)
|
||||
;; (define-extern sparticle-2d-spline-align-instant function)
|
||||
(define-extern sparticle-2d-spline-align-instant (function object sparticle-cpuinfo sprite-vec-data-2d object none))
|
||||
;; (define-extern birth-func-inherit-size function)
|
||||
;; (define-extern birth-func-texture-group-2d function)
|
||||
;; (define-extern birth-func-set-vel-2d function)
|
||||
@ -33185,7 +33199,7 @@
|
||||
(define-extern slave-los-state->string (function slave-los-state string))
|
||||
;; (define-extern cam-line-dma function) ;; (function pointer)
|
||||
;; (define-extern camera-line2d function) ;; (function vector4w vector4w pointer)
|
||||
;; (define-extern camera-plot-float-func function) ;; (function float float float float (function float float) vector4w none)
|
||||
(define-extern camera-plot-float-func (function float float float float (function float float) vector4w none))
|
||||
(define-extern camera-line-setup (function vector4w none))
|
||||
(define-extern camera-line-draw (function vector vector none))
|
||||
(define-extern camera-line (function vector vector vector4w none))
|
||||
@ -33580,7 +33594,7 @@
|
||||
:size-assert #x10
|
||||
:flag-assert #xc00000010
|
||||
(:methods
|
||||
(curve2d-piecewise-method-10 (_type_ int symbol uint) none) ;; 10
|
||||
(curve2d-piecewise-method-10 (_type_ int symbol int) none) ;; 10
|
||||
(curve2d-piecewise-method-11 (_type_) none) ;; 11
|
||||
)
|
||||
)
|
||||
@ -35357,7 +35371,7 @@
|
||||
;; (define-extern spt-birth-func-part-jump-droppings-for function)
|
||||
(define-extern process-drawable-burn-effect (function time-frame rgbaf :behavior target))
|
||||
(define-extern lightning-probe-callback (function lightning-tracker none))
|
||||
;; (define-extern process-drawable-shock-effect-replace function)
|
||||
(define-extern process-drawable-shock-effect-replace (function process-drawable lightning-spec (function lightning-tracker none) int int float none))
|
||||
(define-extern process-drawable-shock-effect (function process-drawable lightning-spec (function lightning-tracker none) sparticle-launcher int int float object))
|
||||
;; (define-extern process-drawable-shock-wall-effect function) ;; (function process-drawable lightning-spec (function lightning-tracker none) sparticle-launcher symbol)
|
||||
(define-extern process-drawable2-shock-effect (function process-drawable process-drawable lightning-spec (function lightning-tracker none) sparticle-launcher none))
|
||||
@ -35369,28 +35383,28 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
;; (define-extern sparticle-track-gun-joint function)
|
||||
;; (define-extern *red-shot-colors* object) ;; (pointer rgba)
|
||||
;; (define-extern *range-explo-dust-color* curve-color-fast)
|
||||
;; (define-extern *range-explo-dust-alpha* curve2d-fast)
|
||||
;; (define-extern *range-explo-dust-scale-x* curve2d-fast)
|
||||
;; (define-extern *range-explo-dust-scale-y* curve2d-fast)
|
||||
;; (define-extern *curve-explo-dust-alpha* curve2d-fast)
|
||||
;; (define-extern *curve-explo-dust-scale-x* curve2d-fast)
|
||||
;; (define-extern *curve-explo-dust-scale-y* curve2d-fast)
|
||||
;; (define-extern *part-gun-red3-explosion-dust-in-curve-settings* object)
|
||||
;; (define-extern *range-explo-color* curve-color-fast)
|
||||
;; (define-extern *range-explo-alpha* curve2d-fast)
|
||||
;; (define-extern *range-explo-scale-x* curve2d-fast)
|
||||
;; (define-extern *range-explo-scale-y* curve2d-fast)
|
||||
;; (define-extern *curve-explo-alpha* curve2d-fast)
|
||||
;; (define-extern *curve-explo-scale-x* curve2d-fast)
|
||||
;; (define-extern *curve-explo-scale-y* curve2d-fast)
|
||||
;; (define-extern *part-gun-red3-explosion-texture-curve-settings* object)
|
||||
;; (define-extern *curve-linear-up-red* object)
|
||||
(define-extern *red-shot-colors* (pointer rgba))
|
||||
(define-extern *range-explo-dust-color* curve-color-fast)
|
||||
(define-extern *range-explo-dust-alpha* curve2d-fast)
|
||||
(define-extern *range-explo-dust-scale-x* curve2d-fast)
|
||||
(define-extern *range-explo-dust-scale-y* curve2d-fast)
|
||||
(define-extern *curve-explo-dust-alpha* curve2d-fast)
|
||||
(define-extern *curve-explo-dust-scale-x* curve2d-fast)
|
||||
(define-extern *curve-explo-dust-scale-y* curve2d-fast)
|
||||
(define-extern *part-gun-red3-explosion-dust-in-curve-settings* particle-curve-settings)
|
||||
(define-extern *range-explo-color* curve-color-fast)
|
||||
(define-extern *range-explo-alpha* curve2d-fast)
|
||||
(define-extern *range-explo-scale-x* curve2d-fast)
|
||||
(define-extern *range-explo-scale-y* curve2d-fast)
|
||||
(define-extern *curve-explo-alpha* curve2d-fast)
|
||||
(define-extern *curve-explo-scale-x* curve2d-fast)
|
||||
(define-extern *curve-explo-scale-y* curve2d-fast)
|
||||
(define-extern *part-gun-red3-explosion-texture-curve-settings* particle-curve-settings)
|
||||
(define-extern *curve-linear-up-red* curve2d-piecewise)
|
||||
(define-extern *red-shot-3-trail* light-trail-composition)
|
||||
;; (define-extern *curve-yellow2-shot-alpha* object)
|
||||
;; (define-extern *curve-yellow2-shot-color* curve-color-fast)
|
||||
;; (define-extern *curve-linear-down-long* curve2d-fast)
|
||||
(define-extern *curve-yellow2-shot-alpha* curve2d-piecewise)
|
||||
(define-extern *curve-yellow2-shot-color* curve-color-fast)
|
||||
(define-extern *curve-linear-down-long* curve2d-fast)
|
||||
(define-extern *yellow-shot-2-trail* light-trail-composition)
|
||||
;; (define-extern check-shell-level1 function) ;; (function sparticle-system sparticle-cpuinfo vector none)
|
||||
;; (define-extern check-shell-level2 function) ;; (function sparticle-system sparticle-cpuinfo vector none)
|
||||
@ -35401,20 +35415,20 @@
|
||||
;; (define-extern birth-func-converge function)
|
||||
;; (define-extern sparticle-red-2-converge function)
|
||||
;; (define-extern sparticle-red-2-glow-trail-halt function)
|
||||
;; (define-extern *gun-dark-3-nuke-fade-time* object)
|
||||
;; (define-extern *gun-dark-3-nuke-fade-curve* object)
|
||||
;; (define-extern *gun-dark-3-nuke-blur-segs* object)
|
||||
;; (define-extern *gun-dark-3-nuke-blur-time* object)
|
||||
;; (define-extern *gun-dark-3-nuke-blur-curve* object)
|
||||
;; (define-extern *gun-dark-3-mushroom-speed* object)
|
||||
;; (define-extern *gun-dark-3-mushroom-size-time* object)
|
||||
;; (define-extern *gun-dark-3-nuke-mushroom-size-curve-x* object)
|
||||
;; (define-extern *gun-dark-3-nuke-mushroom-size-curve-y* object)
|
||||
;; (define-extern *gun-dark-3-nuke-fade-time-small* object)
|
||||
;; (define-extern *gun-dark-3-nuke-fade-curve-small* object)
|
||||
;; (define-extern *gun-dark-3-nuke-blur-segs-small* object)
|
||||
;; (define-extern *gun-dark-3-nuke-blur-time-small* object)
|
||||
;; (define-extern *gun-dark-3-nuke-blur-curve-small* object)
|
||||
(define-extern *gun-dark-3-nuke-fade-time* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-fade-curve* curve-color-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-blur-segs* uint)
|
||||
(define-extern *gun-dark-3-nuke-blur-time* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-blur-curve* curve2d-piecewise)
|
||||
(define-extern *gun-dark-3-mushroom-speed* float)
|
||||
(define-extern *gun-dark-3-mushroom-size-time* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-mushroom-size-curve-x* curve2d-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-mushroom-size-curve-y* curve2d-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-fade-time-small* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-fade-curve-small* curve-color-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-blur-segs-small* uint)
|
||||
(define-extern *gun-dark-3-nuke-blur-time-small* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-blur-curve-small* curve2d-piecewise)
|
||||
;; (define-extern spt-func-part-gun-dark-1-upgrade-shot-edges function)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -36068,9 +36082,8 @@
|
||||
;; gun-blue-shot ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
#|
|
||||
(deftype gun-blue-shot-3 (projectile)
|
||||
((hit-actor? basic :offset-assert 512)
|
||||
((hit-actor? symbol :offset-assert 512)
|
||||
(start-pos vector :inline :offset-assert 528)
|
||||
(track-mode uint64 :offset-assert 544)
|
||||
(random-travel-distance float :offset-assert 552)
|
||||
@ -36083,9 +36096,7 @@
|
||||
dissipate ;; 21
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype dist-dot-val (structure)
|
||||
((dot float :offset-assert 0)
|
||||
(dist float :offset-assert 4)
|
||||
@ -36096,54 +36107,44 @@
|
||||
:size-assert #x30
|
||||
:flag-assert #x900000030
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype light-trail-tracker-blue-3 (light-trail-tracker-projectile)
|
||||
()
|
||||
:method-count-assert 22
|
||||
:size-assert #xb8
|
||||
:flag-assert #x16004000b8
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype target-quality-info (structure)
|
||||
((targ uint64 :offset-assert 0)
|
||||
((targ handle :offset-assert 0)
|
||||
(value float :offset-assert 8)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #xc
|
||||
:flag-assert #x90000000c
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype timeframe-wrapper (structure)
|
||||
((time uint64 :offset-assert 0)
|
||||
((time time-frame :offset-assert 0)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x8
|
||||
:flag-assert #x900000008
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-blue-2-lightning-info (structure)
|
||||
((pts UNKNOWN 32 :offset-assert 0)
|
||||
((pts vector 32 :inline :offset-assert 0)
|
||||
(num-pts int8 :offset-assert 512)
|
||||
(should-draw-terminal-sparks? basic :offset-assert 516)
|
||||
(should-draw-terminal-sparks? symbol :offset-assert 516)
|
||||
(terminal-spark-pos vector :inline :offset-assert 528)
|
||||
(should-draw-extension? basic :offset-assert 544)
|
||||
(should-draw-extension? symbol :offset-assert 544)
|
||||
(extension-end-point vector :inline :offset-assert 560)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x240
|
||||
:flag-assert #x900000240
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-blue-lightning-command (structure)
|
||||
((msg uint64 :offset-assert 0)
|
||||
(lightning-info gun-blue-2-lightning-info :inline :offset-assert 16)
|
||||
@ -36152,20 +36153,18 @@
|
||||
:size-assert #x250
|
||||
:flag-assert #x900000250
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-blue-2-lightning-tracker (process-drawable)
|
||||
((lt-array basic :offset-assert 200)
|
||||
(should-draw-this-frame? basic :offset-assert 204)
|
||||
(last-spark-time uint64 :offset-assert 216)
|
||||
(spark-time-interval uint64 :offset-assert 224)
|
||||
(last-deduct-ammo-time uint64 :offset-assert 232)
|
||||
(snd-lightning uint32 :offset-assert 240)
|
||||
(active-enter-time uint64 :offset-assert 248)
|
||||
((lt-array (array gun-blue-2-lightning-info) :offset-assert 200)
|
||||
(should-draw-this-frame? symbol :offset-assert 204)
|
||||
(last-spark-time time-frame :offset 216)
|
||||
(spark-time-interval time-frame :offset-assert 224)
|
||||
(last-deduct-ammo-time time-frame :offset-assert 232)
|
||||
(snd-lightning sound-id :offset-assert 240)
|
||||
(active-enter-time time-frame :offset-assert 248)
|
||||
(revolve-angle float :offset-assert 256)
|
||||
(sway-angle float :offset-assert 260)
|
||||
(snd-spin uint32 :offset-assert 264)
|
||||
(snd-spin sound-id :offset-assert 264)
|
||||
(spin-intensity float :offset-assert 268)
|
||||
(prev-targ-pos vector :inline :offset-assert 272)
|
||||
(last-probe-index int16 :offset-assert 288)
|
||||
@ -36173,32 +36172,28 @@
|
||||
:method-count-assert 27
|
||||
:size-assert #x122
|
||||
:flag-assert #x1b00b00122
|
||||
(:state-methods
|
||||
active ;; 20
|
||||
inactive ;; 21
|
||||
die ;; 22
|
||||
test ;; 23
|
||||
)
|
||||
(:methods
|
||||
(gun-blue-2-lightning-tracker-method-24 () none) ;; 24
|
||||
(gun-blue-2-lightning-tracker-method-25 () none) ;; 25
|
||||
(gun-blue-2-lightning-tracker-method-26 () none) ;; 26
|
||||
)
|
||||
(:state-methods
|
||||
test ;; 23
|
||||
active ;; 20
|
||||
inactive ;; 21
|
||||
die ;; 22
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-blue-2-target-info (structure)
|
||||
((target uint64 :offset-assert 0)
|
||||
(start-time uint64 :offset-assert 8)
|
||||
((target handle :offset-assert 0)
|
||||
(start-time time-frame :offset-assert 8)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x10
|
||||
:flag-assert #x900000010
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype constraint-knot (structure)
|
||||
((pt vector :inline :offset-assert 0)
|
||||
(dir vector :inline :offset-assert 16)
|
||||
@ -36208,11 +36203,9 @@
|
||||
:size-assert #x24
|
||||
:flag-assert #x900000024
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype rope-constraint (structure)
|
||||
((constraints UNKNOWN 12 :offset-assert 0)
|
||||
((constraints constraint-knot 12 :inline :offset-assert 0)
|
||||
(num-knots uint8 :offset-assert 576)
|
||||
)
|
||||
:method-count-assert 10
|
||||
@ -36222,9 +36215,7 @@
|
||||
(rope-constraint-method-9 () none) ;; 9
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-blue-2-lightning-init-params (structure)
|
||||
((num-beams int8 :offset-assert 0)
|
||||
)
|
||||
@ -36232,9 +36223,7 @@
|
||||
:size-assert #x1
|
||||
:flag-assert #x900000001
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-blue-shot (projectile)
|
||||
((init-pos vector :inline :offset-assert 512)
|
||||
(init-dir vector :inline :offset-assert 528)
|
||||
@ -36244,23 +36233,20 @@
|
||||
:size-assert #x230
|
||||
:flag-assert #x2901b00230
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-blue-shot-2 (gun-blue-shot)
|
||||
()
|
||||
:method-count-assert 41
|
||||
:size-assert #x230
|
||||
:flag-assert #x2901b00230
|
||||
)
|
||||
|#
|
||||
|
||||
;; (define-extern sparticle-fade-alpha-dist function)
|
||||
;; (define-extern gun-fire-blue-1 function)
|
||||
;; (define-extern fmod-2 function)
|
||||
;; (define-extern get-dist-and-dot function)
|
||||
;; (define-extern gun-blue-shot-3-move function)
|
||||
;; (define-extern *blue-shot-trail* object)
|
||||
(define-extern *blue-shot-trail* light-trail-composition)
|
||||
;; (define-extern gun-fire-blue-3 function)
|
||||
;; (define-extern draw-beam-segment function)
|
||||
;; (define-extern *found-objects* object)
|
||||
@ -36269,7 +36255,7 @@
|
||||
;; (define-extern fire-projectile-if-necessary function)
|
||||
;; (define-extern *gun-blue-2-targets* object)
|
||||
;; (define-extern *blue-2-lightning-shape* object)
|
||||
;; (define-extern *uv-loop-curve* object)
|
||||
(define-extern *uv-loop-curve* curve2d-piecewise)
|
||||
;; (define-extern *blue-light-test* object)
|
||||
;; (define-extern *blue-light-test-end* object)
|
||||
;; (define-extern *blue-light-test-big* object)
|
||||
@ -36281,13 +36267,13 @@
|
||||
;; (define-extern find-gun-blue-2-target function)
|
||||
;; (define-extern find-gun-blue-2-target-old function)
|
||||
;; (define-extern *lightning-pts-cache* object)
|
||||
;; (define-extern gun-fire-blue-2 function)
|
||||
;; (define-extern gun-fire-blue-2-old function)
|
||||
(define-extern gun-fire-blue-2 (function object :behavior target))
|
||||
(define-extern gun-fire-blue-2-old (function object :behavior target))
|
||||
(define-extern target-gun-can-fire-blue? (function pickup-type symbol :behavior target))
|
||||
;; (define-extern *last-fire-blue-time* object)
|
||||
(define-extern *last-fire-blue-time* time-frame)
|
||||
(define-extern target-gun-fire-blue (function pickup-type (pointer process) :behavior target))
|
||||
;; (define-extern gun-blue-shot-move function) ;; (function gun-blue-shot none)
|
||||
;; (define-extern cshape-reaction-blue-shot function) ;; (function control-info collide-query vector vector collide-status)
|
||||
(define-extern gun-blue-shot-move (function gun-blue-shot none))
|
||||
(define-extern cshape-reaction-blue-shot (function control-info collide-query vector vector collide-status))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; gun-yellow-shot ;;
|
||||
@ -36460,12 +36446,12 @@
|
||||
)
|
||||
(:methods
|
||||
(init-probes! (_type_ collide-shape) none) ;; 23
|
||||
(gun-red-shot-method-24 (_type_) none) ;; 24 ;; (gun-red-shot-method-24 (_type_) symbol)
|
||||
(check-blocked? (_type_) symbol) ;; 24
|
||||
(stub (_type_) none) ;; 25
|
||||
(do-collision (_type_) none) ;; 26 ;; (gun-red-shot-method-26 (_type_) none)
|
||||
(gun-red-shot-method-27 (_type_) none) ;; 27 ;; (gun-red-shot-method-27 (_type_) none)
|
||||
(gun-red-shot-method-28 (_type_ vector) none) ;; 28 ;; (gun-red-shot-method-28 (_type_ vector) sound-id)
|
||||
(gun-red-shot-method-29 (_type_ process-drawable touching-shapes-entry) none) ;; 29 ;; (fire! (_type_ process-drawable int) object)
|
||||
(find-targets (_type_) none) ;; 26
|
||||
(setup-probes (_type_) none) ;; 27
|
||||
(do-collision (_type_ vector) none) ;; 28
|
||||
(send-attack! (_type_ process-drawable touching-shapes-entry) none) ;; 29
|
||||
)
|
||||
)
|
||||
|
||||
@ -36554,17 +36540,16 @@
|
||||
die ;; 16
|
||||
)
|
||||
(:methods
|
||||
(gun-red-2-shockwave-method-17 (_type_) none) ;; 17
|
||||
(find-targets-and-attack! (_type_) none) ;; 17
|
||||
(send-attack! (_type_ process-focusable symbol) none) ;; 18
|
||||
;; adding _type_ here causes decompiler hang
|
||||
(gun-red-2-shockwave-method-19 () none) ;; 19
|
||||
(gun-red-2-shockwave-method-20 (_type_) none) ;; 20
|
||||
(gun-red-2-shockwave-method-21 (_type_) none) ;; 21
|
||||
(find-collision-point! (_type_) int) ;; 19
|
||||
(generate-collision-points! (_type_) none) ;; 20
|
||||
(adjust-height-and-radius (_type_) none) ;; 21
|
||||
(gun-red-2-shockwave-method-22 (_type_ int int int int) none) ;; 22
|
||||
(generate-shockwave-particles (_type_) none) ;; 23
|
||||
(adjust-warp-radius-and-alpha (_type_) object) ;; 24
|
||||
(adjust-ring-radius-and-alpha (_type_) none) ;; 25
|
||||
(generate-collision-points (_type_) none) ;; 26
|
||||
(generate-order-array (_type_) none) ;; 26
|
||||
(spawn-ring (_type_) none) ;; 27
|
||||
)
|
||||
)
|
||||
@ -36648,7 +36633,7 @@
|
||||
(define-extern gun-fire-red-2 (function object :behavior target))
|
||||
(define-extern red-3-sphere-init-by-other (function red-3-sphere-init-params object :behavior red-3-sphere))
|
||||
(define-extern gun-fire-red-3 (function gun-red-3-grenade :behavior target))
|
||||
(define-extern gun-fire-red-1 (function gun-red-shot :behavior target))
|
||||
(define-extern gun-fire-red-1 (function object :behavior target))
|
||||
(define-extern target-gun-can-fire-red? (function pickup-type symbol :behavior target))
|
||||
(define-extern target-gun-fire-red (function pickup-type (pointer process) :behavior target))
|
||||
(define-extern gun-red-shot-event-handler (function process int symbol event-message-block object :behavior gun-red-shot))
|
||||
@ -36658,36 +36643,33 @@
|
||||
;; gun-dark-shot ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
#|
|
||||
(deftype gun-dark-shot (projectile)
|
||||
((blast-radius float :offset-assert 512)
|
||||
(core-position vector :inline :offset-assert 528)
|
||||
(core-velocity vector :inline :offset-assert 544)
|
||||
(spin-vector vector :inline :offset-assert 560)
|
||||
(track-target uint64 :offset-assert 576) ;; handle
|
||||
(track-target handle :offset-assert 576)
|
||||
(size-t float :offset-assert 584)
|
||||
(result-array handle 16 :offset-assert 592) ;; guessed by decompiler
|
||||
(result-array handle 16 :offset-assert 592)
|
||||
(result-count int8 :offset-assert 720)
|
||||
(charge-sound sound-id :offset-assert 724) ;; guessed by decompiler
|
||||
(fire-sound sound-id :offset-assert 728) ;; guessed by decompiler
|
||||
(trail-sound sound-id :offset-assert 732) ;; guessed by decompiler
|
||||
(explode-sound sound-id :offset-assert 736) ;; guessed by decompiler
|
||||
(start-pilot? basic :offset-assert 740)
|
||||
(spread-timer uint64 :offset-assert 744)
|
||||
(charge-sound sound-id :offset-assert 724)
|
||||
(fire-sound sound-id :offset-assert 728)
|
||||
(trail-sound sound-id :offset-assert 732)
|
||||
(explode-sound sound-id :offset-assert 736)
|
||||
(start-pilot? symbol :offset-assert 740)
|
||||
(spread-timer time-frame :offset-assert 744)
|
||||
)
|
||||
:method-count-assert 43
|
||||
:size-assert #x2f0
|
||||
:flag-assert #x2b027002f0
|
||||
(:state-methods
|
||||
impact ;; 22
|
||||
fizzle ;; 42
|
||||
moving ;; 23
|
||||
startup ;; 41, old: (fizzle () _type_ :state)
|
||||
startup ;; 41
|
||||
fizzle ;; 42
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-dark-3-sphere (process-drawable)
|
||||
((alpha-val float :offset-assert 200)
|
||||
)
|
||||
@ -36698,9 +36680,7 @@
|
||||
active ;; 20
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-dark-3-sphere-init-params (structure)
|
||||
((pos vector :inline :offset-assert 0)
|
||||
(size-x float :offset-assert 16)
|
||||
@ -36711,122 +36691,114 @@
|
||||
:size-assert #x1c
|
||||
:flag-assert #x90000001c
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype last-active-nuke-info (structure)
|
||||
((last-active-nuke uint64 :offset-assert 0)
|
||||
((last-active-nuke handle :offset-assert 0)
|
||||
)
|
||||
:method-count-assert 9
|
||||
:size-assert #x8
|
||||
:flag-assert #x900000008
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-dark-3-nuke (projectile)
|
||||
((flash-time uint64 :offset-assert 512)
|
||||
(blur-time uint64 :offset-assert 520)
|
||||
(spawned-mushroom-cloud? basic :offset-assert 528)
|
||||
(strip basic :offset-assert 532)
|
||||
((flash-time time-frame :offset-assert 512)
|
||||
(blur-time time-frame :offset-assert 520)
|
||||
(spawned-mushroom-cloud? symbol :offset-assert 528)
|
||||
(strip prim-strip :offset-assert 532)
|
||||
(mushroom-top-pos vector :inline :offset-assert 544)
|
||||
(warp uint64 :offset-assert 560)
|
||||
(warp handle :offset-assert 560)
|
||||
(initial-velocity vector :inline :offset-assert 576)
|
||||
(start-y float :offset-assert 592)
|
||||
(y-vel-adjust float :offset-assert 596)
|
||||
(launch-speed float :offset-assert 600)
|
||||
(launch-sin-region-start float :offset-assert 604)
|
||||
(launch-sin-region-end float :offset-assert 608)
|
||||
(launch-stay-state-time uint64 :offset-assert 616)
|
||||
(launch-next-state basic :offset-assert 624)
|
||||
(launch-impact-state basic :offset-assert 628)
|
||||
(launch-stay-state-time time-frame :offset-assert 616)
|
||||
(launch-next-state (state gun-dark-3-nuke) :offset-assert 624)
|
||||
(launch-impact-state (state gun-dark-3-nuke) :offset-assert 628)
|
||||
(launch-y-scale float :offset-assert 632)
|
||||
(launch-height-t float :offset-assert 636)
|
||||
(expected-height float :offset-assert 640)
|
||||
(total-fly-time uint64 :offset-assert 648)
|
||||
(total-fly-time time-frame :offset-assert 648)
|
||||
(num-dying-vehicles uint8 :offset-assert 656)
|
||||
(num-dying-guards uint8 :offset-assert 657)
|
||||
(num-dying-civilians uint8 :offset-assert 658)
|
||||
(last-death-sound-play-time uint64 :offset-assert 664)
|
||||
(blur-curve basic :offset-assert 672)
|
||||
(fade-curve basic :offset-assert 676)
|
||||
(last-death-sound-play-time time-frame :offset-assert 664)
|
||||
(blur-curve curve2d-piecewise :offset-assert 672)
|
||||
(fade-curve curve-color-piecewise :offset-assert 676)
|
||||
(num-blur-segments uint8 :offset-assert 680)
|
||||
(shook-camera? basic :offset-assert 684)
|
||||
(hit-wall? basic :offset-assert 688)
|
||||
(killed-everything? basic :offset-assert 696)
|
||||
(explode-sound uint32 :offset-assert 700)
|
||||
(explode-wall-sound uint32 :offset-assert 704)
|
||||
(played-trail? basic :offset-assert 708)
|
||||
(smoke-trail basic :offset-assert 712)
|
||||
(killed-objects UNKNOWN 64 :offset-assert 720)
|
||||
(shook-camera? symbol :offset-assert 684)
|
||||
(hit-wall? symbol :offset-assert 688)
|
||||
(killed-everything? symbol :offset 696)
|
||||
(explode-sound sound-id :offset-assert 700)
|
||||
(explode-wall-sound sound-id :offset-assert 704)
|
||||
(played-trail? symbol :offset-assert 708)
|
||||
(smoke-trail sparticle-subsampler :offset-assert 712)
|
||||
(killed-objects handle 64 :offset-assert 720)
|
||||
(num-killed-objects int32 :offset-assert 1232)
|
||||
(last-kill-time uint64 :offset-assert 1240)
|
||||
(last-kill-time time-frame :offset-assert 1240)
|
||||
)
|
||||
:method-count-assert 60
|
||||
:size-assert #x4e0
|
||||
:flag-assert #x3c046004e0
|
||||
(:methods
|
||||
(gun-dark-3-nuke-method-41 () none) ;; 41
|
||||
(gun-dark-3-nuke-method-51 () none) ;; 51
|
||||
(gun-dark-3-nuke-method-52 () none) ;; 52
|
||||
(gun-dark-3-nuke-method-53 () none) ;; 53
|
||||
(gun-dark-3-nuke-method-54 () none) ;; 54
|
||||
(gun-dark-3-nuke-method-55 () none) ;; 55
|
||||
(gun-dark-3-nuke-method-56 () none) ;; 56
|
||||
(gun-dark-3-nuke-method-57 () none) ;; 57
|
||||
(gun-dark-3-nuke-method-58 () none) ;; 58
|
||||
(gun-dark-3-nuke-method-59 () none) ;; 59
|
||||
)
|
||||
(:state-methods
|
||||
wait-for-alive ;; 50
|
||||
impact-small ;; 47
|
||||
impact-embedded ;; 49
|
||||
impact ;; 22
|
||||
impact-dud ;; 48
|
||||
launch-3 ;; 46
|
||||
launch-2 ;; 45
|
||||
launch-1 ;; 44
|
||||
launch-0 ;; 43
|
||||
undefined ;; 41, not defined
|
||||
launching-base-state ;; 42
|
||||
launch-0 ;; 43
|
||||
launch-1 ;; 44
|
||||
launch-2 ;; 45
|
||||
launch-3 ;; 46
|
||||
impact-small ;; 47
|
||||
impact-dud ;; 48
|
||||
impact-embedded ;; 49
|
||||
wait-for-alive ;; 50
|
||||
)
|
||||
(:methods
|
||||
(set-launch-height! (_type_) none) ;; 51
|
||||
(do-blur-effect (_type_) none) ;; 52
|
||||
(do-white-screen-effect (_type_) none) ;; 53
|
||||
(count-casualties (_type_) none) ;; 54
|
||||
(send-attack! (_type_ process-focusable) none) ;; 55
|
||||
(play-death-sounds (_type_) none) ;; 56
|
||||
(do-camera-shake (_type_) none) ;; 57
|
||||
(do-vibration (_type_) none) ;; 58
|
||||
(check-for-impact (_type_) none) ;; 59
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gravity-spinner (process)
|
||||
((cached-damage float :offset-assert 128)
|
||||
(end-time uint64 :offset-assert 136)
|
||||
(time-subtract uint64 :offset-assert 144)
|
||||
(parent-hand uint64 :offset-assert 152)
|
||||
(end-time time-frame :offset-assert 136)
|
||||
(time-subtract time-frame :offset-assert 144)
|
||||
(parent-hand handle :offset-assert 152)
|
||||
(rotation-accel vector :inline :offset-assert 160)
|
||||
(original-sphere-offset sphere :inline :offset-assert 176)
|
||||
(obj-radius float :offset-assert 192)
|
||||
(was-hit-previously? basic :offset-assert 196)
|
||||
(was-hit-previously? symbol :offset-assert 196)
|
||||
(ground-height float :offset-assert 200)
|
||||
(next-ground-probe-time uint64 :offset-assert 208)
|
||||
(next-ground-probe-time time-frame :offset-assert 208)
|
||||
)
|
||||
:method-count-assert 25
|
||||
:size-assert #xd8
|
||||
:flag-assert #x19006000d8
|
||||
(:methods
|
||||
(gravity-spinner-method-16 () none) ;; 16
|
||||
(gravity-spinner-method-17 () none) ;; 17
|
||||
(gravity-spinner-method-18 () none) ;; 18
|
||||
(gravity-spinner-method-19 () none) ;; 19
|
||||
(gravity-spinner-method-20 () none) ;; 20
|
||||
(gravity-spinner-method-21 () none) ;; 21
|
||||
(gravity-spinner-method-22 () none) ;; 22
|
||||
(gravity-spinner-method-23 () none) ;; 23
|
||||
(gravity-spinner-method-24 () none) ;; 24
|
||||
)
|
||||
(:state-methods
|
||||
zero-g ;; 14
|
||||
zero-g-vehicle ;; 15
|
||||
)
|
||||
(:methods
|
||||
(gravity-spinner-method-16 (_type_ vector vector) none) ;; 16
|
||||
(update-rotation (_type_ symbol) none) ;; 17
|
||||
(gravity-spinner-method-18 (_type_ process) float) ;; 18
|
||||
(handle-impact (_type_ symbol) vector) ;; 19
|
||||
(probe-ground (_type_) none) ;; 20
|
||||
(get-float-speed (_type_) float) ;; 21
|
||||
(gravity-spinner-method-22 (_type_) none) ;; 22
|
||||
(spawn-part (_type_) none) ;; 23
|
||||
(rotate! (_type_ quaternion) none) ;; 24
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gravity-ring (process-drawable)
|
||||
((start-pos vector :inline :offset-assert 208)
|
||||
(jmod-outer joint-mod-add-local :inline :offset-assert 224)
|
||||
@ -36834,67 +36806,68 @@
|
||||
(ring-scale-t float :offset-assert 352)
|
||||
(current-radius float :offset-assert 356)
|
||||
(max-radius float :offset-assert 360)
|
||||
(reverse? basic :offset-assert 364)
|
||||
(reverse? symbol :offset-assert 364)
|
||||
(total-time float :offset-assert 368)
|
||||
(ring-width float :offset-assert 372)
|
||||
(stop-time uint64 :offset-assert 376)
|
||||
(stop-time time-frame :offset-assert 376)
|
||||
)
|
||||
:method-count-assert 22
|
||||
:size-assert #x180
|
||||
:flag-assert #x1601000180
|
||||
(:methods
|
||||
(gravity-ring-method-21 () none) ;; 21
|
||||
)
|
||||
(:state-methods
|
||||
expand ;; 20
|
||||
)
|
||||
(:methods
|
||||
(gravity-ring-method-21 (_type_) none) ;; 21
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
#|
|
||||
(deftype gun-gravity (process-drawable)
|
||||
((current-radius float :offset-assert 200)
|
||||
(max-radius float :offset-assert 204)
|
||||
(lowest-y float :offset-assert 208)
|
||||
(start-pos vector :inline :offset-assert 224)
|
||||
(total-time float :offset-assert 240)
|
||||
(ring-closest uint64 :offset-assert 248)
|
||||
(ring-furthest uint64 :offset-assert 256)
|
||||
(gravity-sound uint32 :offset-assert 264)
|
||||
(ring-closest handle :offset-assert 248)
|
||||
(ring-furthest handle :offset-assert 256)
|
||||
(gravity-sound sound-id :offset-assert 264)
|
||||
)
|
||||
:method-count-assert 25
|
||||
:size-assert #x10c
|
||||
:flag-assert #x190090010c
|
||||
(:methods
|
||||
(gun-gravity-method-21 () none) ;; 21
|
||||
(gun-gravity-method-22 () none) ;; 22
|
||||
(gun-gravity-method-23 () none) ;; 23
|
||||
(gun-gravity-method-24 () none) ;; 24
|
||||
)
|
||||
(:state-methods
|
||||
expand ;; 20
|
||||
)
|
||||
(:methods
|
||||
(gun-gravity-method-21 (_type_) none) ;; 21
|
||||
(gun-gravity-method-22 (_type_ symbol) none) ;; 22
|
||||
(spawn-gravity-spinner (_type_ process) (pointer gravity-spinner)) ;; 23
|
||||
(gun-gravity-method-24 (_type_) none) ;; 24
|
||||
)
|
||||
)
|
||||
|#
|
||||
|
||||
;; (define-extern sparticle-lightning-2d-spline-align-plus-rotz function)
|
||||
;; (define-extern gun-fire-dark-1 function)
|
||||
;; (define-extern gun-dark-3-sphere-init-by-other function)
|
||||
;; (define-extern *last-active-nuke* object)
|
||||
;; (define-extern gun-dark-reaction function)
|
||||
;; (define-extern nuke-move function)
|
||||
(define-extern market-object type)
|
||||
(define-extern fruit-stand type)
|
||||
(define-extern missile-bot type)
|
||||
|
||||
(define-extern sparticle-lightning-2d-spline-align-plus-rotz (function object sparticle-cpuinfo sprite-vec-data-2d object none))
|
||||
(define-extern gun-fire-dark-1 (function (pointer process) :behavior target))
|
||||
(define-extern gun-dark-3-sphere-init-by-other (function gun-dark-3-sphere-init-params object :behavior gun-dark-3-sphere))
|
||||
(define-extern *last-active-nuke* last-active-nuke-info)
|
||||
(define-extern gun-dark-reaction (function control-info collide-query vector vector collide-status))
|
||||
(define-extern nuke-move (function object :behavior gun-dark-3-nuke))
|
||||
(define-extern target-gun-can-fire-dark? (function pickup-type symbol :behavior target))
|
||||
;; (define-extern gun-fire-dark-3 function)
|
||||
;; (define-extern process-drawable-shock-effect-bullseye function) ;; (function process-focusable process-focusable matrix int sparticle-launcher sparticle-launcher sparticle-launcher none)
|
||||
;; (define-extern gun-dark-shot-init-fizzle function) ;; (function vector none :behavior gun-dark-shot)
|
||||
;; (define-extern *gravity-origin-pos* object)
|
||||
;; (define-extern gravity-spinner-init-by-other function)
|
||||
;; (define-extern zero-g-wait-for-land function)
|
||||
;; (define-extern *zero-g-fake-attack-vec* object)
|
||||
;; (define-extern *gun-gravity-shadow-control* shadow-control)
|
||||
;; (define-extern gravity-ring-init-by-other function)
|
||||
;; (define-extern gun-gravity-init-by-other function)
|
||||
;; (define-extern gun-fire-dark-2 function)
|
||||
(define-extern gun-fire-dark-3 (function (pointer process) :behavior target))
|
||||
(define-extern process-drawable-shock-effect-bullseye (function process-focusable process-focusable lightning-spec (function lightning-tracker none) sparticle-launcher sparticle-launcher sparticle-launcher none))
|
||||
(define-extern gun-dark-shot-init-fizzle (function vector none :behavior gun-dark-shot))
|
||||
(define-extern *gravity-origin-pos* vector)
|
||||
(define-extern gravity-spinner-init-by-other (function handle object time-frame object :behavior gravity-spinner))
|
||||
(define-extern zero-g-wait-for-land (function object :behavior gravity-spinner))
|
||||
(define-extern *zero-g-fake-attack-vec* vector)
|
||||
(define-extern *gun-gravity-shadow-control* shadow-control)
|
||||
(define-extern gravity-ring-init-by-other (function vector symbol float float float time-frame object :behavior gravity-ring))
|
||||
(define-extern gun-gravity-init-by-other (function vector vector object :behavior gun-gravity))
|
||||
(define-extern gun-fire-dark-2 (function (pointer process) :behavior target))
|
||||
(define-extern target-gun-fire-dark (function pickup-type (pointer process) :behavior target))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -37443,45 +37416,45 @@
|
||||
)
|
||||
|
||||
(define-extern *spawn-actors* symbol)
|
||||
;; (define-extern *compact-actors* object) ;; symbol
|
||||
;; (define-extern *vis-actors* object) ;; symbol
|
||||
(define-extern *compact-actors* symbol)
|
||||
(define-extern *vis-actors* symbol)
|
||||
(define-extern entity-by-name (function string entity))
|
||||
(define-extern entity-by-type (function type entity-actor))
|
||||
(define-extern entity-by-aid (function uint entity))
|
||||
(define-extern entity-actor-from-level-name (function symbol entity-actor))
|
||||
;; (define-extern entity-nav-mesh-by-aid function) ;; (function actor-id entity-nav-mesh)
|
||||
;; (define-extern nav-mesh-from-res-tag function) ;; (function entity symbol int nav-mesh)
|
||||
;; (define-extern entity-by-meters function) ;; (function float float float entity-actor)
|
||||
;; (define-extern process-by-ename function) ;; (function string process)
|
||||
;; (define-extern entity-process-count function) ;; (function symbol int)
|
||||
;; (define-extern entity-count function) ;; (function int)
|
||||
;; (define-extern entity-remap-names function) ;; (function pair none)
|
||||
;; (define-extern process-status-bits function) ;; (function process symbol none)
|
||||
(define-extern entity-nav-mesh-by-aid (function actor-id entity-nav-mesh))
|
||||
(define-extern nav-mesh-from-res-tag (function entity symbol int nav-mesh))
|
||||
(define-extern entity-by-meters (function float float float entity-actor))
|
||||
(define-extern process-by-ename (function string process))
|
||||
(define-extern entity-process-count (function symbol int))
|
||||
(define-extern entity-count (function int))
|
||||
(define-extern entity-remap-names (function pair none))
|
||||
(define-extern process-status-bits (function process symbol none))
|
||||
(define-extern process-entity-set! (function process entity entity))
|
||||
(define-extern process-task-mask (function process task-mask))
|
||||
;; (define-extern update-actor-vis-box function) ;; (function process-drawable vector vector none)
|
||||
;; (define-extern expand-bounding-box function) ;; (function vector vector vector vector none)
|
||||
;; (define-extern expand-bounding-box-from-nav-meshes function)
|
||||
;; (define-extern expand-vis-box-with-point function) ;; (function entity vector none)
|
||||
;; (define-extern *debug-actor-info* debug-actor-info) ;; debug-actor-info
|
||||
;; (define-extern *pid-string* object) ;; string
|
||||
;; (define-extern debug-actor function) ;; (function string none)
|
||||
;; (define-extern debug-actor-process function)
|
||||
;; (define-extern draw-actor-marks function) ;; (function process none)
|
||||
(define-extern update-actor-vis-box (function process-drawable vector vector none))
|
||||
(define-extern expand-bounding-box (function vector vector vector vector none))
|
||||
(define-extern expand-bounding-box-from-nav-meshes (function entity vector vector object))
|
||||
(define-extern expand-vis-box-with-point (function entity vector none))
|
||||
(define-extern *debug-actor-info* debug-actor-info)
|
||||
(define-extern *pid-string* string)
|
||||
(define-extern debug-actor (function string none))
|
||||
(define-extern debug-actor-process (function process none))
|
||||
(define-extern draw-actor-marks (function process none))
|
||||
(define-extern init-entity (function process entity-actor type none))
|
||||
;; (define-extern entity-deactivate-handler function) ;; (function process entity-actor none)
|
||||
;; (define-extern check-for-rougue-process function) ;; (function process int int level none)
|
||||
;; (define-extern process-drawable-scale-from-entity! function) ;; (function process-drawable entity none)
|
||||
(define-extern entity-deactivate-handler (function process entity-actor none))
|
||||
(define-extern check-for-rougue-process (function process int int level none))
|
||||
(define-extern process-drawable-scale-from-entity! (function process-drawable entity none))
|
||||
(define-extern process-drawable-from-entity! (function process-drawable entity-actor none))
|
||||
(define-extern reset-actors (function symbol none))
|
||||
(define-extern reset-cameras (function none))
|
||||
(define-extern entity-birth-no-kill (function entity process))
|
||||
;; (define-extern entity-task-complete-on function) ;; (function entity none)
|
||||
;; (define-extern entity-task-complete-off function) ;; (function entity none)
|
||||
(define-extern entity-task-complete-on (function entity none))
|
||||
(define-extern entity-task-complete-off (function entity none))
|
||||
(define-extern process-entity-status! (function process entity-perm-status symbol entity-perm-status))
|
||||
(define-extern find-nearest-entity (function vector type entity))
|
||||
;; (define-extern entity-speed-test function) ;; (function string entity)
|
||||
;; (define-extern dump-entity-remap function) ;; (function object object none)
|
||||
(define-extern entity-speed-test (function string entity))
|
||||
(define-extern dump-entity-remap (function object object none))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; path ;;
|
||||
|
@ -166,5 +166,15 @@
|
||||
[8, "(function string object :behavior process)"],
|
||||
[12, "(function object :behavior target)"]
|
||||
],
|
||||
"gun-yellow-shot": [[59, "(function handle object :behavior process)"]]
|
||||
"gun-yellow-shot": [[59, "(function handle object :behavior process)"]],
|
||||
"gun-dark-shot": [
|
||||
[25, "(function collide-shape-prim none :behavior gravity-spinner)"],
|
||||
[34, "(function handle float object :behavior process)"]
|
||||
],
|
||||
"entity": [
|
||||
[11, "(function process object)"],
|
||||
[16, "(function process object)"],
|
||||
[57, "(function process object)"],
|
||||
[61, "(function process object)"]
|
||||
]
|
||||
}
|
||||
|
@ -14,7 +14,8 @@
|
||||
"wings": "jakb-ag",
|
||||
"lightjak-shield": "jakb-ag",
|
||||
"freeze-screen": "collectables-ag",
|
||||
"red-3-sphere": "gun-ag"
|
||||
"red-3-sphere": "gun-ag",
|
||||
"gun-dark-3-sphere": "gun-ag"
|
||||
},
|
||||
|
||||
// remap names for types in an entire file (higher priority)
|
||||
|
@ -114,7 +114,6 @@
|
||||
"(method 33 rub-tower)",
|
||||
"(method 261 crimson-guard)",
|
||||
"(anon-function 25 volcanox-obs)",
|
||||
"find-nearest-entity",
|
||||
"foreground-draw-hud"
|
||||
],
|
||||
|
||||
@ -354,7 +353,9 @@
|
||||
"(method 11 rigid-body-queue)": [0, 6, 7, 9],
|
||||
"(method 10 rigid-body-queue)": [10, 34, 37],
|
||||
"(method 9 los-control)": [0, 43],
|
||||
"load-game-text-info": [19, 20, 21]
|
||||
"load-game-text-info": [19, 20, 21],
|
||||
"draw-actor-marks": [8],
|
||||
"find-nearest-entity": [7, 9]
|
||||
},
|
||||
|
||||
// Sometimes the game might use format strings that are fetched dynamically,
|
||||
|
@ -457,5 +457,38 @@
|
||||
["L443", "uint64", true],
|
||||
["L405", "attack-info"],
|
||||
["L450", "uint64", true]
|
||||
]
|
||||
],
|
||||
"gun-dark-shot": [
|
||||
["L824", "uint64", true],
|
||||
["L827", "uint64", true],
|
||||
["L823", "uint64", true],
|
||||
["L826", "uint64", true],
|
||||
["L828", "uint64", true],
|
||||
["L829", "uint64", true],
|
||||
["L825", "uint64", true],
|
||||
["L830", "uint64", true],
|
||||
["L707", "uint64", true],
|
||||
["L704", "uint64", true],
|
||||
["L702", "uint64", true],
|
||||
["L701", "uint64", true],
|
||||
["L700", "uint64", true],
|
||||
["L710", "uint64", true],
|
||||
["L648", "attack-info"],
|
||||
["L647", "attack-info"],
|
||||
["L638", "attack-info"],
|
||||
["L637", "attack-info"],
|
||||
["L639", "attack-info"],
|
||||
["L708", "uint64", true],
|
||||
["L643", "attack-info"],
|
||||
["L644", "attack-info"],
|
||||
["L712", "uint64", true],
|
||||
["L711", "uint64", true],
|
||||
["L709", "uint64", true],
|
||||
["L664", "attack-info"],
|
||||
["L703", "uint64", true],
|
||||
["L699", "uint64", true],
|
||||
["L705", "uint64", true],
|
||||
["L706", "uint64", true]
|
||||
],
|
||||
"gun-part": [["L537", "(pointer rgba)", 36]]
|
||||
}
|
||||
|
@ -487,7 +487,12 @@
|
||||
[16, "vector"],
|
||||
[1584, "collide-query"]
|
||||
],
|
||||
"(method 19 gun-red-2-shockwave)": [[16, "collide-query"]],
|
||||
"(method 19 gun-red-2-shockwave)": [
|
||||
[16, "collide-query"],
|
||||
[576, "vector"],
|
||||
[624, "vector"],
|
||||
[592, "vector"]
|
||||
],
|
||||
"(method 23 gun-red-2-shockwave)": [[32, "vector"]],
|
||||
"(method 24 gun-red-2-shockwave)": [[16, "vector"]],
|
||||
"gun-fire-red-2": [[16, "gun-red-2-shockwave-init-params"]],
|
||||
@ -497,5 +502,48 @@
|
||||
[128, "vector"],
|
||||
[1696, "vector"]
|
||||
],
|
||||
"(method 26 gun-red-shot)": [[16, "bounding-box"]]
|
||||
"(method 26 gun-red-shot)": [[16, "bounding-box"]],
|
||||
"gun-dark-reaction": [[112, "vector"]],
|
||||
"gun-fire-red-1": [
|
||||
[16, "vector"],
|
||||
[32, "event-message-block"],
|
||||
[112, "vector"]
|
||||
],
|
||||
"(trans expand gun-gravity)": [
|
||||
[16, "vector"],
|
||||
[32, "vector"],
|
||||
[48, "vector"],
|
||||
[80, "collide-query"],
|
||||
[624, "matrix"]
|
||||
],
|
||||
"gun-fire-dark-3": [[16, "projectile-init-by-other-params"]],
|
||||
"(trans moving gun-dark-shot)": [[16, "vector"]],
|
||||
"(enter impact gun-dark-shot)": [
|
||||
[192, ["array", "collide-shape", 384]],
|
||||
[96, "vector"]
|
||||
],
|
||||
"gravity-spinner-init-by-other": [[32, "vector"]],
|
||||
"(code zero-g gravity-spinner)": [[112, "vector"]],
|
||||
"(method 25 gun-dark-3-nuke)": [[16, "matrix"]],
|
||||
"(code impact-dud gun-dark-3-nuke)": [[16, "explosion-init-params"]],
|
||||
"(method 54 gun-dark-3-nuke)": [
|
||||
[32, ["array", "collide-shape", 384]],
|
||||
[16, "vector"]
|
||||
],
|
||||
"(trans impact gun-dark-3-nuke)": [
|
||||
[96, "gun-dark-3-sphere-init-params"],
|
||||
[128, "gun-dark-3-sphere-init-params"]
|
||||
],
|
||||
"(method 19 gravity-spinner)": [
|
||||
[176, ["array", "collide-shape", 384]],
|
||||
[128, "vector"],
|
||||
[112, "vector"],
|
||||
[1712, "vector"],
|
||||
[2288, "vector"]
|
||||
],
|
||||
"(method 16 gravity-spinner)": [[32, "vector"]],
|
||||
"(method 22 gun-gravity)": [
|
||||
[112, ["array", "collide-shape", 384]],
|
||||
[16, "vector"]
|
||||
]
|
||||
}
|
||||
|
@ -3090,7 +3090,10 @@
|
||||
[707, "v0", "sound-rpc-set-param"],
|
||||
[586, "v0", "sound-rpc-set-param"]
|
||||
],
|
||||
"(trans play-anim scene-player)": [[66, "a0", "process-drawable"]],
|
||||
"(trans play-anim scene-player)": [
|
||||
[71, "v1", "process-drawable"],
|
||||
[78, "v1", "process-drawable"]
|
||||
],
|
||||
"(event play-anim scene-player)": [
|
||||
[11, "t9", "(function scene-player none)"]
|
||||
],
|
||||
@ -3379,8 +3382,8 @@
|
||||
[20, "a0", "process-focusable"]
|
||||
],
|
||||
"scene-player-init": [
|
||||
[44, "a0", "(array scene)"],
|
||||
[37, "s5", "(array scene)"]
|
||||
[[37, 44], "s5", "(array scene)"],
|
||||
[83, "v0", "(array scene)"]
|
||||
],
|
||||
"(method 34 process-taskable)": [
|
||||
[58, "v0", "joint"],
|
||||
@ -3486,12 +3489,15 @@
|
||||
[52, "v1", "collide-shape-prim"],
|
||||
[62, "s2", "gun-yellow-shot-2"],
|
||||
[58, "v1", "gun-yellow-shot-2"],
|
||||
[68, "s2", "gun-yellow-shot-2"]
|
||||
[68, "s2", "gun-yellow-shot-2"],
|
||||
[[9, 66], "s3", "handle"]
|
||||
],
|
||||
"gun-yellow-shot-do-deflect": [
|
||||
[134, "s1", "process-focusable"],
|
||||
[178, "s1", "process-focusable"],
|
||||
["_stack_", 136, "handle"]
|
||||
["_stack_", 136, "handle"],
|
||||
["_stack_", 1716, "float"],
|
||||
["_stack_", 1748, "float"]
|
||||
],
|
||||
"gun-fire-yellow-1": [[33, "v0", "process"]],
|
||||
"gun-fire-yellow-2": [[33, "v0", "process"]],
|
||||
@ -3523,7 +3529,11 @@
|
||||
[59, "a0", "process-focusable"],
|
||||
[63, "a0", "process-focusable"],
|
||||
[82, "a0", "process-focusable"],
|
||||
[85, "a0", "process-focusable"]
|
||||
[85, "a0", "process-focusable"],
|
||||
["_stack_", 1688, "float"],
|
||||
["_stack_", 1692, "float"],
|
||||
["_stack_", 1752, "float"],
|
||||
["_stack_", 1756, "float"]
|
||||
],
|
||||
"(method 47 gun-red-3-grenade)": [
|
||||
[53, "s1", "process-focusable"],
|
||||
@ -3541,18 +3551,15 @@
|
||||
[246, "s1", "process-focusable"],
|
||||
[436, "gp", "process-focusable"],
|
||||
[440, "a0", "process-focusable"],
|
||||
["_stack_", 28, "float"]
|
||||
["_stack_", 28, "float"],
|
||||
[168, "gp", "process-focusable"],
|
||||
[314, "s1", "process-focusable"]
|
||||
],
|
||||
"gun-fire-red-1": [
|
||||
[147, "v1", "manipy"],
|
||||
[191, "v1", "manipy"],
|
||||
[194, "v1", "manipy"]
|
||||
// decompiler hang
|
||||
// [
|
||||
// 197,
|
||||
// "v1",
|
||||
// "manipy"
|
||||
// ]
|
||||
[194, "v1", "manipy"],
|
||||
[197, "v1", "manipy"]
|
||||
],
|
||||
"(method 23 gun-red-shot)": [[10, "s4", "process-focusable"]],
|
||||
"(method 26 gun-red-shot)": [
|
||||
@ -3561,5 +3568,250 @@
|
||||
[92, "a0", "connection"],
|
||||
[93, "a0", "collide-shape"]
|
||||
],
|
||||
"(trans charging gun-red-2-shockwave)": [[6, "a1", "process-drawable"]]
|
||||
"(trans charging gun-red-2-shockwave)": [[6, "a1", "process-drawable"]],
|
||||
"gun-fire-dark-1": [[38, "v0", "process"]],
|
||||
"(event active gun-dark-3-sphere)": [
|
||||
[[3, 35], "v1", "gun-dark-3-sphere-init-params"]
|
||||
],
|
||||
"gun-fire-dark-3": [[64, "v0", "process"]],
|
||||
"(exit startup gun-dark-shot)": [[20, "v0", "sound-rpc-set-param"]],
|
||||
"(code startup gun-dark-shot)": [[88, "a1", "process-focusable"]],
|
||||
"(enter moving gun-dark-shot)": [[22, "a1", "process-focusable"]],
|
||||
"(trans moving gun-dark-shot)": [
|
||||
[27, "s2", "process-focusable"],
|
||||
[39, "a0", "process-focusable"],
|
||||
[42, "a0", "process-focusable"]
|
||||
],
|
||||
"(enter impact gun-dark-shot)": [
|
||||
[245, "s1", "process-focusable"],
|
||||
[256, "s1", "process-focusable"],
|
||||
[262, "s1", "process-focusable"],
|
||||
[201, "v0", "(array float)"]
|
||||
],
|
||||
"(method 20 gravity-spinner)": [
|
||||
[19, "s5", "process-focusable"],
|
||||
[63, "s5", "process-focusable"]
|
||||
],
|
||||
"(method 21 gravity-spinner)": [
|
||||
[19, "s5", "process-focusable"],
|
||||
[26, "s5", "process-focusable"]
|
||||
],
|
||||
"(anon-function 34 gun-dark-shot)": [
|
||||
[134, "s5", "process-focusable"],
|
||||
[137, "s5", "process-focusable"],
|
||||
[141, "s5", "process-focusable"],
|
||||
[144, "s5", "process-focusable"],
|
||||
[162, "s5", "process-focusable"],
|
||||
[167, "s5", "process-focusable"],
|
||||
[170, "s5", "process-focusable"]
|
||||
],
|
||||
"gravity-spinner-init-by-other": [
|
||||
[33, "gp", "process-focusable"],
|
||||
[39, "gp", "process-focusable"],
|
||||
[47, "gp", "process-focusable"],
|
||||
[54, "gp", "process-focusable"],
|
||||
[69, "gp", "process-focusable"],
|
||||
[73, "gp", "process-focusable"],
|
||||
[77, "gp", "process-focusable"],
|
||||
[94, "gp", "process-focusable"],
|
||||
[100, "gp", "process-focusable"],
|
||||
[113, "gp", "process-focusable"],
|
||||
[144, "v1", "float"],
|
||||
[182, "v1", "float"]
|
||||
],
|
||||
"(code zero-g gravity-spinner)": [
|
||||
[71, "gp", "process-focusable"],
|
||||
[100, "gp", "process-focusable"],
|
||||
[104, "gp", "process-focusable"],
|
||||
[137, "gp", "process-focusable"],
|
||||
[144, "gp", "process-focusable"],
|
||||
[165, "gp", "process-focusable"],
|
||||
[174, "v1", "collide-shape-moving"],
|
||||
[262, "gp", "process-focusable"],
|
||||
[270, "gp", "process-focusable"],
|
||||
[285, "gp", "process-focusable"],
|
||||
[176, "v1", "collide-shape-moving"]
|
||||
],
|
||||
"(enter zero-g gravity-spinner)": [[17, "v1", "float"]],
|
||||
"(event zero-g gravity-spinner)": [
|
||||
[105, "a0", "attack-info"],
|
||||
[109, "v1", "attack-info"],
|
||||
[168, "s4", "process-drawable"],
|
||||
[170, "s4", "process-drawable"],
|
||||
[182, "s4", "process-drawable"],
|
||||
[184, "s4", "process-drawable"],
|
||||
[177, "s4", "process-drawable"],
|
||||
["_stack_", 36, "float"]
|
||||
],
|
||||
"zero-g-wait-for-land": [
|
||||
[22, "s5", "process-focusable"],
|
||||
[26, "s5", "process-focusable"],
|
||||
[33, "s5", "process-focusable"],
|
||||
[42, "s5", "process-focusable"],
|
||||
[52, "s5", "process-focusable"],
|
||||
[53, "a0", "collide-shape-moving"],
|
||||
[61, "s5", "process-focusable"],
|
||||
[72, "s5", "process-focusable"],
|
||||
[84, "s5", "process-focusable"],
|
||||
[99, "s5", "process-focusable"],
|
||||
[108, "s5", "process-focusable"]
|
||||
],
|
||||
"(enter zero-g-vehicle gravity-spinner)": [[17, "v1", "float"]],
|
||||
"(enter launch-0 gun-dark-3-nuke)": [[15, "t9", "(function none)"]],
|
||||
"(enter launch-1 gun-dark-3-nuke)": [[12, "t9", "(function none)"]],
|
||||
"(enter launch-2 gun-dark-3-nuke)": [[18, "t9", "(function none)"]],
|
||||
"(code impact-dud gun-dark-3-nuke)": [[39, "a0", "process"]],
|
||||
"(method 54 gun-dark-3-nuke)": [[47, "s1", "process-focusable"]],
|
||||
"(method 22 gravity-spinner)": [
|
||||
[18, "s3", "process-focusable"],
|
||||
[24, "s3", "process-focusable"],
|
||||
[29, "s3", "process-focusable"]
|
||||
],
|
||||
"(method 23 gravity-spinner)": [
|
||||
[25, "gp", "process-focusable"],
|
||||
[29, "gp", "process-focusable"],
|
||||
[35, "gp", "process-focusable"],
|
||||
[44, "gp", "process-focusable"]
|
||||
],
|
||||
"(method 19 gravity-spinner)": [
|
||||
[40, "s5", "process-focusable"],
|
||||
[68, "s5", "process-focusable"],
|
||||
[377, "s5", "process-focusable"],
|
||||
[435, "s5", "process-focusable"],
|
||||
[113, "a0", "process-focusable"],
|
||||
[124, "a0", "process-focusable"],
|
||||
[131, "a0", "process-focusable"],
|
||||
[134, "a0", "process-focusable"],
|
||||
[200, "s5", "process-focusable"],
|
||||
["_stack_", 148, "process"],
|
||||
["_stack_", 156, "float"],
|
||||
["_stack_", 160, "float"],
|
||||
["_stack_", 172, "float"],
|
||||
["_stack_", 1736, "float"],
|
||||
["_stack_", 2312, "float"]
|
||||
],
|
||||
"(method 16 gravity-spinner)": [
|
||||
[22, "s4", "process-focusable"],
|
||||
[43, "s4", "process-focusable"]
|
||||
],
|
||||
"(method 17 gravity-spinner)": [
|
||||
[101, "s4", "process-focusable"],
|
||||
[127, "s4", "process-focusable"],
|
||||
[149, "s4", "process-focusable"]
|
||||
],
|
||||
"(method 24 gravity-spinner)": [
|
||||
[19, "s5", "process-focusable"],
|
||||
[26, "s5", "process-focusable"],
|
||||
[42, "s5", "process-focusable"],
|
||||
[47, "s5", "process-focusable"],
|
||||
[52, "s5", "process-focusable"],
|
||||
[55, "s5", "process-focusable"],
|
||||
[66, "s5", "process-focusable"],
|
||||
[59, "s5", "process-focusable"],
|
||||
[61, "s5", "process-focusable"]
|
||||
],
|
||||
"(trans expand gun-gravity)": [
|
||||
[116, "v1", "float"],
|
||||
[149, "v1", "float"]
|
||||
],
|
||||
"(method 22 gun-gravity)": [
|
||||
[14, "v0", "process"],
|
||||
[35, "v1", "gravity-ring"],
|
||||
[36, "v1", "gravity-ring"],
|
||||
[[51, 53], "v1", "gravity-ring"],
|
||||
[101, "s1", "process-focusable"],
|
||||
[113, "s1", "process-focusable"]
|
||||
],
|
||||
"process-drawable-shock-effect-bullseye": [[85, "a0", "lightning-tracker"]],
|
||||
"(method 14 level-group)": [
|
||||
[62, "a0", "entity-actor"],
|
||||
[66, "a0", "entity-actor"]
|
||||
],
|
||||
"(method 23 level-group)": [[28, "v0", "(inline-array vector)"]],
|
||||
"expand-bounding-box-from-nav-meshes": [["_stack_", 16, "res-tag"]],
|
||||
"expand-vis-box-with-point": [[10, "v0", "(inline-array vector)"]],
|
||||
"(method 25 level-group)": [
|
||||
[24, "s3", "entity-actor"],
|
||||
[112, "s3", "entity-actor"],
|
||||
[120, "s3", "entity-actor"],
|
||||
[143, "v0", "string"],
|
||||
[56, "v0", "string"],
|
||||
[99, "v0", "(inline-array vector)"]
|
||||
],
|
||||
"process-drawable-scale-from-entity!": [[11, "v0", "vector"]],
|
||||
"reset-actors": [
|
||||
[174, "t9", "(function level none)"],
|
||||
[162, "v0", "(function level none)"]
|
||||
],
|
||||
"process-status-bits": [[8, "s5", "process-drawable"]],
|
||||
"(method 24 level-group)": [
|
||||
[127, "v0", "(pointer actor-group)"],
|
||||
[28, "v0", "(inline-array vector)"],
|
||||
["_stack_", 28, "float"],
|
||||
["_stack_", 32, "float"]
|
||||
],
|
||||
"(method 15 level-group)": [
|
||||
[262, "s0", "process-drawable"],
|
||||
[268, "s0", "process-drawable"],
|
||||
[275, "s0", "process-drawable"],
|
||||
[277, "s0", "process-drawable"],
|
||||
[308, "s4", "process-drawable"],
|
||||
[663, "a0", "drawable-region-prim"],
|
||||
[666, "a0", "drawable-region-prim"],
|
||||
[726, "a0", "drawable-region-prim"],
|
||||
[729, "a0", "drawable-region-prim"]
|
||||
],
|
||||
"check-for-rougue-process": [
|
||||
[133, "gp", "part-tracker"],
|
||||
[157, "gp", "part-spawner"],
|
||||
[184, "v1", "process-drawable"],
|
||||
[187, "v1", "process-drawable"],
|
||||
[192, "v1", "process-drawable"],
|
||||
[199, "v1", "process-drawable"],
|
||||
[209, "v1", "process-drawable"],
|
||||
[212, "v1", "process-drawable"],
|
||||
[217, "v1", "process-drawable"],
|
||||
[224, "v1", "process-drawable"]
|
||||
],
|
||||
"draw-actor-marks": [
|
||||
[20, "gp", "process-drawable"],
|
||||
[29, "gp", "process-drawable"],
|
||||
[33, "gp", "process-drawable"],
|
||||
[40, "gp", "process-drawable"],
|
||||
[45, "gp", "process-drawable"],
|
||||
[47, "gp", "process-drawable"],
|
||||
[52, "gp", "process-drawable"],
|
||||
[54, "gp", "process-drawable"],
|
||||
[59, "gp", "process-drawable"],
|
||||
[67, "gp", "process-drawable"],
|
||||
[69, "gp", "process-drawable"],
|
||||
[78, "gp", "process-drawable"],
|
||||
[106, "gp", "process-drawable"],
|
||||
[105, "v0", "string"],
|
||||
[131, "v0", "(pointer int32)"],
|
||||
[155, "gp", "process-drawable"],
|
||||
[174, "v0", "string"],
|
||||
[187, "gp", "process-drawable"],
|
||||
[271, "gp", "process-drawable"],
|
||||
[250, "gp", "process-drawable"],
|
||||
[208, "v0", "(inline-array vector)"],
|
||||
[120, "a2", "string"]
|
||||
],
|
||||
"(anon-function 57 entity)": [
|
||||
[6, "gp", "process-drawable"],
|
||||
[8, "gp", "process-drawable"],
|
||||
[13, "gp", "process-drawable"],
|
||||
[15, "gp", "process-drawable"]
|
||||
],
|
||||
"draw-subtitle-image": [
|
||||
[[163, 194], "v1", "(pointer uint128)"],
|
||||
[[195, 199], "t0", "vector4w"],
|
||||
[[199, 206], "t0", "vector4w"],
|
||||
[[206, 213], "a2", "vector4w"],
|
||||
[[214, 220], "v1", "vector4w"],
|
||||
[[223, 254], "v1", "(pointer uint128)"],
|
||||
[[255, 266], "t0", "vector4w"],
|
||||
[[266, 273], "a1", "vector4w"],
|
||||
[[274, 280], "v1", "vector4w"]
|
||||
]
|
||||
}
|
||||
|
@ -1968,5 +1968,20 @@
|
||||
"s4-0": "i",
|
||||
"v1-7": "debris"
|
||||
}
|
||||
},
|
||||
"(enter burnt-husk gun-yellow-3-saucer)": {
|
||||
"vars": {
|
||||
"s5-0": ["name", "sound-name"]
|
||||
}
|
||||
},
|
||||
"reset-actors": {
|
||||
"vars": {
|
||||
"s5-0": ["perm", "entity-perm-status"]
|
||||
}
|
||||
},
|
||||
"(method 24 level-group)": {
|
||||
"vars": {
|
||||
"a0-9": ["enemy-option", "enemy-option"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,5 +5,7 @@
|
||||
;; name in dgo: cam-debug
|
||||
;; dgos: GAME
|
||||
|
||||
(define-extern camera-plot-float-func (function float float float float (function float float) vector4w none))
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
|
@ -341,7 +341,7 @@ Most [[process-drawable]]s have a [[collide-shape]] that represents their root t
|
||||
(send-shoves (_type_ process touching-shapes-entry float float float) symbol)
|
||||
(above-ground? (_type_ collide-query vector collide-spec float float float) symbol)
|
||||
(water-info-init! (_type_ water-info collide-action) water-info)
|
||||
(collide-shape-method-53 () none)
|
||||
(iterate-prims (_type_ (function collide-shape-prim none)) none)
|
||||
(collide-shape-method-54 () none)
|
||||
)
|
||||
)
|
||||
|
@ -60,7 +60,7 @@
|
||||
(default-loop-behavior uint64)
|
||||
)
|
||||
(:methods
|
||||
(curve2d-piecewise-method-10 (_type_ int symbol uint) none)
|
||||
(curve2d-piecewise-method-10 (_type_ int symbol int) none)
|
||||
(curve2d-piecewise-method-11 (_type_) none)
|
||||
)
|
||||
)
|
||||
@ -115,7 +115,7 @@
|
||||
)
|
||||
|
||||
|
||||
(defmethod curve2d-piecewise-method-10 ((this curve2d-piecewise) (arg0 int) (arg1 symbol) (arg2 uint))
|
||||
(defmethod curve2d-piecewise-method-10 ((this curve2d-piecewise) (arg0 int) (arg1 symbol) (arg2 int))
|
||||
(set! (-> this pts) ((method-of-type float-pair-array new) arg1 float-pair-array arg0))
|
||||
(set! (-> this default-loop-behavior) (the-as uint (if arg2
|
||||
0
|
||||
@ -456,7 +456,7 @@
|
||||
|
||||
(when (or (zero? *curve-linear-up-hold*) (!= loading-level global))
|
||||
(set! *curve-linear-up-hold* (new 'loading-level 'curve2d-piecewise))
|
||||
(curve2d-piecewise-method-10 *curve-linear-up-hold* 2 'loading-level (the-as uint #f))
|
||||
(curve2d-piecewise-method-10 *curve-linear-up-hold* 2 'loading-level (the-as int #f))
|
||||
)
|
||||
|
||||
(set! (-> *curve-linear-up-hold* pts data 0 first) 0.0)
|
||||
|
@ -1696,7 +1696,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> self sound) (sound-play-by-spec (the-as sound-spec gp-1) (new-sound-id) s5-1))
|
||||
(set! (-> self sound) (sound-play-by-spec gp-1 (new-sound-id) s5-1))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
@ -67,7 +67,7 @@
|
||||
|
||||
(when (or (zero? *water-simple-alpha-curve-in*) (!= loading-level global))
|
||||
(set! *water-simple-alpha-curve-in* (new 'loading-level 'curve2d-piecewise))
|
||||
(curve2d-piecewise-method-10 *water-simple-alpha-curve-in* 2 'loading-level (the-as uint #f))
|
||||
(curve2d-piecewise-method-10 *water-simple-alpha-curve-in* 2 'loading-level (the-as int #f))
|
||||
)
|
||||
|
||||
(set! (-> *water-simple-alpha-curve-in* pts data 0 first) 0.0)
|
||||
@ -80,7 +80,7 @@
|
||||
|
||||
(when (or (zero? *growing-curve*) (!= loading-level global))
|
||||
(set! *growing-curve* (new 'loading-level 'curve2d-piecewise))
|
||||
(curve2d-piecewise-method-10 *growing-curve* 2 'loading-level (the-as uint #f))
|
||||
(curve2d-piecewise-method-10 *growing-curve* 2 'loading-level (the-as int #f))
|
||||
)
|
||||
|
||||
(set! (-> *growing-curve* pts data 0 first) 0.0)
|
||||
@ -93,7 +93,7 @@
|
||||
|
||||
(when (or (zero? *water-simple-alpha-curve-fade-out*) (!= loading-level global))
|
||||
(set! *water-simple-alpha-curve-fade-out* (new 'loading-level 'curve2d-piecewise))
|
||||
(curve2d-piecewise-method-10 *water-simple-alpha-curve-fade-out* 2 'loading-level (the-as uint #f))
|
||||
(curve2d-piecewise-method-10 *water-simple-alpha-curve-fade-out* 2 'loading-level (the-as int #f))
|
||||
)
|
||||
|
||||
(set! (-> *water-simple-alpha-curve-fade-out* pts data 0 first) 0.0)
|
||||
|
@ -40,6 +40,7 @@
|
||||
(define-extern init-entity (function process entity-actor type none))
|
||||
(define-extern entity-by-type (function type entity-actor))
|
||||
(define-extern entity-actor-from-level-name (function symbol entity-actor))
|
||||
(define-extern birth-viewer (function process entity-actor object))
|
||||
|
||||
(define-extern *spawn-actors* symbol)
|
||||
|
||||
@ -91,7 +92,7 @@
|
||||
(task game-task :overlay-at (-> perm task))
|
||||
)
|
||||
(:methods
|
||||
(entity-links-method-9 () none)
|
||||
(birth? (_type_ vector) symbol)
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -7,3 +7,308 @@
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
;; TODO stub
|
||||
(define *entity-info* (new 'static 'boxed-array :type entity-info
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref factory-boss :method-count 31)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x8000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref flitter-spawner :method-count 22)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref bubbles-path :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x8000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref desert-chase-ring :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref bt-grunt :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref bt-roboguard :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref w-parking-spot :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref min-elevator :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref tpl-bouncer :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref veger-npc :method-count 40)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref seem-npc :method-count 40)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref krimson-wall :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref kleever-catch-lizards :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref kleever-npc :method-count 40)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref damus-npc :method-count 40)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref nav-graph :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref tizard :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref ladder :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mh-centipede :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref dark-tower :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref curve-bubbles-Shape :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-tower-door :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-grunt-egg-d :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-grunt-egg-c :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref a :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-grunt-egg-b :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-grund-egg-a :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-de-tower-undervines :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-vine-wriggler-big :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-vine-wriggler :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-twitch-blade :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-claw-finger-small :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-vein-writhing-small :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-vein-writhing-large :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-dark-eco-nodule :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-dark-eco-door :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-puffer-large :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref mhcity-puffer :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref a :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref searchlight :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref ctyn-lamp :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref burning-bush :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref sail-boat-a :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref barge :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref boat-manager :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref propa :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref city-window-a :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref cty-window-a :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref parking-spot :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref security-wall :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref cty-guard-turret :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref cty-fruit-stand :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref fruit-stand :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref torn :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
(new 'static 'entity-info
|
||||
:ptype (type-ref neon-baron :method-count 0)
|
||||
:pool '*16k-dead-pool*
|
||||
:heap-size #x4000
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(defun entity-info-lookup ((arg0 type))
|
||||
(the-as entity-info (cond
|
||||
((nonzero? (-> arg0 method-table 13))
|
||||
(-> arg0 method-table 13)
|
||||
)
|
||||
(else
|
||||
(let ((v1-1 *entity-info*))
|
||||
(dotimes (a1-0 (-> v1-1 length))
|
||||
(let ((a2-3 (-> v1-1 a1-0 ptype)))
|
||||
(when (if (logtest? (the-as int a2-3) 1)
|
||||
(= (-> arg0 symbol) a2-3)
|
||||
(= arg0 a2-3)
|
||||
)
|
||||
(set! (-> arg0 method-table 13) (the-as function (-> v1-1 a1-0)))
|
||||
(return (the-as entity-info (-> v1-1 a1-0)))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> arg0 method-table 13) #f)
|
||||
(the-as basic #f)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
File diff suppressed because it is too large
Load Diff
@ -68,7 +68,7 @@
|
||||
(radius float)
|
||||
(duration float)
|
||||
(duration-rand float)
|
||||
(sound symbol)
|
||||
(sound sound-spec)
|
||||
(delay float)
|
||||
(delay-rand float)
|
||||
)
|
||||
|
@ -33,6 +33,9 @@
|
||||
)
|
||||
)
|
||||
|
||||
(define-extern sparticle-2d-spline-align-instant (function object sparticle-cpuinfo sprite-vec-data-2d object none))
|
||||
(define-extern rot-to-particle (function degrees sprite-vec-data-2d matrix none))
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
;; TODO: stub
|
||||
|
@ -9,6 +9,7 @@
|
||||
(declare-type bsp-node structure)
|
||||
(declare-type entity-camera entity)
|
||||
(declare-type entity-nav-mesh structure)
|
||||
(declare-type entity-race-mesh entity)
|
||||
(declare-type city-level-info structure)
|
||||
|
||||
(define-extern inspect-bsp-tree (function bsp-header bsp-node none))
|
||||
@ -67,9 +68,11 @@ This probably started as a very simple structure, but now it is extremely compli
|
||||
(cam-box-idx uint16)
|
||||
(subdivide-close float :offset 160)
|
||||
(subdivide-far float)
|
||||
(race-meshes (array entity-race-mesh))
|
||||
(actor-birth-order (pointer uint32) :offset 172)
|
||||
(light-hash light-hash)
|
||||
(nav-meshes (array entity-nav-mesh))
|
||||
(actor-groups (array actor-group))
|
||||
(region-trees (array drawable-tree-region-prim) :offset 188)
|
||||
(collide-hash collide-hash :offset 196)
|
||||
(wind-array uint32 :offset 200)
|
||||
|
@ -114,6 +114,19 @@
|
||||
(movie0 16)
|
||||
(movie1 17)
|
||||
(movie2 18)
|
||||
(tm19 19)
|
||||
(tm20 20)
|
||||
(tm21 21)
|
||||
(tm22 22)
|
||||
(tm23 23)
|
||||
(tm24 24)
|
||||
(tm25 25)
|
||||
(tm26 26)
|
||||
(tm27 27)
|
||||
(tm28 28)
|
||||
(tm29 29)
|
||||
(tm30 30)
|
||||
(tm31 31)
|
||||
)
|
||||
;; ---task-mask
|
||||
|
||||
@ -475,7 +488,7 @@
|
||||
(get-level-by-heap-ptr-and-status (_type_ pointer symbol) level)
|
||||
(level-get-for-use (_type_ symbol symbol) level)
|
||||
(activate-levels! (_type_) int)
|
||||
(level-group-method-14 () none)
|
||||
(debug-print-entities (_type_ symbol type string) none)
|
||||
(debug-draw-actors (_type_ symbol) none)
|
||||
(assign-draw-indices (_type_) none)
|
||||
(actors-update (_type_) none)
|
||||
@ -484,9 +497,9 @@
|
||||
(level-get-target-inside (_type_) level)
|
||||
(init-level-system (_type_ symbol) none)
|
||||
(art-group-get-by-name (_type_ string (pointer level)) art-group)
|
||||
(level-group-method-23 () none)
|
||||
(level-group-method-24 () none)
|
||||
(level-group-method-25 () none)
|
||||
(update-vis-volumes (_type_) none)
|
||||
(level-group-method-24 (_type_) none)
|
||||
(print-volume-sizes (_type_) none)
|
||||
(status-of-level-and-borrows (_type_ symbol symbol) symbol)
|
||||
(do-nothing (_type_) none)
|
||||
(load-in-progress? (_type_) symbol)
|
||||
|
@ -14,7 +14,7 @@
|
||||
arg0
|
||||
)
|
||||
|
||||
(defun matrix-fu-compose ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 vector))
|
||||
(defun matrix-fu-compose ((arg0 matrix) (arg1 vector) (arg2 vector))
|
||||
(set! (-> arg0 fvec quad) (-> arg1 quad))
|
||||
(set! (-> arg0 uvec quad) (-> arg2 quad))
|
||||
(vector-cross! (-> arg0 rvec) arg2 arg1)
|
||||
@ -35,7 +35,7 @@
|
||||
arg0
|
||||
)
|
||||
|
||||
(defun matrix-f-u-compose ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 vector))
|
||||
(defun matrix-f-u-compose ((arg0 matrix) (arg1 vector) (arg2 vector))
|
||||
(set! (-> arg0 fvec quad) (-> arg1 quad))
|
||||
(vector-cross! (-> arg0 rvec) arg2 arg1)
|
||||
(vector-normalize! (-> arg0 rvec) 1.0)
|
||||
@ -83,10 +83,10 @@
|
||||
arg0
|
||||
)
|
||||
|
||||
(defun matrix-f-compose ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 vector))
|
||||
(defun matrix-f-compose ((arg0 matrix) (arg1 vector) (arg2 float))
|
||||
(set! (-> arg0 fvec quad) (-> arg1 quad))
|
||||
(let ((a2-1 (vector-get-unique! (new 'stack-no-clear 'vector) arg1)))
|
||||
(matrix-f-u-compose arg0 arg1 a2-1 arg3)
|
||||
(matrix-f-u-compose arg0 arg1 a2-1)
|
||||
)
|
||||
arg0
|
||||
)
|
||||
|
@ -177,7 +177,7 @@
|
||||
(mesh basic :overlay-at (-> state mesh))
|
||||
)
|
||||
(:methods
|
||||
(nav-control-method-9 () none)
|
||||
(debug-draw (_type_) none)
|
||||
(nav-control-method-10 () none)
|
||||
(find-poly-containing-point-1 (_type_ vector) nav-poly)
|
||||
(cloest-point-on-mesh (_type_ vector vector nav-poly) nav-poly)
|
||||
|
@ -210,7 +210,7 @@ Based on the implementation of point-poly-intersection?, these should likely be
|
||||
(nav-mesh-method-21 () none)
|
||||
(nav-mesh-method-22 () none)
|
||||
(nav-mesh-method-23 () none)
|
||||
(nav-mesh-method-24 () none)
|
||||
(compute-bounding-box-from-vertices (_type_ vector vector) none)
|
||||
(nav-mesh-method-25 () none)
|
||||
(nav-mesh-method-26 () none)
|
||||
(nav-mesh-method-27 () none)
|
||||
|
@ -71,6 +71,8 @@
|
||||
;; ---rigid-body-h:rigid-body-object-flag
|
||||
|
||||
(declare-type rigid-body-object basic)
|
||||
(declare-type rigid-body-queue-manager process)
|
||||
(define-extern *rigid-body-queue-manager* rigid-body-queue-manager)
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -5,5 +5,23 @@
|
||||
;; name in dgo: gun-part
|
||||
;; dgos: GAME
|
||||
|
||||
(define-extern *yellow-shot-2-trail* light-trail-composition)
|
||||
(define-extern *red-shot-3-trail* light-trail-composition)
|
||||
(define-extern *last-player-pos* vector)
|
||||
(define-extern *gun-dark-3-nuke-fade-time-small* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-blur-time-small* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-blur-curve-small* curve2d-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-fade-curve-small* curve-color-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-blur-segs-small* uint)
|
||||
(define-extern *gun-dark-3-mushroom-speed* float)
|
||||
(define-extern *gun-dark-3-mushroom-size-time* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-mushroom-size-curve-x* curve2d-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-mushroom-size-curve-y* curve2d-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-fade-time* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-blur-time* time-frame)
|
||||
(define-extern *gun-dark-3-nuke-blur-curve* curve2d-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-fade-curve* curve-color-piecewise)
|
||||
(define-extern *gun-dark-3-nuke-blur-segs* uint)
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -6,6 +6,7 @@
|
||||
;; dgos: GAME
|
||||
|
||||
(define-extern process-drawable2-shock-effect (function process-drawable process-drawable lightning-spec (function lightning-tracker none) sparticle-launcher none))
|
||||
(define-extern process-drawable-shock-effect-replace (function process-drawable lightning-spec (function lightning-tracker none) int int float none))
|
||||
|
||||
;; DECOMP BEGINS
|
||||
|
||||
|
@ -187,9 +187,9 @@
|
||||
,(cond
|
||||
((and virtual parent)
|
||||
`(begin
|
||||
(inherit-state ,new-state (the state ,parent))
|
||||
(set! (-> ,new-state parent) (the state ,parent))
|
||||
`(define-virtual-state-hook ,state-name ,defstate-type ,new-state ,(eq? virtual 'override) :event ,event :enter ,enter :trans ,trans :exit ,exit :code ,code :post ,post)
|
||||
(inherit-state ,new-state ,(if (pair? parent) `(method-of-type ,(car parent) ,(cadr parent)) `(the state ,parent)))
|
||||
(set! (-> ,new-state parent) ,(if (pair? parent) `(method-of-type ,(car parent) ,(cadr parent)) `(the state ,parent)))
|
||||
(define-virtual-state-hook ,state-name ,defstate-type ,new-state ,(eq? virtual 'override) :event ,event :enter ,enter :trans ,trans :exit ,exit :code ,code :post ,post)
|
||||
)
|
||||
)
|
||||
(virtual
|
||||
|
6
test/decompiler/reference/jak3/decompiler-macros.gc
generated
vendored
6
test/decompiler/reference/jak3/decompiler-macros.gc
generated
vendored
@ -215,9 +215,9 @@
|
||||
,(cond
|
||||
((and virtual parent)
|
||||
`(begin
|
||||
(inherit-state ,new-state (the state ,parent))
|
||||
(set! (-> ,new-state parent) (the state ,parent))
|
||||
`(define-virtual-state-hook ,state-name ,defstate-type ,new-state ,(eq? virtual 'override) :event ,event :enter ,enter :trans ,trans :exit ,exit :code ,code :post ,post)
|
||||
(inherit-state ,new-state ,(if (pair? parent) `(method-of-type ,(car parent) ,(cadr parent)) `(the state ,parent)))
|
||||
(set! (-> ,new-state parent) ,(if (pair? parent) `(method-of-type ,(car parent) ,(cadr parent)) `(the state ,parent)))
|
||||
(define-virtual-state-hook ,state-name ,defstate-type ,new-state ,(eq? virtual 'override) :event ,event :enter ,enter :trans ,trans :exit ,exit :code ,code :post ,post)
|
||||
)
|
||||
)
|
||||
(virtual
|
||||
|
2
test/decompiler/reference/jak3/engine/collide/collide-shape-h_REF.gc
generated
vendored
2
test/decompiler/reference/jak3/engine/collide/collide-shape-h_REF.gc
generated
vendored
@ -1427,7 +1427,7 @@ Most [[process-drawable]]s have a [[collide-shape]] that represents their root t
|
||||
(send-shoves (_type_ process touching-shapes-entry float float float) symbol)
|
||||
(above-ground? (_type_ collide-query vector collide-spec float float float) symbol)
|
||||
(water-info-init! (_type_ water-info collide-action) water-info)
|
||||
(collide-shape-method-53 () none)
|
||||
(iterate-prims (_type_ (function collide-shape-prim none)) none)
|
||||
(collide-shape-method-54 () none)
|
||||
)
|
||||
)
|
||||
|
10
test/decompiler/reference/jak3/engine/common-obs/curves_REF.gc
generated
vendored
10
test/decompiler/reference/jak3/engine/common-obs/curves_REF.gc
generated
vendored
@ -92,7 +92,7 @@
|
||||
(default-loop-behavior uint64)
|
||||
)
|
||||
(:methods
|
||||
(curve2d-piecewise-method-10 (_type_ int symbol uint) none)
|
||||
(curve2d-piecewise-method-10 (_type_ int symbol int) none)
|
||||
(curve2d-piecewise-method-11 (_type_) none)
|
||||
)
|
||||
)
|
||||
@ -233,7 +233,7 @@
|
||||
|
||||
;; definition for method 10 of type curve2d-piecewise
|
||||
;; WARN: Return type mismatch int vs none.
|
||||
(defmethod curve2d-piecewise-method-10 ((this curve2d-piecewise) (arg0 int) (arg1 symbol) (arg2 uint))
|
||||
(defmethod curve2d-piecewise-method-10 ((this curve2d-piecewise) (arg0 int) (arg1 symbol) (arg2 int))
|
||||
(set! (-> this pts) ((method-of-type float-pair-array new) arg1 float-pair-array arg0))
|
||||
(set! (-> this default-loop-behavior) (the-as uint (if arg2
|
||||
0
|
||||
@ -588,7 +588,7 @@
|
||||
;; failed to figure out what this is:
|
||||
(when (or (zero? *curve-linear-up-hold*) (!= loading-level global))
|
||||
(set! *curve-linear-up-hold* (new 'loading-level 'curve2d-piecewise))
|
||||
(curve2d-piecewise-method-10 *curve-linear-up-hold* 2 'loading-level (the-as uint #f))
|
||||
(curve2d-piecewise-method-10 *curve-linear-up-hold* 2 'loading-level (the-as int #f))
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
@ -657,7 +657,3 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
2
test/decompiler/reference/jak3/engine/common-obs/generic-obs_REF.gc
generated
vendored
2
test/decompiler/reference/jak3/engine/common-obs/generic-obs_REF.gc
generated
vendored
@ -2096,7 +2096,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(set! (-> self sound) (sound-play-by-spec (the-as sound-spec gp-1) (new-sound-id) s5-1))
|
||||
(set! (-> self sound) (sound-play-by-spec gp-1 (new-sound-id) s5-1))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
6
test/decompiler/reference/jak3/engine/common-obs/water_REF.gc
generated
vendored
6
test/decompiler/reference/jak3/engine/common-obs/water_REF.gc
generated
vendored
@ -64,7 +64,7 @@
|
||||
;; failed to figure out what this is:
|
||||
(when (or (zero? *water-simple-alpha-curve-in*) (!= loading-level global))
|
||||
(set! *water-simple-alpha-curve-in* (new 'loading-level 'curve2d-piecewise))
|
||||
(curve2d-piecewise-method-10 *water-simple-alpha-curve-in* 2 'loading-level (the-as uint #f))
|
||||
(curve2d-piecewise-method-10 *water-simple-alpha-curve-in* 2 'loading-level (the-as int #f))
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
@ -82,7 +82,7 @@
|
||||
;; failed to figure out what this is:
|
||||
(when (or (zero? *growing-curve*) (!= loading-level global))
|
||||
(set! *growing-curve* (new 'loading-level 'curve2d-piecewise))
|
||||
(curve2d-piecewise-method-10 *growing-curve* 2 'loading-level (the-as uint #f))
|
||||
(curve2d-piecewise-method-10 *growing-curve* 2 'loading-level (the-as int #f))
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
@ -100,7 +100,7 @@
|
||||
;; failed to figure out what this is:
|
||||
(when (or (zero? *water-simple-alpha-curve-fade-out*) (!= loading-level global))
|
||||
(set! *water-simple-alpha-curve-fade-out* (new 'loading-level 'curve2d-piecewise))
|
||||
(curve2d-piecewise-method-10 *water-simple-alpha-curve-fade-out* 2 'loading-level (the-as uint #f))
|
||||
(curve2d-piecewise-method-10 *water-simple-alpha-curve-fade-out* 2 'loading-level (the-as int #f))
|
||||
)
|
||||
|
||||
;; failed to figure out what this is:
|
||||
|
2
test/decompiler/reference/jak3/engine/entity/entity-h_REF.gc
generated
vendored
2
test/decompiler/reference/jak3/engine/entity/entity-h_REF.gc
generated
vendored
@ -77,7 +77,7 @@
|
||||
(task game-task :overlay-at (-> perm task))
|
||||
)
|
||||
(:methods
|
||||
(entity-links-method-9 () none)
|
||||
(birth? (_type_ vector) symbol)
|
||||
)
|
||||
)
|
||||
|
||||
|
2769
test/decompiler/reference/jak3/engine/entity/entity_REF.gc
generated
vendored
Normal file
2769
test/decompiler/reference/jak3/engine/entity/entity_REF.gc
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
6
test/decompiler/reference/jak3/engine/gfx/generic/lightning/lightning-h_REF.gc
generated
vendored
6
test/decompiler/reference/jak3/engine/gfx/generic/lightning/lightning-h_REF.gc
generated
vendored
@ -21,7 +21,7 @@
|
||||
(radius float)
|
||||
(duration float)
|
||||
(duration-rand float)
|
||||
(sound symbol)
|
||||
(sound sound-spec)
|
||||
(delay float)
|
||||
(delay-rand float)
|
||||
)
|
||||
@ -315,7 +315,3 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
14
test/decompiler/reference/jak3/engine/gfx/sprite/sprite-distort_REF.gc
generated
vendored
14
test/decompiler/reference/jak3/engine/gfx/sprite/sprite-distort_REF.gc
generated
vendored
@ -221,7 +221,7 @@
|
||||
(.mul.vf vf10 vf1 vf8)
|
||||
(.div.vf Q vf0 vf10 :fsf #b11 :ftf #b11)
|
||||
(TODO.VCLIP vf10 vf10)
|
||||
(b! (zero? (-> sv-16 flag-rot-sy x)) cfg-22 :delay (nop!))
|
||||
(b! (zero? (-> sv-16 flag)) cfg-22 :delay (nop!))
|
||||
(.wait.vf)
|
||||
(.mul.vf vf1 vf1 Q :mask #b111)
|
||||
(.mul.vf vf2 vf2 Q :mask #b111)
|
||||
@ -235,11 +235,11 @@
|
||||
(set! (-> sv-32 y) (+ 0.0009765625 (* 0.001953125 (+ -1840.0 (-> (the-as vector a0-3) y)))))
|
||||
)
|
||||
(set! (-> sv-32 z) 1.0)
|
||||
(when (or (< (the-as int (-> sv-16 flag-rot-sy x)) 3) (< 11 (the-as int (-> sv-16 flag-rot-sy x))))
|
||||
(format 0 "Turns = ~D!!!~%" (-> sv-16 flag-rot-sy x))
|
||||
(set! (-> sv-16 flag-rot-sy x) (the-as float #xb))
|
||||
(when (or (< (-> sv-16 flag) 3) (< 11 (-> sv-16 flag)))
|
||||
(format 0 "Turns = ~D!!!~%" (-> sv-16 flag))
|
||||
(set! (-> sv-16 flag) 11)
|
||||
)
|
||||
(set! (-> sv-32 w) (-> sv-16 flag-rot-sy x))
|
||||
(set! (-> sv-32 w) (the-as float (-> sv-16 flag)))
|
||||
(let* ((f1-4 (- (-> *math-camera* perspective uvec y)))
|
||||
(f2-4 (-> sv-32 y))
|
||||
(f4-0 (+ f2-4 (* (-> sv-48 x) f1-4)))
|
||||
@ -372,7 +372,3 @@
|
||||
(none)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
6
test/decompiler/reference/jak3/engine/gfx/sprite/sprite-h_REF.gc
generated
vendored
6
test/decompiler/reference/jak3/engine/gfx/sprite/sprite-h_REF.gc
generated
vendored
@ -35,7 +35,7 @@
|
||||
)
|
||||
(format #t "[~8x] ~A~%" this 'sprite-vec-data-2d)
|
||||
(format #t "~1Tx-y-z-sx: #<vector @ #x~X>~%" (-> this x-y-z-sx))
|
||||
(format #t "~1Tflag-rot-sy: #<vector @ #x~X>~%" (-> this flag-rot-sy))
|
||||
(format #t "~1Tflag-rot-sy: #<vector @ #x~X>~%" (&-> this flag))
|
||||
(format #t "~1Tr-g-b-a: #<vector @ #x~X>~%" (-> this r-g-b-a))
|
||||
(format #t "~1Tx: ~f~%" (-> this x-y-z-sx x))
|
||||
(format #t "~1Ty: ~f~%" (-> this x-y-z-sx y))
|
||||
@ -43,9 +43,9 @@
|
||||
(format #t "~1Tsx: ~f~%" (-> this x-y-z-sx w))
|
||||
(format #t "~1Tsy: ~f~%" (-> this flag-rot-sy w))
|
||||
(format #t "~1Trot: ~f~%" (-> this flag-rot-sy z))
|
||||
(format #t "~1Tflag: ~D~%" (-> this flag-rot-sy x))
|
||||
(format #t "~1Tflag: ~D~%" (-> this flag))
|
||||
(format #t "~1Tmatrix: ~D~%" (-> this flag-rot-sy y))
|
||||
(format #t "~1Twarp-turns: ~D~%" (-> this flag-rot-sy x))
|
||||
(format #t "~1Twarp-turns: ~D~%" (-> this flag))
|
||||
(format #t "~1Tr: ~f~%" (-> this r-g-b-a x))
|
||||
(format #t "~1Tg: ~f~%" (-> this r-g-b-a y))
|
||||
(format #t "~1Tb: ~f~%" (-> this r-g-b-a z))
|
||||
|
2
test/decompiler/reference/jak3/engine/level/bsp-h_REF.gc
generated
vendored
2
test/decompiler/reference/jak3/engine/level/bsp-h_REF.gc
generated
vendored
@ -62,9 +62,11 @@ This probably started as a very simple structure, but now it is extremely compli
|
||||
(cam-box-idx uint16)
|
||||
(subdivide-close float :offset 160)
|
||||
(subdivide-far float)
|
||||
(race-meshes (array entity-race-mesh))
|
||||
(actor-birth-order (pointer uint32) :offset 172)
|
||||
(light-hash light-hash)
|
||||
(nav-meshes (array entity-nav-mesh))
|
||||
(actor-groups (array actor-group))
|
||||
(region-trees (array drawable-tree-region-prim) :offset 188)
|
||||
(collide-hash collide-hash :offset 196)
|
||||
(wind-array uint32 :offset 200)
|
||||
|
8
test/decompiler/reference/jak3/engine/level/level-h_REF.gc
generated
vendored
8
test/decompiler/reference/jak3/engine/level/level-h_REF.gc
generated
vendored
@ -666,7 +666,7 @@
|
||||
(get-level-by-heap-ptr-and-status (_type_ pointer symbol) level)
|
||||
(level-get-for-use (_type_ symbol symbol) level)
|
||||
(activate-levels! (_type_) int)
|
||||
(level-group-method-14 () none)
|
||||
(debug-print-entities (_type_ symbol type string) none)
|
||||
(debug-draw-actors (_type_ symbol) none)
|
||||
(assign-draw-indices (_type_) none)
|
||||
(actors-update (_type_) none)
|
||||
@ -675,9 +675,9 @@
|
||||
(level-get-target-inside (_type_) level)
|
||||
(init-level-system (_type_ symbol) none)
|
||||
(art-group-get-by-name (_type_ string (pointer level)) art-group)
|
||||
(level-group-method-23 () none)
|
||||
(level-group-method-24 () none)
|
||||
(level-group-method-25 () none)
|
||||
(update-vis-volumes (_type_) none)
|
||||
(level-group-method-24 (_type_) none)
|
||||
(print-volume-sizes (_type_) none)
|
||||
(status-of-level-and-borrows (_type_ symbol symbol) symbol)
|
||||
(do-nothing (_type_) none)
|
||||
(load-in-progress? (_type_) symbol)
|
||||
|
8
test/decompiler/reference/jak3/engine/math/matrix-compose_REF.gc
generated
vendored
8
test/decompiler/reference/jak3/engine/math/matrix-compose_REF.gc
generated
vendored
@ -12,7 +12,7 @@
|
||||
|
||||
;; definition for function matrix-fu-compose
|
||||
;; INFO: Used lq/sq
|
||||
(defun matrix-fu-compose ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 vector))
|
||||
(defun matrix-fu-compose ((arg0 matrix) (arg1 vector) (arg2 vector))
|
||||
(set! (-> arg0 fvec quad) (-> arg1 quad))
|
||||
(set! (-> arg0 uvec quad) (-> arg2 quad))
|
||||
(vector-cross! (-> arg0 rvec) arg2 arg1)
|
||||
@ -39,7 +39,7 @@
|
||||
|
||||
;; definition for function matrix-f-u-compose
|
||||
;; INFO: Used lq/sq
|
||||
(defun matrix-f-u-compose ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 vector))
|
||||
(defun matrix-f-u-compose ((arg0 matrix) (arg1 vector) (arg2 vector))
|
||||
(set! (-> arg0 fvec quad) (-> arg1 quad))
|
||||
(vector-cross! (-> arg0 rvec) arg2 arg1)
|
||||
(vector-normalize! (-> arg0 rvec) 1.0)
|
||||
@ -99,10 +99,10 @@
|
||||
|
||||
;; definition for function matrix-f-compose
|
||||
;; INFO: Used lq/sq
|
||||
(defun matrix-f-compose ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 vector))
|
||||
(defun matrix-f-compose ((arg0 matrix) (arg1 vector) (arg2 float))
|
||||
(set! (-> arg0 fvec quad) (-> arg1 quad))
|
||||
(let ((a2-1 (vector-get-unique! (new 'stack-no-clear 'vector) arg1)))
|
||||
(matrix-f-u-compose arg0 arg1 a2-1 arg3)
|
||||
(matrix-f-u-compose arg0 arg1 a2-1)
|
||||
)
|
||||
arg0
|
||||
)
|
||||
|
2
test/decompiler/reference/jak3/engine/nav/nav-control-h_REF.gc
generated
vendored
2
test/decompiler/reference/jak3/engine/nav/nav-control-h_REF.gc
generated
vendored
@ -278,7 +278,7 @@
|
||||
(mesh basic :overlay-at (-> state mesh))
|
||||
)
|
||||
(:methods
|
||||
(nav-control-method-9 () none)
|
||||
(debug-draw (_type_) none)
|
||||
(nav-control-method-10 () none)
|
||||
(find-poly-containing-point-1 (_type_ vector) nav-poly)
|
||||
(cloest-point-on-mesh (_type_ vector vector nav-poly) nav-poly)
|
||||
|
6
test/decompiler/reference/jak3/engine/nav/nav-mesh-h_REF.gc
generated
vendored
6
test/decompiler/reference/jak3/engine/nav/nav-mesh-h_REF.gc
generated
vendored
@ -397,7 +397,7 @@ Based on the implementation of point-poly-intersection?, these should likely be
|
||||
(nav-mesh-method-21 () none)
|
||||
(nav-mesh-method-22 () none)
|
||||
(nav-mesh-method-23 () none)
|
||||
(nav-mesh-method-24 () none)
|
||||
(compute-bounding-box-from-vertices (_type_ vector vector) none)
|
||||
(nav-mesh-method-25 () none)
|
||||
(nav-mesh-method-26 () none)
|
||||
(nav-mesh-method-27 () none)
|
||||
@ -799,7 +799,3 @@ Based on the implementation of point-poly-intersection?, these should likely be
|
||||
0
|
||||
(none)
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
|
2174
test/decompiler/reference/jak3/engine/scene/scene_REF.gc
generated
vendored
Normal file
2174
test/decompiler/reference/jak3/engine/scene/scene_REF.gc
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
4103
test/decompiler/reference/jak3/engine/target/gun/gun-dark-shot_REF.gc
generated
vendored
Normal file
4103
test/decompiler/reference/jak3/engine/target/gun/gun-dark-shot_REF.gc
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
2935
test/decompiler/reference/jak3/engine/target/gun/gun-red-shot_REF.gc
generated
vendored
Normal file
2935
test/decompiler/reference/jak3/engine/target/gun/gun-red-shot_REF.gc
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
2394
test/decompiler/reference/jak3/engine/target/gun/gun-yellow-shot_REF.gc
generated
vendored
Normal file
2394
test/decompiler/reference/jak3/engine/target/gun/gun-yellow-shot_REF.gc
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@ -136,7 +136,9 @@
|
||||
// idle-control
|
||||
"(method 10 idle-control)", // changes pp
|
||||
// aligner
|
||||
"(method 9 align-control)"
|
||||
"(method 9 align-control)",
|
||||
// gun-red-shot
|
||||
"gun-fire-red-3"
|
||||
],
|
||||
|
||||
"skip_compile_states": {}
|
||||
|
Loading…
Reference in New Issue
Block a user