jak-project/decompiler/util
Hat Kid 67d4eda169
decomp: hover-* files, wasp, crimson-guard-hover, flamer, target-turret, drill-turret, jellyfish (#2198)
Manual patches:

- `drill-turret`: The static data for `*turret-13-path*`,
`*turret-14-path*` and `*turret-15-path*` was decompiled by hand and the
integers in the `set-speed-mult` events have been replaced with boxed
integer arrays that contain only that integer in order to make the
compiler happy. To that effect, the event handler in `target-turret` was
changed to access that array instead of just accessing the int.
- `hover-nav-control`: In `hover-nav-control::10`, `arg2` is usually a
`vector`, but there are some places where it is called with `#t` as
`arg2` and, subsequently, crashes the game because it tries to access
the `quad` of `arg2` if `arg2` is truthy. To mitigate this, the
condition `arg2` has been replaced with `(and (!= arg2 #t) arg2)` (in
this case, it would jump to the `else` that just resets the `dest-vel`
and `transv` `quad`s)
- `drill-baron`: The static data for `*drill-ship-turret-speed-event*`
has been decompiled by hand.

TODOs:
- Jellyfish crash the game
- Destroying the metalhead eggs that are on the breakable wall crashes
the game (already happened with the Peacemaker before)
- Figure out why static data of type `turret-path-event` doesn't
decompile

The docs for all the hover-nav and nav-network code could use some love
in the future, I'm not smart enough to figure out what any of that code
actually means, but it seems to work...

Also threw in the fix for the ▲ that was accidentally left commented
out.
2023-02-09 18:22:56 -05:00
..
config_parsers.cpp lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00
config_parsers.h lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00
data_decompile.cpp decomp: hover-* files, wasp, crimson-guard-hover, flamer, target-turret, drill-turret, jellyfish (#2198) 2023-02-09 18:22:56 -05:00
data_decompile.h d/jak2: finish onin-game and resolve type-hinting (array object) elements (#2188) 2023-02-04 20:36:30 -05:00
DataParser.cpp offline-test: Partition by DGO and colorize/condense output (#2045) 2022-12-22 13:41:33 -05:00
DataParser.h lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00
DecompilerTypeSystem.cpp docs: add support for :override-doc in method declarations as well as documenting state handlers (#2139) 2023-01-21 20:45:45 -05:00
DecompilerTypeSystem.h docs: add support for :override-doc in method declarations as well as documenting state handlers (#2139) 2023-01-21 20:45:45 -05:00
Error.h lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00
goal_data_reader.cpp lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00
goal_data_reader.h lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00
MatchParam.h [Decompiler - New IR] Add AtomicOp (#181) 2021-01-06 20:04:15 -05:00
sparticle_decompile.cpp [decomp] target cleanup (#2021) 2022-11-13 19:09:34 -05:00
sparticle_decompile.h [decomp] make defpart and defpartgroup work in jak 2 (#1947) 2022-10-09 12:53:44 -04:00
StackSpillMap.h lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00
TP_Type.cpp [decomp] fix up debug menu rendering, add a few others (#1892) 2022-09-16 20:42:33 -04:00
TP_Type.h logs: replace every fmt::print with a lg call instead (#1368) 2022-10-01 11:58:36 -04:00
type_utils.cpp d/jak2: get script decompiling, no ref tests yet (#1877) 2022-09-14 19:37:12 -04:00
type_utils.h [jak 2] texture (#1866) 2022-09-11 14:17:55 -04:00