decomp: add a bunch of enemy files (#2101)

Adds the following files:

- `amphibian`
- `centurion`
- `ginsu`
- `grenadier`
- `hopper`
- `metalmonk`
- `monster-frog`
- `predator-graph`
- `predator-h`
- `predator`
- `rapid-gunner`
- `rhino`
- `rhino-wall`
- `tomb-baby-spider`

Also adds the DGOs for the following levels:

- Mar's Tomb
- Mountain Temple
- Drill Platform
- Sacred Site (Sage Hut)

Manual patches:

- The decompiler emits `(b! #t cfg-17)` in `(trans hostile hopper)`
without putting a `(label cfg-17)` anywhere
- Added cast to `art-joint-anim` in `(code broken rhino-wall)` and
`(code hit rhino-wall)`

Other notes:

- `amphibian` seems to occasionally crash when using its tongue attack.
Haven't investigated this yet
- `ginsu` crashes after being killed somewhere in the `deactivate`
method, possibly because of its `part-spawner`
- Predators aren't spawning in the forest hunt mission, not sure if
`forest-obs` might be needed for that or if it's something else
- The `rhino-wall` STR animation seems to load (albeit a bit broken due
to missing VAG stream playback), but causes the viewport to shrink as
soon as it's played
- I added `pegasus::74` to the `event_handler_hack` bool in
`variable_naming.cpp` because I got a `none` cast after changing the
return value of `enemy::74`
This commit is contained in:
Hat Kid
2023-01-07 23:14:12 +01:00
committed by GitHub
parent 00ac12094e
commit bdee98323d
60 changed files with 37190 additions and 1196 deletions
+7 -2
View File
@@ -264,12 +264,17 @@
"(method 43 nav-mesh)",
"(method 34 nav-mesh)",
"(method 18 nav-control)",
"(method 10 idle-control)" // re-assigns `self`
"(method 10 idle-control)", // re-assigns `self`
"(method 3 rhino)"
],
"skip_compile_states": {
"(idle process-taskable)": ["event"],
"(impact gun-dark-shot)": ["code"],
"(target-gun-stance target)": ["code"]
"(target-gun-stance target)": ["code"],
"(hostile hopper)": ["trans"], // adds b! but the corresponding label is missing
"(broken rhino-wall)": ["code"], // missing cast to art-joint-anim
"(hit rhino-wall)": ["code"] // missing cast to art-joint-anim
}
}