target2 PAL patch and fix text compiling

This commit is contained in:
ManDude
2022-06-19 12:33:17 +01:00
parent a7ac63cb46
commit 01e2336c91
6 changed files with 122 additions and 126 deletions
+7 -1
View File
@@ -6,7 +6,9 @@
#include "common/util/json_util.h"
static const std::unordered_map<std::string, GameTextVersion> s_text_ver_enum_map = {
{"jak1-v1", GameTextVersion::JAK1_V1}};
{"jak1-v1", GameTextVersion::JAK1_V1},
{"jak1-v2", GameTextVersion::JAK1_V1}
};
// TODO - why not just return the inputs instead of passing in an empty one?
void open_text_project(const std::string& kind,
@@ -27,6 +29,10 @@ void open_text_project(const std::string& kind,
auto& ver = o.as_pair()->car.as_symbol()->name;
auto& in = o.as_pair()->cdr.as_pair()->car.as_string()->data;
if (s_text_ver_enum_map.count(ver) == 0) {
throw std::runtime_error(fmt::format("unknown text version {}", ver));
}
inputs[s_text_ver_enum_map.at(ver)].push_back(in);
});
}
@@ -875,7 +875,7 @@
],
"target2": [
[11, "(function vector time-frame float symbol :behavior target)"],
[11, "(function vector time-frame float symbol :behavior process)"],
[99, "(function symbol)"]
],
+1 -1
View File
@@ -6,7 +6,7 @@
// if you want to filter to only some object names.
// it will make the decompiler much faster.
"allowed_objects": ["target", "eichar-ag"],
"allowed_objects": ["target2", "eichar-ag"],
"banned_objects": [],
////////////////////////////
+98 -96
View File
@@ -1580,102 +1580,6 @@
["L355", "float", true]
],
"target2": [
["L615", "attack-info"],
["L656", "float", true],
["L657", "float", true],
["L658", "float", true],
["L659", "float", true],
["L660", "float", true],
["L661", "float", true],
["L662", "float", true],
["L663", "float", true],
["L664", "float", true],
["L665", "float", true],
["L666", "float", true],
["L667", "float", true],
["L668", "float", true],
["L669", "float", true],
["L670", "float", true],
["L671", "float", true],
["L672", "float", true],
["L673", "float", true],
["L674", "float", true],
["L675", "float", true],
["L676", "float", true],
["L677", "float", true],
["L678", "float", true],
["L679", "float", true],
["L680", "float", true],
["L681", "float", true],
["L682", "float", true],
["L683", "float", true],
["L684", "float", true],
["L685", "float", true],
["L686", "float", true],
["L687", "float", true],
["L688", "float", true],
["L689", "float", true],
["L690", "float", true],
["L691", "float", true],
["L692", "float", true],
["L693", "float", true],
["L694", "float", true],
["L695", "float", true],
["L696", "float", true],
["L697", "float", true],
["L698", "float", true],
["L699", "float", true],
["L700", "float", true],
["L701", "float", true],
["L702", "float", true],
["L703", "float", true],
["L704", "float", true],
["L705", "float", true],
["L706", "float", true],
["L707", "float", true],
["L708", "float", true],
["L709", "float", true],
["L710", "float", true],
["L711", "float", true],
["L712", "float", true],
["L713", "float", true],
["L714", "float", true],
["L715", "float", true],
["L716", "float", true],
["L717", "float", true],
["L718", "float", true],
["L719", "float", true],
["L720", "float", true],
["L721", "float", true],
["L722", "float", true],
["L723", "float", true],
["L724", "float", true],
["L725", "float", true],
["L726", "float", true],
["L727", "float", true],
["L728", "float", true],
["L729", "float", true],
["L730", "float", true],
["L731", "float", true],
["L732", "float", true],
["L733", "float", true],
["L734", "float", true],
["L735", "float", true],
["L736", "float", true],
["L737", "float", true],
["L738", "float", true],
["L739", "float", true],
["L740", "float", true],
["L741", "float", true],
["L742", "float", true],
["L743", "float", true],
["L744", "float", true],
["L745", "uint64", true],
["L746", "uint64", true],
["L757", "uint64", true]
],
"collide-shape": [
["L399", "attack-info"],
["L408", "vector"],
@@ -2145,6 +2049,104 @@
["L824", "uint64", true]
],
"target2": [
["L615", "attack-info"],
["L656", "float", true],
["L657", "float", true],
["L658", "float", true],
["L659", "float", true],
["L660", "float", true],
["L661", "float", true],
["L662", "float", true],
["L663", "float", true],
["L664", "float", true],
["L665", "float", true],
["L666", "float", true],
["L667", "float", true],
["L668", "float", true],
["L669", "float", true],
["L670", "float", true],
["L671", "float", true],
["L672", "float", true],
["L673", "float", true],
["L674", "float", true],
["L675", "float", true],
["L676", "float", true],
["L677", "float", true],
["L678", "float", true],
["L679", "float", true],
["L680", "float", true],
["L681", "float", true],
["L682", "float", true],
["L683", "float", true],
["L684", "float", true],
["L685", "float", true],
["L686", "float", true],
["L687", "float", true],
["L688", "float", true],
["L689", "float", true],
["L690", "float", true],
["L691", "float", true],
["L692", "float", true],
["L693", "float", true],
["L694", "float", true],
["L695", "float", true],
["L696", "float", true],
["L697", "float", true],
["L698", "float", true],
["L699", "float", true],
["L700", "float", true],
["L701", "float", true],
["L702", "float", true],
["L703", "float", true],
["L704", "float", true],
["L705", "float", true],
["L706", "float", true],
["L707", "float", true],
["L708", "float", true],
["L709", "float", true],
["L710", "float", true],
["L711", "float", true],
["L712", "float", true],
["L713", "float", true],
["L714", "float", true],
["L715", "float", true],
["L716", "float", true],
["L717", "float", true],
["L718", "float", true],
["L719", "float", true],
["L720", "float", true],
["L721", "float", true],
["L722", "float", true],
["L723", "float", true],
["L724", "float", true],
["L725", "float", true],
["L726", "float", true],
["L727", "float", true],
["L728", "float", true],
["L729", "float", true],
["L730", "float", true],
["L731", "float", true],
["L732", "float", true],
["L733", "float", true],
["L734", "float", true],
["L735", "float", true],
["L736", "float", true],
["L737", "float", true],
["L738", "float", true],
["L739", "float", true],
["L740", "float", true],
["L741", "float", true],
["L742", "float", true],
["L743", "float", true],
["L744", "float", true],
["L745", "float", true],
["L746", "float", true],
["L747", "float", true],
["L748", "uint64", true],
["L759", "uint64", true]
],
// please do not add things after this entry! git is dumb.
"object-file-that-doesnt-actually-exist-and-i-just-put-this-here-to-prevent-merge-conflicts-with-this-file": []
}
+4 -16
View File
@@ -5692,22 +5692,6 @@
"(code target-swim-down)": [[52, "v1", "art-joint-anim"]],
"(anon-function 11 target2)": [
[19, "s4", "target"], // confusing -- the parent of a target is a target?
[21, "s4", "target"],
[29, "s4", "target"],
[34, "s4", "target"],
[40, "s4", "target"],
[54, "s4", "target"],
[66, "s4", "target"],
[76, "s4", "target"],
[82, "s4", "target"],
[87, "s4", "target"],
[89, "s4", "target"],
[118, "s4", "target"],
[129, "s4", "target"]
],
"(code target-play-anim)": [[8, "v0", "art-joint-anim"]],
"(code target-look-around)": [[20, "v0", "float"]],
@@ -7719,5 +7703,9 @@
"(code target-duck-high-jump)": [[77, "v0", "sound-rpc-set-param"]],
"(trans target-duck-high-jump-jump)": [[9, "v0", "sound-rpc-set-param"]],
"(anon-function 11 target2)": [
[[15, 135], "s4", "target"] // confusing -- the parent of a target is a target?
],
"placeholder-do-not-add-below": []
}
+11 -11
View File
@@ -2611,7 +2611,7 @@
(if (nonzero? arg3)
(process-spawn-function
process
(lambda :behavior target
(lambda :behavior process
((arg0 vector) (arg1 time-frame) (arg2 float))
(local-vars (sv-32 time-frame) (sv-40 vector) (sv-44 symbol))
(set! sv-32 (-> *display* base-frame-counter))
@@ -2627,13 +2627,12 @@
(< (- (-> (the-as target s4-0) control trans y) (-> (the-as target s4-0) control unknown-vector52 y)) arg2)
)
(vector-xz-normalize! (-> (the-as target s4-0) control transv) (the-as float 0.0))
(case (-> (the-as target s4-0) current-level name)
(('jungleb)
(let ((v1-16 (vector-! (new-stack-vector0) (-> (the-as target s4-0) control trans) sv-40)))
(set! (-> (the-as target s4-0) control trans x) (+ (-> sv-40 x) (fmax -4096.0 (fmin 4096.0 (-> v1-16 x)))))
(set! (-> (the-as target s4-0) control trans z) (+ (-> sv-40 z) (fmax -4096.0 (fmin 4096.0 (-> v1-16 z)))))
)
)
;; PAL patch here
(when (< (vector-vector-xz-distance (-> (the-as target s4-0) control trans) sv-40) 20480.0)
(let ((v1-16 (vector-! (new-stack-vector0) (-> (the-as target s4-0) control trans) sv-40)))
(set! (-> (the-as target s4-0) control trans x) (+ (-> sv-40 x) (fmax -2867.2 (fmin 2867.2 (-> v1-16 x)))))
(set! (-> (the-as target s4-0) control trans z) (+ (-> sv-40 z) (fmax -2867.2 (fmin 2867.2 (-> v1-16 z)))))
)
)
)
(else
@@ -2677,7 +2676,8 @@
:to self
)
)
(sound-play "launch-fire")
;; PAL patch (sound plays elsewhere)
;(sound-play "launch-fire")
(go target-high-jump arg0 arg0 'launch)
(none)
)
@@ -2704,8 +2704,8 @@
:exit (behavior ()
(target-exit)
(set! (-> self cam-user-mode) 'normal)
(logior! (-> self state-flags) (state-flags grabbed))
(logclear! (-> self state-flags) (state-flags invulnerable))
;; PAL patch here
(logclear! (-> self state-flags) (state-flags invulnerable grabbed))
(none)
)
:code (behavior ((arg0 handle))