From 148f52876a46e37a3d128859aad682d9a64ee4e1 Mon Sep 17 00:00:00 2001 From: water111 <48171810+water111@users.noreply.github.com> Date: Mon, 23 May 2022 18:53:02 -0400 Subject: [PATCH] [decomp] add `import` statements for art groups (#1372) * new code * update goal_src and remove all_imports * update reference * add decompiler list of imports * deduplicate and move below decomp begins --- decompiler/IR2/FormExpressionAnalysis.cpp | 4 +- decompiler/ObjectFile/ObjectFileDB.h | 8 +- decompiler/ObjectFile/ObjectFileDB_IR2.cpp | 18 +- decompiler/analysis/final_output.cpp | 15 +- decompiler/analysis/final_output.h | 3 +- decompiler/config.cpp | 4 + decompiler/config.h | 2 + decompiler/config/jak1_ntsc_black_label.jsonc | 1 + .../jak1_ntsc_black_label/import_deps.jsonc | 660 ++++++++++++++++++ decompiler/level_extractor/extract_merc.cpp | 7 +- goal_src/build/all_imports.gc | 371 ---------- goal_src/engine/game/collectables.gc | 4 + goal_src/engine/game/crates.gc | 1 + goal_src/engine/game/voicebox.gc | 1 + goal_src/engine/target/sidekick.gc | 1 + goal_src/engine/target/target-death.gc | 1 + goal_src/engine/target/target-util.gc | 1 + goal_src/engine/ui/hud-classes.gc | 1 + goal_src/goal-lib.gc | 14 +- goal_src/levels/beach/beach-obs.gc | 9 + goal_src/levels/beach/beach-rocks.gc | 1 + goal_src/levels/beach/bird-lady-beach.gc | 1 + goal_src/levels/beach/bird-lady.gc | 1 + goal_src/levels/beach/lurkercrab.gc | 1 + goal_src/levels/beach/lurkerpuppy.gc | 1 + goal_src/levels/beach/lurkerworm.gc | 1 + goal_src/levels/beach/mayor.gc | 1 + goal_src/levels/beach/pelican.gc | 1 + goal_src/levels/beach/sculptor.gc | 2 + goal_src/levels/beach/seagull.gc | 1 + goal_src/levels/citadel/assistant-citadel.gc | 1 + goal_src/levels/citadel/citadel-obs.gc | 11 + goal_src/levels/citadel/citadel-sages.gc | 7 + goal_src/levels/citadel/citb-bunny.gc | 1 + goal_src/levels/citadel/citb-drop-plat.gc | 1 + goal_src/levels/citadel/citb-plat.gc | 8 + goal_src/levels/common/babak.gc | 1 + goal_src/levels/common/basebutton.gc | 1 + goal_src/levels/common/blocking-plane.gc | 1 + goal_src/levels/common/launcherdoor.gc | 2 + goal_src/levels/common/orb-cache.gc | 1 + goal_src/levels/common/plat-button.gc | 1 + goal_src/levels/common/plat-eco.gc | 1 + goal_src/levels/common/plat.gc | 3 + goal_src/levels/common/ropebridge.gc | 6 + goal_src/levels/common/sharkey.gc | 1 + goal_src/levels/common/water-anim.gc | 16 + goal_src/levels/darkcave/darkcave-obs.gc | 1 + goal_src/levels/finalboss/final-door.gc | 3 + goal_src/levels/finalboss/green-eco-lurker.gc | 1 + goal_src/levels/finalboss/light-eco.gc | 1 + goal_src/levels/finalboss/robotboss-h.gc | 1 + goal_src/levels/finalboss/robotboss-misc.gc | 3 + goal_src/levels/finalboss/robotboss-weapon.gc | 3 + goal_src/levels/finalboss/robotboss.gc | 3 + goal_src/levels/finalboss/sage-finalboss.gc | 5 +- .../levels/firecanyon/assistant-firecanyon.gc | 1 + goal_src/levels/firecanyon/firecanyon-obs.gc | 2 + goal_src/levels/flut_common/flutflut.gc | 1 + goal_src/levels/intro/evilbro.gc | 2 + goal_src/levels/jungle/bouncer.gc | 1 + goal_src/levels/jungle/darkvine.gc | 1 + goal_src/levels/jungle/fisher.gc | 5 + goal_src/levels/jungle/hopper.gc | 1 + goal_src/levels/jungle/jungle-mirrors.gc | 2 + goal_src/levels/jungle/jungle-obs.gc | 10 + goal_src/levels/jungle/junglefish.gc | 1 + goal_src/levels/jungle/junglesnake.gc | 1 + goal_src/levels/jungleb/aphid.gc | 1 + goal_src/levels/jungleb/jungleb-obs.gc | 2 + goal_src/levels/jungleb/plant-boss.gc | 1 + goal_src/levels/jungleb/plat-flip.gc | 1 + .../levels/lavatube/assistant-lavatube.gc | 1 + goal_src/levels/lavatube/lavatube-energy.gc | 5 + goal_src/levels/lavatube/lavatube-obs.gc | 9 + goal_src/levels/maincave/baby-spider.gc | 1 + goal_src/levels/maincave/dark-crystal.gc | 1 + goal_src/levels/maincave/driller-lurker.gc | 1 + goal_src/levels/maincave/gnawer.gc | 1 + goal_src/levels/maincave/maincave-obs.gc | 6 + goal_src/levels/maincave/mother-spider-egg.gc | 1 + goal_src/levels/maincave/mother-spider.gc | 1 + goal_src/levels/maincave/spiderwebs.gc | 1 + goal_src/levels/misty/balloonlurker.gc | 1 + goal_src/levels/misty/bonelurker.gc | 1 + goal_src/levels/misty/misty-conveyor.gc | 3 + goal_src/levels/misty/misty-obs.gc | 8 + goal_src/levels/misty/misty-teetertotter.gc | 1 + goal_src/levels/misty/misty-warehouse.gc | 2 + goal_src/levels/misty/mistycannon.gc | 2 + goal_src/levels/misty/muse.gc | 1 + goal_src/levels/misty/quicksandlurker.gc | 1 + goal_src/levels/misty/sidekick-human.gc | 4 + goal_src/levels/ogre/flying-lurker.gc | 3 + goal_src/levels/ogre/ogre-obs.gc | 7 + goal_src/levels/ogre/ogreboss.gc | 1 + goal_src/levels/racer_common/racer.gc | 1 + .../levels/racer_common/target-racer-h.gc | 1 + goal_src/levels/robocave/spider-egg.gc | 1 + .../levels/rolling/rolling-lightning-mole.gc | 1 + goal_src/levels/rolling/rolling-obs.gc | 5 + goal_src/levels/rolling/rolling-race-ring.gc | 1 + goal_src/levels/rolling/rolling-robber.gc | 1 + goal_src/levels/snow/ice-cube.gc | 2 + goal_src/levels/snow/snow-ball.gc | 1 + goal_src/levels/snow/snow-bumper.gc | 1 + goal_src/levels/snow/snow-bunny.gc | 1 + goal_src/levels/snow/snow-flutflut-obs.gc | 4 + goal_src/levels/snow/snow-obs.gc | 8 + goal_src/levels/snow/snow-ram-boss.gc | 1 + goal_src/levels/snow/snow-ram.gc | 1 + goal_src/levels/snow/yeti.gc | 1 + goal_src/levels/sunken/bully.gc | 1 + goal_src/levels/sunken/double-lurker.gc | 2 + goal_src/levels/sunken/floating-launcher.gc | 1 + goal_src/levels/sunken/helix-water.gc | 2 + goal_src/levels/sunken/orbit-plat.gc | 2 + goal_src/levels/sunken/puffer.gc | 1 + goal_src/levels/sunken/qbert-plat.gc | 2 + goal_src/levels/sunken/shover.gc | 1 + goal_src/levels/sunken/square-platform.gc | 1 + goal_src/levels/sunken/steam-cap.gc | 1 + goal_src/levels/sunken/sun-exit-chamber.gc | 3 + goal_src/levels/sunken/sun-iris-door.gc | 1 + goal_src/levels/sunken/sunken-fish.gc | 1 + goal_src/levels/sunken/sunken-obs.gc | 3 + goal_src/levels/sunken/wall-plat.gc | 1 + goal_src/levels/sunken/wedge-plats.gc | 2 + goal_src/levels/sunken/whirlpool.gc | 1 + goal_src/levels/swamp/billy.gc | 3 + goal_src/levels/swamp/kermit.gc | 1 + goal_src/levels/swamp/swamp-bat.gc | 1 + goal_src/levels/swamp/swamp-obs.gc | 5 + goal_src/levels/swamp/swamp-rat-nest.gc | 1 + goal_src/levels/swamp/swamp-rat.gc | 1 + goal_src/levels/title/title-obs.gc | 7 + goal_src/levels/training/training-obs.gc | 5 + goal_src/levels/village1/assistant.gc | 1 + goal_src/levels/village1/explorer.gc | 1 + goal_src/levels/village1/farmer.gc | 1 + goal_src/levels/village1/fishermans-boat.gc | 3 + goal_src/levels/village1/sage.gc | 1 + goal_src/levels/village1/village-obs.gc | 21 + goal_src/levels/village1/yakow.gc | 2 + .../levels/village2/assistant-village2.gc | 2 + goal_src/levels/village2/flutflut-bluehut.gc | 1 + goal_src/levels/village2/gambler.gc | 1 + goal_src/levels/village2/geologist.gc | 1 + goal_src/levels/village2/sage-bluehut.gc | 1 + goal_src/levels/village2/sunken-elevator.gc | 1 + goal_src/levels/village2/swamp-blimp.gc | 5 + goal_src/levels/village2/village2-obs.gc | 11 + goal_src/levels/village2/warrior.gc | 1 + .../levels/village3/assistant-village3.gc | 1 + goal_src/levels/village3/minecart.gc | 1 + goal_src/levels/village3/miners.gc | 3 + goal_src/levels/village3/sage-village3.gc | 3 + goal_src/levels/village3/village3-obs.gc | 7 + goal_src/levels/village_common/oracle.gc | 1 + .../levels/village_common/villagep-obs.gc | 2 + scripts/setup_art_group_imports.py | 79 +++ .../decompiler/reference/decompiler-macros.gc | 26 +- .../reference/engine/game/collectables_REF.gc | 5 + .../reference/engine/game/crates_REF.gc | 2 + .../reference/engine/game/voicebox_REF.gc | 2 + .../reference/engine/target/sidekick_REF.gc | 2 + .../engine/target/target-death_REF.gc | 2 + .../engine/target/target-util_REF.gc | 2 + .../reference/engine/ui/hud-classes_REF.gc | 2 + .../reference/levels/beach/beach-obs_REF.gc | 10 + .../reference/levels/beach/beach-rocks_REF.gc | 2 + .../levels/beach/bird-lady-beach_REF.gc | 2 + .../reference/levels/beach/bird-lady_REF.gc | 2 + .../reference/levels/beach/lurkercrab_REF.gc | 2 + .../reference/levels/beach/lurkerpuppy_REF.gc | 2 + .../reference/levels/beach/lurkerworm_REF.gc | 2 + .../reference/levels/beach/mayor_REF.gc | 2 + .../reference/levels/beach/pelican_REF.gc | 2 + .../reference/levels/beach/sculptor_REF.gc | 3 + .../reference/levels/beach/seagull_REF.gc | 2 + .../levels/citadel/assistant-citadel_REF.gc | 2 + .../levels/citadel/citadel-obs_REF.gc | 12 + .../levels/citadel/citadel-sages_REF.gc | 8 + .../levels/citadel/citb-bunny_REF.gc | 2 + .../levels/citadel/citb-drop-plat_REF.gc | 2 + .../reference/levels/citadel/citb-plat_REF.gc | 9 + .../reference/levels/common/babak_REF.gc | 2 + .../reference/levels/common/basebutton_REF.gc | 2 + .../levels/common/blocking-plane_REF.gc | 2 + .../levels/common/launcherdoor_REF.gc | 3 + .../reference/levels/common/orb-cache_REF.gc | 2 + .../levels/common/plat-button_REF.gc | 2 + .../reference/levels/common/plat-eco_REF.gc | 2 + .../reference/levels/common/plat_REF.gc | 4 + .../reference/levels/common/ropebridge_REF.gc | 7 + .../reference/levels/common/sharkey_REF.gc | 2 + .../reference/levels/common/water-anim_REF.gc | 17 + .../levels/darkcave/darkcave-obs_REF.gc | 2 + .../levels/finalboss/final-door_REF.gc | 4 + .../levels/finalboss/green-eco-lurker_REF.gc | 2 + .../levels/finalboss/light-eco_REF.gc | 2 + .../levels/finalboss/robotboss-h_REF.gc | 2 + .../levels/finalboss/robotboss-misc_REF.gc | 4 + .../levels/finalboss/robotboss-weapon_REF.gc | 4 + .../levels/finalboss/robotboss_REF.gc | 4 + .../levels/finalboss/sage-finalboss_REF.gc | 5 + .../firecanyon/assistant-firecanyon_REF.gc | 2 + .../levels/firecanyon/firecanyon-obs_REF.gc | 3 + .../levels/flut_common/flutflut_REF.gc | 2 + .../reference/levels/intro/evilbro_REF.gc | 3 + .../reference/levels/jungle/bouncer_REF.gc | 2 + .../reference/levels/jungle/darkvine_REF.gc | 2 + .../reference/levels/jungle/fisher_REF.gc | 6 + .../reference/levels/jungle/hopper_REF.gc | 2 + .../levels/jungle/jungle-mirrors_REF.gc | 3 + .../reference/levels/jungle/jungle-obs_REF.gc | 11 + .../reference/levels/jungle/junglefish_REF.gc | 2 + .../levels/jungle/junglesnake_REF.gc | 2 + .../reference/levels/jungleb/aphid_REF.gc | 2 + .../levels/jungleb/jungleb-obs_REF.gc | 3 + .../levels/jungleb/plant-boss_REF.gc | 2 + .../reference/levels/jungleb/plat-flip_REF.gc | 2 + .../levels/lavatube/assistant-lavatube_REF.gc | 2 + .../levels/lavatube/lavatube-energy_REF.gc | 6 + .../levels/lavatube/lavatube-obs_REF.gc | 10 + .../levels/maincave/baby-spider_REF.gc | 2 + .../levels/maincave/dark-crystal_REF.gc | 2 + .../levels/maincave/driller-lurker_REF.gc | 2 + .../reference/levels/maincave/gnawer_REF.gc | 2 + .../levels/maincave/maincave-obs_REF.gc | 7 + .../levels/maincave/mother-spider-egg_REF.gc | 2 + .../levels/maincave/mother-spider_REF.gc | 2 + .../levels/maincave/spiderwebs_REF.gc | 2 + .../levels/misty/balloonlurker_REF.gc | 2 + .../reference/levels/misty/bonelurker_REF.gc | 2 + .../levels/misty/misty-conveyor_REF.gc | 4 + .../reference/levels/misty/misty-obs_REF.gc | 9 + .../levels/misty/misty-teetertotter_REF.gc | 2 + .../levels/misty/misty-warehouse_REF.gc | 3 + .../reference/levels/misty/mistycannon_REF.gc | 3 + .../reference/levels/misty/muse_REF.gc | 2 + .../levels/misty/quicksandlurker_REF.gc | 2 + .../levels/misty/sidekick-human_REF.gc | 5 + .../levels/ogre/flying-lurker_REF.gc | 4 + .../reference/levels/ogre/ogre-obs_REF.gc | 8 + .../reference/levels/ogre/ogreboss_REF.gc | 2 + .../levels/racer_common/racer_REF.gc | 2 + .../levels/racer_common/target-racer-h_REF.gc | 2 + .../levels/robocave/spider-egg_REF.gc | 2 + .../rolling/rolling-lightning-mole_REF.gc | 2 + .../levels/rolling/rolling-obs_REF.gc | 6 + .../levels/rolling/rolling-race-ring_REF.gc | 2 + .../levels/rolling/rolling-robber_REF.gc | 2 + .../reference/levels/snow/ice-cube_REF.gc | 3 + .../reference/levels/snow/snow-ball_REF.gc | 2 + .../reference/levels/snow/snow-bumper_REF.gc | 2 + .../reference/levels/snow/snow-bunny_REF.gc | 2 + .../levels/snow/snow-flutflut-obs_REF.gc | 5 + .../reference/levels/snow/snow-obs_REF.gc | 9 + .../levels/snow/snow-ram-boss_REF.gc | 2 + .../reference/levels/snow/snow-ram_REF.gc | 2 + .../reference/levels/snow/yeti_REF.gc | 2 + .../reference/levels/sunken/bully_REF.gc | 2 + .../levels/sunken/double-lurker_REF.gc | 3 + .../levels/sunken/floating-launcher_REF.gc | 2 + .../levels/sunken/helix-water_REF.gc | 3 + .../reference/levels/sunken/orbit-plat_REF.gc | 3 + .../reference/levels/sunken/puffer_REF.gc | 2 + .../reference/levels/sunken/qbert-plat_REF.gc | 3 + .../reference/levels/sunken/shover_REF.gc | 2 + .../levels/sunken/square-platform_REF.gc | 2 + .../reference/levels/sunken/steam-cap_REF.gc | 2 + .../levels/sunken/sun-exit-chamber_REF.gc | 4 + .../levels/sunken/sun-iris-door_REF.gc | 2 + .../levels/sunken/sunken-fish_REF.gc | 2 + .../reference/levels/sunken/sunken-obs_REF.gc | 4 + .../reference/levels/sunken/wall-plat_REF.gc | 2 + .../levels/sunken/wedge-plats_REF.gc | 3 + .../reference/levels/sunken/whirlpool_REF.gc | 2 + .../reference/levels/swamp/billy_REF.gc | 4 + .../reference/levels/swamp/kermit_REF.gc | 2 + .../reference/levels/swamp/swamp-bat_REF.gc | 2 + .../reference/levels/swamp/swamp-obs_REF.gc | 6 + .../levels/swamp/swamp-rat-nest_REF.gc | 2 + .../reference/levels/swamp/swamp-rat_REF.gc | 2 + .../reference/levels/title/title-obs_REF.gc | 8 + .../levels/training/training-obs_REF.gc | 6 + .../levels/village1/assistant_REF.gc | 2 + .../reference/levels/village1/explorer_REF.gc | 2 + .../reference/levels/village1/farmer_REF.gc | 2 + .../levels/village1/fishermans-boat_REF.gc | 4 + .../reference/levels/village1/sage_REF.gc | 2 + .../levels/village1/village-obs_REF.gc | 22 + .../reference/levels/village1/yakow_REF.gc | 3 + .../levels/village2/assistant-village2_REF.gc | 3 + .../levels/village2/flutflut-bluehut_REF.gc | 2 + .../reference/levels/village2/gambler_REF.gc | 2 + .../levels/village2/geologist_REF.gc | 2 + .../levels/village2/sage-bluehut_REF.gc | 2 + .../levels/village2/sunken-elevator_REF.gc | 2 + .../levels/village2/swamp-blimp_REF.gc | 6 + .../levels/village2/village2-obs_REF.gc | 12 + .../reference/levels/village2/warrior_REF.gc | 2 + .../levels/village3/assistant-village3_REF.gc | 2 + .../reference/levels/village3/minecart_REF.gc | 2 + .../reference/levels/village3/miners_REF.gc | 4 + .../levels/village3/sage-village3_REF.gc | 4 + .../levels/village3/village3-obs_REF.gc | 8 + .../levels/village_common/oracle_REF.gc | 2 + .../levels/village_common/villagep-obs_REF.gc | 3 + 310 files changed, 1674 insertions(+), 411 deletions(-) create mode 100644 decompiler/config/jak1_ntsc_black_label/import_deps.jsonc delete mode 100644 goal_src/build/all_imports.gc create mode 100644 scripts/setup_art_group_imports.py diff --git a/decompiler/IR2/FormExpressionAnalysis.cpp b/decompiler/IR2/FormExpressionAnalysis.cpp index 89e807366d..bf3c30c2e1 100644 --- a/decompiler/IR2/FormExpressionAnalysis.cpp +++ b/decompiler/IR2/FormExpressionAnalysis.cpp @@ -3466,7 +3466,7 @@ Form* try_rewrite_as_pppointer_to_process(CondNoElseElement* value, // ) // (ja-group :chan 0) Form* try_rewrite_as_ja_group(CondNoElseElement* value, - FormStack& stack, + FormStack& /*stack*/, FormPool& pool, const Env& env) { if (value->entries.size() != 1) { @@ -4152,7 +4152,7 @@ FormElement* ConditionElement::make_equal_check_generic(const Env& env, macro_args.push_back(source_forms.at(1)); auto jagroup = source_forms.at(0)->try_as_element(); - for (int i = 1; i < jagroup->elts().size(); ++i) { + for (size_t i = 1; i < jagroup->elts().size(); ++i) { macro_args.push_back(jagroup->elts().at(i)); } return pool.alloc_element( diff --git a/decompiler/ObjectFile/ObjectFileDB.h b/decompiler/ObjectFile/ObjectFileDB.h index d49620b21d..333000d786 100644 --- a/decompiler/ObjectFile/ObjectFileDB.h +++ b/decompiler/ObjectFile/ObjectFileDB.h @@ -111,7 +111,10 @@ class ObjectFileDB { void ir2_rewrite_inline_asm_instructions(int seg, ObjectFileData& data); void ir2_insert_anonymous_functions(int seg, ObjectFileData& data); void ir2_symbol_definition_map(ObjectFileData& data); - void ir2_write_results(const std::string& output_dir, const Config& config, ObjectFileData& data); + void ir2_write_results(const std::string& output_dir, + const Config& config, + const std::vector& imports, + ObjectFileData& data); void ir2_do_segment_analysis_phase1(int seg, const Config& config, ObjectFileData& data); void ir2_do_segment_analysis_phase2(int seg, const Config& config, ObjectFileData& data); void ir2_setup_labels(const Config& config, ObjectFileData& data); @@ -119,7 +122,8 @@ class ObjectFileDB { std::string ir2_to_file(ObjectFileData& data, const Config& config); std::string ir2_function_to_string(ObjectFileData& data, Function& function, int seg); std::string ir2_final_out(ObjectFileData& data, - const std::unordered_set& skip_functions = {}); + const std::vector& imports, + const std::unordered_set& skip_functions); std::string process_tpages(TextureDB& tex_db); std::string process_game_count_file(); diff --git a/decompiler/ObjectFile/ObjectFileDB_IR2.cpp b/decompiler/ObjectFile/ObjectFileDB_IR2.cpp index 40f650576c..4af2f8028b 100644 --- a/decompiler/ObjectFile/ObjectFileDB_IR2.cpp +++ b/decompiler/ObjectFile/ObjectFileDB_IR2.cpp @@ -92,13 +92,19 @@ void ObjectFileDB::analyze_functions_ir2( ir2_symbol_definition_map(data); + const auto& imports_it = config.import_deps_by_file.find(data.to_unique_name()); + std::vector imports; + if (imports_it != config.import_deps_by_file.end()) { + imports = imports_it->second; + } + if (!output_dir.empty()) { - ir2_write_results(output_dir, config, data); + ir2_write_results(output_dir, config, imports, data); } else { if (!skip_functions.empty()) { - data.output_with_skips = ir2_final_out(data, skip_functions); + data.output_with_skips = ir2_final_out(data, imports, skip_functions); } - data.full_output = ir2_final_out(data); + data.full_output = ir2_final_out(data, imports, {}); } for_each_function_def_order_in_obj(data, [&](Function& f, int) { f.ir2 = {}; }); @@ -641,6 +647,7 @@ void ObjectFileDB::ir2_insert_anonymous_functions(int seg, ObjectFileData& data) void ObjectFileDB::ir2_write_results(const std::string& output_dir, const Config& config, + const std::vector& imports, ObjectFileData& obj) { if (obj.linked_data.has_any_functions()) { // todo @@ -649,7 +656,7 @@ void ObjectFileDB::ir2_write_results(const std::string& output_dir, auto file_name = file_util::combine_path(output_dir, obj.to_unique_name() + "_ir2.asm"); file_util::write_text_file(file_name, file_text); - auto final = ir2_final_out(obj); + auto final = ir2_final_out(obj, imports, {}); auto final_name = file_util::combine_path(output_dir, obj.to_unique_name() + "_disasm.gc"); file_util::write_text_file(final_name, final); } @@ -1022,6 +1029,7 @@ bool ObjectFileDB::lookup_function_type(const FunctionName& name, } std::string ObjectFileDB::ir2_final_out(ObjectFileData& data, + const std::vector& imports, const std::unordered_set& skip_functions) { if (data.obj_version == 3) { std::string result; @@ -1029,7 +1037,7 @@ std::string ObjectFileDB::ir2_final_out(ObjectFileData& data, result += "(in-package goal)\n\n"; ASSERT(data.linked_data.functions_by_seg.at(TOP_LEVEL_SEGMENT).size() == 1); auto top_level = data.linked_data.functions_by_seg.at(TOP_LEVEL_SEGMENT).at(0); - result += write_from_top_level(top_level, dts, data.linked_data, skip_functions); + result += write_from_top_level(top_level, dts, data.linked_data, imports, skip_functions); result += "\n\n"; return result; } else { diff --git a/decompiler/analysis/final_output.cpp b/decompiler/analysis/final_output.cpp index d7a6bda302..df6795c7b9 100644 --- a/decompiler/analysis/final_output.cpp +++ b/decompiler/analysis/final_output.cpp @@ -227,6 +227,7 @@ std::string write_from_top_level_form(Form* top_form, const DecompilerTypeSystem& dts, const LinkedObjectFile& file, const std::unordered_set& skip_functions, + const std::vector& imports, const Env& env) { std::vector forms = top_form->elts(); ASSERT(!forms.empty()); @@ -238,6 +239,15 @@ std::string write_from_top_level_form(Form* top_form, } std::string result; + + // import deps: + for (const auto& import : imports) { + result += fmt::format("(import \"{}\")\n", import); + } + if (!imports.empty()) { + result += "\n"; + } + // local vars: auto var_dec = env.local_var_type_list(top_form, 0); if (var_dec.local_vars) { @@ -443,7 +453,7 @@ std::string write_from_top_level_form(Form* top_form, result += ";; this part is debug only\n"; result += "(when *debug-segment*\n"; - result += write_from_top_level_form(entry.body, dts, file, skip_functions, env); + result += write_from_top_level_form(entry.body, dts, file, skip_functions, imports, env); result += ")\n"; } @@ -480,6 +490,7 @@ std::string write_from_top_level_form(Form* top_form, std::string write_from_top_level(const Function& top_level, const DecompilerTypeSystem& dts, const LinkedObjectFile& file, + const std::vector& imports, const std::unordered_set& skip_functions) { auto top_form = top_level.ir2.top_form; if (!top_form) { @@ -499,6 +510,6 @@ std::string write_from_top_level(const Function& top_level, return ";; ERROR: top level has no register use analysis. Cannot decompile.\n\n"; } - return write_from_top_level_form(top_form, dts, file, skip_functions, env); + return write_from_top_level_form(top_form, dts, file, skip_functions, imports, env); } } // namespace decompiler diff --git a/decompiler/analysis/final_output.h b/decompiler/analysis/final_output.h index a414ed29b5..fab7afb239 100644 --- a/decompiler/analysis/final_output.h +++ b/decompiler/analysis/final_output.h @@ -14,7 +14,8 @@ std::string final_defun_out(const Function& func, std::string write_from_top_level(const Function& top_level, const DecompilerTypeSystem& dts, const LinkedObjectFile& file, - const std::unordered_set& skip_functions = {}); + const std::vector& imports, + const std::unordered_set& skip_functions); goos::Object get_arg_list_for_function(const Function& func, const Env& env); goos::Object final_output_lambda(const Function& function); diff --git a/decompiler/config.cpp b/decompiler/config.cpp index d3c3bac37b..ad330b5d1f 100644 --- a/decompiler/config.cpp +++ b/decompiler/config.cpp @@ -232,6 +232,10 @@ Config read_config_file(const std::string& path_to_config_file, config.art_groups_by_function = art_info_json.at("functions").get>(); + auto import_deps = read_json_file_from_config(cfg, "import_deps_file"); + config.import_deps_by_file = + import_deps.get>>(); + return config; } diff --git a/decompiler/config.h b/decompiler/config.h index 33b32d8f63..6974b116ad 100644 --- a/decompiler/config.h +++ b/decompiler/config.h @@ -141,6 +141,8 @@ struct Config { std::unordered_map art_groups_by_file; std::unordered_map art_groups_by_function; + + std::unordered_map> import_deps_by_file; }; Config read_config_file(const std::string& path_to_config_file, diff --git a/decompiler/config/jak1_ntsc_black_label.jsonc b/decompiler/config/jak1_ntsc_black_label.jsonc index 24ce867814..85a75cff27 100644 --- a/decompiler/config/jak1_ntsc_black_label.jsonc +++ b/decompiler/config/jak1_ntsc_black_label.jsonc @@ -77,6 +77,7 @@ "hacks_file": "decompiler/config/jak1_ntsc_black_label/hacks.jsonc", "inputs_file": "decompiler/config/jak1_ntsc_black_label/inputs.jsonc", "art_info_file": "decompiler/config/jak1_ntsc_black_label/art_info.jsonc", + "import_deps_file": "decompiler/config/jak1_ntsc_black_label/import_deps.jsonc", // optional: a predetermined object file name map from a file. // this will make decompilation naming consistent even if you only run on some objects. diff --git a/decompiler/config/jak1_ntsc_black_label/import_deps.jsonc b/decompiler/config/jak1_ntsc_black_label/import_deps.jsonc new file mode 100644 index 0000000000..840f5769fa --- /dev/null +++ b/decompiler/config/jak1_ntsc_black_label/import_deps.jsonc @@ -0,0 +1,660 @@ +{ + "jungle-obs": [ + "goal_src/import/maindoor-ag.gc", + "goal_src/import/junglecam-ag.gc", + "goal_src/import/precurbridge-ag.gc", + "goal_src/import/sidedoor-ag.gc", + "goal_src/import/towertop-ag.gc", + "goal_src/import/logtrap-ag.gc", + "goal_src/import/lurkerm-tall-sail-ag.gc", + "goal_src/import/medres-firecanyon-ag.gc", + "goal_src/import/lurkerm-piston-ag.gc", + "goal_src/import/accordian-ag.gc" + ], + "assistant-village2": [ + "goal_src/import/jaws-ag.gc", + "goal_src/import/assistant-village2-ag.gc" + ], + "floating-launcher": [ + "goal_src/import/floating-launcher-ag.gc" + ], + "jungle-mirrors": [ + "goal_src/import/periscope-ag.gc", + "goal_src/import/reflector-mirror-ag.gc" + ], + "citb-drop-plat": [ + "goal_src/import/citb-drop-plat-ag.gc" + ], + "rolling-robber": [ + "goal_src/import/robber-ag.gc" + ], + "balloonlurker": [ + "goal_src/import/balloonlurker-ag.gc" + ], + "racer": [ + "goal_src/import/racer-ag.gc" + ], + "mistycannon": [ + "goal_src/import/sack-ag.gc", + "goal_src/import/mistycannon-ag.gc" + ], + "beach-obs": [ + "goal_src/import/ecoventrock-ag.gc", + "goal_src/import/beachcam-ag.gc", + "goal_src/import/windmill-one-ag.gc", + "goal_src/import/kickrock-ag.gc", + "goal_src/import/harvester-ag.gc", + "goal_src/import/flutflutegg-ag.gc", + "goal_src/import/grottopole-ag.gc", + "goal_src/import/flutflut-ag.gc", + "goal_src/import/bladeassm-ag.gc" + ], + "snow-flutflut-obs": [ + "goal_src/import/snow-button-ag.gc", + "goal_src/import/flutflut-plat-med-ag.gc", + "goal_src/import/flutflut-plat-small-ag.gc", + "goal_src/import/flutflut-plat-large-ag.gc" + ], + "snow-ball": [ + "goal_src/import/snow-ball-ag.gc" + ], + "sun-iris-door": [ + "goal_src/import/sun-iris-door-ag.gc" + ], + "bouncer": [ + "goal_src/import/bounceytarp-ag.gc" + ], + "swamp-blimp": [ + "goal_src/import/swamp-tetherrock-ag.gc", + "goal_src/import/swamp-rope-ag.gc", + "goal_src/import/swamp-tetherrock-explode-ag.gc", + "goal_src/import/precursor-arm-ag.gc", + "goal_src/import/swamp-blimp-ag.gc" + ], + "village-obs": [ + "goal_src/import/windmill-sail-ag.gc", + "goal_src/import/medres-beach3-ag.gc", + "goal_src/import/mayorgears-ag.gc", + "goal_src/import/medres-village11-ag.gc", + "goal_src/import/revcycleprop-ag.gc", + "goal_src/import/medres-jungle2-ag.gc", + "goal_src/import/revcycle-ag.gc", + "goal_src/import/medres-misty-ag.gc", + "goal_src/import/sagesail-ag.gc", + "goal_src/import/windspinner-ag.gc", + "goal_src/import/medres-jungle1-ag.gc", + "goal_src/import/medres-village12-ag.gc", + "goal_src/import/hutlamp-ag.gc", + "goal_src/import/medres-jungle-ag.gc", + "goal_src/import/medres-village13-ag.gc", + "goal_src/import/medres-beach2-ag.gc", + "goal_src/import/villa-starfish-ag.gc", + "goal_src/import/medres-training-ag.gc", + "goal_src/import/medres-beach-ag.gc", + "goal_src/import/reflector-middle-ag.gc", + "goal_src/import/medres-beach1-ag.gc" + ], + "swamp-bat": [ + "goal_src/import/swamp-bat-ag.gc" + ], + "crates": [ + "goal_src/import/crate-ag.gc" + ], + "lurkerpuppy": [ + "goal_src/import/lurkerpuppy-ag.gc" + ], + "light-eco": [ + "goal_src/import/light-eco-ag.gc" + ], + "voicebox": [ + "goal_src/import/speaker-ag.gc" + ], + "green-eco-lurker": [ + "goal_src/import/green-eco-lurker-ag.gc" + ], + "helix-water": [ + "goal_src/import/helix-slide-door-ag.gc", + "goal_src/import/helix-button-ag.gc" + ], + "billy": [ + "goal_src/import/farthy-snack-ag.gc", + "goal_src/import/billy-ag.gc", + "goal_src/import/billy-sidekick-ag.gc" + ], + "snow-ram": [ + "goal_src/import/ram-ag.gc" + ], + "blocking-plane": [ + "goal_src/import/ef-plane-ag.gc" + ], + "target-util": [ + "goal_src/import/eichar-ag.gc" + ], + "beach-rocks": [ + "goal_src/import/lrocklrg-ag.gc" + ], + "sunken-obs": [ + "goal_src/import/seaweed-ag.gc", + "goal_src/import/sunkencam-ag.gc", + "goal_src/import/side-to-side-plat-ag.gc" + ], + "qbert-plat": [ + "goal_src/import/qbert-plat-ag.gc", + "goal_src/import/qbert-plat-on-ag.gc" + ], + "sun-exit-chamber": [ + "goal_src/import/exit-chamber-ag.gc", + "goal_src/import/blue-eco-charger-ag.gc", + "goal_src/import/blue-eco-charger-orb-ag.gc" + ], + "mother-spider": [ + "goal_src/import/mother-spider-ag.gc" + ], + "darkvine": [ + "goal_src/import/darkvine-ag.gc" + ], + "sidekick": [ + "goal_src/import/sidekick-ag.gc" + ], + "kermit": [ + "goal_src/import/kermit-ag.gc" + ], + "firecanyon-obs": [ + "goal_src/import/crate-darkeco-cluster-ag.gc", + "goal_src/import/spike-ag.gc" + ], + "orbit-plat": [ + "goal_src/import/orbit-plat-ag.gc", + "goal_src/import/orbit-plat-bottom-ag.gc" + ], + "fishermans-boat": [ + "goal_src/import/evilbro-ag.gc", + "goal_src/import/fishermans-boat-ag.gc", + "goal_src/import/evilsis-ag.gc" + ], + "driller-lurker": [ + "goal_src/import/driller-lurker-ag.gc" + ], + "sidekick-human": [ + "goal_src/import/darkecocan-ag.gc", + "goal_src/import/sidekick-human-ag.gc", + "goal_src/import/evilbro-ag.gc", + "goal_src/import/evilsis-ag.gc" + ], + "misty-conveyor": [ + "goal_src/import/keg-conveyor-ag.gc", + "goal_src/import/keg-conveyor-paddle-ag.gc", + "goal_src/import/keg-ag.gc" + ], + "snow-ram-boss": [ + "goal_src/import/ram-boss-ag.gc" + ], + "junglefish": [ + "goal_src/import/junglefish-ag.gc" + ], + "swamp-obs": [ + "goal_src/import/swamp-rock-ag.gc", + "goal_src/import/swamp-spike-ag.gc", + "goal_src/import/swampcam-ag.gc", + "goal_src/import/tar-plat-ag.gc", + "goal_src/import/balance-plat-ag.gc" + ], + "snow-bumper": [ + "goal_src/import/snow-bumper-ag.gc" + ], + "darkcave-obs": [ + "goal_src/import/cavecrystal-ag.gc" + ], + "junglesnake": [ + "goal_src/import/junglesnake-ag.gc" + ], + "evilbro": [ + "goal_src/import/evilbro-ag.gc", + "goal_src/import/evilsis-ag.gc" + ], + "bully": [ + "goal_src/import/bully-ag.gc" + ], + "square-platform": [ + "goal_src/import/square-platform-ag.gc" + ], + "dark-crystal": [ + "goal_src/import/dark-crystal-ag.gc" + ], + "sage-village3": [ + "goal_src/import/evilsis-village3-ag.gc", + "goal_src/import/sage-village3-ag.gc", + "goal_src/import/evilbro-village3-ag.gc" + ], + "yakow": [ + "goal_src/import/village1cam-ag.gc", + "goal_src/import/yakow-ag.gc" + ], + "plat-button": [ + "goal_src/import/plat-button-ag.gc" + ], + "hud-classes": [ + "goal_src/import/fuelcell-naked-ag.gc" + ], + "misty-obs": [ + "goal_src/import/breakaway-right-ag.gc", + "goal_src/import/boatpaddle-ag.gc", + "goal_src/import/breakaway-mid-ag.gc", + "goal_src/import/mis-bone-platform-ag.gc", + "goal_src/import/breakaway-left-ag.gc", + "goal_src/import/windturbine-ag.gc", + "goal_src/import/mistycam-ag.gc", + "goal_src/import/mis-bone-bridge-ag.gc" + ], + "rolling-obs": [ + "goal_src/import/rollingcam-ag.gc", + "goal_src/import/pusher-ag.gc", + "goal_src/import/happy-plant-ag.gc", + "goal_src/import/dark-plant-ag.gc", + "goal_src/import/rolling-start-ag.gc" + ], + "aphid": [ + "goal_src/import/aphid-lurker-ag.gc" + ], + "plat-eco": [ + "goal_src/import/plat-eco-ag.gc" + ], + "assistant": [ + "goal_src/import/assistant-ag.gc" + ], + "flutflut-bluehut": [ + "goal_src/import/flutflut-bluehut-ag.gc" + ], + "explorer": [ + "goal_src/import/explorer-ag.gc" + ], + "rolling-lightning-mole": [ + "goal_src/import/lightning-mole-ag.gc" + ], + "plat": [ + "goal_src/import/plat-sunken-ag.gc", + "goal_src/import/plat-ag.gc", + "goal_src/import/plat-jungleb-ag.gc" + ], + "flutflut": [ + "goal_src/import/flut-saddle-ag.gc" + ], + "training-obs": [ + "goal_src/import/scarecrow-b-ag.gc", + "goal_src/import/pontoonfive-ag.gc", + "goal_src/import/trainingcam-ag.gc", + "goal_src/import/scarecrow-a-ag.gc", + "goal_src/import/jng-iris-door-ag.gc" + ], + "snow-obs": [ + "goal_src/import/snowcam-ag.gc", + "goal_src/import/snow-fort-gate-ag.gc", + "goal_src/import/snow-eggtop-ag.gc", + "goal_src/import/snow-spatula-ag.gc", + "goal_src/import/snow-switch-ag.gc", + "goal_src/import/snow-gears-ag.gc", + "goal_src/import/snowpusher-ag.gc", + "goal_src/import/snow-log-ag.gc" + ], + "citadel-obs": [ + "goal_src/import/citb-generator-ag.gc", + "goal_src/import/citb-launcher-ag.gc", + "goal_src/import/citb-button-ag.gc", + "goal_src/import/citadelcam-ag.gc", + "goal_src/import/citb-hose-ag.gc", + "goal_src/import/citb-robotboss-ag.gc", + "goal_src/import/citb-coil-ag.gc", + "goal_src/import/citb-arm-shoulder-ag.gc", + "goal_src/import/citb-iris-door-ag.gc", + "goal_src/import/citb-disc-ag.gc", + "goal_src/import/citb-arm-ag.gc" + ], + "citadel-sages": [ + "goal_src/import/green-sagecage-ag.gc", + "goal_src/import/yellowsage-ag.gc", + "goal_src/import/redsage-ag.gc", + "goal_src/import/evilbro-citadel-ag.gc", + "goal_src/import/evilsis-citadel-ag.gc", + "goal_src/import/citb-sagecage-ag.gc", + "goal_src/import/bluesage-ag.gc" + ], + "lurkercrab": [ + "goal_src/import/lurkercrab-ag.gc" + ], + "muse": [ + "goal_src/import/muse-ag.gc" + ], + "puffer": [ + "goal_src/import/puffer-ag.gc" + ], + "robotboss-misc": [ + "goal_src/import/silodoor-ag.gc", + "goal_src/import/ecoclaw-ag.gc", + "goal_src/import/finalbosscam-ag.gc" + ], + "sage-finalboss": [ + "goal_src/import/plat-eco-finalboss-ag.gc", + "goal_src/import/green-sagecage-ag.gc", + "goal_src/import/jak-white-ag.gc", + "goal_src/import/robotboss-cinematic-ag.gc" + ], + "target-racer-h": [ + "goal_src/import/balloon-ag.gc" + ], + "gambler": [ + "goal_src/import/gambler-ag.gc" + ], + "lavatube-obs": [ + "goal_src/import/lavafallsewerb-ag.gc", + "goal_src/import/lavashortcut-ag.gc", + "goal_src/import/lavabase-ag.gc", + "goal_src/import/lavafallsewera-ag.gc", + "goal_src/import/chainmine-ag.gc", + "goal_src/import/lavafall-ag.gc", + "goal_src/import/lavaballoon-ag.gc", + "goal_src/import/darkecobarrel-ag.gc", + "goal_src/import/lavayellowtarp-ag.gc" + ], + "assistant-firecanyon": [ + "goal_src/import/assistant-firecanyon-ag.gc" + ], + "sharkey": [ + "goal_src/import/sharkey-ag.gc" + ], + "bonelurker": [ + "goal_src/import/bonelurker-ag.gc" + ], + "pelican": [ + "goal_src/import/pelican-ag.gc" + ], + "warrior": [ + "goal_src/import/warrior-ag.gc" + ], + "maincave-obs": [ + "goal_src/import/caveelevator-ag.gc", + "goal_src/import/cavespatulatwo-ag.gc", + "goal_src/import/cavetrapdoor-ag.gc", + "goal_src/import/maincavecam-ag.gc", + "goal_src/import/cavecrusher-ag.gc", + "goal_src/import/cavespatula-darkcave-ag.gc" + ], + "fisher": [ + "goal_src/import/fish-net-ag.gc", + "goal_src/import/fisher-ag.gc", + "goal_src/import/catch-fisha-ag.gc", + "goal_src/import/catch-fishb-ag.gc", + "goal_src/import/catch-fishc-ag.gc" + ], + "villagep-obs": [ + "goal_src/import/warp-gate-switch-ag.gc", + "goal_src/import/village-cam-ag.gc" + ], + "citb-bunny": [ + "goal_src/import/citb-bunny-ag.gc" + ], + "flying-lurker": [ + "goal_src/import/ogrecam-ag.gc", + "goal_src/import/plunger-lurker-ag.gc", + "goal_src/import/flying-lurker-ag.gc" + ], + "shover": [ + "goal_src/import/shover-ag.gc" + ], + "ice-cube": [ + "goal_src/import/ice-cube-ag.gc", + "goal_src/import/ice-cube-break-ag.gc" + ], + "baby-spider": [ + "goal_src/import/baby-spider-ag.gc" + ], + "minecart": [ + "goal_src/import/minecartsteel-ag.gc" + ], + "bird-lady": [ + "goal_src/import/bird-lady-ag.gc" + ], + "spider-egg": [ + "goal_src/import/spider-egg-ag.gc" + ], + "wall-plat": [ + "goal_src/import/wall-plat-ag.gc" + ], + "oracle": [ + "goal_src/import/oracle-ag.gc" + ], + "basebutton": [ + "goal_src/import/generic-button-ag.gc" + ], + "miners": [ + "goal_src/import/minershort-ag.gc", + "goal_src/import/cavegem-ag.gc", + "goal_src/import/minertall-ag.gc" + ], + "farmer": [ + "goal_src/import/farmer-ag.gc" + ], + "rolling-race-ring": [ + "goal_src/import/race-ring-ag.gc" + ], + "quicksandlurker": [ + "goal_src/import/quicksandlurker-ag.gc" + ], + "misty-warehouse": [ + "goal_src/import/silostep-ag.gc", + "goal_src/import/rounddoor-ag.gc" + ], + "yeti": [ + "goal_src/import/yeti-ag.gc" + ], + "hopper": [ + "goal_src/import/hopper-ag.gc" + ], + "target-death": [ + "goal_src/import/deathcam-ag.gc" + ], + "spiderwebs": [ + "goal_src/import/spiderwebs-ag.gc" + ], + "misty-teetertotter": [ + "goal_src/import/teetertotter-ag.gc" + ], + "village2-obs": [ + "goal_src/import/pontoonfive-ag.gc", + "goal_src/import/allpontoons-ag.gc", + "goal_src/import/medres-village2-ag.gc", + "goal_src/import/exit-chamber-dummy-ag.gc", + "goal_src/import/village2cam-ag.gc", + "goal_src/import/fireboulder-ag.gc", + "goal_src/import/ogreboss-village2-ag.gc", + "goal_src/import/ceilingflag-ag.gc", + "goal_src/import/medres-rolling1-ag.gc", + "goal_src/import/medres-rolling-ag.gc", + "goal_src/import/pontoonten-ag.gc" + ], + "plant-boss": [ + "goal_src/import/plant-boss-ag.gc" + ], + "snow-bunny": [ + "goal_src/import/snow-bunny-ag.gc" + ], + "sunken-elevator": [ + "goal_src/import/sunken-elevator-ag.gc" + ], + "sage": [ + "goal_src/import/sage-ag.gc" + ], + "robotboss-h": [ + "goal_src/import/robotboss-ag.gc" + ], + "geologist": [ + "goal_src/import/geologist-ag.gc" + ], + "village3-obs": [ + "goal_src/import/medres-ogre-ag.gc", + "goal_src/import/medres-finalboss-ag.gc", + "goal_src/import/pistons-ag.gc", + "goal_src/import/gondola-ag.gc", + "goal_src/import/medres-ogre2-ag.gc", + "goal_src/import/medres-ogre3-ag.gc", + "goal_src/import/gondolacables-ag.gc" + ], + "double-lurker": [ + "goal_src/import/double-lurker-ag.gc", + "goal_src/import/double-lurker-top-ag.gc" + ], + "ogreboss": [ + "goal_src/import/ogreboss-ag.gc" + ], + "swamp-rat": [ + "goal_src/import/swamp-rat-ag.gc" + ], + "sculptor": [ + "goal_src/import/sculptor-muse-ag.gc", + "goal_src/import/sculptor-ag.gc" + ], + "seagull": [ + "goal_src/import/seagull-ag.gc" + ], + "mayor": [ + "goal_src/import/mayor-ag.gc" + ], + "final-door": [ + "goal_src/import/power-left-ag.gc", + "goal_src/import/power-right-ag.gc", + "goal_src/import/powercellalt-ag.gc" + ], + "assistant-lavatube": [ + "goal_src/import/assistant-lavatube-start-ag.gc" + ], + "launcherdoor": [ + "goal_src/import/launcherdoor-maincave-ag.gc", + "goal_src/import/launcherdoor-ag.gc" + ], + "title-obs": [ + "goal_src/import/logo-cam-ag.gc", + "goal_src/import/logo-black-ag.gc", + "goal_src/import/logo-ag.gc", + "goal_src/import/logo-volumes-ag.gc", + "goal_src/import/ndi-cam-ag.gc", + "goal_src/import/ndi-ag.gc", + "goal_src/import/ndi-volumes-ag.gc" + ], + "whirlpool": [ + "goal_src/import/whirlpool-ag.gc" + ], + "lurkerworm": [ + "goal_src/import/lurkerworm-ag.gc" + ], + "collectables": [ + "goal_src/import/buzzer-ag.gc", + "goal_src/import/ecovalve-ag.gc", + "goal_src/import/money-ag.gc", + "goal_src/import/fuel-cell-ag.gc" + ], + "water-anim": [ + "goal_src/import/water-anim-maincave-ag.gc", + "goal_src/import/water-anim-village3-ag.gc", + "goal_src/import/water-anim-finalboss-ag.gc", + "goal_src/import/water-anim-maincave-water-ag.gc", + "goal_src/import/water-anim-sunken-ag.gc", + "goal_src/import/water-anim-lavatube-ag.gc", + "goal_src/import/water-anim-robocave-ag.gc", + "goal_src/import/water-anim-jungle-ag.gc", + "goal_src/import/water-anim-ogre-ag.gc", + "goal_src/import/water-anim-training-ag.gc", + "goal_src/import/water-anim-darkcave-ag.gc", + "goal_src/import/water-anim-village1-ag.gc", + "goal_src/import/water-anim-rolling-ag.gc", + "goal_src/import/water-anim-misty-ag.gc", + "goal_src/import/water-anim-sunken-dark-eco-ag.gc", + "goal_src/import/water-anim-village2-ag.gc" + ], + "ropebridge": [ + "goal_src/import/vil3-bridge-36-ag.gc", + "goal_src/import/ropebridge-36-ag.gc", + "goal_src/import/ropebridge-32-ag.gc", + "goal_src/import/ropebridge-52-ag.gc", + "goal_src/import/snow-bridge-36-ag.gc", + "goal_src/import/ropebridge-70-ag.gc" + ], + "robotboss": [ + "goal_src/import/robotboss-redeco-ag.gc", + "goal_src/import/robotboss-blueeco-ag.gc", + "goal_src/import/robotboss-yelloweco-ag.gc" + ], + "steam-cap": [ + "goal_src/import/steam-cap-ag.gc" + ], + "ogre-obs": [ + "goal_src/import/ogre-step-ag.gc", + "goal_src/import/tntbarrel-ag.gc", + "goal_src/import/ogre-bridge-ag.gc", + "goal_src/import/shortcut-boulder-ag.gc", + "goal_src/import/medres-snow-ag.gc", + "goal_src/import/ogre-bridgeend-ag.gc", + "goal_src/import/ogre-isle-ag.gc" + ], + "assistant-village3": [ + "goal_src/import/assistant-village3-ag.gc" + ], + "babak": [ + "goal_src/import/babak-ag.gc" + ], + "lavatube-energy": [ + "goal_src/import/energyball-ag.gc", + "goal_src/import/energybase-ag.gc", + "goal_src/import/energyhub-ag.gc", + "goal_src/import/energyarm-ag.gc", + "goal_src/import/energydoor-ag.gc" + ], + "mother-spider-egg": [ + "goal_src/import/spider-egg-ag.gc" + ], + "plat-flip": [ + "goal_src/import/plat-flip-ag.gc" + ], + "assistant-citadel": [ + "goal_src/import/assistant-lavatube-end-ag.gc" + ], + "bird-lady-beach": [ + "goal_src/import/bird-lady-beach-ag.gc" + ], + "orb-cache": [ + "goal_src/import/orb-cache-top-ag.gc" + ], + "robotboss-weapon": [ + "goal_src/import/darkecobomb-ag.gc", + "goal_src/import/greenshot-ag.gc", + "goal_src/import/redring-ag.gc" + ], + "citb-plat": [ + "goal_src/import/citb-exit-plat-ag.gc", + "goal_src/import/plat-eco-citb-ag.gc", + "goal_src/import/plat-citb-ag.gc", + "goal_src/import/citb-stopbox-ag.gc", + "goal_src/import/citb-firehose-ag.gc", + "goal_src/import/citb-rotatebox-ag.gc", + "goal_src/import/citb-chain-plat-ag.gc", + "goal_src/import/citb-donut-ag.gc" + ], + "gnawer": [ + "goal_src/import/gnawer-ag.gc" + ], + "jungleb-obs": [ + "goal_src/import/eggtop-ag.gc", + "goal_src/import/jng-iris-door-ag.gc" + ], + "swamp-rat-nest": [ + "goal_src/import/swamp-rat-nest-ag.gc" + ], + "wedge-plats": [ + "goal_src/import/wedge-plat-outer-ag.gc", + "goal_src/import/wedge-plat-ag.gc" + ], + "sunken-fish": [ + "goal_src/import/sunkenfisha-ag.gc" + ], + "sage-bluehut": [ + "goal_src/import/sage-bluehut-ag.gc" + ] +} diff --git a/decompiler/level_extractor/extract_merc.cpp b/decompiler/level_extractor/extract_merc.cpp index def6832276..1bb59f9f57 100644 --- a/decompiler/level_extractor/extract_merc.cpp +++ b/decompiler/level_extractor/extract_merc.cpp @@ -516,10 +516,7 @@ void handle_frag(const std::string& debug_name, * Build OpenGL index list from a single GIF packet. * TODO: should check we aren't putting in x x R x x R */ -std::vector index_list_from_packet(u32 vtx_ptr, - u32 nloop, - const MercMemory& memory, - const std::vector& vertices) { +std::vector index_list_from_packet(u32 vtx_ptr, u32 nloop, const MercMemory& memory) { std::vector result; u32 prev_vtx = UINT32_MAX; @@ -799,7 +796,7 @@ ConvertedMercEffect convert_merc_effect(const MercEffect& input_effect, for (size_t i = first_draw_to_update; i < result.draws.size(); i++) { auto& draw = result.draws[i]; draw.indices = index_list_from_packet(draw.vtx_offset, draw.vtx_nloop, - merc_memories[memory_buffer_toggle], result.vertices); + merc_memories[memory_buffer_toggle]); } memory_buffer_toggle ^= 1; diff --git a/goal_src/build/all_imports.gc b/goal_src/build/all_imports.gc deleted file mode 100644 index c7ef107900..0000000000 --- a/goal_src/build/all_imports.gc +++ /dev/null @@ -1,371 +0,0 @@ -(defglobalconstant all-import-files - ( - "goal_src/import/fuel-cell-ag.gc" - "goal_src/import/money-ag.gc" - "goal_src/import/buzzer-ag.gc" - "goal_src/import/ecovalve-ag.gc" - "goal_src/import/crate-ag.gc" - "goal_src/import/speaker-ag.gc" - "goal_src/import/fuelcell-naked-ag.gc" - "goal_src/import/eichar-ag.gc" - "goal_src/import/sidekick-ag.gc" - "goal_src/import/deathcam-ag.gc" - "goal_src/import/babak-ag.gc" - "goal_src/import/barrel-ag.gc" - "goal_src/import/beachcam-ag.gc" - "goal_src/import/bird-lady-ag.gc" - "goal_src/import/bird-lady-beach-ag.gc" - "goal_src/import/bladeassm-ag.gc" - "goal_src/import/ecoventrock-ag.gc" - "goal_src/import/flutflut-ag.gc" - "goal_src/import/flutflutegg-ag.gc" - "goal_src/import/grottopole-ag.gc" - "goal_src/import/harvester-ag.gc" - "goal_src/import/kickrock-ag.gc" - "goal_src/import/lrocklrg-ag.gc" - "goal_src/import/lurkercrab-ag.gc" - "goal_src/import/lurkerpuppy-ag.gc" - "goal_src/import/lurkerworm-ag.gc" - "goal_src/import/mayor-ag.gc" - "goal_src/import/mistycannon-ag.gc" - "goal_src/import/orb-cache-top-ag.gc" - "goal_src/import/pelican-ag.gc" - "goal_src/import/sack-ag.gc" - "goal_src/import/sculptor-ag.gc" - "goal_src/import/sculptor-muse-ag.gc" - "goal_src/import/seagull-ag.gc" - "goal_src/import/sharkey-ag.gc" - "goal_src/import/windmill-one-ag.gc" - "goal_src/import/assistant-lavatube-end-ag.gc" - "goal_src/import/bluesage-ag.gc" - "goal_src/import/citadelcam-ag.gc" - "goal_src/import/citb-arm-ag.gc" - "goal_src/import/citb-arm-shoulder-ag.gc" - "goal_src/import/citb-bunny-ag.gc" - "goal_src/import/citb-button-ag.gc" - "goal_src/import/citb-chain-plat-ag.gc" - "goal_src/import/citb-chains-ag.gc" - "goal_src/import/citb-coil-ag.gc" - "goal_src/import/citb-disc-ag.gc" - "goal_src/import/citb-donut-ag.gc" - "goal_src/import/citb-drop-plat-ag.gc" - "goal_src/import/citb-exit-plat-ag.gc" - "goal_src/import/citb-firehose-ag.gc" - "goal_src/import/citb-generator-ag.gc" - "goal_src/import/citb-hose-ag.gc" - "goal_src/import/citb-iris-door-ag.gc" - "goal_src/import/citb-launcher-ag.gc" - "goal_src/import/citb-robotboss-ag.gc" - "goal_src/import/citb-rotatebox-ag.gc" - "goal_src/import/citb-sagecage-ag.gc" - "goal_src/import/citb-stopbox-ag.gc" - "goal_src/import/evilbro-citadel-ag.gc" - "goal_src/import/evilsis-citadel-ag.gc" - "goal_src/import/green-sagecage-ag.gc" - "goal_src/import/plat-citb-ag.gc" - "goal_src/import/plat-eco-citb-ag.gc" - "goal_src/import/redsage-ag.gc" - "goal_src/import/warp-gate-switch-ag.gc" - "goal_src/import/warpgate-ag.gc" - "goal_src/import/yellowsage-ag.gc" - "goal_src/import/baby-spider-ag.gc" - "goal_src/import/cavecrystal-ag.gc" - "goal_src/import/caveelevator-ag.gc" - "goal_src/import/cavespatula-darkcave-ag.gc" - "goal_src/import/cavetrapdoor-ag.gc" - "goal_src/import/dark-crystal-ag.gc" - "goal_src/import/mother-spider-ag.gc" - "goal_src/import/spider-egg-ag.gc" - "goal_src/import/water-anim-darkcave-ag.gc" - "goal_src/import/darkecobomb-ag.gc" - "goal_src/import/ecoclaw-ag.gc" - "goal_src/import/finalbosscam-ag.gc" - "goal_src/import/green-eco-lurker-ag.gc" - "goal_src/import/greenshot-ag.gc" - "goal_src/import/jak-white-ag.gc" - "goal_src/import/light-eco-ag.gc" - "goal_src/import/plat-eco-finalboss-ag.gc" - "goal_src/import/power-left-ag.gc" - "goal_src/import/power-right-ag.gc" - "goal_src/import/powercellalt-ag.gc" - "goal_src/import/redring-ag.gc" - "goal_src/import/robotboss-ag.gc" - "goal_src/import/robotboss-blueeco-ag.gc" - "goal_src/import/robotboss-cinematic-ag.gc" - "goal_src/import/robotboss-redeco-ag.gc" - "goal_src/import/robotboss-yelloweco-ag.gc" - "goal_src/import/silodoor-ag.gc" - "goal_src/import/water-anim-finalboss-ag.gc" - "goal_src/import/evilbro-ag.gc" - "goal_src/import/evilsis-ag.gc" - "goal_src/import/plant-boss-main+0-ag.gc" - "goal_src/import/aphid-lurker-ag.gc" - "goal_src/import/darkvine-ag.gc" - "goal_src/import/eggtop-ag.gc" - "goal_src/import/jng-iris-door-ag.gc" - "goal_src/import/plant-boss-ag.gc" - "goal_src/import/plat-flip-ag.gc" - "goal_src/import/plat-jungleb-ag.gc" - "goal_src/import/eichar-fish+0-ag.gc" - "goal_src/import/accordian-ag.gc" - "goal_src/import/bounceytarp-ag.gc" - "goal_src/import/catch-fisha-ag.gc" - "goal_src/import/catch-fishb-ag.gc" - "goal_src/import/catch-fishc-ag.gc" - "goal_src/import/fish-net-ag.gc" - "goal_src/import/fisher-ag.gc" - "goal_src/import/hopper-ag.gc" - "goal_src/import/junglecam-ag.gc" - "goal_src/import/junglefish-ag.gc" - "goal_src/import/junglesnake-ag.gc" - "goal_src/import/launcherdoor-ag.gc" - "goal_src/import/logtrap-ag.gc" - "goal_src/import/lurkerm-piston-ag.gc" - "goal_src/import/lurkerm-tall-sail-ag.gc" - "goal_src/import/maindoor-ag.gc" - "goal_src/import/medres-firecanyon-ag.gc" - "goal_src/import/periscope-ag.gc" - "goal_src/import/plat-button-ag.gc" - "goal_src/import/plat-eco-ag.gc" - "goal_src/import/precurbridge-ag.gc" - "goal_src/import/reflector-mirror-ag.gc" - "goal_src/import/ropebridge-52-ag.gc" - "goal_src/import/ropebridge-70-ag.gc" - "goal_src/import/sidedoor-ag.gc" - "goal_src/import/towertop-ag.gc" - "goal_src/import/water-anim-jungle-ag.gc" - "goal_src/import/eichar-racer+0-ag.gc" - "goal_src/import/eichar-flut+0-ag.gc" - "goal_src/import/eichar-tube+0-ag.gc" - "goal_src/import/eichar-pole+0-ag.gc" - "goal_src/import/eichar-ice+0-ag.gc" - "goal_src/import/assistant-firecanyon-ag.gc" - "goal_src/import/balloon-ag.gc" - "goal_src/import/crate-darkeco-cluster-ag.gc" - "goal_src/import/ef-plane-ag.gc" - "goal_src/import/racer-ag.gc" - "goal_src/import/spike-ag.gc" - "goal_src/import/assistant-lavatube-start-ag.gc" - "goal_src/import/chainmine-ag.gc" - "goal_src/import/darkecobarrel-ag.gc" - "goal_src/import/energyarm-ag.gc" - "goal_src/import/energyball-ag.gc" - "goal_src/import/energybase-ag.gc" - "goal_src/import/energydoor-ag.gc" - "goal_src/import/energyhub-ag.gc" - "goal_src/import/lavaballoon-ag.gc" - "goal_src/import/lavabase-ag.gc" - "goal_src/import/lavafall-ag.gc" - "goal_src/import/lavafallsewera-ag.gc" - "goal_src/import/lavafallsewerb-ag.gc" - "goal_src/import/lavashortcut-ag.gc" - "goal_src/import/lavayellowtarp-ag.gc" - "goal_src/import/water-anim-lavatube-ag.gc" - "goal_src/import/driller-lurker-ag.gc" - "goal_src/import/gnawer-ag.gc" - "goal_src/import/launcherdoor-maincave-ag.gc" - "goal_src/import/maincavecam-ag.gc" - "goal_src/import/plat-ag.gc" - "goal_src/import/spiderwebs-ag.gc" - "goal_src/import/water-anim-maincave-ag.gc" - "goal_src/import/water-anim-maincave-water-ag.gc" - "goal_src/import/balloonlurker-ag.gc" - "goal_src/import/boatpaddle-ag.gc" - "goal_src/import/bonelurker-ag.gc" - "goal_src/import/breakaway-left-ag.gc" - "goal_src/import/breakaway-mid-ag.gc" - "goal_src/import/breakaway-right-ag.gc" - "goal_src/import/darkecocan-ag.gc" - "goal_src/import/keg-ag.gc" - "goal_src/import/keg-conveyor-ag.gc" - "goal_src/import/keg-conveyor-paddle-ag.gc" - "goal_src/import/mis-bone-bridge-ag.gc" - "goal_src/import/mis-bone-platform-ag.gc" - "goal_src/import/mistycam-ag.gc" - "goal_src/import/muse-ag.gc" - "goal_src/import/quicksandlurker-ag.gc" - "goal_src/import/ropebridge-36-ag.gc" - "goal_src/import/rounddoor-ag.gc" - "goal_src/import/sidekick-human-ag.gc" - "goal_src/import/silostep-ag.gc" - "goal_src/import/teetertotter-ag.gc" - "goal_src/import/water-anim-misty-ag.gc" - "goal_src/import/wheel-ag.gc" - "goal_src/import/windturbine-ag.gc" - "goal_src/import/flying-lurker-ag.gc" - "goal_src/import/medres-snow-ag.gc" - "goal_src/import/ogre-bridge-ag.gc" - "goal_src/import/ogre-bridgeend-ag.gc" - "goal_src/import/ogre-isle-ag.gc" - "goal_src/import/ogre-step-ag.gc" - "goal_src/import/ogreboss-ag.gc" - "goal_src/import/ogrecam-ag.gc" - "goal_src/import/plunger-lurker-ag.gc" - "goal_src/import/shortcut-boulder-ag.gc" - "goal_src/import/tntbarrel-ag.gc" - "goal_src/import/water-anim-ogre-ag.gc" - "goal_src/import/cavecrusher-ag.gc" - "goal_src/import/cavespatulatwo-ag.gc" - "goal_src/import/water-anim-robocave-ag.gc" - "goal_src/import/dark-plant-ag.gc" - "goal_src/import/happy-plant-ag.gc" - "goal_src/import/lightning-mole-ag.gc" - "goal_src/import/pusher-ag.gc" - "goal_src/import/race-ring-ag.gc" - "goal_src/import/robber-ag.gc" - "goal_src/import/rolling-start-ag.gc" - "goal_src/import/rollingcam-ag.gc" - "goal_src/import/water-anim-rolling-ag.gc" - "goal_src/import/flut-saddle-ag.gc" - "goal_src/import/flutflut-plat-large-ag.gc" - "goal_src/import/flutflut-plat-med-ag.gc" - "goal_src/import/flutflut-plat-small-ag.gc" - "goal_src/import/ice-cube-ag.gc" - "goal_src/import/ice-cube-break-ag.gc" - "goal_src/import/ram-ag.gc" - "goal_src/import/ram-boss-ag.gc" - "goal_src/import/snow-ball-ag.gc" - "goal_src/import/snow-bridge-36-ag.gc" - "goal_src/import/snow-bumper-ag.gc" - "goal_src/import/snow-bunny-ag.gc" - "goal_src/import/snow-button-ag.gc" - "goal_src/import/snow-eggtop-ag.gc" - "goal_src/import/snow-fort-gate-ag.gc" - "goal_src/import/snow-gears-ag.gc" - "goal_src/import/snow-log-ag.gc" - "goal_src/import/snow-spatula-ag.gc" - "goal_src/import/snow-switch-ag.gc" - "goal_src/import/snowcam-ag.gc" - "goal_src/import/snowpusher-ag.gc" - "goal_src/import/yeti-ag.gc" - "goal_src/import/blue-eco-charger-ag.gc" - "goal_src/import/blue-eco-charger-orb-ag.gc" - "goal_src/import/bully-ag.gc" - "goal_src/import/floating-launcher-ag.gc" - "goal_src/import/helix-button-ag.gc" - "goal_src/import/helix-slide-door-ag.gc" - "goal_src/import/shover-ag.gc" - "goal_src/import/steam-cap-ag.gc" - "goal_src/import/sunkencam-ag.gc" - "goal_src/import/sunkenfisha-ag.gc" - "goal_src/import/wall-plat-ag.gc" - "goal_src/import/water-anim-sunken-ag.gc" - "goal_src/import/water-anim-sunken-dark-eco-ag.gc" - "goal_src/import/double-lurker-ag.gc" - "goal_src/import/double-lurker-top-ag.gc" - "goal_src/import/exit-chamber-ag.gc" - "goal_src/import/generic-button-ag.gc" - "goal_src/import/orbit-plat-ag.gc" - "goal_src/import/orbit-plat-bottom-ag.gc" - "goal_src/import/plat-sunken-ag.gc" - "goal_src/import/puffer-ag.gc" - "goal_src/import/qbert-plat-ag.gc" - "goal_src/import/qbert-plat-on-ag.gc" - "goal_src/import/seaweed-ag.gc" - "goal_src/import/side-to-side-plat-ag.gc" - "goal_src/import/square-platform-ag.gc" - "goal_src/import/sun-iris-door-ag.gc" - "goal_src/import/wedge-plat-ag.gc" - "goal_src/import/wedge-plat-outer-ag.gc" - "goal_src/import/whirlpool-ag.gc" - "goal_src/import/balance-plat-ag.gc" - "goal_src/import/billy-ag.gc" - "goal_src/import/billy-sidekick-ag.gc" - "goal_src/import/farthy-snack-ag.gc" - "goal_src/import/kermit-ag.gc" - "goal_src/import/swamp-bat-ag.gc" - "goal_src/import/swamp-rat-ag.gc" - "goal_src/import/swamp-rat-nest-ag.gc" - "goal_src/import/swamp-rock-ag.gc" - "goal_src/import/swamp-spike-ag.gc" - "goal_src/import/swampcam-ag.gc" - "goal_src/import/tar-plat-ag.gc" - "goal_src/import/logo-ag.gc" - "goal_src/import/logo-black-ag.gc" - "goal_src/import/logo-cam-ag.gc" - "goal_src/import/logo-volumes-ag.gc" - "goal_src/import/ndi-ag.gc" - "goal_src/import/ndi-cam-ag.gc" - "goal_src/import/ndi-volumes-ag.gc" - "goal_src/import/pontoonfive-ag.gc" - "goal_src/import/scarecrow-a-ag.gc" - "goal_src/import/scarecrow-b-ag.gc" - "goal_src/import/trainingcam-ag.gc" - "goal_src/import/water-anim-training-ag.gc" - "goal_src/import/assistant-ag.gc" - "goal_src/import/evilplant-ag.gc" - "goal_src/import/explorer-ag.gc" - "goal_src/import/farmer-ag.gc" - "goal_src/import/fishermans-boat-ag.gc" - "goal_src/import/hutlamp-ag.gc" - "goal_src/import/mayorgears-ag.gc" - "goal_src/import/medres-beach-ag.gc" - "goal_src/import/medres-beach1-ag.gc" - "goal_src/import/medres-beach2-ag.gc" - "goal_src/import/medres-beach3-ag.gc" - "goal_src/import/medres-jungle-ag.gc" - "goal_src/import/medres-jungle1-ag.gc" - "goal_src/import/medres-jungle2-ag.gc" - "goal_src/import/medres-misty-ag.gc" - "goal_src/import/medres-training-ag.gc" - "goal_src/import/medres-village11-ag.gc" - "goal_src/import/medres-village12-ag.gc" - "goal_src/import/medres-village13-ag.gc" - "goal_src/import/oracle-ag.gc" - "goal_src/import/reflector-middle-ag.gc" - "goal_src/import/revcycle-ag.gc" - "goal_src/import/revcycleprop-ag.gc" - "goal_src/import/ropebridge-32-ag.gc" - "goal_src/import/sage-ag.gc" - "goal_src/import/sagesail-ag.gc" - "goal_src/import/villa-starfish-ag.gc" - "goal_src/import/village-cam-ag.gc" - "goal_src/import/village1cam-ag.gc" - "goal_src/import/water-anim-village1-ag.gc" - "goal_src/import/windmill-sail-ag.gc" - "goal_src/import/windspinner-ag.gc" - "goal_src/import/yakow-ag.gc" - "goal_src/import/allpontoons-ag.gc" - "goal_src/import/assistant-village2-ag.gc" - "goal_src/import/ceilingflag-ag.gc" - "goal_src/import/exit-chamber-dummy-ag.gc" - "goal_src/import/fireboulder-ag.gc" - "goal_src/import/flutflut-bluehut-ag.gc" - "goal_src/import/gambler-ag.gc" - "goal_src/import/geologist-ag.gc" - "goal_src/import/jaws-ag.gc" - "goal_src/import/medres-rolling-ag.gc" - "goal_src/import/medres-rolling1-ag.gc" - "goal_src/import/medres-village2-ag.gc" - "goal_src/import/ogreboss-village2-ag.gc" - "goal_src/import/pontoonten-ag.gc" - "goal_src/import/precursor-arm-ag.gc" - "goal_src/import/sage-bluehut-ag.gc" - "goal_src/import/sunken-elevator-ag.gc" - "goal_src/import/swamp-blimp-ag.gc" - "goal_src/import/swamp-rope-ag.gc" - "goal_src/import/swamp-tetherrock-ag.gc" - "goal_src/import/swamp-tetherrock-explode-ag.gc" - "goal_src/import/village2cam-ag.gc" - "goal_src/import/warrior-ag.gc" - "goal_src/import/water-anim-village2-ag.gc" - "goal_src/import/assistant-village3-ag.gc" - "goal_src/import/cavegem-ag.gc" - "goal_src/import/evilbro-village3-ag.gc" - "goal_src/import/evilsis-village3-ag.gc" - "goal_src/import/gondola-ag.gc" - "goal_src/import/gondolacables-ag.gc" - "goal_src/import/lavaspoutdrip-ag.gc" - "goal_src/import/medres-finalboss-ag.gc" - "goal_src/import/medres-ogre-ag.gc" - "goal_src/import/medres-ogre2-ag.gc" - "goal_src/import/medres-ogre3-ag.gc" - "goal_src/import/minecartsteel-ag.gc" - "goal_src/import/minershort-ag.gc" - "goal_src/import/minertall-ag.gc" - "goal_src/import/pistons-ag.gc" - "goal_src/import/sage-village3-ag.gc" - "goal_src/import/vil3-bridge-36-ag.gc" - "goal_src/import/water-anim-village3-ag.gc" - ) - ) diff --git a/goal_src/engine/game/collectables.gc b/goal_src/engine/game/collectables.gc index 054665c9f1..8f86de0106 100644 --- a/goal_src/engine/game/collectables.gc +++ b/goal_src/engine/game/collectables.gc @@ -21,6 +21,10 @@ ) ;; DECOMP BEGINS +(import "goal_src/import/money-ag.gc") +(import "goal_src/import/ecovalve-ag.gc") +(import "goal_src/import/buzzer-ag.gc") +(import "goal_src/import/fuel-cell-ag.gc") (define *eco-pill-count* 0) diff --git a/goal_src/engine/game/crates.gc b/goal_src/engine/game/crates.gc index 34bb04dfd3..b164e7d3ec 100644 --- a/goal_src/engine/game/crates.gc +++ b/goal_src/engine/game/crates.gc @@ -9,6 +9,7 @@ (declare-type crate-buzzer crate) ;; DECOMP BEGINS +(import "goal_src/import/crate-ag.gc") (defskelgroup *crate-barrel-sg* crate crate-barrel-lod0-jg crate-barrel-idle-ja ((crate-barrel-lod0-mg (meters 20)) (crate-barrel-lod1-mg (meters 40)) (crate-barrel-lod2-mg (meters 999999))) diff --git a/goal_src/engine/game/voicebox.gc b/goal_src/engine/game/voicebox.gc index b2b8efca3a..51074fc0e6 100644 --- a/goal_src/engine/game/voicebox.gc +++ b/goal_src/engine/game/voicebox.gc @@ -9,6 +9,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/speaker-ag.gc") (deftype camera-voicebox (camera-slave) () diff --git a/goal_src/engine/target/sidekick.gc b/goal_src/engine/target/sidekick.gc index eb0c63ef34..fa6e72f122 100644 --- a/goal_src/engine/target/sidekick.gc +++ b/goal_src/engine/target/sidekick.gc @@ -8,6 +8,7 @@ (load-art-import sidekick) ;; DECOMP BEGINS +(import "goal_src/import/sidekick-ag.gc") (define *sidekick-remap* '(("run-to-stance-left" "run-to-stance") ("run-to-stance-loop-left" "run-to-stance-loop") diff --git a/goal_src/engine/target/target-death.gc b/goal_src/engine/target/target-death.gc index f130b2225d..74b5753f3e 100644 --- a/goal_src/engine/target/target-death.gc +++ b/goal_src/engine/target/target-death.gc @@ -6,6 +6,7 @@ ;; dgos: GAME, ENGINE ;; DECOMP BEGINS +(import "goal_src/import/deathcam-ag.gc") (defskelgroup *deathcam-sg* deathcam deathcam-lod0-jg deathcam-idle-ja ((deathcam-lod0-mg (meters 999999))) diff --git a/goal_src/engine/target/target-util.gc b/goal_src/engine/target/target-util.gc index 685baef1d8..7884b3e466 100644 --- a/goal_src/engine/target/target-util.gc +++ b/goal_src/engine/target/target-util.gc @@ -8,6 +8,7 @@ (define-extern target-collide-set! (function symbol float int :behavior target)) ;; DECOMP BEGINS +(import "goal_src/import/eichar-ag.gc") (defskelgroup *jchar-sg* eichar eichar-lod0-jg -1 ((eichar-lod0-mg (meters 999999))) diff --git a/goal_src/engine/ui/hud-classes.gc b/goal_src/engine/ui/hud-classes.gc index 82e5541c1c..dfb81445e9 100644 --- a/goal_src/engine/ui/hud-classes.gc +++ b/goal_src/engine/ui/hud-classes.gc @@ -6,6 +6,7 @@ ;; dgos: GAME, ENGINE ;; DECOMP BEGINS +(import "goal_src/import/fuelcell-naked-ag.gc") (defpartgroup group-part-hud-pickup :id 75 diff --git a/goal_src/goal-lib.gc b/goal_src/goal-lib.gc index 1863c04d2e..940670f50b 100644 --- a/goal_src/goal-lib.gc +++ b/goal_src/goal-lib.gc @@ -5,9 +5,6 @@ ;; OTHER STUFF ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; get list of all goal import files -(asm-file "goal_src/build/all_imports.gc") - ;; tell compiler about stuff defined/implemented in the runtime. (asm-file "goal_src/kernel-defs.gc") @@ -94,6 +91,10 @@ ) ) +(defmacro import (file-name) + `(asm-file ,file-name :no-code) + ) + ;; enum for text file encoding versions (defenum game-text-version (jak1-v1 10) @@ -1003,7 +1004,7 @@ (defmacro def-art-elt (group name idx) "define a new art element. adds it to a global map stored in goos." - + ;; grab data about the art group (let* ((group-string (symbol->string group)) (name-string (symbol->string name)) @@ -1038,8 +1039,3 @@ ;; load the default project (load-project "goal_src/game.gp") -(seval (fmt #t "Loading imports...\n")) -(load-imports) -(seval (fmt #t "Loaded imports. Have a nice day.\n")) - - diff --git a/goal_src/levels/beach/beach-obs.gc b/goal_src/levels/beach/beach-obs.gc index 1093c547b7..d58e1fb6a7 100644 --- a/goal_src/levels/beach/beach-obs.gc +++ b/goal_src/levels/beach/beach-obs.gc @@ -8,6 +8,15 @@ (define-extern spawn-flying-rock (function vector vector float entity none)) ;; DECOMP BEGINS +(import "goal_src/import/ecoventrock-ag.gc") +(import "goal_src/import/windmill-one-ag.gc") +(import "goal_src/import/kickrock-ag.gc") +(import "goal_src/import/flutflutegg-ag.gc") +(import "goal_src/import/flutflut-ag.gc") +(import "goal_src/import/bladeassm-ag.gc") +(import "goal_src/import/harvester-ag.gc") +(import "goal_src/import/grottopole-ag.gc") +(import "goal_src/import/beachcam-ag.gc") (defskelgroup *beachcam-sg* beachcam beachcam-lod0-jg beachcam-anim-ja ((beachcam-lod0-mg (meters 999999))) diff --git a/goal_src/levels/beach/beach-rocks.gc b/goal_src/levels/beach/beach-rocks.gc index c8930c319b..0424a9b7e6 100644 --- a/goal_src/levels/beach/beach-rocks.gc +++ b/goal_src/levels/beach/beach-rocks.gc @@ -6,6 +6,7 @@ ;; dgos: BEA, L1 ;; DECOMP BEGINS +(import "goal_src/import/lrocklrg-ag.gc") (defskelgroup *lrocklrg-sg* lrocklrg lrocklrg-lod0-jg lrocklrg-idle-ja ((lrocklrg-lod0-mg (meters 999999))) diff --git a/goal_src/levels/beach/bird-lady-beach.gc b/goal_src/levels/beach/bird-lady-beach.gc index f1188ea63b..942e511189 100644 --- a/goal_src/levels/beach/bird-lady-beach.gc +++ b/goal_src/levels/beach/bird-lady-beach.gc @@ -6,6 +6,7 @@ ;; dgos: BEA, L1 ;; DECOMP BEGINS +(import "goal_src/import/bird-lady-beach-ag.gc") (deftype bird-lady-beach (process-taskable) ((flutflut handle :offset-assert 384) diff --git a/goal_src/levels/beach/bird-lady.gc b/goal_src/levels/beach/bird-lady.gc index cfec9cc13d..432cc267c6 100644 --- a/goal_src/levels/beach/bird-lady.gc +++ b/goal_src/levels/beach/bird-lady.gc @@ -6,6 +6,7 @@ ;; dgos: BEA, L1 ;; DECOMP BEGINS +(import "goal_src/import/bird-lady-ag.gc") (deftype bird-lady (process-taskable) () diff --git a/goal_src/levels/beach/lurkercrab.gc b/goal_src/levels/beach/lurkercrab.gc index ea7e833a88..4c2192b0eb 100644 --- a/goal_src/levels/beach/lurkercrab.gc +++ b/goal_src/levels/beach/lurkercrab.gc @@ -6,6 +6,7 @@ ;; dgos: BEA, L1 ;; DECOMP BEGINS +(import "goal_src/import/lurkercrab-ag.gc") (defpartgroup group-lurkercrab-slide :id 159 diff --git a/goal_src/levels/beach/lurkerpuppy.gc b/goal_src/levels/beach/lurkerpuppy.gc index c2064c4e2b..4f568a7d9e 100644 --- a/goal_src/levels/beach/lurkerpuppy.gc +++ b/goal_src/levels/beach/lurkerpuppy.gc @@ -6,6 +6,7 @@ ;; dgos: BEA, L1 ;; DECOMP BEGINS +(import "goal_src/import/lurkerpuppy-ag.gc") (deftype lurkerpuppy (nav-enemy) () diff --git a/goal_src/levels/beach/lurkerworm.gc b/goal_src/levels/beach/lurkerworm.gc index d87b3abba7..5561d7ac58 100644 --- a/goal_src/levels/beach/lurkerworm.gc +++ b/goal_src/levels/beach/lurkerworm.gc @@ -6,6 +6,7 @@ ;; dgos: BEA, L1 ;; DECOMP BEGINS +(import "goal_src/import/lurkerworm-ag.gc") (deftype lurkerworm (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/beach/mayor.gc b/goal_src/levels/beach/mayor.gc index dd8ec22f59..dcc66b18a9 100644 --- a/goal_src/levels/beach/mayor.gc +++ b/goal_src/levels/beach/mayor.gc @@ -6,6 +6,7 @@ ;; dgos: BEA, L1 ;; DECOMP BEGINS +(import "goal_src/import/mayor-ag.gc") (deftype mayor (process-taskable) () diff --git a/goal_src/levels/beach/pelican.gc b/goal_src/levels/beach/pelican.gc index c28f532437..c249133b11 100644 --- a/goal_src/levels/beach/pelican.gc +++ b/goal_src/levels/beach/pelican.gc @@ -6,6 +6,7 @@ ;; dgos: BEA, L1 ;; DECOMP BEGINS +(import "goal_src/import/pelican-ag.gc") (deftype pelican-bank (basic) ((circle-speed meters :offset-assert 4) diff --git a/goal_src/levels/beach/sculptor.gc b/goal_src/levels/beach/sculptor.gc index 621b4859cb..ca17fa144a 100644 --- a/goal_src/levels/beach/sculptor.gc +++ b/goal_src/levels/beach/sculptor.gc @@ -7,6 +7,8 @@ (declare-type muse nav-enemy) ;; DECOMP BEGINS +(import "goal_src/import/sculptor-ag.gc") +(import "goal_src/import/sculptor-muse-ag.gc") (deftype sculptor (process-taskable) ((muse handle :offset-assert 384) diff --git a/goal_src/levels/beach/seagull.gc b/goal_src/levels/beach/seagull.gc index c55c29a7f3..ef0d327b71 100644 --- a/goal_src/levels/beach/seagull.gc +++ b/goal_src/levels/beach/seagull.gc @@ -10,6 +10,7 @@ (declare-type seagullflock process) ;; DECOMP BEGINS +(import "goal_src/import/seagull-ag.gc") (defpartgroup group-seagull-takeoff :id 160 diff --git a/goal_src/levels/citadel/assistant-citadel.gc b/goal_src/levels/citadel/assistant-citadel.gc index 8ba96b23d6..5d2407864a 100644 --- a/goal_src/levels/citadel/assistant-citadel.gc +++ b/goal_src/levels/citadel/assistant-citadel.gc @@ -6,6 +6,7 @@ ;; dgos: CIT, L1 ;; DECOMP BEGINS +(import "goal_src/import/assistant-lavatube-end-ag.gc") (deftype assistant-lavatube-end (process-taskable) () diff --git a/goal_src/levels/citadel/citadel-obs.gc b/goal_src/levels/citadel/citadel-obs.gc index 0c556e6d25..5f5bf794d2 100644 --- a/goal_src/levels/citadel/citadel-obs.gc +++ b/goal_src/levels/citadel/citadel-obs.gc @@ -6,6 +6,17 @@ ;; dgos: CIT, L1 ;; DECOMP BEGINS +(import "goal_src/import/citb-disc-ag.gc") +(import "goal_src/import/citb-arm-ag.gc") +(import "goal_src/import/citb-arm-shoulder-ag.gc") +(import "goal_src/import/citb-iris-door-ag.gc") +(import "goal_src/import/citb-launcher-ag.gc") +(import "goal_src/import/citb-hose-ag.gc") +(import "goal_src/import/citb-coil-ag.gc") +(import "goal_src/import/citadelcam-ag.gc") +(import "goal_src/import/citb-button-ag.gc") +(import "goal_src/import/citb-generator-ag.gc") +(import "goal_src/import/citb-robotboss-ag.gc") (deftype citb-arm-section (process-drawable) ((sync sync-info :inline :offset-assert 176) diff --git a/goal_src/levels/citadel/citadel-sages.gc b/goal_src/levels/citadel/citadel-sages.gc index 045337a794..64c78f5e2f 100644 --- a/goal_src/levels/citadel/citadel-sages.gc +++ b/goal_src/levels/citadel/citadel-sages.gc @@ -10,6 +10,13 @@ (declare-type citb-sage process-taskable) ;; DECOMP BEGINS +(import "goal_src/import/evilbro-citadel-ag.gc") +(import "goal_src/import/evilsis-citadel-ag.gc") +(import "goal_src/import/yellowsage-ag.gc") +(import "goal_src/import/citb-sagecage-ag.gc") +(import "goal_src/import/redsage-ag.gc") +(import "goal_src/import/green-sagecage-ag.gc") +(import "goal_src/import/bluesage-ag.gc") (defskelgroup *citb-sagecage-sg* citb-sagecage citb-sagecage-lod0-jg citb-sagecage-redsage-idle-ja ((citb-sagecage-lod0-mg (meters 20)) (citb-sagecage-lod1-mg (meters 999999))) diff --git a/goal_src/levels/citadel/citb-bunny.gc b/goal_src/levels/citadel/citb-bunny.gc index e1b875d157..e13b6d9a91 100644 --- a/goal_src/levels/citadel/citb-bunny.gc +++ b/goal_src/levels/citadel/citb-bunny.gc @@ -8,6 +8,7 @@ (define-extern *citb-bunny-sg* skeleton-group) ;; DECOMP BEGINS +(import "goal_src/import/citb-bunny-ag.gc") (deftype citb-bunny (snow-bunny) () diff --git a/goal_src/levels/citadel/citb-drop-plat.gc b/goal_src/levels/citadel/citb-drop-plat.gc index 4d1e5d25be..8c25f21826 100644 --- a/goal_src/levels/citadel/citb-drop-plat.gc +++ b/goal_src/levels/citadel/citb-drop-plat.gc @@ -6,6 +6,7 @@ ;; dgos: CIT ;; DECOMP BEGINS +(import "goal_src/import/citb-drop-plat-ag.gc") (defskelgroup *citb-drop-plat-sg* citb-drop-plat citb-drop-plat-lod0-jg citb-drop-plat-idle-ja ((citb-drop-plat-lod0-mg (meters 20)) (citb-drop-plat-lod1-mg (meters 999999))) diff --git a/goal_src/levels/citadel/citb-plat.gc b/goal_src/levels/citadel/citb-plat.gc index 9aa0917151..fcfd0115a2 100644 --- a/goal_src/levels/citadel/citb-plat.gc +++ b/goal_src/levels/citadel/citb-plat.gc @@ -22,6 +22,14 @@ ;; DECOMP BEGINS +(import "goal_src/import/citb-stopbox-ag.gc") +(import "goal_src/import/plat-eco-citb-ag.gc") +(import "goal_src/import/citb-firehose-ag.gc") +(import "goal_src/import/citb-donut-ag.gc") +(import "goal_src/import/citb-exit-plat-ag.gc") +(import "goal_src/import/citb-chain-plat-ag.gc") +(import "goal_src/import/plat-citb-ag.gc") +(import "goal_src/import/citb-rotatebox-ag.gc") (defskelgroup *plat-citb-sg* plat-citb plat-citb-lod0-jg plat-citb-idle-ja ((plat-citb-lod0-mg (meters 20)) (plat-citb-lod1-mg (meters 999999))) diff --git a/goal_src/levels/common/babak.gc b/goal_src/levels/common/babak.gc index 5462933731..54af5bfe79 100644 --- a/goal_src/levels/common/babak.gc +++ b/goal_src/levels/common/babak.gc @@ -6,6 +6,7 @@ ;; dgos: GAME, COMMON, L1 ;; DECOMP BEGINS +(import "goal_src/import/babak-ag.gc") (deftype babak (nav-enemy) () diff --git a/goal_src/levels/common/basebutton.gc b/goal_src/levels/common/basebutton.gc index 16b41b5b58..3fba831d5c 100644 --- a/goal_src/levels/common/basebutton.gc +++ b/goal_src/levels/common/basebutton.gc @@ -7,6 +7,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/generic-button-ag.gc") (deftype basebutton (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/common/blocking-plane.gc b/goal_src/levels/common/blocking-plane.gc index 845b3eac3f..7a40b00f4c 100644 --- a/goal_src/levels/common/blocking-plane.gc +++ b/goal_src/levels/common/blocking-plane.gc @@ -6,6 +6,7 @@ ;; dgos: L1, FIC, LAV, MIS, OGR, RACERP, ROL, SNO, SWA ;; DECOMP BEGINS +(import "goal_src/import/ef-plane-ag.gc") (deftype blocking-plane (process-drawable) () diff --git a/goal_src/levels/common/launcherdoor.gc b/goal_src/levels/common/launcherdoor.gc index 50aff8bf66..5fd41acde8 100644 --- a/goal_src/levels/common/launcherdoor.gc +++ b/goal_src/levels/common/launcherdoor.gc @@ -12,6 +12,8 @@ ;; DECOMP BEGINS +(import "goal_src/import/launcherdoor-maincave-ag.gc") +(import "goal_src/import/launcherdoor-ag.gc") (deftype launcherdoor (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/common/orb-cache.gc b/goal_src/levels/common/orb-cache.gc index 37c999bf7b..70b35c1ea8 100644 --- a/goal_src/levels/common/orb-cache.gc +++ b/goal_src/levels/common/orb-cache.gc @@ -6,6 +6,7 @@ ;; dgos: GAME, COMMON, L1 ;; DECOMP BEGINS +(import "goal_src/import/orb-cache-top-ag.gc") (deftype orb-cache-top (baseplat) ((active-distance float :offset-assert 228) diff --git a/goal_src/levels/common/plat-button.gc b/goal_src/levels/common/plat-button.gc index aff5beeb19..415caf17f9 100644 --- a/goal_src/levels/common/plat-button.gc +++ b/goal_src/levels/common/plat-button.gc @@ -6,6 +6,7 @@ ;; dgos: GAME, COMMON, L1 ;; DECOMP BEGINS +(import "goal_src/import/plat-button-ag.gc") (deftype plat-button (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/common/plat-eco.gc b/goal_src/levels/common/plat-eco.gc index 10d32d09d8..ca2b7dfc87 100644 --- a/goal_src/levels/common/plat-eco.gc +++ b/goal_src/levels/common/plat-eco.gc @@ -6,6 +6,7 @@ ;; dgos: GAME, COMMON, L1 ;; DECOMP BEGINS +(import "goal_src/import/plat-eco-ag.gc") (deftype plat-eco (plat) ((notice-dist float :offset-assert 264) diff --git a/goal_src/levels/common/plat.gc b/goal_src/levels/common/plat.gc index a63fa47d7e..2389ac67df 100644 --- a/goal_src/levels/common/plat.gc +++ b/goal_src/levels/common/plat.gc @@ -6,6 +6,9 @@ ;; dgos: GAME, COMMON, L1 ;; DECOMP BEGINS +(import "goal_src/import/plat-jungleb-ag.gc") +(import "goal_src/import/plat-ag.gc") +(import "goal_src/import/plat-sunken-ag.gc") (defpartgroup group-standard-plat :id 107 diff --git a/goal_src/levels/common/ropebridge.gc b/goal_src/levels/common/ropebridge.gc index 9a4d97e6e6..235792c418 100644 --- a/goal_src/levels/common/ropebridge.gc +++ b/goal_src/levels/common/ropebridge.gc @@ -6,6 +6,12 @@ ;; dgos: GAME, COMMON, L1 ;; DECOMP BEGINS +(import "goal_src/import/ropebridge-36-ag.gc") +(import "goal_src/import/ropebridge-70-ag.gc") +(import "goal_src/import/snow-bridge-36-ag.gc") +(import "goal_src/import/ropebridge-32-ag.gc") +(import "goal_src/import/ropebridge-52-ag.gc") +(import "goal_src/import/vil3-bridge-36-ag.gc") (deftype ropebridge-tuning (structure) ((num-springs int32 :offset-assert 0) diff --git a/goal_src/levels/common/sharkey.gc b/goal_src/levels/common/sharkey.gc index c43996921c..7dd1918f16 100644 --- a/goal_src/levels/common/sharkey.gc +++ b/goal_src/levels/common/sharkey.gc @@ -6,6 +6,7 @@ ;; dgos: GAME, COMMON, L1 ;; DECOMP BEGINS +(import "goal_src/import/sharkey-ag.gc") (defpartgroup group-sharkey-splash :id 106 diff --git a/goal_src/levels/common/water-anim.gc b/goal_src/levels/common/water-anim.gc index 3083a70823..ace24f656b 100644 --- a/goal_src/levels/common/water-anim.gc +++ b/goal_src/levels/common/water-anim.gc @@ -6,6 +6,22 @@ ;; dgos: GAME, COMMON, L1, WATER-AN ;; DECOMP BEGINS +(import "goal_src/import/water-anim-sunken-ag.gc") +(import "goal_src/import/water-anim-jungle-ag.gc") +(import "goal_src/import/water-anim-village2-ag.gc") +(import "goal_src/import/water-anim-darkcave-ag.gc") +(import "goal_src/import/water-anim-maincave-water-ag.gc") +(import "goal_src/import/water-anim-finalboss-ag.gc") +(import "goal_src/import/water-anim-rolling-ag.gc") +(import "goal_src/import/water-anim-village1-ag.gc") +(import "goal_src/import/water-anim-village3-ag.gc") +(import "goal_src/import/water-anim-maincave-ag.gc") +(import "goal_src/import/water-anim-robocave-ag.gc") +(import "goal_src/import/water-anim-misty-ag.gc") +(import "goal_src/import/water-anim-training-ag.gc") +(import "goal_src/import/water-anim-lavatube-ag.gc") +(import "goal_src/import/water-anim-ogre-ag.gc") +(import "goal_src/import/water-anim-sunken-dark-eco-ag.gc") (deftype water-anim (water-vol) ((ppointer-water-anim (pointer water-anim) :offset 24) diff --git a/goal_src/levels/darkcave/darkcave-obs.gc b/goal_src/levels/darkcave/darkcave-obs.gc index 90a2dd7725..d1d169e28f 100644 --- a/goal_src/levels/darkcave/darkcave-obs.gc +++ b/goal_src/levels/darkcave/darkcave-obs.gc @@ -8,6 +8,7 @@ ; (define-extern *cavecrystal-sg* skeleton-group) ;; DECOMP BEGINS +(import "goal_src/import/cavecrystal-ag.gc") (deftype cavecrystal (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/finalboss/final-door.gc b/goal_src/levels/finalboss/final-door.gc index 4d4edd1655..f34f0811e4 100644 --- a/goal_src/levels/finalboss/final-door.gc +++ b/goal_src/levels/finalboss/final-door.gc @@ -8,6 +8,9 @@ (define-extern power-left type) ;; DECOMP BEGINS +(import "goal_src/import/power-left-ag.gc") +(import "goal_src/import/powercellalt-ag.gc") +(import "goal_src/import/power-right-ag.gc") (deftype fin-door (process-hidden) () diff --git a/goal_src/levels/finalboss/green-eco-lurker.gc b/goal_src/levels/finalboss/green-eco-lurker.gc index d5db4b59d6..6e303c692d 100644 --- a/goal_src/levels/finalboss/green-eco-lurker.gc +++ b/goal_src/levels/finalboss/green-eco-lurker.gc @@ -6,6 +6,7 @@ ;; dgos: FIN, L1 ;; DECOMP BEGINS +(import "goal_src/import/green-eco-lurker-ag.gc") (deftype green-eco-lurker (nav-enemy) ((played-sound? symbol :offset-assert 400) diff --git a/goal_src/levels/finalboss/light-eco.gc b/goal_src/levels/finalboss/light-eco.gc index abf8b0a504..059c93069a 100644 --- a/goal_src/levels/finalboss/light-eco.gc +++ b/goal_src/levels/finalboss/light-eco.gc @@ -6,6 +6,7 @@ ;; dgos: FIN, L1 ;; DECOMP BEGINS +(import "goal_src/import/light-eco-ag.gc") (deftype light-eco-child (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/finalboss/robotboss-h.gc b/goal_src/levels/finalboss/robotboss-h.gc index 19f586ea1b..a9de187611 100644 --- a/goal_src/levels/finalboss/robotboss-h.gc +++ b/goal_src/levels/finalboss/robotboss-h.gc @@ -6,6 +6,7 @@ ;; dgos: FIN, L1 ;; DECOMP BEGINS +(import "goal_src/import/robotboss-ag.gc") (deftype robotboss-dda (structure) ((blue-bomb-time float :offset-assert 0) diff --git a/goal_src/levels/finalboss/robotboss-misc.gc b/goal_src/levels/finalboss/robotboss-misc.gc index 119a0502b9..c7f33e8ff6 100644 --- a/goal_src/levels/finalboss/robotboss-misc.gc +++ b/goal_src/levels/finalboss/robotboss-misc.gc @@ -10,6 +10,9 @@ ;; DECOMP BEGINS +(import "goal_src/import/silodoor-ag.gc") +(import "goal_src/import/ecoclaw-ag.gc") +(import "goal_src/import/finalbosscam-ag.gc") (defskelgroup *med-res-snow1-sg* medres-snowback 0 2 ((1 (meters 999999))) diff --git a/goal_src/levels/finalboss/robotboss-weapon.gc b/goal_src/levels/finalboss/robotboss-weapon.gc index 2182ed2326..7df4bafbef 100644 --- a/goal_src/levels/finalboss/robotboss-weapon.gc +++ b/goal_src/levels/finalboss/robotboss-weapon.gc @@ -6,6 +6,9 @@ ;; dgos: FIN, L1 ;; DECOMP BEGINS +(import "goal_src/import/redring-ag.gc") +(import "goal_src/import/darkecobomb-ag.gc") +(import "goal_src/import/greenshot-ag.gc") (deftype torus (structure) ((origin vector :inline :offset-assert 0) diff --git a/goal_src/levels/finalboss/robotboss.gc b/goal_src/levels/finalboss/robotboss.gc index 17a6a44af7..14d9c680d2 100644 --- a/goal_src/levels/finalboss/robotboss.gc +++ b/goal_src/levels/finalboss/robotboss.gc @@ -6,6 +6,9 @@ ;; dgos: FIN, L1 ;; DECOMP BEGINS +(import "goal_src/import/robotboss-blueeco-ag.gc") +(import "goal_src/import/robotboss-yelloweco-ag.gc") +(import "goal_src/import/robotboss-redeco-ag.gc") (defmethod ease-loc-t robotboss ((obj robotboss)) (parameter-ease-sin-clamp (-> obj loc-t)) diff --git a/goal_src/levels/finalboss/sage-finalboss.gc b/goal_src/levels/finalboss/sage-finalboss.gc index fc7a1027e2..cd2b33ab66 100644 --- a/goal_src/levels/finalboss/sage-finalboss.gc +++ b/goal_src/levels/finalboss/sage-finalboss.gc @@ -4,8 +4,11 @@ ;; name: sage-finalboss-FIN.gc ;; name in dgo: sage-finalboss ;; dgos: FIN - ;; DECOMP BEGINS +(import "goal_src/import/plat-eco-finalboss-ag.gc") +(import "goal_src/import/robotboss-cinematic-ag.gc") +(import "goal_src/import/jak-white-ag.gc") +(import "goal_src/import/green-sagecage-ag.gc") (defskelgroup *robotboss-cinematic-sg* robotboss-cinematic robotboss-cinematic-lod0-jg robotboss-cinematic-idle-ja ((robotboss-cinematic-lod0-mg (meters 999999))) diff --git a/goal_src/levels/firecanyon/assistant-firecanyon.gc b/goal_src/levels/firecanyon/assistant-firecanyon.gc index 1a4a2d1d34..a077ea24ad 100644 --- a/goal_src/levels/firecanyon/assistant-firecanyon.gc +++ b/goal_src/levels/firecanyon/assistant-firecanyon.gc @@ -6,6 +6,7 @@ ;; dgos: L1, FIC ;; DECOMP BEGINS +(import "goal_src/import/assistant-firecanyon-ag.gc") (deftype assistant-firecanyon (process-taskable) () diff --git a/goal_src/levels/firecanyon/firecanyon-obs.gc b/goal_src/levels/firecanyon/firecanyon-obs.gc index 0e02ab8cf9..edbd3beecb 100644 --- a/goal_src/levels/firecanyon/firecanyon-obs.gc +++ b/goal_src/levels/firecanyon/firecanyon-obs.gc @@ -14,6 +14,8 @@ ;; DECOMP BEGINS +(import "goal_src/import/crate-darkeco-cluster-ag.gc") +(import "goal_src/import/spike-ag.gc") (deftype balloon (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/flut_common/flutflut.gc b/goal_src/levels/flut_common/flutflut.gc index d59b042903..2353a7c275 100644 --- a/goal_src/levels/flut_common/flutflut.gc +++ b/goal_src/levels/flut_common/flutflut.gc @@ -6,6 +6,7 @@ ;; dgos: L1, SNO, SWA ;; DECOMP BEGINS +(import "goal_src/import/flut-saddle-ag.gc") (if (not (nmember "flutp" *kernel-packages*)) (set! *kernel-packages* (cons "flutp" *kernel-packages*)) diff --git a/goal_src/levels/intro/evilbro.gc b/goal_src/levels/intro/evilbro.gc index a54a0a42af..4866314648 100644 --- a/goal_src/levels/intro/evilbro.gc +++ b/goal_src/levels/intro/evilbro.gc @@ -6,6 +6,8 @@ ;; dgos: INT, L1 ;; DECOMP BEGINS +(import "goal_src/import/evilsis-ag.gc") +(import "goal_src/import/evilbro-ag.gc") (deftype evilbro (process-taskable) ((evilsis entity :offset-assert 380) diff --git a/goal_src/levels/jungle/bouncer.gc b/goal_src/levels/jungle/bouncer.gc index ba93d02a59..eecaca20ad 100644 --- a/goal_src/levels/jungle/bouncer.gc +++ b/goal_src/levels/jungle/bouncer.gc @@ -8,6 +8,7 @@ (declare-type springbox process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/bounceytarp-ag.gc") (deftype springbox (process-drawable) ((spring-height meters :offset-assert 176) diff --git a/goal_src/levels/jungle/darkvine.gc b/goal_src/levels/jungle/darkvine.gc index d839c16ce7..6c4a06cc13 100644 --- a/goal_src/levels/jungle/darkvine.gc +++ b/goal_src/levels/jungle/darkvine.gc @@ -11,6 +11,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/darkvine-ag.gc") (deftype darkvine (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/jungle/fisher.gc b/goal_src/levels/jungle/fisher.gc index 656fd2df16..9c78c299bf 100644 --- a/goal_src/levels/jungle/fisher.gc +++ b/goal_src/levels/jungle/fisher.gc @@ -8,6 +8,11 @@ (declare-type fisher-fish process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/catch-fisha-ag.gc") +(import "goal_src/import/fisher-ag.gc") +(import "goal_src/import/catch-fishc-ag.gc") +(import "goal_src/import/catch-fishb-ag.gc") +(import "goal_src/import/fish-net-ag.gc") (deftype fisher-bank (basic) ((width meters :offset-assert 4) diff --git a/goal_src/levels/jungle/hopper.gc b/goal_src/levels/jungle/hopper.gc index e124d69af3..f340cf19f9 100644 --- a/goal_src/levels/jungle/hopper.gc +++ b/goal_src/levels/jungle/hopper.gc @@ -6,6 +6,7 @@ ;; dgos: JUN, JUNGLE, L1 ;; DECOMP BEGINS +(import "goal_src/import/hopper-ag.gc") (deftype hopper (nav-enemy) ((jump-length float :offset-assert 400) diff --git a/goal_src/levels/jungle/jungle-mirrors.gc b/goal_src/levels/jungle/jungle-mirrors.gc index b7ad69b2ea..b6fc692d35 100644 --- a/goal_src/levels/jungle/jungle-mirrors.gc +++ b/goal_src/levels/jungle/jungle-mirrors.gc @@ -10,6 +10,8 @@ (define-extern draw-power-beam (function vector vector none)) ;; DECOMP BEGINS +(import "goal_src/import/reflector-mirror-ag.gc") +(import "goal_src/import/periscope-ag.gc") (defpartgroup group-jungle-binoculars :id 176 diff --git a/goal_src/levels/jungle/jungle-obs.gc b/goal_src/levels/jungle/jungle-obs.gc index 1494c5b046..534bae8431 100644 --- a/goal_src/levels/jungle/jungle-obs.gc +++ b/goal_src/levels/jungle/jungle-obs.gc @@ -6,6 +6,16 @@ ;; dgos: JUN, JUNGLE, L1 ;; DECOMP BEGINS +(import "goal_src/import/accordian-ag.gc") +(import "goal_src/import/precurbridge-ag.gc") +(import "goal_src/import/logtrap-ag.gc") +(import "goal_src/import/maindoor-ag.gc") +(import "goal_src/import/lurkerm-tall-sail-ag.gc") +(import "goal_src/import/lurkerm-piston-ag.gc") +(import "goal_src/import/medres-firecanyon-ag.gc") +(import "goal_src/import/sidedoor-ag.gc") +(import "goal_src/import/junglecam-ag.gc") +(import "goal_src/import/towertop-ag.gc") (defskelgroup *med-res-firecanyon-sg* medres-firecanyon medres-firecanyon-lod0-jg medres-firecanyon-idle-ja ((medres-firecanyon-lod0-mg (meters 999999))) diff --git a/goal_src/levels/jungle/junglefish.gc b/goal_src/levels/jungle/junglefish.gc index c2388f7668..d2df824b67 100644 --- a/goal_src/levels/jungle/junglefish.gc +++ b/goal_src/levels/jungle/junglefish.gc @@ -6,6 +6,7 @@ ;; dgos: JUN, JUNGLE, L1 ;; DECOMP BEGINS +(import "goal_src/import/junglefish-ag.gc") (deftype junglefish (nav-enemy) () diff --git a/goal_src/levels/jungle/junglesnake.gc b/goal_src/levels/jungle/junglesnake.gc index cb98a3ba45..7d021d5826 100644 --- a/goal_src/levels/jungle/junglesnake.gc +++ b/goal_src/levels/jungle/junglesnake.gc @@ -6,6 +6,7 @@ ;; dgos: JUN, JUNGLE, L1 ;; DECOMP BEGINS +(import "goal_src/import/junglesnake-ag.gc") (defskelgroup *junglesnake-sg* junglesnake junglesnake-lod0-jg junglesnake-idle-ja ((junglesnake-lod0-mg (meters 999999))) diff --git a/goal_src/levels/jungleb/aphid.gc b/goal_src/levels/jungleb/aphid.gc index efdd99955a..e63f0825f9 100644 --- a/goal_src/levels/jungleb/aphid.gc +++ b/goal_src/levels/jungleb/aphid.gc @@ -6,6 +6,7 @@ ;; dgos: JUB, L1 ;; DECOMP BEGINS +(import "goal_src/import/aphid-lurker-ag.gc") (deftype aphid (nav-enemy) ((try int32 :offset-assert 400) diff --git a/goal_src/levels/jungleb/jungleb-obs.gc b/goal_src/levels/jungleb/jungleb-obs.gc index 555f20061a..d523081b3c 100644 --- a/goal_src/levels/jungleb/jungleb-obs.gc +++ b/goal_src/levels/jungleb/jungleb-obs.gc @@ -12,6 +12,8 @@ ;; DECOMP BEGINS +(import "goal_src/import/eggtop-ag.gc") +(import "goal_src/import/jng-iris-door-ag.gc") (deftype eggtop (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/jungleb/plant-boss.gc b/goal_src/levels/jungleb/plant-boss.gc index b5a4e1e88e..1964fbeb19 100644 --- a/goal_src/levels/jungleb/plant-boss.gc +++ b/goal_src/levels/jungleb/plant-boss.gc @@ -8,6 +8,7 @@ (declare-type plant-boss-leaf process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/plant-boss-ag.gc") (deftype plant-boss (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/jungleb/plat-flip.gc b/goal_src/levels/jungleb/plat-flip.gc index 5cf7526080..fe5589bc86 100644 --- a/goal_src/levels/jungleb/plat-flip.gc +++ b/goal_src/levels/jungleb/plat-flip.gc @@ -6,6 +6,7 @@ ;; dgos: JUB, L1 ;; DECOMP BEGINS +(import "goal_src/import/plat-flip-ag.gc") (deftype plat-flip (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/lavatube/assistant-lavatube.gc b/goal_src/levels/lavatube/assistant-lavatube.gc index 9dc4f3561d..84fe19388c 100644 --- a/goal_src/levels/lavatube/assistant-lavatube.gc +++ b/goal_src/levels/lavatube/assistant-lavatube.gc @@ -6,6 +6,7 @@ ;; dgos: L1, LAV ;; DECOMP BEGINS +(import "goal_src/import/assistant-lavatube-start-ag.gc") (deftype assistant-lavatube-start (process-taskable) () diff --git a/goal_src/levels/lavatube/lavatube-energy.gc b/goal_src/levels/lavatube/lavatube-energy.gc index 51ed91dcae..b866df0990 100644 --- a/goal_src/levels/lavatube/lavatube-energy.gc +++ b/goal_src/levels/lavatube/lavatube-energy.gc @@ -6,6 +6,11 @@ ;; dgos: L1, LAV ;; DECOMP BEGINS +(import "goal_src/import/energyhub-ag.gc") +(import "goal_src/import/energybase-ag.gc") +(import "goal_src/import/energyarm-ag.gc") +(import "goal_src/import/energyball-ag.gc") +(import "goal_src/import/energydoor-ag.gc") (defpartgroup group-energyarm :id 544 diff --git a/goal_src/levels/lavatube/lavatube-obs.gc b/goal_src/levels/lavatube/lavatube-obs.gc index b39a87cbeb..989778258a 100644 --- a/goal_src/levels/lavatube/lavatube-obs.gc +++ b/goal_src/levels/lavatube/lavatube-obs.gc @@ -6,6 +6,15 @@ ;; dgos: L1, LAV ;; DECOMP BEGINS +(import "goal_src/import/darkecobarrel-ag.gc") +(import "goal_src/import/lavafall-ag.gc") +(import "goal_src/import/lavaballoon-ag.gc") +(import "goal_src/import/lavashortcut-ag.gc") +(import "goal_src/import/chainmine-ag.gc") +(import "goal_src/import/lavafallsewera-ag.gc") +(import "goal_src/import/lavafallsewerb-ag.gc") +(import "goal_src/import/lavabase-ag.gc") +(import "goal_src/import/lavayellowtarp-ag.gc") (deftype lavabase (process-drawable) () diff --git a/goal_src/levels/maincave/baby-spider.gc b/goal_src/levels/maincave/baby-spider.gc index a9df901d62..b2a0bcf6f6 100644 --- a/goal_src/levels/maincave/baby-spider.gc +++ b/goal_src/levels/maincave/baby-spider.gc @@ -8,6 +8,7 @@ (declare-type cave-trap process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/baby-spider-ag.gc") (deftype baby-spider-spawn-params (structure) ((hatched? symbol :offset-assert 0) diff --git a/goal_src/levels/maincave/dark-crystal.gc b/goal_src/levels/maincave/dark-crystal.gc index 4a88171155..a2bbea5271 100644 --- a/goal_src/levels/maincave/dark-crystal.gc +++ b/goal_src/levels/maincave/dark-crystal.gc @@ -12,6 +12,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/dark-crystal-ag.gc") (deftype dark-crystal (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/maincave/driller-lurker.gc b/goal_src/levels/maincave/driller-lurker.gc index 162dba048c..645176ba35 100644 --- a/goal_src/levels/maincave/driller-lurker.gc +++ b/goal_src/levels/maincave/driller-lurker.gc @@ -11,6 +11,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/driller-lurker-ag.gc") (deftype driller-lurker (process-drawable) ((root-overeride collide-shape-moving :offset 112) diff --git a/goal_src/levels/maincave/gnawer.gc b/goal_src/levels/maincave/gnawer.gc index f955bd1862..18609c85ed 100644 --- a/goal_src/levels/maincave/gnawer.gc +++ b/goal_src/levels/maincave/gnawer.gc @@ -14,6 +14,7 @@ (define-extern gnawer-joint-callback (function gnawer none)) ;; DECOMP BEGINS +(import "goal_src/import/gnawer-ag.gc") (deftype gnawer-falling-segment (process-drawable) ((transv vector :inline :offset-assert 176) diff --git a/goal_src/levels/maincave/maincave-obs.gc b/goal_src/levels/maincave/maincave-obs.gc index 6ab4217605..ecba2b6133 100644 --- a/goal_src/levels/maincave/maincave-obs.gc +++ b/goal_src/levels/maincave/maincave-obs.gc @@ -6,6 +6,12 @@ ;; dgos: L1, MAI, MAINCAVE ;; DECOMP BEGINS +(import "goal_src/import/maincavecam-ag.gc") +(import "goal_src/import/caveelevator-ag.gc") +(import "goal_src/import/cavespatula-darkcave-ag.gc") +(import "goal_src/import/cavespatulatwo-ag.gc") +(import "goal_src/import/cavetrapdoor-ag.gc") +(import "goal_src/import/cavecrusher-ag.gc") (deftype maincavecam (pov-camera) ((seq uint64 :offset-assert 224) diff --git a/goal_src/levels/maincave/mother-spider-egg.gc b/goal_src/levels/maincave/mother-spider-egg.gc index 616be0acfc..5fe551bcfa 100644 --- a/goal_src/levels/maincave/mother-spider-egg.gc +++ b/goal_src/levels/maincave/mother-spider-egg.gc @@ -12,6 +12,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/spider-egg-ag.gc") (deftype mother-spider-egg (process-drawable) ((parent-override (pointer mother-spider) :offset 12) diff --git a/goal_src/levels/maincave/mother-spider.gc b/goal_src/levels/maincave/mother-spider.gc index 772ade091f..4da5a83926 100644 --- a/goal_src/levels/maincave/mother-spider.gc +++ b/goal_src/levels/maincave/mother-spider.gc @@ -9,6 +9,7 @@ (define-extern mother-spider-full-joint-callback (function mother-spider none)) ;; DECOMP BEGINS +(import "goal_src/import/mother-spider-ag.gc") (defskelgroup *mother-spider-sg* mother-spider mother-spider-lod0-jg -1 ((mother-spider-lod0-mg (meters 20)) diff --git a/goal_src/levels/maincave/spiderwebs.gc b/goal_src/levels/maincave/spiderwebs.gc index 5dacd9ca6f..0a5f863d43 100644 --- a/goal_src/levels/maincave/spiderwebs.gc +++ b/goal_src/levels/maincave/spiderwebs.gc @@ -6,6 +6,7 @@ ;; dgos: L1, MAI, MAINCAVE ;; DECOMP BEGINS +(import "goal_src/import/spiderwebs-ag.gc") (define *spider-jump-mods* (new 'static 'surface :name 'jump diff --git a/goal_src/levels/misty/balloonlurker.gc b/goal_src/levels/misty/balloonlurker.gc index 0a3a0aa743..0f9c670305 100644 --- a/goal_src/levels/misty/balloonlurker.gc +++ b/goal_src/levels/misty/balloonlurker.gc @@ -6,6 +6,7 @@ ;; dgos: L1, MIS ;; DECOMP BEGINS +(import "goal_src/import/balloonlurker-ag.gc") (defpartgroup group-balloonlurker-pilot-death :id 203 diff --git a/goal_src/levels/misty/bonelurker.gc b/goal_src/levels/misty/bonelurker.gc index cf727db220..28769a54f6 100644 --- a/goal_src/levels/misty/bonelurker.gc +++ b/goal_src/levels/misty/bonelurker.gc @@ -8,6 +8,7 @@ (declare-type bonelurker nav-enemy) ;; DECOMP BEGINS +(import "goal_src/import/bonelurker-ag.gc") (deftype bonelurker (nav-enemy) ((bump-player-time time-frame :offset-assert 400) diff --git a/goal_src/levels/misty/misty-conveyor.gc b/goal_src/levels/misty/misty-conveyor.gc index 41461b92ee..c3abe534ff 100644 --- a/goal_src/levels/misty/misty-conveyor.gc +++ b/goal_src/levels/misty/misty-conveyor.gc @@ -11,6 +11,9 @@ ;; DECOMP BEGINS +(import "goal_src/import/keg-ag.gc") +(import "goal_src/import/keg-conveyor-ag.gc") +(import "goal_src/import/keg-conveyor-paddle-ag.gc") (defpartgroup group-keg-bounce :id 197 diff --git a/goal_src/levels/misty/misty-obs.gc b/goal_src/levels/misty/misty-obs.gc index 7e7dc60d3b..ccf424ab6b 100644 --- a/goal_src/levels/misty/misty-obs.gc +++ b/goal_src/levels/misty/misty-obs.gc @@ -6,6 +6,14 @@ ;; dgos: L1, MIS ;; DECOMP BEGINS +(import "goal_src/import/mistycam-ag.gc") +(import "goal_src/import/breakaway-mid-ag.gc") +(import "goal_src/import/breakaway-left-ag.gc") +(import "goal_src/import/breakaway-right-ag.gc") +(import "goal_src/import/mis-bone-bridge-ag.gc") +(import "goal_src/import/windturbine-ag.gc") +(import "goal_src/import/boatpaddle-ag.gc") +(import "goal_src/import/mis-bone-platform-ag.gc") (defpartgroup group-windturbine-particles :id 191 diff --git a/goal_src/levels/misty/misty-teetertotter.gc b/goal_src/levels/misty/misty-teetertotter.gc index a24f41de1e..9915a632d6 100644 --- a/goal_src/levels/misty/misty-teetertotter.gc +++ b/goal_src/levels/misty/misty-teetertotter.gc @@ -8,6 +8,7 @@ (declare-type teetertotter process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/teetertotter-ag.gc") (deftype teetertotter (process-drawable) ((launched-player basic :offset-assert 176) diff --git a/goal_src/levels/misty/misty-warehouse.gc b/goal_src/levels/misty/misty-warehouse.gc index a812ffd31e..29f7a3053c 100644 --- a/goal_src/levels/misty/misty-warehouse.gc +++ b/goal_src/levels/misty/misty-warehouse.gc @@ -8,6 +8,8 @@ (declare-type silostep process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/silostep-ag.gc") +(import "goal_src/import/rounddoor-ag.gc") (deftype silostep (process-drawable) ((anim-limit float :offset-assert 176) diff --git a/goal_src/levels/misty/mistycannon.gc b/goal_src/levels/misty/mistycannon.gc index fabe849138..aec5695e4e 100644 --- a/goal_src/levels/misty/mistycannon.gc +++ b/goal_src/levels/misty/mistycannon.gc @@ -6,6 +6,8 @@ ;; dgos: BEA, L1, MIS ;; DECOMP BEGINS +(import "goal_src/import/mistycannon-ag.gc") +(import "goal_src/import/sack-ag.gc") (deftype angle-tracker (structure) ((value float :offset-assert 0) diff --git a/goal_src/levels/misty/muse.gc b/goal_src/levels/misty/muse.gc index 8f6f16876b..8bad89799c 100644 --- a/goal_src/levels/misty/muse.gc +++ b/goal_src/levels/misty/muse.gc @@ -6,6 +6,7 @@ ;; dgos: L1, MIS ;; DECOMP BEGINS +(import "goal_src/import/muse-ag.gc") (deftype muse (nav-enemy) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/misty/quicksandlurker.gc b/goal_src/levels/misty/quicksandlurker.gc index 82d15ac7ae..e36cd0f46a 100644 --- a/goal_src/levels/misty/quicksandlurker.gc +++ b/goal_src/levels/misty/quicksandlurker.gc @@ -6,6 +6,7 @@ ;; dgos: L1, MIS ;; DECOMP BEGINS +(import "goal_src/import/quicksandlurker-ag.gc") (defpartgroup group-quicksandlurker-missile :id 198 diff --git a/goal_src/levels/misty/sidekick-human.gc b/goal_src/levels/misty/sidekick-human.gc index cebf7ff476..0009340099 100644 --- a/goal_src/levels/misty/sidekick-human.gc +++ b/goal_src/levels/misty/sidekick-human.gc @@ -6,6 +6,10 @@ ;; dgos: L1, MIS ;; DECOMP BEGINS +(import "goal_src/import/darkecocan-ag.gc") +(import "goal_src/import/sidekick-human-ag.gc") +(import "goal_src/import/evilsis-ag.gc") +(import "goal_src/import/evilbro-ag.gc") (deftype sequenceA (process-hidden) () diff --git a/goal_src/levels/ogre/flying-lurker.gc b/goal_src/levels/ogre/flying-lurker.gc index b4eecbcd52..3be28b2b0f 100644 --- a/goal_src/levels/ogre/flying-lurker.gc +++ b/goal_src/levels/ogre/flying-lurker.gc @@ -8,6 +8,9 @@ (declare-type flying-lurker process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/ogrecam-ag.gc") +(import "goal_src/import/flying-lurker-ag.gc") +(import "goal_src/import/plunger-lurker-ag.gc") (defskelgroup *ogrecam-sg* ogrecam ogrecam-lod0-jg -1 ((ogrecam-lod0-mg (meters 999999))) diff --git a/goal_src/levels/ogre/ogre-obs.gc b/goal_src/levels/ogre/ogre-obs.gc index 8415e93fbe..589db0a839 100644 --- a/goal_src/levels/ogre/ogre-obs.gc +++ b/goal_src/levels/ogre/ogre-obs.gc @@ -25,6 +25,13 @@ ;; DECOMP BEGINS +(import "goal_src/import/ogre-bridgeend-ag.gc") +(import "goal_src/import/shortcut-boulder-ag.gc") +(import "goal_src/import/ogre-step-ag.gc") +(import "goal_src/import/ogre-isle-ag.gc") +(import "goal_src/import/ogre-bridge-ag.gc") +(import "goal_src/import/medres-snow-ag.gc") +(import "goal_src/import/tntbarrel-ag.gc") (defskelgroup *med-res-snow-sg* medres-snow medres-snow-lod0-jg medres-snow-idle-ja ((medres-snow-lod0-mg (meters 999999))) diff --git a/goal_src/levels/ogre/ogreboss.gc b/goal_src/levels/ogre/ogreboss.gc index 0ef10fd8d6..d4311fbd88 100644 --- a/goal_src/levels/ogre/ogreboss.gc +++ b/goal_src/levels/ogre/ogreboss.gc @@ -9,6 +9,7 @@ (define-extern *ogreboss* ogreboss) ;; DECOMP BEGINS +(import "goal_src/import/ogreboss-ag.gc") (defskelgroup *ogreboss-sg* ogreboss ogreboss-lod0-jg ogreboss-idle-ja ((ogreboss-lod0-mg (meters 999999))) diff --git a/goal_src/levels/racer_common/racer.gc b/goal_src/levels/racer_common/racer.gc index 610af81feb..a24bf1860c 100644 --- a/goal_src/levels/racer_common/racer.gc +++ b/goal_src/levels/racer_common/racer.gc @@ -9,6 +9,7 @@ (define-extern blocking-plane-spawn (function curve-control none)) ;; DECOMP BEGINS +(import "goal_src/import/racer-ag.gc") (if (not (nmember "racerp" *kernel-packages*)) (set! *kernel-packages* (cons "racerp" *kernel-packages*)) diff --git a/goal_src/levels/racer_common/target-racer-h.gc b/goal_src/levels/racer_common/target-racer-h.gc index e957306848..ae35d770f4 100644 --- a/goal_src/levels/racer_common/target-racer-h.gc +++ b/goal_src/levels/racer_common/target-racer-h.gc @@ -16,6 +16,7 @@ (define-extern *racer-air-mods* surface) ;; DECOMP BEGINS +(import "goal_src/import/balloon-ag.gc") (deftype racer-info (basic) ((entity entity-actor :offset-assert 4) diff --git a/goal_src/levels/robocave/spider-egg.gc b/goal_src/levels/robocave/spider-egg.gc index 1abf477370..63c58572f1 100644 --- a/goal_src/levels/robocave/spider-egg.gc +++ b/goal_src/levels/robocave/spider-egg.gc @@ -12,6 +12,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/spider-egg-ag.gc") (deftype spider-egg (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/rolling/rolling-lightning-mole.gc b/goal_src/levels/rolling/rolling-lightning-mole.gc index 5347854237..723b4a44fe 100644 --- a/goal_src/levels/rolling/rolling-lightning-mole.gc +++ b/goal_src/levels/rolling/rolling-lightning-mole.gc @@ -6,6 +6,7 @@ ;; dgos: L1, ROL ;; DECOMP BEGINS +(import "goal_src/import/lightning-mole-ag.gc") (defun find-adjacent-bounds-one ((arg0 nav-mesh) (arg1 nav-poly) (arg2 int) (arg3 (array int8)) (arg4 (array int8)) (arg5 vector)) (local-vars (v0-2 object) (v1-2 int) (v1-30 int) (a0-2 int) (a0-12 int) (sv-16 nav-poly) (sv-32 int)) diff --git a/goal_src/levels/rolling/rolling-obs.gc b/goal_src/levels/rolling/rolling-obs.gc index af7d773dc8..d4c1657c53 100644 --- a/goal_src/levels/rolling/rolling-obs.gc +++ b/goal_src/levels/rolling/rolling-obs.gc @@ -6,6 +6,11 @@ ;; dgos: L1, ROL ;; DECOMP BEGINS +(import "goal_src/import/dark-plant-ag.gc") +(import "goal_src/import/pusher-ag.gc") +(import "goal_src/import/happy-plant-ag.gc") +(import "goal_src/import/rollingcam-ag.gc") +(import "goal_src/import/rolling-start-ag.gc") (deftype rolling-part (part-spawner) ((root-override basic :offset 112) diff --git a/goal_src/levels/rolling/rolling-race-ring.gc b/goal_src/levels/rolling/rolling-race-ring.gc index e3703a84f6..0bbbe1fb16 100644 --- a/goal_src/levels/rolling/rolling-race-ring.gc +++ b/goal_src/levels/rolling/rolling-race-ring.gc @@ -6,6 +6,7 @@ ;; dgos: L1, ROL ;; DECOMP BEGINS +(import "goal_src/import/race-ring-ag.gc") (deftype race-ring (process-drawable) ((rot-y float :offset-assert 176) diff --git a/goal_src/levels/rolling/rolling-robber.gc b/goal_src/levels/rolling/rolling-robber.gc index fec58c2b8a..2c153c4d1d 100644 --- a/goal_src/levels/rolling/rolling-robber.gc +++ b/goal_src/levels/rolling/rolling-robber.gc @@ -6,6 +6,7 @@ ;; dgos: L1, ROL ;; DECOMP BEGINS +(import "goal_src/import/robber-ag.gc") (defstate fuel-cell-spline-slider (fuel-cell) :trans diff --git a/goal_src/levels/snow/ice-cube.gc b/goal_src/levels/snow/ice-cube.gc index cad525f7b0..1d91a1acfb 100644 --- a/goal_src/levels/snow/ice-cube.gc +++ b/goal_src/levels/snow/ice-cube.gc @@ -6,6 +6,8 @@ ;; dgos: L1, SNO ;; DECOMP BEGINS +(import "goal_src/import/ice-cube-ag.gc") +(import "goal_src/import/ice-cube-break-ag.gc") (defskelgroup *ice-cube-break-sg* ice-cube-break ice-cube-break-lod0-jg -1 ((ice-cube-break-lod0-mg (meters 999999))) diff --git a/goal_src/levels/snow/snow-ball.gc b/goal_src/levels/snow/snow-ball.gc index 547bbe8285..f38e87f59a 100644 --- a/goal_src/levels/snow/snow-ball.gc +++ b/goal_src/levels/snow/snow-ball.gc @@ -6,6 +6,7 @@ ;; dgos: L1, SNO ;; DECOMP BEGINS +(import "goal_src/import/snow-ball-ag.gc") (deftype snow-ball-shadow (process-drawable) () diff --git a/goal_src/levels/snow/snow-bumper.gc b/goal_src/levels/snow/snow-bumper.gc index a02d4210f0..aee228bc97 100644 --- a/goal_src/levels/snow/snow-bumper.gc +++ b/goal_src/levels/snow/snow-bumper.gc @@ -11,6 +11,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/snow-bumper-ag.gc") (deftype snow-bumper (process-drawable) ((bumper-id int32 :offset-assert 176) diff --git a/goal_src/levels/snow/snow-bunny.gc b/goal_src/levels/snow/snow-bunny.gc index 8186bbe214..b57174e5ab 100644 --- a/goal_src/levels/snow/snow-bunny.gc +++ b/goal_src/levels/snow/snow-bunny.gc @@ -6,6 +6,7 @@ ;; dgos: CIT, L1, SNO ;; DECOMP BEGINS +(import "goal_src/import/snow-bunny-ag.gc") (deftype snow-bunny (nav-enemy) ((patrol-rand-distraction int32 :offset-assert 400) diff --git a/goal_src/levels/snow/snow-flutflut-obs.gc b/goal_src/levels/snow/snow-flutflut-obs.gc index 37b40bfd6d..e9a25ed0bf 100644 --- a/goal_src/levels/snow/snow-flutflut-obs.gc +++ b/goal_src/levels/snow/snow-flutflut-obs.gc @@ -15,6 +15,10 @@ ;; DECOMP BEGINS +(import "goal_src/import/flutflut-plat-small-ag.gc") +(import "goal_src/import/flutflut-plat-large-ag.gc") +(import "goal_src/import/snow-button-ag.gc") +(import "goal_src/import/flutflut-plat-med-ag.gc") (deftype flutflut-plat (plat) ((has-path? symbol :offset-assert 264) diff --git a/goal_src/levels/snow/snow-obs.gc b/goal_src/levels/snow/snow-obs.gc index 37f10dce14..dc734cc57b 100644 --- a/goal_src/levels/snow/snow-obs.gc +++ b/goal_src/levels/snow/snow-obs.gc @@ -6,6 +6,14 @@ ;; dgos: L1, SNO ;; DECOMP BEGINS +(import "goal_src/import/snow-fort-gate-ag.gc") +(import "goal_src/import/snowcam-ag.gc") +(import "goal_src/import/snow-gears-ag.gc") +(import "goal_src/import/snow-log-ag.gc") +(import "goal_src/import/snow-switch-ag.gc") +(import "goal_src/import/snow-eggtop-ag.gc") +(import "goal_src/import/snow-spatula-ag.gc") +(import "goal_src/import/snowpusher-ag.gc") (deftype snowcam (pov-camera) ((seq uint64 :offset-assert 224) diff --git a/goal_src/levels/snow/snow-ram-boss.gc b/goal_src/levels/snow/snow-ram-boss.gc index 96faf43913..e96b100240 100644 --- a/goal_src/levels/snow/snow-ram-boss.gc +++ b/goal_src/levels/snow/snow-ram-boss.gc @@ -8,6 +8,7 @@ (declare-type ram-boss nav-enemy) ;; DECOMP BEGINS +(import "goal_src/import/ram-boss-ag.gc") (deftype ram-boss-proj (projectile) ((parent-override (pointer ram-boss) :offset 12) diff --git a/goal_src/levels/snow/snow-ram.gc b/goal_src/levels/snow/snow-ram.gc index d398021f23..cb803cf563 100644 --- a/goal_src/levels/snow/snow-ram.gc +++ b/goal_src/levels/snow/snow-ram.gc @@ -6,6 +6,7 @@ ;; dgos: L1, SNO ;; DECOMP BEGINS +(import "goal_src/import/ram-ag.gc") (defskelgroup *ram-sg* ram ram-lod0-jg ram-cock-ja ((ram-lod0-mg (meters 20)) (ram-lod1-mg (meters 40)) (ram-lod2-mg (meters 999999))) diff --git a/goal_src/levels/snow/yeti.gc b/goal_src/levels/snow/yeti.gc index f70a51fe76..9462d4a0e7 100644 --- a/goal_src/levels/snow/yeti.gc +++ b/goal_src/levels/snow/yeti.gc @@ -9,6 +9,7 @@ (declare-type yeti-slave nav-enemy) ;; DECOMP BEGINS +(import "goal_src/import/yeti-ag.gc") (deftype yeti-slave (nav-enemy) ((ground-y float :offset-assert 400) diff --git a/goal_src/levels/sunken/bully.gc b/goal_src/levels/sunken/bully.gc index 887b43aa15..f0db1cabe8 100644 --- a/goal_src/levels/sunken/bully.gc +++ b/goal_src/levels/sunken/bully.gc @@ -11,6 +11,7 @@ (define-extern *bully-broken-cage-sg* skeleton-group) ;; DECOMP BEGINS +(import "goal_src/import/bully-ag.gc") (deftype bully-broken-cage (process-drawable) ((parent-override (pointer bully) :offset 12) diff --git a/goal_src/levels/sunken/double-lurker.gc b/goal_src/levels/sunken/double-lurker.gc index 05f4f4292c..4012edca10 100644 --- a/goal_src/levels/sunken/double-lurker.gc +++ b/goal_src/levels/sunken/double-lurker.gc @@ -8,6 +8,8 @@ (declare-type double-lurker nav-enemy) ;; DECOMP BEGINS +(import "goal_src/import/double-lurker-ag.gc") +(import "goal_src/import/double-lurker-top-ag.gc") (deftype double-lurker-top (nav-enemy) ((parent-process (pointer double-lurker) :offset 12) diff --git a/goal_src/levels/sunken/floating-launcher.gc b/goal_src/levels/sunken/floating-launcher.gc index 4ba305a0dd..67cb9b2fac 100644 --- a/goal_src/levels/sunken/floating-launcher.gc +++ b/goal_src/levels/sunken/floating-launcher.gc @@ -6,6 +6,7 @@ ;; dgos: L1, SUN, SUNKEN ;; DECOMP BEGINS +(import "goal_src/import/floating-launcher-ag.gc") (deftype floating-launcher (baseplat) ((trigger-height float :offset-assert 228) diff --git a/goal_src/levels/sunken/helix-water.gc b/goal_src/levels/sunken/helix-water.gc index f9f460923a..4fc21c9146 100644 --- a/goal_src/levels/sunken/helix-water.gc +++ b/goal_src/levels/sunken/helix-water.gc @@ -13,6 +13,8 @@ (define-extern *helix-button* helix-button) ;; DECOMP BEGINS +(import "goal_src/import/helix-button-ag.gc") +(import "goal_src/import/helix-slide-door-ag.gc") (deftype helix-slide-door (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/sunken/orbit-plat.gc b/goal_src/levels/sunken/orbit-plat.gc index c789eee04a..d61672cfa1 100644 --- a/goal_src/levels/sunken/orbit-plat.gc +++ b/goal_src/levels/sunken/orbit-plat.gc @@ -8,6 +8,8 @@ (declare-type orbit-plat baseplat) ;; DECOMP BEGINS +(import "goal_src/import/orbit-plat-ag.gc") +(import "goal_src/import/orbit-plat-bottom-ag.gc") (deftype orbit-plat-bottom (process-drawable) ((parent-override (pointer orbit-plat) :offset 12) diff --git a/goal_src/levels/sunken/puffer.gc b/goal_src/levels/sunken/puffer.gc index 30144fffbd..4f7388e1d1 100644 --- a/goal_src/levels/sunken/puffer.gc +++ b/goal_src/levels/sunken/puffer.gc @@ -12,6 +12,7 @@ ;; DECOMP BEGINS +(import "goal_src/import/puffer-ag.gc") (deftype puffer (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/sunken/qbert-plat.gc b/goal_src/levels/sunken/qbert-plat.gc index d9e35a0dce..44b8b20f84 100644 --- a/goal_src/levels/sunken/qbert-plat.gc +++ b/goal_src/levels/sunken/qbert-plat.gc @@ -9,6 +9,8 @@ (declare-type qbert-plat rigid-body-platform) ;; DECOMP BEGINS +(import "goal_src/import/qbert-plat-on-ag.gc") +(import "goal_src/import/qbert-plat-ag.gc") (deftype qbert-plat-on (process-drawable) () diff --git a/goal_src/levels/sunken/shover.gc b/goal_src/levels/sunken/shover.gc index ccc82ecfed..d2dab00f5d 100644 --- a/goal_src/levels/sunken/shover.gc +++ b/goal_src/levels/sunken/shover.gc @@ -9,6 +9,7 @@ (define-extern *shover* shover) ;; unknown type ;; DECOMP BEGINS +(import "goal_src/import/shover-ag.gc") (deftype shover (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/sunken/square-platform.gc b/goal_src/levels/sunken/square-platform.gc index 9246ccc8d5..fafe8e1e39 100644 --- a/goal_src/levels/sunken/square-platform.gc +++ b/goal_src/levels/sunken/square-platform.gc @@ -9,6 +9,7 @@ (declare-type square-platform-master process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/square-platform-ag.gc") (deftype square-platform (baseplat) ((plat-id int32 :offset-assert 228) diff --git a/goal_src/levels/sunken/steam-cap.gc b/goal_src/levels/sunken/steam-cap.gc index 02a6f23ab9..69825163d4 100644 --- a/goal_src/levels/sunken/steam-cap.gc +++ b/goal_src/levels/sunken/steam-cap.gc @@ -6,6 +6,7 @@ ;; dgos: L1, SUN, SUNKEN ;; DECOMP BEGINS +(import "goal_src/import/steam-cap-ag.gc") (deftype steam-cap-control-pt (structure) ((trans vector :inline :offset-assert 0) diff --git a/goal_src/levels/sunken/sun-exit-chamber.gc b/goal_src/levels/sunken/sun-exit-chamber.gc index c684ffa7ab..4c78db4891 100644 --- a/goal_src/levels/sunken/sun-exit-chamber.gc +++ b/goal_src/levels/sunken/sun-exit-chamber.gc @@ -9,6 +9,9 @@ (declare-type exit-chamber-button basebutton) ;; DECOMP BEGINS +(import "goal_src/import/blue-eco-charger-ag.gc") +(import "goal_src/import/blue-eco-charger-orb-ag.gc") +(import "goal_src/import/exit-chamber-ag.gc") (deftype blue-eco-charger-orb (process-drawable) ((parent-process (pointer blue-eco-charger) :offset 12) diff --git a/goal_src/levels/sunken/sun-iris-door.gc b/goal_src/levels/sunken/sun-iris-door.gc index 433da866a5..58520b7441 100644 --- a/goal_src/levels/sunken/sun-iris-door.gc +++ b/goal_src/levels/sunken/sun-iris-door.gc @@ -6,6 +6,7 @@ ;; dgos: L1, SUN, SUNKEN ;; DECOMP BEGINS +(import "goal_src/import/sun-iris-door-ag.gc") (deftype sun-iris-door (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/sunken/sunken-fish.gc b/goal_src/levels/sunken/sunken-fish.gc index b13bd394aa..a00f52d393 100644 --- a/goal_src/levels/sunken/sunken-fish.gc +++ b/goal_src/levels/sunken/sunken-fish.gc @@ -6,6 +6,7 @@ ;; dgos: L1, SUN, SUNKEN ;; DECOMP BEGINS +(import "goal_src/import/sunkenfisha-ag.gc") (deftype sunkenfisha (process-drawable) ((path-u float :offset-assert 176) diff --git a/goal_src/levels/sunken/sunken-obs.gc b/goal_src/levels/sunken/sunken-obs.gc index 6d7391a0ba..4eed4f52df 100644 --- a/goal_src/levels/sunken/sunken-obs.gc +++ b/goal_src/levels/sunken/sunken-obs.gc @@ -13,6 +13,9 @@ (define-extern *seaweed* seaweed) ;; DECOMP BEGINS +(import "goal_src/import/seaweed-ag.gc") +(import "goal_src/import/sunkencam-ag.gc") +(import "goal_src/import/side-to-side-plat-ag.gc") (deftype water-vol-deadly (process-hidden) () diff --git a/goal_src/levels/sunken/wall-plat.gc b/goal_src/levels/sunken/wall-plat.gc index d1499f18e6..a313261d23 100644 --- a/goal_src/levels/sunken/wall-plat.gc +++ b/goal_src/levels/sunken/wall-plat.gc @@ -8,6 +8,7 @@ (declare-type wall-plat process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/wall-plat-ag.gc") (deftype wall-plat (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/goal_src/levels/sunken/wedge-plats.gc b/goal_src/levels/sunken/wedge-plats.gc index 0a31af7f79..6520b3cbb2 100644 --- a/goal_src/levels/sunken/wedge-plats.gc +++ b/goal_src/levels/sunken/wedge-plats.gc @@ -10,6 +10,8 @@ (declare-type wedge-plat process) ;; DECOMP BEGINS +(import "goal_src/import/wedge-plat-ag.gc") +(import "goal_src/import/wedge-plat-outer-ag.gc") (deftype wedge-plat-master (process) ((center vector :inline :offset-assert 112) diff --git a/goal_src/levels/sunken/whirlpool.gc b/goal_src/levels/sunken/whirlpool.gc index 569c6a6075..dd7dff80ca 100644 --- a/goal_src/levels/sunken/whirlpool.gc +++ b/goal_src/levels/sunken/whirlpool.gc @@ -6,6 +6,7 @@ ;; dgos: L1, SUN, SUNKEN ;; DECOMP BEGINS +(import "goal_src/import/whirlpool-ag.gc") (deftype whirlpool (process-drawable) ((root-override collide-shape :offset 112) diff --git a/goal_src/levels/swamp/billy.gc b/goal_src/levels/swamp/billy.gc index fb0a1d8cfa..7eff48ce50 100644 --- a/goal_src/levels/swamp/billy.gc +++ b/goal_src/levels/swamp/billy.gc @@ -8,6 +8,9 @@ (declare-type billy-snack process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/farthy-snack-ag.gc") +(import "goal_src/import/billy-ag.gc") +(import "goal_src/import/billy-sidekick-ag.gc") (deftype billy (process-taskable) ((child-override (pointer billy-snack) :offset 20) diff --git a/goal_src/levels/swamp/kermit.gc b/goal_src/levels/swamp/kermit.gc index fb34f0a536..f94abb46cd 100644 --- a/goal_src/levels/swamp/kermit.gc +++ b/goal_src/levels/swamp/kermit.gc @@ -8,6 +8,7 @@ (declare-type kermit nav-enemy) ;; DECOMP BEGINS +(import "goal_src/import/kermit-ag.gc") (defpartgroup group-kermit-charging-up :id 298 diff --git a/goal_src/levels/swamp/swamp-bat.gc b/goal_src/levels/swamp/swamp-bat.gc index 3d3c60adae..c492e78611 100644 --- a/goal_src/levels/swamp/swamp-bat.gc +++ b/goal_src/levels/swamp/swamp-bat.gc @@ -9,6 +9,7 @@ (declare-type swamp-bat process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/swamp-bat-ag.gc") (deftype swamp-bat-idle-path (structure) ((origin vector :inline :offset-assert 0) diff --git a/goal_src/levels/swamp/swamp-obs.gc b/goal_src/levels/swamp/swamp-obs.gc index 98ab8dd220..407542f476 100644 --- a/goal_src/levels/swamp/swamp-obs.gc +++ b/goal_src/levels/swamp/swamp-obs.gc @@ -19,6 +19,11 @@ (define-extern swamp-spike-gate-down (state swampgate)) ;; DECOMP BEGINS +(import "goal_src/import/swamp-rock-ag.gc") +(import "goal_src/import/swamp-spike-ag.gc") +(import "goal_src/import/swampcam-ag.gc") +(import "goal_src/import/balance-plat-ag.gc") +(import "goal_src/import/tar-plat-ag.gc") (defpartgroup group-swamp-spike-up :id 289 diff --git a/goal_src/levels/swamp/swamp-rat-nest.gc b/goal_src/levels/swamp/swamp-rat-nest.gc index 27e7968875..a9fc02f447 100644 --- a/goal_src/levels/swamp/swamp-rat-nest.gc +++ b/goal_src/levels/swamp/swamp-rat-nest.gc @@ -10,6 +10,7 @@ (declare-type swamp-rat-nest process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/swamp-rat-nest-ag.gc") (defpartgroup group-swamp-rat-nest-a-explosion :id 292 diff --git a/goal_src/levels/swamp/swamp-rat.gc b/goal_src/levels/swamp/swamp-rat.gc index bc47bba391..e3e531b6e7 100644 --- a/goal_src/levels/swamp/swamp-rat.gc +++ b/goal_src/levels/swamp/swamp-rat.gc @@ -9,6 +9,7 @@ (declare-type billy process-taskable) ;; DECOMP BEGINS +(import "goal_src/import/swamp-rat-ag.gc") (deftype swamp-rat (nav-enemy) ((up-vector vector :inline :offset-assert 400) diff --git a/goal_src/levels/title/title-obs.gc b/goal_src/levels/title/title-obs.gc index 8044f18ed4..ddd57cfa9c 100644 --- a/goal_src/levels/title/title-obs.gc +++ b/goal_src/levels/title/title-obs.gc @@ -6,6 +6,13 @@ ;; dgos: TIT ;; DECOMP BEGINS +(import "goal_src/import/logo-cam-ag.gc") +(import "goal_src/import/logo-black-ag.gc") +(import "goal_src/import/logo-volumes-ag.gc") +(import "goal_src/import/ndi-volumes-ag.gc") +(import "goal_src/import/logo-ag.gc") +(import "goal_src/import/ndi-ag.gc") +(import "goal_src/import/ndi-cam-ag.gc") (deftype logo (process-drawable) ((camera handle :offset-assert 176) diff --git a/goal_src/levels/training/training-obs.gc b/goal_src/levels/training/training-obs.gc index a8b387f424..a9fc52ba09 100644 --- a/goal_src/levels/training/training-obs.gc +++ b/goal_src/levels/training/training-obs.gc @@ -6,6 +6,11 @@ ;; dgos: L1, TRA ;; DECOMP BEGINS +(import "goal_src/import/trainingcam-ag.gc") +(import "goal_src/import/scarecrow-b-ag.gc") +(import "goal_src/import/scarecrow-a-ag.gc") +(import "goal_src/import/pontoonfive-ag.gc") +(import "goal_src/import/jng-iris-door-ag.gc") (deftype training-water (water-anim) () diff --git a/goal_src/levels/village1/assistant.gc b/goal_src/levels/village1/assistant.gc index c54410ec88..ee3add9b2e 100644 --- a/goal_src/levels/village1/assistant.gc +++ b/goal_src/levels/village1/assistant.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI1 ;; DECOMP BEGINS +(import "goal_src/import/assistant-ag.gc") (deftype assistant (process-taskable) ((sound-id sound-id :offset-assert 380) diff --git a/goal_src/levels/village1/explorer.gc b/goal_src/levels/village1/explorer.gc index 73daa61a8e..467b74cb79 100644 --- a/goal_src/levels/village1/explorer.gc +++ b/goal_src/levels/village1/explorer.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI1 ;; DECOMP BEGINS +(import "goal_src/import/explorer-ag.gc") (deftype explorer (process-taskable) () diff --git a/goal_src/levels/village1/farmer.gc b/goal_src/levels/village1/farmer.gc index 10051806af..0eea6cd3c3 100644 --- a/goal_src/levels/village1/farmer.gc +++ b/goal_src/levels/village1/farmer.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI1 ;; DECOMP BEGINS +(import "goal_src/import/farmer-ag.gc") (deftype farmer (process-taskable) () diff --git a/goal_src/levels/village1/fishermans-boat.gc b/goal_src/levels/village1/fishermans-boat.gc index 446d1cf8a0..364feb5383 100644 --- a/goal_src/levels/village1/fishermans-boat.gc +++ b/goal_src/levels/village1/fishermans-boat.gc @@ -8,6 +8,9 @@ (declare-type fishermans-boat rigid-body-platform) ;; DECOMP BEGINS +(import "goal_src/import/fishermans-boat-ag.gc") +(import "goal_src/import/evilsis-ag.gc") +(import "goal_src/import/evilbro-ag.gc") (define *fishermans-boat-constants* (new 'static 'rigid-body-platform-constants :drag-factor 2.0 diff --git a/goal_src/levels/village1/sage.gc b/goal_src/levels/village1/sage.gc index 5fc69bd7fd..e7a98c70cb 100644 --- a/goal_src/levels/village1/sage.gc +++ b/goal_src/levels/village1/sage.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI1 ;; DECOMP BEGINS +(import "goal_src/import/sage-ag.gc") (deftype sage (process-taskable) ((reminder-played basic :offset-assert 380) diff --git a/goal_src/levels/village1/village-obs.gc b/goal_src/levels/village1/village-obs.gc index 38dbc25bc2..1f8d58e929 100644 --- a/goal_src/levels/village1/village-obs.gc +++ b/goal_src/levels/village1/village-obs.gc @@ -41,6 +41,27 @@ ;; DECOMP BEGINS +(import "goal_src/import/medres-beach1-ag.gc") +(import "goal_src/import/mayorgears-ag.gc") +(import "goal_src/import/medres-jungle2-ag.gc") +(import "goal_src/import/hutlamp-ag.gc") +(import "goal_src/import/revcycleprop-ag.gc") +(import "goal_src/import/sagesail-ag.gc") +(import "goal_src/import/villa-starfish-ag.gc") +(import "goal_src/import/medres-training-ag.gc") +(import "goal_src/import/medres-village12-ag.gc") +(import "goal_src/import/medres-beach-ag.gc") +(import "goal_src/import/windmill-sail-ag.gc") +(import "goal_src/import/medres-beach2-ag.gc") +(import "goal_src/import/medres-beach3-ag.gc") +(import "goal_src/import/revcycle-ag.gc") +(import "goal_src/import/medres-jungle-ag.gc") +(import "goal_src/import/medres-village11-ag.gc") +(import "goal_src/import/medres-village13-ag.gc") +(import "goal_src/import/reflector-middle-ag.gc") +(import "goal_src/import/windspinner-ag.gc") +(import "goal_src/import/medres-jungle1-ag.gc") +(import "goal_src/import/medres-misty-ag.gc") (defskelgroup *med-res-jungle-sg* medres-jungle medres-jungle-lod0-jg medres-jungle-idle-ja ((medres-jungle-lod0-mg (meters 999999))) diff --git a/goal_src/levels/village1/yakow.gc b/goal_src/levels/village1/yakow.gc index 072ecb5e59..b5432c1062 100644 --- a/goal_src/levels/village1/yakow.gc +++ b/goal_src/levels/village1/yakow.gc @@ -8,6 +8,8 @@ (declare-type yakow process-drawable) ;; DECOMP BEGINS +(import "goal_src/import/village1cam-ag.gc") +(import "goal_src/import/yakow-ag.gc") (defskelgroup *village1cam-sg* village1cam village1cam-lod0-jg village1cam-anim-ja ((village1cam-lod0-mg (meters 999999))) diff --git a/goal_src/levels/village2/assistant-village2.gc b/goal_src/levels/village2/assistant-village2.gc index 4e6763081e..f633431716 100644 --- a/goal_src/levels/village2/assistant-village2.gc +++ b/goal_src/levels/village2/assistant-village2.gc @@ -6,6 +6,8 @@ ;; dgos: L1, VI2 ;; DECOMP BEGINS +(import "goal_src/import/jaws-ag.gc") +(import "goal_src/import/assistant-village2-ag.gc") (deftype assistant-levitator (process-taskable) ((boulder entity-actor :offset-assert 380) diff --git a/goal_src/levels/village2/flutflut-bluehut.gc b/goal_src/levels/village2/flutflut-bluehut.gc index 81be545909..b43b095fed 100644 --- a/goal_src/levels/village2/flutflut-bluehut.gc +++ b/goal_src/levels/village2/flutflut-bluehut.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI2 ;; DECOMP BEGINS +(import "goal_src/import/flutflut-bluehut-ag.gc") (deftype flutflut-bluehut (process-taskable) () diff --git a/goal_src/levels/village2/gambler.gc b/goal_src/levels/village2/gambler.gc index d1305e7eaf..e0a547e86d 100644 --- a/goal_src/levels/village2/gambler.gc +++ b/goal_src/levels/village2/gambler.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI2 ;; DECOMP BEGINS +(import "goal_src/import/gambler-ag.gc") (deftype gambler (process-taskable) () diff --git a/goal_src/levels/village2/geologist.gc b/goal_src/levels/village2/geologist.gc index a2ce0fe05b..c1860c8e89 100644 --- a/goal_src/levels/village2/geologist.gc +++ b/goal_src/levels/village2/geologist.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI2 ;; DECOMP BEGINS +(import "goal_src/import/geologist-ag.gc") (deftype geologist (process-taskable) () diff --git a/goal_src/levels/village2/sage-bluehut.gc b/goal_src/levels/village2/sage-bluehut.gc index 28ba222032..f6ddbb57a7 100644 --- a/goal_src/levels/village2/sage-bluehut.gc +++ b/goal_src/levels/village2/sage-bluehut.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI2 ;; DECOMP BEGINS +(import "goal_src/import/sage-bluehut-ag.gc") (deftype assistant-bluehut (process-taskable) ((sound-id sound-id :offset-assert 380) diff --git a/goal_src/levels/village2/sunken-elevator.gc b/goal_src/levels/village2/sunken-elevator.gc index 2baa07ad62..a02b9f19dc 100644 --- a/goal_src/levels/village2/sunken-elevator.gc +++ b/goal_src/levels/village2/sunken-elevator.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI2 ;; DECOMP BEGINS +(import "goal_src/import/sunken-elevator-ag.gc") (deftype sunken-elevator (plat-button) ((play-at-top-going-up-camera? symbol :offset-assert 240) diff --git a/goal_src/levels/village2/swamp-blimp.gc b/goal_src/levels/village2/swamp-blimp.gc index 51f9c6f200..dbf06b991a 100644 --- a/goal_src/levels/village2/swamp-blimp.gc +++ b/goal_src/levels/village2/swamp-blimp.gc @@ -18,6 +18,11 @@ ;; DECOMP BEGINS +(import "goal_src/import/precursor-arm-ag.gc") +(import "goal_src/import/swamp-rope-ag.gc") +(import "goal_src/import/swamp-tetherrock-explode-ag.gc") +(import "goal_src/import/swamp-blimp-ag.gc") +(import "goal_src/import/swamp-tetherrock-ag.gc") (defskelgroup *swamp-tetherrock-sg* swamp-tetherrock swamp-tetherrock-lod0-jg swamp-tetherrock-idle-ja ((swamp-tetherrock-lod0-mg (meters 999999))) diff --git a/goal_src/levels/village2/village2-obs.gc b/goal_src/levels/village2/village2-obs.gc index c793b41526..76f220d4d2 100644 --- a/goal_src/levels/village2/village2-obs.gc +++ b/goal_src/levels/village2/village2-obs.gc @@ -7,6 +7,17 @@ ;; DECOMP BEGINS +(import "goal_src/import/medres-village2-ag.gc") +(import "goal_src/import/pontoonten-ag.gc") +(import "goal_src/import/exit-chamber-dummy-ag.gc") +(import "goal_src/import/ceilingflag-ag.gc") +(import "goal_src/import/allpontoons-ag.gc") +(import "goal_src/import/ogreboss-village2-ag.gc") +(import "goal_src/import/medres-rolling-ag.gc") +(import "goal_src/import/pontoonfive-ag.gc") +(import "goal_src/import/fireboulder-ag.gc") +(import "goal_src/import/medres-rolling1-ag.gc") +(import "goal_src/import/village2cam-ag.gc") (deftype village2cam (pov-camera) ((seq uint64 :offset-assert 224) diff --git a/goal_src/levels/village2/warrior.gc b/goal_src/levels/village2/warrior.gc index 85e9d1deed..9670bc1fb1 100644 --- a/goal_src/levels/village2/warrior.gc +++ b/goal_src/levels/village2/warrior.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI2 ;; DECOMP BEGINS +(import "goal_src/import/warrior-ag.gc") (deftype warrior (process-taskable) () diff --git a/goal_src/levels/village3/assistant-village3.gc b/goal_src/levels/village3/assistant-village3.gc index 63df0a096d..dd480eafec 100644 --- a/goal_src/levels/village3/assistant-village3.gc +++ b/goal_src/levels/village3/assistant-village3.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI3 ;; DECOMP BEGINS +(import "goal_src/import/assistant-village3-ag.gc") (deftype assistant-villagec (process-taskable) () diff --git a/goal_src/levels/village3/minecart.gc b/goal_src/levels/village3/minecart.gc index d486ac5b18..fd31a1148b 100644 --- a/goal_src/levels/village3/minecart.gc +++ b/goal_src/levels/village3/minecart.gc @@ -6,6 +6,7 @@ ;; dgos: L1, VI3 ;; DECOMP BEGINS +(import "goal_src/import/minecartsteel-ag.gc") (defskelgroup *minecartsteel-sg* minecartsteel minecartsteel-lod0-jg minecartsteel-idle-ja ((minecartsteel-lod0-mg (meters 20)) diff --git a/goal_src/levels/village3/miners.gc b/goal_src/levels/village3/miners.gc index c292440c95..a902f823fe 100644 --- a/goal_src/levels/village3/miners.gc +++ b/goal_src/levels/village3/miners.gc @@ -8,6 +8,9 @@ (declare-type minershort process-taskable) ;; DECOMP BEGINS +(import "goal_src/import/minershort-ag.gc") +(import "goal_src/import/minertall-ag.gc") +(import "goal_src/import/cavegem-ag.gc") (defbehavior miners-anim-loop minershort () (when (!= (ja-group) (get-art-elem self)) diff --git a/goal_src/levels/village3/sage-village3.gc b/goal_src/levels/village3/sage-village3.gc index b31594f682..431415055c 100644 --- a/goal_src/levels/village3/sage-village3.gc +++ b/goal_src/levels/village3/sage-village3.gc @@ -6,6 +6,9 @@ ;; dgos: L1, VI3 ;; DECOMP BEGINS +(import "goal_src/import/evilsis-village3-ag.gc") +(import "goal_src/import/evilbro-village3-ag.gc") +(import "goal_src/import/sage-village3-ag.gc") (deftype sage-villagec (process-taskable) ((evilbro handle :offset-assert 384) diff --git a/goal_src/levels/village3/village3-obs.gc b/goal_src/levels/village3/village3-obs.gc index cd811ec399..ec7a87c17b 100644 --- a/goal_src/levels/village3/village3-obs.gc +++ b/goal_src/levels/village3/village3-obs.gc @@ -6,6 +6,13 @@ ;; dgos: L1, VI3 ;; DECOMP BEGINS +(import "goal_src/import/gondola-ag.gc") +(import "goal_src/import/gondolacables-ag.gc") +(import "goal_src/import/medres-ogre2-ag.gc") +(import "goal_src/import/medres-ogre-ag.gc") +(import "goal_src/import/pistons-ag.gc") +(import "goal_src/import/medres-finalboss-ag.gc") +(import "goal_src/import/medres-ogre3-ag.gc") (defskelgroup *med-res-ogre-sg* medres-ogre medres-ogre-lod0-jg medres-ogre-idle-ja ((medres-ogre-lod0-mg (meters 999999))) diff --git a/goal_src/levels/village_common/oracle.gc b/goal_src/levels/village_common/oracle.gc index 85de588323..72b163dc84 100644 --- a/goal_src/levels/village_common/oracle.gc +++ b/goal_src/levels/village_common/oracle.gc @@ -6,6 +6,7 @@ ;; dgos: CIT, L1, VI1, VI2, VI3, VILLAGEP ;; DECOMP BEGINS +(import "goal_src/import/oracle-ag.gc") (deftype oracle (process-taskable) ((first-task uint8 :offset-assert 380) diff --git a/goal_src/levels/village_common/villagep-obs.gc b/goal_src/levels/village_common/villagep-obs.gc index 5a1e064c6c..ffa8811ff4 100644 --- a/goal_src/levels/village_common/villagep-obs.gc +++ b/goal_src/levels/village_common/villagep-obs.gc @@ -7,6 +7,8 @@ ;; DECOMP BEGINS +(import "goal_src/import/village-cam-ag.gc") +(import "goal_src/import/warp-gate-switch-ag.gc") (deftype warpgate (process-hidden) () diff --git a/scripts/setup_art_group_imports.py b/scripts/setup_art_group_imports.py new file mode 100644 index 0000000000..bf399a7f94 --- /dev/null +++ b/scripts/setup_art_group_imports.py @@ -0,0 +1,79 @@ + +import os +import glob +import argparse +import re +import json + +def get_goal_files(root_dir, ext = "*.gc"): + """Get all GOAL source files under root_dir.""" + return [goal_file for file in os.walk(root_dir) for goal_file in glob.glob(os.path.join(file[0], ext))] + +def get_sgs(goal_file): + """Get a list of all the skel groups defined in the file, excluding the -sg and *'s.""" + with open(goal_file, "r") as f: + text = f.read() + # given "(defskelgroup *foo* bar", will match "bar" + matches = re.findall(r'\(defskelgroup \*[\w-]+-sg\* ([\w-]+)', text) + return matches + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument(dest='goal_src', help='the goal_src folder') + args = parser.parse_args() + all_import_files = get_goal_files(os.path.join(args.goal_src, "import")) + all_files = get_goal_files(args.goal_src) + all_non_import_files = list(set(all_files) - set(all_import_files)) + + output_json = {} + to_modify = {} + + import_map = {} + for import_file in all_import_files: + base = os.path.basename(import_file) + # make sure extention is -ag.gc + assert base[-6:] == "-ag.gc" + base_no_extension = base[:-6] + import_map[base_no_extension] = "goal_src/import/" + import_file.split("import/")[1] + # print(import_map) + + # sg_locations = {} + for source_file in all_non_import_files: + sgs = get_sgs(source_file) + deps = set() + for sg in sgs: + if sg not in import_map: + print("missing: ", sg) + else: + deps.add(import_map[sg]) + if len(deps) > 0: + output_json[os.path.basename(source_file)[:-3]] = list(deps) + to_modify[source_file] = deps + + # uncomment to modify files + # for file, deps in to_modify.items(): + # print("modifying ", file, deps) + # with open(file, "r") as f: + # lines = f.readlines() + # to_add = [] # ["\n"] + # for dep in deps: + # to_add.append("(import \"{}\")\n".format(dep)) + # print(to_add) + # added = False + # for i, line in enumerate(lines): + # if ";; decomp begins" in line.lower(): + # lines[i+1:i+1] = to_add + # added = True + # break + # if not added: + # lines[6:6] = to_add + # assert lines[1] == "(in-package goal)\n" + # with open(file, "w") as f: + # f.writelines(lines) + + # uncomment to print json. + # print(json.dumps(output_json, indent=4)) + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/test/decompiler/reference/decompiler-macros.gc b/test/decompiler/reference/decompiler-macros.gc index 1533a843c0..2bc68052f4 100644 --- a/test/decompiler/reference/decompiler-macros.gc +++ b/test/decompiler/reference/decompiler-macros.gc @@ -676,8 +676,8 @@ ) (defmacro sp-rnd-flt (field-name val range mult) - `(new 'static 'sp-field-init-spec - :field (sp-field-id ,field-name) + `(new 'static 'sp-field-init-spec + :field (sp-field-id ,field-name) :initial-valuef ,val :random-rangef ,range :random-multf ,mult @@ -686,8 +686,8 @@ ) (defmacro sp-flt (field-name val) - `(new 'static 'sp-field-init-spec - :field (sp-field-id ,field-name) + `(new 'static 'sp-field-init-spec + :field (sp-field-id ,field-name) :initial-valuef ,val :random-rangef 0.0 :random-multf 1.0 @@ -865,13 +865,13 @@ (desfun art-elt->index (ag-name elt-name) (if (number? elt-name) elt-name - (let ((ag-info (assoc ag-name *art-info*))) - (if (null? ag-info) + (let ((ag-info (hash-table-try-ref *art-info* (symbol->string ag-name)))) + (if (not (car ag-info)) -1 - (let ((elt-info (assoc elt-name (cdr ag-info)))) - (if (null? elt-info) + (let ((elt-info (hash-table-try-ref (cdr ag-info) (symbol->string elt-name)))) + (if (not (car elt-info)) -1 - (cadr elt-info)) + (cadr (cdr elt-info))) ) ) ) @@ -902,7 +902,7 @@ ;; set joint geometry and joint bones (set! (-> skel jgeo) ,(art-elt->index (string->symbol-format "{}-ag" art-name) joint-geom)) (set! (-> skel janim) ,(art-elt->index (string->symbol-format "{}-ag" art-name) joint-anim)) - + ;; set lods ,@(apply-i (lambda (x i) `(begin @@ -1010,7 +1010,7 @@ ) "set various joint anim parameters for self and eval them. you can use this for playing animations! - + chan = the channel to modify. defaults to 0 (base channel). this is usually what you want. group! = when not #f, set this as the new frame-group. defaults to #f num! = set the frame playback function. this is what determines what frame an animation is at. funcs below. @@ -1021,7 +1021,7 @@ frame-num = set the frame-num field. frame-interp = set the frame-interp field. dist = set the dist field. - + available num! functions: - (+!) = advance anim. - (-!) = reverse anim. @@ -1036,7 +1036,7 @@ - min = the start of the animation. - max = the end of the animation. " - + (let* ((num-args (if (pair? num!) (cdr num!) '())) (num! (if (pair? num!) (car num!) num!)) (nf (cond diff --git a/test/decompiler/reference/engine/game/collectables_REF.gc b/test/decompiler/reference/engine/game/collectables_REF.gc index b5f5a3e06e..3e0f124fbc 100644 --- a/test/decompiler/reference/engine/game/collectables_REF.gc +++ b/test/decompiler/reference/engine/game/collectables_REF.gc @@ -1,6 +1,11 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/buzzer-ag.gc") +(import "goal_src/import/ecovalve-ag.gc") +(import "goal_src/import/money-ag.gc") +(import "goal_src/import/fuel-cell-ag.gc") + ;; definition for symbol *eco-pill-count*, type int (define *eco-pill-count* 0) diff --git a/test/decompiler/reference/engine/game/crates_REF.gc b/test/decompiler/reference/engine/game/crates_REF.gc index 429ad5f159..b4135c8968 100644 --- a/test/decompiler/reference/engine/game/crates_REF.gc +++ b/test/decompiler/reference/engine/game/crates_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/crate-ag.gc") + ;; failed to figure out what this is: (defskelgroup *crate-barrel-sg* crate crate-barrel-lod0-jg crate-barrel-idle-ja ((crate-barrel-lod0-mg (meters 20)) (crate-barrel-lod1-mg (meters 40)) (crate-barrel-lod2-mg (meters 999999))) diff --git a/test/decompiler/reference/engine/game/voicebox_REF.gc b/test/decompiler/reference/engine/game/voicebox_REF.gc index 59a387ca04..cf25a4a68e 100644 --- a/test/decompiler/reference/engine/game/voicebox_REF.gc +++ b/test/decompiler/reference/engine/game/voicebox_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/speaker-ag.gc") + ;; definition of type camera-voicebox (deftype camera-voicebox (camera-slave) () diff --git a/test/decompiler/reference/engine/target/sidekick_REF.gc b/test/decompiler/reference/engine/target/sidekick_REF.gc index f9d0714f30..be8967a442 100644 --- a/test/decompiler/reference/engine/target/sidekick_REF.gc +++ b/test/decompiler/reference/engine/target/sidekick_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sidekick-ag.gc") + ;; definition for symbol *sidekick-remap*, type pair (define *sidekick-remap* '(("run-to-stance-left" "run-to-stance") ("run-to-stance-loop-left" "run-to-stance-loop") diff --git a/test/decompiler/reference/engine/target/target-death_REF.gc b/test/decompiler/reference/engine/target/target-death_REF.gc index 6f4f496716..3b312cc773 100644 --- a/test/decompiler/reference/engine/target/target-death_REF.gc +++ b/test/decompiler/reference/engine/target/target-death_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/deathcam-ag.gc") + ;; failed to figure out what this is: (defskelgroup *deathcam-sg* deathcam deathcam-lod0-jg deathcam-idle-ja ((deathcam-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/engine/target/target-util_REF.gc b/test/decompiler/reference/engine/target/target-util_REF.gc index 87e8426f15..3b3da4a7eb 100644 --- a/test/decompiler/reference/engine/target/target-util_REF.gc +++ b/test/decompiler/reference/engine/target/target-util_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/eichar-ag.gc") + ;; failed to figure out what this is: (defskelgroup *jchar-sg* eichar eichar-lod0-jg -1 ((eichar-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/engine/ui/hud-classes_REF.gc b/test/decompiler/reference/engine/ui/hud-classes_REF.gc index 824f1a4944..2d707ddcb8 100644 --- a/test/decompiler/reference/engine/ui/hud-classes_REF.gc +++ b/test/decompiler/reference/engine/ui/hud-classes_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/fuelcell-naked-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-part-hud-pickup :id 75 diff --git a/test/decompiler/reference/levels/beach/beach-obs_REF.gc b/test/decompiler/reference/levels/beach/beach-obs_REF.gc index b0e58d5e2d..5bf27ecb29 100644 --- a/test/decompiler/reference/levels/beach/beach-obs_REF.gc +++ b/test/decompiler/reference/levels/beach/beach-obs_REF.gc @@ -1,6 +1,16 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/ecoventrock-ag.gc") +(import "goal_src/import/beachcam-ag.gc") +(import "goal_src/import/windmill-one-ag.gc") +(import "goal_src/import/kickrock-ag.gc") +(import "goal_src/import/harvester-ag.gc") +(import "goal_src/import/flutflutegg-ag.gc") +(import "goal_src/import/grottopole-ag.gc") +(import "goal_src/import/flutflut-ag.gc") +(import "goal_src/import/bladeassm-ag.gc") + ;; failed to figure out what this is: (defskelgroup *beachcam-sg* beachcam beachcam-lod0-jg beachcam-anim-ja ((beachcam-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/beach/beach-rocks_REF.gc b/test/decompiler/reference/levels/beach/beach-rocks_REF.gc index 5238a3c65d..de510d50ee 100644 --- a/test/decompiler/reference/levels/beach/beach-rocks_REF.gc +++ b/test/decompiler/reference/levels/beach/beach-rocks_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/lrocklrg-ag.gc") + ;; failed to figure out what this is: (defskelgroup *lrocklrg-sg* lrocklrg lrocklrg-lod0-jg lrocklrg-idle-ja ((lrocklrg-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/beach/bird-lady-beach_REF.gc b/test/decompiler/reference/levels/beach/bird-lady-beach_REF.gc index 1926172710..79e4692d9c 100644 --- a/test/decompiler/reference/levels/beach/bird-lady-beach_REF.gc +++ b/test/decompiler/reference/levels/beach/bird-lady-beach_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/bird-lady-beach-ag.gc") + ;; definition of type bird-lady-beach (deftype bird-lady-beach (process-taskable) ((flutflut handle :offset-assert 384) diff --git a/test/decompiler/reference/levels/beach/bird-lady_REF.gc b/test/decompiler/reference/levels/beach/bird-lady_REF.gc index f60dde40e0..e44159568a 100644 --- a/test/decompiler/reference/levels/beach/bird-lady_REF.gc +++ b/test/decompiler/reference/levels/beach/bird-lady_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/bird-lady-ag.gc") + ;; definition of type bird-lady (deftype bird-lady (process-taskable) () diff --git a/test/decompiler/reference/levels/beach/lurkercrab_REF.gc b/test/decompiler/reference/levels/beach/lurkercrab_REF.gc index c0ccd2676a..f05a49c0c7 100644 --- a/test/decompiler/reference/levels/beach/lurkercrab_REF.gc +++ b/test/decompiler/reference/levels/beach/lurkercrab_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/lurkercrab-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-lurkercrab-slide :id 159 diff --git a/test/decompiler/reference/levels/beach/lurkerpuppy_REF.gc b/test/decompiler/reference/levels/beach/lurkerpuppy_REF.gc index b146ceeaa2..ccb3493eeb 100644 --- a/test/decompiler/reference/levels/beach/lurkerpuppy_REF.gc +++ b/test/decompiler/reference/levels/beach/lurkerpuppy_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/lurkerpuppy-ag.gc") + ;; definition of type lurkerpuppy (deftype lurkerpuppy (nav-enemy) () diff --git a/test/decompiler/reference/levels/beach/lurkerworm_REF.gc b/test/decompiler/reference/levels/beach/lurkerworm_REF.gc index 334a576395..fef62c6090 100644 --- a/test/decompiler/reference/levels/beach/lurkerworm_REF.gc +++ b/test/decompiler/reference/levels/beach/lurkerworm_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/lurkerworm-ag.gc") + ;; definition of type lurkerworm (deftype lurkerworm (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/beach/mayor_REF.gc b/test/decompiler/reference/levels/beach/mayor_REF.gc index 320ff1f720..65a739ab74 100644 --- a/test/decompiler/reference/levels/beach/mayor_REF.gc +++ b/test/decompiler/reference/levels/beach/mayor_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/mayor-ag.gc") + ;; definition of type mayor (deftype mayor (process-taskable) () diff --git a/test/decompiler/reference/levels/beach/pelican_REF.gc b/test/decompiler/reference/levels/beach/pelican_REF.gc index 2a91eb162f..9ced3f536a 100644 --- a/test/decompiler/reference/levels/beach/pelican_REF.gc +++ b/test/decompiler/reference/levels/beach/pelican_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/pelican-ag.gc") + ;; definition of type pelican-bank (deftype pelican-bank (basic) ((circle-speed meters :offset-assert 4) diff --git a/test/decompiler/reference/levels/beach/sculptor_REF.gc b/test/decompiler/reference/levels/beach/sculptor_REF.gc index 95a031a5bb..20185fe26f 100644 --- a/test/decompiler/reference/levels/beach/sculptor_REF.gc +++ b/test/decompiler/reference/levels/beach/sculptor_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sculptor-muse-ag.gc") +(import "goal_src/import/sculptor-ag.gc") + ;; definition of type sculptor (deftype sculptor (process-taskable) ((muse handle :offset-assert 384) diff --git a/test/decompiler/reference/levels/beach/seagull_REF.gc b/test/decompiler/reference/levels/beach/seagull_REF.gc index 20411f90b2..9130cedbec 100644 --- a/test/decompiler/reference/levels/beach/seagull_REF.gc +++ b/test/decompiler/reference/levels/beach/seagull_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/seagull-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-seagull-takeoff :id 160 diff --git a/test/decompiler/reference/levels/citadel/assistant-citadel_REF.gc b/test/decompiler/reference/levels/citadel/assistant-citadel_REF.gc index 1d0fffd909..6dbf07abd9 100644 --- a/test/decompiler/reference/levels/citadel/assistant-citadel_REF.gc +++ b/test/decompiler/reference/levels/citadel/assistant-citadel_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/assistant-lavatube-end-ag.gc") + ;; definition of type assistant-lavatube-end (deftype assistant-lavatube-end (process-taskable) () diff --git a/test/decompiler/reference/levels/citadel/citadel-obs_REF.gc b/test/decompiler/reference/levels/citadel/citadel-obs_REF.gc index 893c093576..b9460a59ce 100644 --- a/test/decompiler/reference/levels/citadel/citadel-obs_REF.gc +++ b/test/decompiler/reference/levels/citadel/citadel-obs_REF.gc @@ -1,6 +1,18 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/citb-generator-ag.gc") +(import "goal_src/import/citb-launcher-ag.gc") +(import "goal_src/import/citb-button-ag.gc") +(import "goal_src/import/citadelcam-ag.gc") +(import "goal_src/import/citb-hose-ag.gc") +(import "goal_src/import/citb-robotboss-ag.gc") +(import "goal_src/import/citb-coil-ag.gc") +(import "goal_src/import/citb-arm-shoulder-ag.gc") +(import "goal_src/import/citb-iris-door-ag.gc") +(import "goal_src/import/citb-disc-ag.gc") +(import "goal_src/import/citb-arm-ag.gc") + ;; definition of type citb-arm-section (deftype citb-arm-section (process-drawable) ((sync sync-info :inline :offset-assert 176) diff --git a/test/decompiler/reference/levels/citadel/citadel-sages_REF.gc b/test/decompiler/reference/levels/citadel/citadel-sages_REF.gc index ace9971d86..2d56930111 100644 --- a/test/decompiler/reference/levels/citadel/citadel-sages_REF.gc +++ b/test/decompiler/reference/levels/citadel/citadel-sages_REF.gc @@ -1,6 +1,14 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/green-sagecage-ag.gc") +(import "goal_src/import/yellowsage-ag.gc") +(import "goal_src/import/redsage-ag.gc") +(import "goal_src/import/evilbro-citadel-ag.gc") +(import "goal_src/import/evilsis-citadel-ag.gc") +(import "goal_src/import/citb-sagecage-ag.gc") +(import "goal_src/import/bluesage-ag.gc") + ;; failed to figure out what this is: (defskelgroup *citb-sagecage-sg* citb-sagecage citb-sagecage-lod0-jg citb-sagecage-redsage-idle-ja ((citb-sagecage-lod0-mg (meters 20)) (citb-sagecage-lod1-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/citadel/citb-bunny_REF.gc b/test/decompiler/reference/levels/citadel/citb-bunny_REF.gc index d0db474014..b975f2f08f 100644 --- a/test/decompiler/reference/levels/citadel/citb-bunny_REF.gc +++ b/test/decompiler/reference/levels/citadel/citb-bunny_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/citb-bunny-ag.gc") + ;; definition of type citb-bunny (deftype citb-bunny (snow-bunny) () diff --git a/test/decompiler/reference/levels/citadel/citb-drop-plat_REF.gc b/test/decompiler/reference/levels/citadel/citb-drop-plat_REF.gc index 4208d69cf5..564589fd56 100644 --- a/test/decompiler/reference/levels/citadel/citb-drop-plat_REF.gc +++ b/test/decompiler/reference/levels/citadel/citb-drop-plat_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/citb-drop-plat-ag.gc") + ;; failed to figure out what this is: (defskelgroup *citb-drop-plat-sg* citb-drop-plat citb-drop-plat-lod0-jg citb-drop-plat-idle-ja ((citb-drop-plat-lod0-mg (meters 20)) (citb-drop-plat-lod1-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/citadel/citb-plat_REF.gc b/test/decompiler/reference/levels/citadel/citb-plat_REF.gc index ae6998c0fe..12d9c09923 100644 --- a/test/decompiler/reference/levels/citadel/citb-plat_REF.gc +++ b/test/decompiler/reference/levels/citadel/citb-plat_REF.gc @@ -1,6 +1,15 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/citb-exit-plat-ag.gc") +(import "goal_src/import/plat-eco-citb-ag.gc") +(import "goal_src/import/plat-citb-ag.gc") +(import "goal_src/import/citb-stopbox-ag.gc") +(import "goal_src/import/citb-firehose-ag.gc") +(import "goal_src/import/citb-rotatebox-ag.gc") +(import "goal_src/import/citb-chain-plat-ag.gc") +(import "goal_src/import/citb-donut-ag.gc") + ;; failed to figure out what this is: (defskelgroup *plat-citb-sg* plat-citb plat-citb-lod0-jg plat-citb-idle-ja ((plat-citb-lod0-mg (meters 20)) (plat-citb-lod1-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/common/babak_REF.gc b/test/decompiler/reference/levels/common/babak_REF.gc index c4c2dc8c44..bd446a38cc 100644 --- a/test/decompiler/reference/levels/common/babak_REF.gc +++ b/test/decompiler/reference/levels/common/babak_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/babak-ag.gc") + ;; definition of type babak (deftype babak (nav-enemy) () diff --git a/test/decompiler/reference/levels/common/basebutton_REF.gc b/test/decompiler/reference/levels/common/basebutton_REF.gc index 171dc548f3..650bfaf113 100644 --- a/test/decompiler/reference/levels/common/basebutton_REF.gc +++ b/test/decompiler/reference/levels/common/basebutton_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/generic-button-ag.gc") + ;; definition of type basebutton (deftype basebutton (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/common/blocking-plane_REF.gc b/test/decompiler/reference/levels/common/blocking-plane_REF.gc index 668fc4c297..20453a2415 100644 --- a/test/decompiler/reference/levels/common/blocking-plane_REF.gc +++ b/test/decompiler/reference/levels/common/blocking-plane_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/ef-plane-ag.gc") + ;; definition of type blocking-plane (deftype blocking-plane (process-drawable) () diff --git a/test/decompiler/reference/levels/common/launcherdoor_REF.gc b/test/decompiler/reference/levels/common/launcherdoor_REF.gc index 60e216fb5e..80902d846c 100644 --- a/test/decompiler/reference/levels/common/launcherdoor_REF.gc +++ b/test/decompiler/reference/levels/common/launcherdoor_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/launcherdoor-maincave-ag.gc") +(import "goal_src/import/launcherdoor-ag.gc") + ;; definition of type launcherdoor (deftype launcherdoor (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/common/orb-cache_REF.gc b/test/decompiler/reference/levels/common/orb-cache_REF.gc index b5eede9290..06a3e13f5f 100644 --- a/test/decompiler/reference/levels/common/orb-cache_REF.gc +++ b/test/decompiler/reference/levels/common/orb-cache_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/orb-cache-top-ag.gc") + ;; definition of type orb-cache-top (deftype orb-cache-top (baseplat) ((active-distance float :offset-assert 228) diff --git a/test/decompiler/reference/levels/common/plat-button_REF.gc b/test/decompiler/reference/levels/common/plat-button_REF.gc index aecae5e9da..bcc977ba21 100644 --- a/test/decompiler/reference/levels/common/plat-button_REF.gc +++ b/test/decompiler/reference/levels/common/plat-button_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/plat-button-ag.gc") + ;; definition of type plat-button (deftype plat-button (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/common/plat-eco_REF.gc b/test/decompiler/reference/levels/common/plat-eco_REF.gc index fc8df86d5f..42699a4abd 100644 --- a/test/decompiler/reference/levels/common/plat-eco_REF.gc +++ b/test/decompiler/reference/levels/common/plat-eco_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/plat-eco-ag.gc") + ;; definition of type plat-eco (deftype plat-eco (plat) ((notice-dist float :offset-assert 264) diff --git a/test/decompiler/reference/levels/common/plat_REF.gc b/test/decompiler/reference/levels/common/plat_REF.gc index 9a45fff55c..6f01b5384a 100644 --- a/test/decompiler/reference/levels/common/plat_REF.gc +++ b/test/decompiler/reference/levels/common/plat_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/plat-sunken-ag.gc") +(import "goal_src/import/plat-ag.gc") +(import "goal_src/import/plat-jungleb-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-standard-plat :id 107 diff --git a/test/decompiler/reference/levels/common/ropebridge_REF.gc b/test/decompiler/reference/levels/common/ropebridge_REF.gc index 89a42a4f08..ee0c83e1c5 100644 --- a/test/decompiler/reference/levels/common/ropebridge_REF.gc +++ b/test/decompiler/reference/levels/common/ropebridge_REF.gc @@ -1,6 +1,13 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/vil3-bridge-36-ag.gc") +(import "goal_src/import/ropebridge-36-ag.gc") +(import "goal_src/import/ropebridge-32-ag.gc") +(import "goal_src/import/ropebridge-52-ag.gc") +(import "goal_src/import/snow-bridge-36-ag.gc") +(import "goal_src/import/ropebridge-70-ag.gc") + ;; definition of type ropebridge-tuning (deftype ropebridge-tuning (structure) ((num-springs int32 :offset-assert 0) diff --git a/test/decompiler/reference/levels/common/sharkey_REF.gc b/test/decompiler/reference/levels/common/sharkey_REF.gc index fb98fbb7f3..3b63012591 100644 --- a/test/decompiler/reference/levels/common/sharkey_REF.gc +++ b/test/decompiler/reference/levels/common/sharkey_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sharkey-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-sharkey-splash :id 106 diff --git a/test/decompiler/reference/levels/common/water-anim_REF.gc b/test/decompiler/reference/levels/common/water-anim_REF.gc index 3c731103ff..b20cf561bb 100644 --- a/test/decompiler/reference/levels/common/water-anim_REF.gc +++ b/test/decompiler/reference/levels/common/water-anim_REF.gc @@ -1,6 +1,23 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/water-anim-maincave-ag.gc") +(import "goal_src/import/water-anim-village3-ag.gc") +(import "goal_src/import/water-anim-finalboss-ag.gc") +(import "goal_src/import/water-anim-maincave-water-ag.gc") +(import "goal_src/import/water-anim-sunken-ag.gc") +(import "goal_src/import/water-anim-lavatube-ag.gc") +(import "goal_src/import/water-anim-robocave-ag.gc") +(import "goal_src/import/water-anim-jungle-ag.gc") +(import "goal_src/import/water-anim-ogre-ag.gc") +(import "goal_src/import/water-anim-training-ag.gc") +(import "goal_src/import/water-anim-darkcave-ag.gc") +(import "goal_src/import/water-anim-village1-ag.gc") +(import "goal_src/import/water-anim-rolling-ag.gc") +(import "goal_src/import/water-anim-misty-ag.gc") +(import "goal_src/import/water-anim-sunken-dark-eco-ag.gc") +(import "goal_src/import/water-anim-village2-ag.gc") + ;; definition of type water-anim (deftype water-anim (water-vol) ((ppointer-water-anim (pointer water-anim) :offset 24) diff --git a/test/decompiler/reference/levels/darkcave/darkcave-obs_REF.gc b/test/decompiler/reference/levels/darkcave/darkcave-obs_REF.gc index 21ed638f5d..6dc986790d 100644 --- a/test/decompiler/reference/levels/darkcave/darkcave-obs_REF.gc +++ b/test/decompiler/reference/levels/darkcave/darkcave-obs_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/cavecrystal-ag.gc") + ;; definition of type cavecrystal (deftype cavecrystal (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/finalboss/final-door_REF.gc b/test/decompiler/reference/levels/finalboss/final-door_REF.gc index 27c3b98f19..4d72292e7e 100644 --- a/test/decompiler/reference/levels/finalboss/final-door_REF.gc +++ b/test/decompiler/reference/levels/finalboss/final-door_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/power-left-ag.gc") +(import "goal_src/import/power-right-ag.gc") +(import "goal_src/import/powercellalt-ag.gc") + ;; definition of type fin-door (deftype fin-door (process-hidden) () diff --git a/test/decompiler/reference/levels/finalboss/green-eco-lurker_REF.gc b/test/decompiler/reference/levels/finalboss/green-eco-lurker_REF.gc index 973d3d2e8c..78f32292ae 100644 --- a/test/decompiler/reference/levels/finalboss/green-eco-lurker_REF.gc +++ b/test/decompiler/reference/levels/finalboss/green-eco-lurker_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/green-eco-lurker-ag.gc") + ;; definition of type green-eco-lurker (deftype green-eco-lurker (nav-enemy) ((played-sound? symbol :offset-assert 400) diff --git a/test/decompiler/reference/levels/finalboss/light-eco_REF.gc b/test/decompiler/reference/levels/finalboss/light-eco_REF.gc index 98988ba625..6e522e2a87 100644 --- a/test/decompiler/reference/levels/finalboss/light-eco_REF.gc +++ b/test/decompiler/reference/levels/finalboss/light-eco_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/light-eco-ag.gc") + ;; definition of type light-eco-child (deftype light-eco-child (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/finalboss/robotboss-h_REF.gc b/test/decompiler/reference/levels/finalboss/robotboss-h_REF.gc index 0e37b23749..7b8fedce76 100644 --- a/test/decompiler/reference/levels/finalboss/robotboss-h_REF.gc +++ b/test/decompiler/reference/levels/finalboss/robotboss-h_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/robotboss-ag.gc") + ;; definition of type robotboss-dda (deftype robotboss-dda (structure) ((blue-bomb-time float :offset-assert 0) diff --git a/test/decompiler/reference/levels/finalboss/robotboss-misc_REF.gc b/test/decompiler/reference/levels/finalboss/robotboss-misc_REF.gc index aa8d95e306..151fbff256 100644 --- a/test/decompiler/reference/levels/finalboss/robotboss-misc_REF.gc +++ b/test/decompiler/reference/levels/finalboss/robotboss-misc_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/silodoor-ag.gc") +(import "goal_src/import/ecoclaw-ag.gc") +(import "goal_src/import/finalbosscam-ag.gc") + ;; failed to figure out what this is: (defskelgroup *med-res-snow1-sg* medres-snowback 0 2 ((1 (meters 999999))) diff --git a/test/decompiler/reference/levels/finalboss/robotboss-weapon_REF.gc b/test/decompiler/reference/levels/finalboss/robotboss-weapon_REF.gc index 5d47b34b13..eb63861e44 100644 --- a/test/decompiler/reference/levels/finalboss/robotboss-weapon_REF.gc +++ b/test/decompiler/reference/levels/finalboss/robotboss-weapon_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/darkecobomb-ag.gc") +(import "goal_src/import/greenshot-ag.gc") +(import "goal_src/import/redring-ag.gc") + ;; definition of type torus (deftype torus (structure) ((origin vector :inline :offset-assert 0) diff --git a/test/decompiler/reference/levels/finalboss/robotboss_REF.gc b/test/decompiler/reference/levels/finalboss/robotboss_REF.gc index b5bd71ad19..0e8ef52216 100644 --- a/test/decompiler/reference/levels/finalboss/robotboss_REF.gc +++ b/test/decompiler/reference/levels/finalboss/robotboss_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/robotboss-redeco-ag.gc") +(import "goal_src/import/robotboss-blueeco-ag.gc") +(import "goal_src/import/robotboss-yelloweco-ag.gc") + ;; definition for method 20 of type robotboss (defmethod ease-loc-t robotboss ((obj robotboss)) (parameter-ease-sin-clamp (-> obj loc-t)) diff --git a/test/decompiler/reference/levels/finalboss/sage-finalboss_REF.gc b/test/decompiler/reference/levels/finalboss/sage-finalboss_REF.gc index 1101414be4..f48fbe9c49 100644 --- a/test/decompiler/reference/levels/finalboss/sage-finalboss_REF.gc +++ b/test/decompiler/reference/levels/finalboss/sage-finalboss_REF.gc @@ -1,6 +1,11 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/plat-eco-finalboss-ag.gc") +(import "goal_src/import/green-sagecage-ag.gc") +(import "goal_src/import/jak-white-ag.gc") +(import "goal_src/import/robotboss-cinematic-ag.gc") + ;; failed to figure out what this is: (defskelgroup *robotboss-cinematic-sg* robotboss-cinematic robotboss-cinematic-lod0-jg robotboss-cinematic-idle-ja ((robotboss-cinematic-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/firecanyon/assistant-firecanyon_REF.gc b/test/decompiler/reference/levels/firecanyon/assistant-firecanyon_REF.gc index 9dfc1ae41c..c1763f3b30 100644 --- a/test/decompiler/reference/levels/firecanyon/assistant-firecanyon_REF.gc +++ b/test/decompiler/reference/levels/firecanyon/assistant-firecanyon_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/assistant-firecanyon-ag.gc") + ;; definition of type assistant-firecanyon (deftype assistant-firecanyon (process-taskable) () diff --git a/test/decompiler/reference/levels/firecanyon/firecanyon-obs_REF.gc b/test/decompiler/reference/levels/firecanyon/firecanyon-obs_REF.gc index 73cbf257d9..f526b53ed8 100644 --- a/test/decompiler/reference/levels/firecanyon/firecanyon-obs_REF.gc +++ b/test/decompiler/reference/levels/firecanyon/firecanyon-obs_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/crate-darkeco-cluster-ag.gc") +(import "goal_src/import/spike-ag.gc") + ;; definition of type balloon (deftype balloon (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/flut_common/flutflut_REF.gc b/test/decompiler/reference/levels/flut_common/flutflut_REF.gc index 887cfc28f4..715eb28bc6 100644 --- a/test/decompiler/reference/levels/flut_common/flutflut_REF.gc +++ b/test/decompiler/reference/levels/flut_common/flutflut_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/flut-saddle-ag.gc") + ;; failed to figure out what this is: (if (not (nmember "flutp" *kernel-packages*)) (set! *kernel-packages* (cons "flutp" *kernel-packages*)) diff --git a/test/decompiler/reference/levels/intro/evilbro_REF.gc b/test/decompiler/reference/levels/intro/evilbro_REF.gc index 125da8d68d..2c71354c2d 100644 --- a/test/decompiler/reference/levels/intro/evilbro_REF.gc +++ b/test/decompiler/reference/levels/intro/evilbro_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/evilbro-ag.gc") +(import "goal_src/import/evilsis-ag.gc") + ;; definition of type evilbro (deftype evilbro (process-taskable) ((evilsis entity :offset-assert 380) diff --git a/test/decompiler/reference/levels/jungle/bouncer_REF.gc b/test/decompiler/reference/levels/jungle/bouncer_REF.gc index a8ec5da232..f861aa4459 100644 --- a/test/decompiler/reference/levels/jungle/bouncer_REF.gc +++ b/test/decompiler/reference/levels/jungle/bouncer_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/bounceytarp-ag.gc") + ;; definition of type springbox (deftype springbox (process-drawable) ((spring-height meters :offset-assert 176) diff --git a/test/decompiler/reference/levels/jungle/darkvine_REF.gc b/test/decompiler/reference/levels/jungle/darkvine_REF.gc index c83b89bd25..3b69320213 100644 --- a/test/decompiler/reference/levels/jungle/darkvine_REF.gc +++ b/test/decompiler/reference/levels/jungle/darkvine_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/darkvine-ag.gc") + ;; definition of type darkvine (deftype darkvine (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/jungle/fisher_REF.gc b/test/decompiler/reference/levels/jungle/fisher_REF.gc index 4507fe8275..40fa07220b 100644 --- a/test/decompiler/reference/levels/jungle/fisher_REF.gc +++ b/test/decompiler/reference/levels/jungle/fisher_REF.gc @@ -1,6 +1,12 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/fish-net-ag.gc") +(import "goal_src/import/fisher-ag.gc") +(import "goal_src/import/catch-fisha-ag.gc") +(import "goal_src/import/catch-fishb-ag.gc") +(import "goal_src/import/catch-fishc-ag.gc") + ;; definition of type fisher-bank (deftype fisher-bank (basic) ((width meters :offset-assert 4) diff --git a/test/decompiler/reference/levels/jungle/hopper_REF.gc b/test/decompiler/reference/levels/jungle/hopper_REF.gc index a97b227dd6..8000940ea9 100644 --- a/test/decompiler/reference/levels/jungle/hopper_REF.gc +++ b/test/decompiler/reference/levels/jungle/hopper_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/hopper-ag.gc") + ;; definition of type hopper (deftype hopper (nav-enemy) ((jump-length float :offset-assert 400) diff --git a/test/decompiler/reference/levels/jungle/jungle-mirrors_REF.gc b/test/decompiler/reference/levels/jungle/jungle-mirrors_REF.gc index ac8c2d8aaa..b6cb552f08 100644 --- a/test/decompiler/reference/levels/jungle/jungle-mirrors_REF.gc +++ b/test/decompiler/reference/levels/jungle/jungle-mirrors_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/periscope-ag.gc") +(import "goal_src/import/reflector-mirror-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-jungle-binoculars :id 176 diff --git a/test/decompiler/reference/levels/jungle/jungle-obs_REF.gc b/test/decompiler/reference/levels/jungle/jungle-obs_REF.gc index 655abd9871..0e4250e671 100644 --- a/test/decompiler/reference/levels/jungle/jungle-obs_REF.gc +++ b/test/decompiler/reference/levels/jungle/jungle-obs_REF.gc @@ -1,6 +1,17 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/maindoor-ag.gc") +(import "goal_src/import/junglecam-ag.gc") +(import "goal_src/import/precurbridge-ag.gc") +(import "goal_src/import/sidedoor-ag.gc") +(import "goal_src/import/towertop-ag.gc") +(import "goal_src/import/logtrap-ag.gc") +(import "goal_src/import/lurkerm-tall-sail-ag.gc") +(import "goal_src/import/medres-firecanyon-ag.gc") +(import "goal_src/import/lurkerm-piston-ag.gc") +(import "goal_src/import/accordian-ag.gc") + ;; failed to figure out what this is: (defskelgroup *med-res-firecanyon-sg* medres-firecanyon medres-firecanyon-lod0-jg medres-firecanyon-idle-ja ((medres-firecanyon-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/jungle/junglefish_REF.gc b/test/decompiler/reference/levels/jungle/junglefish_REF.gc index bdaa6dade3..97ac5a8772 100644 --- a/test/decompiler/reference/levels/jungle/junglefish_REF.gc +++ b/test/decompiler/reference/levels/jungle/junglefish_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/junglefish-ag.gc") + ;; definition of type junglefish (deftype junglefish (nav-enemy) () diff --git a/test/decompiler/reference/levels/jungle/junglesnake_REF.gc b/test/decompiler/reference/levels/jungle/junglesnake_REF.gc index b9219f0291..0115c10d1f 100644 --- a/test/decompiler/reference/levels/jungle/junglesnake_REF.gc +++ b/test/decompiler/reference/levels/jungle/junglesnake_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/junglesnake-ag.gc") + ;; failed to figure out what this is: (defskelgroup *junglesnake-sg* junglesnake junglesnake-lod0-jg junglesnake-idle-ja ((junglesnake-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/jungleb/aphid_REF.gc b/test/decompiler/reference/levels/jungleb/aphid_REF.gc index da11e2d1ff..0b7e5bc3aa 100644 --- a/test/decompiler/reference/levels/jungleb/aphid_REF.gc +++ b/test/decompiler/reference/levels/jungleb/aphid_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/aphid-lurker-ag.gc") + ;; definition of type aphid (deftype aphid (nav-enemy) ((try int32 :offset-assert 400) diff --git a/test/decompiler/reference/levels/jungleb/jungleb-obs_REF.gc b/test/decompiler/reference/levels/jungleb/jungleb-obs_REF.gc index cc60535fcd..57b622581e 100644 --- a/test/decompiler/reference/levels/jungleb/jungleb-obs_REF.gc +++ b/test/decompiler/reference/levels/jungleb/jungleb-obs_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/eggtop-ag.gc") +(import "goal_src/import/jng-iris-door-ag.gc") + ;; definition of type eggtop (deftype eggtop (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/jungleb/plant-boss_REF.gc b/test/decompiler/reference/levels/jungleb/plant-boss_REF.gc index 0ceefe3981..f7ab2783ae 100644 --- a/test/decompiler/reference/levels/jungleb/plant-boss_REF.gc +++ b/test/decompiler/reference/levels/jungleb/plant-boss_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/plant-boss-ag.gc") + ;; definition of type plant-boss (deftype plant-boss (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/jungleb/plat-flip_REF.gc b/test/decompiler/reference/levels/jungleb/plat-flip_REF.gc index 0c5d42c26f..01ea75a2cc 100644 --- a/test/decompiler/reference/levels/jungleb/plat-flip_REF.gc +++ b/test/decompiler/reference/levels/jungleb/plat-flip_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/plat-flip-ag.gc") + ;; definition of type plat-flip (deftype plat-flip (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/lavatube/assistant-lavatube_REF.gc b/test/decompiler/reference/levels/lavatube/assistant-lavatube_REF.gc index edf67c7a53..4acec12709 100644 --- a/test/decompiler/reference/levels/lavatube/assistant-lavatube_REF.gc +++ b/test/decompiler/reference/levels/lavatube/assistant-lavatube_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/assistant-lavatube-start-ag.gc") + ;; definition of type assistant-lavatube-start (deftype assistant-lavatube-start (process-taskable) () diff --git a/test/decompiler/reference/levels/lavatube/lavatube-energy_REF.gc b/test/decompiler/reference/levels/lavatube/lavatube-energy_REF.gc index 7b6db27b7b..3978f012ac 100644 --- a/test/decompiler/reference/levels/lavatube/lavatube-energy_REF.gc +++ b/test/decompiler/reference/levels/lavatube/lavatube-energy_REF.gc @@ -1,6 +1,12 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/energyball-ag.gc") +(import "goal_src/import/energybase-ag.gc") +(import "goal_src/import/energyhub-ag.gc") +(import "goal_src/import/energyarm-ag.gc") +(import "goal_src/import/energydoor-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-energyarm :id 544 diff --git a/test/decompiler/reference/levels/lavatube/lavatube-obs_REF.gc b/test/decompiler/reference/levels/lavatube/lavatube-obs_REF.gc index b487f3310d..ca3f733f8d 100644 --- a/test/decompiler/reference/levels/lavatube/lavatube-obs_REF.gc +++ b/test/decompiler/reference/levels/lavatube/lavatube-obs_REF.gc @@ -1,6 +1,16 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/lavafallsewerb-ag.gc") +(import "goal_src/import/lavashortcut-ag.gc") +(import "goal_src/import/lavabase-ag.gc") +(import "goal_src/import/lavafallsewera-ag.gc") +(import "goal_src/import/chainmine-ag.gc") +(import "goal_src/import/lavafall-ag.gc") +(import "goal_src/import/lavaballoon-ag.gc") +(import "goal_src/import/darkecobarrel-ag.gc") +(import "goal_src/import/lavayellowtarp-ag.gc") + ;; definition of type lavabase (deftype lavabase (process-drawable) () diff --git a/test/decompiler/reference/levels/maincave/baby-spider_REF.gc b/test/decompiler/reference/levels/maincave/baby-spider_REF.gc index 82198df79d..9320ba3704 100644 --- a/test/decompiler/reference/levels/maincave/baby-spider_REF.gc +++ b/test/decompiler/reference/levels/maincave/baby-spider_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/baby-spider-ag.gc") + ;; definition of type baby-spider-spawn-params (deftype baby-spider-spawn-params (structure) ((hatched? symbol :offset-assert 0) diff --git a/test/decompiler/reference/levels/maincave/dark-crystal_REF.gc b/test/decompiler/reference/levels/maincave/dark-crystal_REF.gc index f602392c86..2957630dce 100644 --- a/test/decompiler/reference/levels/maincave/dark-crystal_REF.gc +++ b/test/decompiler/reference/levels/maincave/dark-crystal_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/dark-crystal-ag.gc") + ;; definition of type dark-crystal (deftype dark-crystal (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/maincave/driller-lurker_REF.gc b/test/decompiler/reference/levels/maincave/driller-lurker_REF.gc index 085c3df2d3..f014b9ed38 100644 --- a/test/decompiler/reference/levels/maincave/driller-lurker_REF.gc +++ b/test/decompiler/reference/levels/maincave/driller-lurker_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/driller-lurker-ag.gc") + ;; definition of type driller-lurker (deftype driller-lurker (process-drawable) ((root-overeride collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/maincave/gnawer_REF.gc b/test/decompiler/reference/levels/maincave/gnawer_REF.gc index aa56677691..11aa1730f4 100644 --- a/test/decompiler/reference/levels/maincave/gnawer_REF.gc +++ b/test/decompiler/reference/levels/maincave/gnawer_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/gnawer-ag.gc") + ;; definition of type gnawer-falling-segment (deftype gnawer-falling-segment (process-drawable) ((transv vector :inline :offset-assert 176) diff --git a/test/decompiler/reference/levels/maincave/maincave-obs_REF.gc b/test/decompiler/reference/levels/maincave/maincave-obs_REF.gc index 25256427ad..4c88d0b001 100644 --- a/test/decompiler/reference/levels/maincave/maincave-obs_REF.gc +++ b/test/decompiler/reference/levels/maincave/maincave-obs_REF.gc @@ -1,6 +1,13 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/caveelevator-ag.gc") +(import "goal_src/import/cavespatulatwo-ag.gc") +(import "goal_src/import/cavetrapdoor-ag.gc") +(import "goal_src/import/maincavecam-ag.gc") +(import "goal_src/import/cavecrusher-ag.gc") +(import "goal_src/import/cavespatula-darkcave-ag.gc") + ;; definition of type maincavecam (deftype maincavecam (pov-camera) ((seq uint64 :offset-assert 224) diff --git a/test/decompiler/reference/levels/maincave/mother-spider-egg_REF.gc b/test/decompiler/reference/levels/maincave/mother-spider-egg_REF.gc index b24b5fddb6..0cc3367df7 100644 --- a/test/decompiler/reference/levels/maincave/mother-spider-egg_REF.gc +++ b/test/decompiler/reference/levels/maincave/mother-spider-egg_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/spider-egg-ag.gc") + ;; definition of type mother-spider-egg (deftype mother-spider-egg (process-drawable) ((parent-override (pointer mother-spider) :offset 12) diff --git a/test/decompiler/reference/levels/maincave/mother-spider_REF.gc b/test/decompiler/reference/levels/maincave/mother-spider_REF.gc index 87421f4fd4..916f65de52 100644 --- a/test/decompiler/reference/levels/maincave/mother-spider_REF.gc +++ b/test/decompiler/reference/levels/maincave/mother-spider_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/mother-spider-ag.gc") + ;; failed to figure out what this is: (defskelgroup *mother-spider-sg* mother-spider mother-spider-lod0-jg -1 ((mother-spider-lod0-mg (meters 20)) diff --git a/test/decompiler/reference/levels/maincave/spiderwebs_REF.gc b/test/decompiler/reference/levels/maincave/spiderwebs_REF.gc index e57db94fca..41d5d441aa 100644 --- a/test/decompiler/reference/levels/maincave/spiderwebs_REF.gc +++ b/test/decompiler/reference/levels/maincave/spiderwebs_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/spiderwebs-ag.gc") + ;; definition for symbol *spider-jump-mods*, type surface (define *spider-jump-mods* (new 'static 'surface :name 'jump diff --git a/test/decompiler/reference/levels/misty/balloonlurker_REF.gc b/test/decompiler/reference/levels/misty/balloonlurker_REF.gc index 31a161a7a5..5ca19b8c5c 100644 --- a/test/decompiler/reference/levels/misty/balloonlurker_REF.gc +++ b/test/decompiler/reference/levels/misty/balloonlurker_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/balloonlurker-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-balloonlurker-pilot-death :id 203 diff --git a/test/decompiler/reference/levels/misty/bonelurker_REF.gc b/test/decompiler/reference/levels/misty/bonelurker_REF.gc index 7329e1db67..02dc0e927e 100644 --- a/test/decompiler/reference/levels/misty/bonelurker_REF.gc +++ b/test/decompiler/reference/levels/misty/bonelurker_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/bonelurker-ag.gc") + ;; definition of type bonelurker (deftype bonelurker (nav-enemy) ((bump-player-time time-frame :offset-assert 400) diff --git a/test/decompiler/reference/levels/misty/misty-conveyor_REF.gc b/test/decompiler/reference/levels/misty/misty-conveyor_REF.gc index f4d5e70a07..4644a1f388 100644 --- a/test/decompiler/reference/levels/misty/misty-conveyor_REF.gc +++ b/test/decompiler/reference/levels/misty/misty-conveyor_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/keg-conveyor-ag.gc") +(import "goal_src/import/keg-conveyor-paddle-ag.gc") +(import "goal_src/import/keg-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-keg-bounce :id 197 diff --git a/test/decompiler/reference/levels/misty/misty-obs_REF.gc b/test/decompiler/reference/levels/misty/misty-obs_REF.gc index 4015120551..ba9a130b1c 100644 --- a/test/decompiler/reference/levels/misty/misty-obs_REF.gc +++ b/test/decompiler/reference/levels/misty/misty-obs_REF.gc @@ -1,6 +1,15 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/breakaway-right-ag.gc") +(import "goal_src/import/boatpaddle-ag.gc") +(import "goal_src/import/breakaway-mid-ag.gc") +(import "goal_src/import/mis-bone-platform-ag.gc") +(import "goal_src/import/breakaway-left-ag.gc") +(import "goal_src/import/windturbine-ag.gc") +(import "goal_src/import/mistycam-ag.gc") +(import "goal_src/import/mis-bone-bridge-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-windturbine-particles :id 191 diff --git a/test/decompiler/reference/levels/misty/misty-teetertotter_REF.gc b/test/decompiler/reference/levels/misty/misty-teetertotter_REF.gc index ccd57cbcdd..3f3c6d3c02 100644 --- a/test/decompiler/reference/levels/misty/misty-teetertotter_REF.gc +++ b/test/decompiler/reference/levels/misty/misty-teetertotter_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/teetertotter-ag.gc") + ;; definition of type teetertotter (deftype teetertotter (process-drawable) ((launched-player basic :offset-assert 176) diff --git a/test/decompiler/reference/levels/misty/misty-warehouse_REF.gc b/test/decompiler/reference/levels/misty/misty-warehouse_REF.gc index 6a9438131f..195993f620 100644 --- a/test/decompiler/reference/levels/misty/misty-warehouse_REF.gc +++ b/test/decompiler/reference/levels/misty/misty-warehouse_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/silostep-ag.gc") +(import "goal_src/import/rounddoor-ag.gc") + ;; definition of type silostep (deftype silostep (process-drawable) ((anim-limit float :offset-assert 176) diff --git a/test/decompiler/reference/levels/misty/mistycannon_REF.gc b/test/decompiler/reference/levels/misty/mistycannon_REF.gc index ce135bd197..aef7ac3226 100644 --- a/test/decompiler/reference/levels/misty/mistycannon_REF.gc +++ b/test/decompiler/reference/levels/misty/mistycannon_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sack-ag.gc") +(import "goal_src/import/mistycannon-ag.gc") + ;; definition of type angle-tracker (deftype angle-tracker (structure) ((value float :offset-assert 0) diff --git a/test/decompiler/reference/levels/misty/muse_REF.gc b/test/decompiler/reference/levels/misty/muse_REF.gc index 9dd3658511..e2d528db0f 100644 --- a/test/decompiler/reference/levels/misty/muse_REF.gc +++ b/test/decompiler/reference/levels/misty/muse_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/muse-ag.gc") + ;; definition of type muse (deftype muse (nav-enemy) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/misty/quicksandlurker_REF.gc b/test/decompiler/reference/levels/misty/quicksandlurker_REF.gc index 9c5f9eef5f..0369679887 100644 --- a/test/decompiler/reference/levels/misty/quicksandlurker_REF.gc +++ b/test/decompiler/reference/levels/misty/quicksandlurker_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/quicksandlurker-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-quicksandlurker-missile :id 198 diff --git a/test/decompiler/reference/levels/misty/sidekick-human_REF.gc b/test/decompiler/reference/levels/misty/sidekick-human_REF.gc index 1c4675163e..ef8e6fc65f 100644 --- a/test/decompiler/reference/levels/misty/sidekick-human_REF.gc +++ b/test/decompiler/reference/levels/misty/sidekick-human_REF.gc @@ -1,6 +1,11 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/darkecocan-ag.gc") +(import "goal_src/import/sidekick-human-ag.gc") +(import "goal_src/import/evilbro-ag.gc") +(import "goal_src/import/evilsis-ag.gc") + ;; definition of type sequenceA (deftype sequenceA (process-hidden) () diff --git a/test/decompiler/reference/levels/ogre/flying-lurker_REF.gc b/test/decompiler/reference/levels/ogre/flying-lurker_REF.gc index 58758babfa..fb2d97d812 100644 --- a/test/decompiler/reference/levels/ogre/flying-lurker_REF.gc +++ b/test/decompiler/reference/levels/ogre/flying-lurker_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/ogrecam-ag.gc") +(import "goal_src/import/plunger-lurker-ag.gc") +(import "goal_src/import/flying-lurker-ag.gc") + ;; failed to figure out what this is: (defskelgroup *ogrecam-sg* ogrecam ogrecam-lod0-jg -1 ((ogrecam-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/ogre/ogre-obs_REF.gc b/test/decompiler/reference/levels/ogre/ogre-obs_REF.gc index 5ea6fc34b4..c9426fedcd 100644 --- a/test/decompiler/reference/levels/ogre/ogre-obs_REF.gc +++ b/test/decompiler/reference/levels/ogre/ogre-obs_REF.gc @@ -1,6 +1,14 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/ogre-step-ag.gc") +(import "goal_src/import/tntbarrel-ag.gc") +(import "goal_src/import/ogre-bridge-ag.gc") +(import "goal_src/import/shortcut-boulder-ag.gc") +(import "goal_src/import/medres-snow-ag.gc") +(import "goal_src/import/ogre-bridgeend-ag.gc") +(import "goal_src/import/ogre-isle-ag.gc") + ;; failed to figure out what this is: (defskelgroup *med-res-snow-sg* medres-snow medres-snow-lod0-jg medres-snow-idle-ja ((medres-snow-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/ogre/ogreboss_REF.gc b/test/decompiler/reference/levels/ogre/ogreboss_REF.gc index 5068bc4b3c..5059d6311d 100644 --- a/test/decompiler/reference/levels/ogre/ogreboss_REF.gc +++ b/test/decompiler/reference/levels/ogre/ogreboss_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/ogreboss-ag.gc") + ;; failed to figure out what this is: (defskelgroup *ogreboss-sg* ogreboss ogreboss-lod0-jg ogreboss-idle-ja ((ogreboss-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/racer_common/racer_REF.gc b/test/decompiler/reference/levels/racer_common/racer_REF.gc index a0640967f9..2f9a7b0bd4 100644 --- a/test/decompiler/reference/levels/racer_common/racer_REF.gc +++ b/test/decompiler/reference/levels/racer_common/racer_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/racer-ag.gc") + ;; failed to figure out what this is: (if (not (nmember "racerp" *kernel-packages*)) (set! *kernel-packages* (cons "racerp" *kernel-packages*)) diff --git a/test/decompiler/reference/levels/racer_common/target-racer-h_REF.gc b/test/decompiler/reference/levels/racer_common/target-racer-h_REF.gc index f187c5177e..9f2fe9cc62 100644 --- a/test/decompiler/reference/levels/racer_common/target-racer-h_REF.gc +++ b/test/decompiler/reference/levels/racer_common/target-racer-h_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/balloon-ag.gc") + ;; definition of type racer-info (deftype racer-info (basic) ((entity entity-actor :offset-assert 4) diff --git a/test/decompiler/reference/levels/robocave/spider-egg_REF.gc b/test/decompiler/reference/levels/robocave/spider-egg_REF.gc index d5c8c991d7..6a52e9f497 100644 --- a/test/decompiler/reference/levels/robocave/spider-egg_REF.gc +++ b/test/decompiler/reference/levels/robocave/spider-egg_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/spider-egg-ag.gc") + ;; definition of type spider-egg (deftype spider-egg (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/rolling/rolling-lightning-mole_REF.gc b/test/decompiler/reference/levels/rolling/rolling-lightning-mole_REF.gc index b934f4dc24..34c6bb7f2b 100644 --- a/test/decompiler/reference/levels/rolling/rolling-lightning-mole_REF.gc +++ b/test/decompiler/reference/levels/rolling/rolling-lightning-mole_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/lightning-mole-ag.gc") + ;; definition for function find-adjacent-bounds-one ;; Used lq/sq (defun find-adjacent-bounds-one ((arg0 nav-mesh) (arg1 nav-poly) (arg2 int) (arg3 (array int8)) (arg4 (array int8)) (arg5 vector)) diff --git a/test/decompiler/reference/levels/rolling/rolling-obs_REF.gc b/test/decompiler/reference/levels/rolling/rolling-obs_REF.gc index fda32c9bf8..a88530242f 100644 --- a/test/decompiler/reference/levels/rolling/rolling-obs_REF.gc +++ b/test/decompiler/reference/levels/rolling/rolling-obs_REF.gc @@ -1,6 +1,12 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/rollingcam-ag.gc") +(import "goal_src/import/pusher-ag.gc") +(import "goal_src/import/happy-plant-ag.gc") +(import "goal_src/import/dark-plant-ag.gc") +(import "goal_src/import/rolling-start-ag.gc") + ;; definition of type rolling-part (deftype rolling-part (part-spawner) ((root-override basic :offset 112) diff --git a/test/decompiler/reference/levels/rolling/rolling-race-ring_REF.gc b/test/decompiler/reference/levels/rolling/rolling-race-ring_REF.gc index b24d85cbec..6d56f59618 100644 --- a/test/decompiler/reference/levels/rolling/rolling-race-ring_REF.gc +++ b/test/decompiler/reference/levels/rolling/rolling-race-ring_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/race-ring-ag.gc") + ;; definition of type race-ring (deftype race-ring (process-drawable) ((rot-y float :offset-assert 176) diff --git a/test/decompiler/reference/levels/rolling/rolling-robber_REF.gc b/test/decompiler/reference/levels/rolling/rolling-robber_REF.gc index de9fddbb27..ee4e794f04 100644 --- a/test/decompiler/reference/levels/rolling/rolling-robber_REF.gc +++ b/test/decompiler/reference/levels/rolling/rolling-robber_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/robber-ag.gc") + ;; failed to figure out what this is: (defstate fuel-cell-spline-slider (fuel-cell) :trans diff --git a/test/decompiler/reference/levels/snow/ice-cube_REF.gc b/test/decompiler/reference/levels/snow/ice-cube_REF.gc index 32886c302d..3f3cd5404a 100644 --- a/test/decompiler/reference/levels/snow/ice-cube_REF.gc +++ b/test/decompiler/reference/levels/snow/ice-cube_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/ice-cube-ag.gc") +(import "goal_src/import/ice-cube-break-ag.gc") + ;; failed to figure out what this is: (defskelgroup *ice-cube-break-sg* ice-cube-break ice-cube-break-lod0-jg -1 ((ice-cube-break-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/snow/snow-ball_REF.gc b/test/decompiler/reference/levels/snow/snow-ball_REF.gc index 09135c9450..a1f8961e01 100644 --- a/test/decompiler/reference/levels/snow/snow-ball_REF.gc +++ b/test/decompiler/reference/levels/snow/snow-ball_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/snow-ball-ag.gc") + ;; definition of type snow-ball-shadow (deftype snow-ball-shadow (process-drawable) () diff --git a/test/decompiler/reference/levels/snow/snow-bumper_REF.gc b/test/decompiler/reference/levels/snow/snow-bumper_REF.gc index 0f8541ffdc..5939486dcc 100644 --- a/test/decompiler/reference/levels/snow/snow-bumper_REF.gc +++ b/test/decompiler/reference/levels/snow/snow-bumper_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/snow-bumper-ag.gc") + ;; definition of type snow-bumper (deftype snow-bumper (process-drawable) ((bumper-id int32 :offset-assert 176) diff --git a/test/decompiler/reference/levels/snow/snow-bunny_REF.gc b/test/decompiler/reference/levels/snow/snow-bunny_REF.gc index fb3cda71a9..3e41c5f413 100644 --- a/test/decompiler/reference/levels/snow/snow-bunny_REF.gc +++ b/test/decompiler/reference/levels/snow/snow-bunny_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/snow-bunny-ag.gc") + ;; definition of type snow-bunny (deftype snow-bunny (nav-enemy) ((patrol-rand-distraction int32 :offset-assert 400) diff --git a/test/decompiler/reference/levels/snow/snow-flutflut-obs_REF.gc b/test/decompiler/reference/levels/snow/snow-flutflut-obs_REF.gc index 23193e7be5..9cad7cd5f1 100644 --- a/test/decompiler/reference/levels/snow/snow-flutflut-obs_REF.gc +++ b/test/decompiler/reference/levels/snow/snow-flutflut-obs_REF.gc @@ -1,6 +1,11 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/snow-button-ag.gc") +(import "goal_src/import/flutflut-plat-med-ag.gc") +(import "goal_src/import/flutflut-plat-small-ag.gc") +(import "goal_src/import/flutflut-plat-large-ag.gc") + ;; definition of type flutflut-plat (deftype flutflut-plat (plat) ((has-path? symbol :offset-assert 264) diff --git a/test/decompiler/reference/levels/snow/snow-obs_REF.gc b/test/decompiler/reference/levels/snow/snow-obs_REF.gc index 58f942a55f..5b18732845 100644 --- a/test/decompiler/reference/levels/snow/snow-obs_REF.gc +++ b/test/decompiler/reference/levels/snow/snow-obs_REF.gc @@ -1,6 +1,15 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/snowcam-ag.gc") +(import "goal_src/import/snow-fort-gate-ag.gc") +(import "goal_src/import/snow-eggtop-ag.gc") +(import "goal_src/import/snow-spatula-ag.gc") +(import "goal_src/import/snow-switch-ag.gc") +(import "goal_src/import/snow-gears-ag.gc") +(import "goal_src/import/snowpusher-ag.gc") +(import "goal_src/import/snow-log-ag.gc") + ;; definition of type snowcam (deftype snowcam (pov-camera) ((seq uint64 :offset-assert 224) diff --git a/test/decompiler/reference/levels/snow/snow-ram-boss_REF.gc b/test/decompiler/reference/levels/snow/snow-ram-boss_REF.gc index 222b2a9523..82a8ff1b82 100644 --- a/test/decompiler/reference/levels/snow/snow-ram-boss_REF.gc +++ b/test/decompiler/reference/levels/snow/snow-ram-boss_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/ram-boss-ag.gc") + ;; definition of type ram-boss-proj (deftype ram-boss-proj (projectile) ((parent-override (pointer ram-boss) :offset 12) diff --git a/test/decompiler/reference/levels/snow/snow-ram_REF.gc b/test/decompiler/reference/levels/snow/snow-ram_REF.gc index 208599b438..6dec7aa4f7 100644 --- a/test/decompiler/reference/levels/snow/snow-ram_REF.gc +++ b/test/decompiler/reference/levels/snow/snow-ram_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/ram-ag.gc") + ;; failed to figure out what this is: (defskelgroup *ram-sg* ram ram-lod0-jg ram-cock-ja ((ram-lod0-mg (meters 20)) (ram-lod1-mg (meters 40)) (ram-lod2-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/snow/yeti_REF.gc b/test/decompiler/reference/levels/snow/yeti_REF.gc index 1e13e99403..dfcb954abe 100644 --- a/test/decompiler/reference/levels/snow/yeti_REF.gc +++ b/test/decompiler/reference/levels/snow/yeti_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/yeti-ag.gc") + ;; definition of type yeti-slave (deftype yeti-slave (nav-enemy) ((ground-y float :offset-assert 400) diff --git a/test/decompiler/reference/levels/sunken/bully_REF.gc b/test/decompiler/reference/levels/sunken/bully_REF.gc index 323e1118d2..f136e61af1 100644 --- a/test/decompiler/reference/levels/sunken/bully_REF.gc +++ b/test/decompiler/reference/levels/sunken/bully_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/bully-ag.gc") + ;; definition of type bully-broken-cage (deftype bully-broken-cage (process-drawable) ((parent-override (pointer bully) :offset 12) diff --git a/test/decompiler/reference/levels/sunken/double-lurker_REF.gc b/test/decompiler/reference/levels/sunken/double-lurker_REF.gc index 2679df9f27..4ced962fca 100644 --- a/test/decompiler/reference/levels/sunken/double-lurker_REF.gc +++ b/test/decompiler/reference/levels/sunken/double-lurker_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/double-lurker-ag.gc") +(import "goal_src/import/double-lurker-top-ag.gc") + ;; definition of type double-lurker-top (deftype double-lurker-top (nav-enemy) ((parent-process (pointer double-lurker) :offset 12) diff --git a/test/decompiler/reference/levels/sunken/floating-launcher_REF.gc b/test/decompiler/reference/levels/sunken/floating-launcher_REF.gc index 24a81c6d67..a9887e044f 100644 --- a/test/decompiler/reference/levels/sunken/floating-launcher_REF.gc +++ b/test/decompiler/reference/levels/sunken/floating-launcher_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/floating-launcher-ag.gc") + ;; definition of type floating-launcher (deftype floating-launcher (baseplat) ((trigger-height float :offset-assert 228) diff --git a/test/decompiler/reference/levels/sunken/helix-water_REF.gc b/test/decompiler/reference/levels/sunken/helix-water_REF.gc index f0ddb95f0e..6a2cdee8a1 100644 --- a/test/decompiler/reference/levels/sunken/helix-water_REF.gc +++ b/test/decompiler/reference/levels/sunken/helix-water_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/helix-slide-door-ag.gc") +(import "goal_src/import/helix-button-ag.gc") + ;; definition of type helix-slide-door (deftype helix-slide-door (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/sunken/orbit-plat_REF.gc b/test/decompiler/reference/levels/sunken/orbit-plat_REF.gc index 6c552a6828..b34ed857d7 100644 --- a/test/decompiler/reference/levels/sunken/orbit-plat_REF.gc +++ b/test/decompiler/reference/levels/sunken/orbit-plat_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/orbit-plat-ag.gc") +(import "goal_src/import/orbit-plat-bottom-ag.gc") + ;; definition of type orbit-plat-bottom (deftype orbit-plat-bottom (process-drawable) ((parent-override (pointer orbit-plat) :offset 12) diff --git a/test/decompiler/reference/levels/sunken/puffer_REF.gc b/test/decompiler/reference/levels/sunken/puffer_REF.gc index f6429993ab..a5fca12edf 100644 --- a/test/decompiler/reference/levels/sunken/puffer_REF.gc +++ b/test/decompiler/reference/levels/sunken/puffer_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/puffer-ag.gc") + ;; definition of type puffer (deftype puffer (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/sunken/qbert-plat_REF.gc b/test/decompiler/reference/levels/sunken/qbert-plat_REF.gc index 58a864f252..2b8138837a 100644 --- a/test/decompiler/reference/levels/sunken/qbert-plat_REF.gc +++ b/test/decompiler/reference/levels/sunken/qbert-plat_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/qbert-plat-ag.gc") +(import "goal_src/import/qbert-plat-on-ag.gc") + ;; definition of type qbert-plat-on (deftype qbert-plat-on (process-drawable) () diff --git a/test/decompiler/reference/levels/sunken/shover_REF.gc b/test/decompiler/reference/levels/sunken/shover_REF.gc index 408c66a863..be3e421a6d 100644 --- a/test/decompiler/reference/levels/sunken/shover_REF.gc +++ b/test/decompiler/reference/levels/sunken/shover_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/shover-ag.gc") + ;; definition of type shover (deftype shover (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/sunken/square-platform_REF.gc b/test/decompiler/reference/levels/sunken/square-platform_REF.gc index 4bdef3483f..93fa302fcc 100644 --- a/test/decompiler/reference/levels/sunken/square-platform_REF.gc +++ b/test/decompiler/reference/levels/sunken/square-platform_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/square-platform-ag.gc") + ;; definition of type square-platform (deftype square-platform (baseplat) ((plat-id int32 :offset-assert 228) diff --git a/test/decompiler/reference/levels/sunken/steam-cap_REF.gc b/test/decompiler/reference/levels/sunken/steam-cap_REF.gc index 0aaff1041d..88d90e3a6f 100644 --- a/test/decompiler/reference/levels/sunken/steam-cap_REF.gc +++ b/test/decompiler/reference/levels/sunken/steam-cap_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/steam-cap-ag.gc") + ;; definition of type steam-cap-control-pt (deftype steam-cap-control-pt (structure) ((trans vector :inline :offset-assert 0) diff --git a/test/decompiler/reference/levels/sunken/sun-exit-chamber_REF.gc b/test/decompiler/reference/levels/sunken/sun-exit-chamber_REF.gc index a0acaaf41b..9d783bfa04 100644 --- a/test/decompiler/reference/levels/sunken/sun-exit-chamber_REF.gc +++ b/test/decompiler/reference/levels/sunken/sun-exit-chamber_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/exit-chamber-ag.gc") +(import "goal_src/import/blue-eco-charger-ag.gc") +(import "goal_src/import/blue-eco-charger-orb-ag.gc") + ;; definition of type blue-eco-charger-orb (deftype blue-eco-charger-orb (process-drawable) ((parent-process (pointer blue-eco-charger) :offset 12) diff --git a/test/decompiler/reference/levels/sunken/sun-iris-door_REF.gc b/test/decompiler/reference/levels/sunken/sun-iris-door_REF.gc index c5af8f31f3..62099a8ce2 100644 --- a/test/decompiler/reference/levels/sunken/sun-iris-door_REF.gc +++ b/test/decompiler/reference/levels/sunken/sun-iris-door_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sun-iris-door-ag.gc") + ;; definition of type sun-iris-door (deftype sun-iris-door (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/sunken/sunken-fish_REF.gc b/test/decompiler/reference/levels/sunken/sunken-fish_REF.gc index 9462ea23c9..4315db34b7 100644 --- a/test/decompiler/reference/levels/sunken/sunken-fish_REF.gc +++ b/test/decompiler/reference/levels/sunken/sunken-fish_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sunkenfisha-ag.gc") + ;; definition of type sunkenfisha (deftype sunkenfisha (process-drawable) ((path-u float :offset-assert 176) diff --git a/test/decompiler/reference/levels/sunken/sunken-obs_REF.gc b/test/decompiler/reference/levels/sunken/sunken-obs_REF.gc index a9d60f78a0..3adaac5793 100644 --- a/test/decompiler/reference/levels/sunken/sunken-obs_REF.gc +++ b/test/decompiler/reference/levels/sunken/sunken-obs_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/seaweed-ag.gc") +(import "goal_src/import/sunkencam-ag.gc") +(import "goal_src/import/side-to-side-plat-ag.gc") + ;; definition of type water-vol-deadly (deftype water-vol-deadly (process-hidden) () diff --git a/test/decompiler/reference/levels/sunken/wall-plat_REF.gc b/test/decompiler/reference/levels/sunken/wall-plat_REF.gc index 42f99b1e37..9530961af1 100644 --- a/test/decompiler/reference/levels/sunken/wall-plat_REF.gc +++ b/test/decompiler/reference/levels/sunken/wall-plat_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/wall-plat-ag.gc") + ;; definition of type wall-plat (deftype wall-plat (process-drawable) ((root-override collide-shape-moving :offset 112) diff --git a/test/decompiler/reference/levels/sunken/wedge-plats_REF.gc b/test/decompiler/reference/levels/sunken/wedge-plats_REF.gc index acf50101a6..9c228cc6ee 100644 --- a/test/decompiler/reference/levels/sunken/wedge-plats_REF.gc +++ b/test/decompiler/reference/levels/sunken/wedge-plats_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/wedge-plat-outer-ag.gc") +(import "goal_src/import/wedge-plat-ag.gc") + ;; definition of type wedge-plat-master (deftype wedge-plat-master (process) ((center vector :inline :offset-assert 112) diff --git a/test/decompiler/reference/levels/sunken/whirlpool_REF.gc b/test/decompiler/reference/levels/sunken/whirlpool_REF.gc index 8a7213e3a5..086fd8c1ae 100644 --- a/test/decompiler/reference/levels/sunken/whirlpool_REF.gc +++ b/test/decompiler/reference/levels/sunken/whirlpool_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/whirlpool-ag.gc") + ;; definition of type whirlpool (deftype whirlpool (process-drawable) ((root-override collide-shape :offset 112) diff --git a/test/decompiler/reference/levels/swamp/billy_REF.gc b/test/decompiler/reference/levels/swamp/billy_REF.gc index 7d29610a31..da4d70c442 100644 --- a/test/decompiler/reference/levels/swamp/billy_REF.gc +++ b/test/decompiler/reference/levels/swamp/billy_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/farthy-snack-ag.gc") +(import "goal_src/import/billy-ag.gc") +(import "goal_src/import/billy-sidekick-ag.gc") + ;; definition of type billy (deftype billy (process-taskable) ((child-override (pointer billy-snack) :offset 20) diff --git a/test/decompiler/reference/levels/swamp/kermit_REF.gc b/test/decompiler/reference/levels/swamp/kermit_REF.gc index 63e15c9625..f7f0cdeb77 100644 --- a/test/decompiler/reference/levels/swamp/kermit_REF.gc +++ b/test/decompiler/reference/levels/swamp/kermit_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/kermit-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-kermit-charging-up :id 298 diff --git a/test/decompiler/reference/levels/swamp/swamp-bat_REF.gc b/test/decompiler/reference/levels/swamp/swamp-bat_REF.gc index 07b3d8dc03..1aafd3ec99 100644 --- a/test/decompiler/reference/levels/swamp/swamp-bat_REF.gc +++ b/test/decompiler/reference/levels/swamp/swamp-bat_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/swamp-bat-ag.gc") + ;; definition of type swamp-bat-idle-path (deftype swamp-bat-idle-path (structure) ((origin vector :inline :offset-assert 0) diff --git a/test/decompiler/reference/levels/swamp/swamp-obs_REF.gc b/test/decompiler/reference/levels/swamp/swamp-obs_REF.gc index fba7e688dd..b20491ac6d 100644 --- a/test/decompiler/reference/levels/swamp/swamp-obs_REF.gc +++ b/test/decompiler/reference/levels/swamp/swamp-obs_REF.gc @@ -1,6 +1,12 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/swamp-rock-ag.gc") +(import "goal_src/import/swamp-spike-ag.gc") +(import "goal_src/import/swampcam-ag.gc") +(import "goal_src/import/tar-plat-ag.gc") +(import "goal_src/import/balance-plat-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-swamp-spike-up :id 289 diff --git a/test/decompiler/reference/levels/swamp/swamp-rat-nest_REF.gc b/test/decompiler/reference/levels/swamp/swamp-rat-nest_REF.gc index ee4b062764..1d27c60ab1 100644 --- a/test/decompiler/reference/levels/swamp/swamp-rat-nest_REF.gc +++ b/test/decompiler/reference/levels/swamp/swamp-rat-nest_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/swamp-rat-nest-ag.gc") + ;; failed to figure out what this is: (defpartgroup group-swamp-rat-nest-a-explosion :id 292 diff --git a/test/decompiler/reference/levels/swamp/swamp-rat_REF.gc b/test/decompiler/reference/levels/swamp/swamp-rat_REF.gc index ad8090d4cc..4c04611102 100644 --- a/test/decompiler/reference/levels/swamp/swamp-rat_REF.gc +++ b/test/decompiler/reference/levels/swamp/swamp-rat_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/swamp-rat-ag.gc") + ;; definition of type swamp-rat (deftype swamp-rat (nav-enemy) ((up-vector vector :inline :offset-assert 400) diff --git a/test/decompiler/reference/levels/title/title-obs_REF.gc b/test/decompiler/reference/levels/title/title-obs_REF.gc index 6987a332a9..5eddd2140f 100644 --- a/test/decompiler/reference/levels/title/title-obs_REF.gc +++ b/test/decompiler/reference/levels/title/title-obs_REF.gc @@ -1,6 +1,14 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/logo-cam-ag.gc") +(import "goal_src/import/logo-black-ag.gc") +(import "goal_src/import/logo-ag.gc") +(import "goal_src/import/logo-volumes-ag.gc") +(import "goal_src/import/ndi-cam-ag.gc") +(import "goal_src/import/ndi-ag.gc") +(import "goal_src/import/ndi-volumes-ag.gc") + ;; definition of type logo (deftype logo (process-drawable) ((camera handle :offset-assert 176) diff --git a/test/decompiler/reference/levels/training/training-obs_REF.gc b/test/decompiler/reference/levels/training/training-obs_REF.gc index 245b70f724..01ac98a444 100644 --- a/test/decompiler/reference/levels/training/training-obs_REF.gc +++ b/test/decompiler/reference/levels/training/training-obs_REF.gc @@ -1,6 +1,12 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/scarecrow-b-ag.gc") +(import "goal_src/import/pontoonfive-ag.gc") +(import "goal_src/import/trainingcam-ag.gc") +(import "goal_src/import/scarecrow-a-ag.gc") +(import "goal_src/import/jng-iris-door-ag.gc") + ;; definition of type training-water (deftype training-water (water-anim) () diff --git a/test/decompiler/reference/levels/village1/assistant_REF.gc b/test/decompiler/reference/levels/village1/assistant_REF.gc index dd24290d7a..0deb9fdfee 100644 --- a/test/decompiler/reference/levels/village1/assistant_REF.gc +++ b/test/decompiler/reference/levels/village1/assistant_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/assistant-ag.gc") + ;; definition of type assistant (deftype assistant (process-taskable) ((sound-id sound-id :offset-assert 380) diff --git a/test/decompiler/reference/levels/village1/explorer_REF.gc b/test/decompiler/reference/levels/village1/explorer_REF.gc index d9eb3b084d..ad47e64a82 100644 --- a/test/decompiler/reference/levels/village1/explorer_REF.gc +++ b/test/decompiler/reference/levels/village1/explorer_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/explorer-ag.gc") + ;; definition of type explorer (deftype explorer (process-taskable) () diff --git a/test/decompiler/reference/levels/village1/farmer_REF.gc b/test/decompiler/reference/levels/village1/farmer_REF.gc index c62bdeeae5..b26359ca7b 100644 --- a/test/decompiler/reference/levels/village1/farmer_REF.gc +++ b/test/decompiler/reference/levels/village1/farmer_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/farmer-ag.gc") + ;; definition of type farmer (deftype farmer (process-taskable) () diff --git a/test/decompiler/reference/levels/village1/fishermans-boat_REF.gc b/test/decompiler/reference/levels/village1/fishermans-boat_REF.gc index 7204ca7f23..189b2747d0 100644 --- a/test/decompiler/reference/levels/village1/fishermans-boat_REF.gc +++ b/test/decompiler/reference/levels/village1/fishermans-boat_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/evilbro-ag.gc") +(import "goal_src/import/fishermans-boat-ag.gc") +(import "goal_src/import/evilsis-ag.gc") + ;; definition for symbol *fishermans-boat-constants*, type rigid-body-platform-constants (define *fishermans-boat-constants* (new 'static 'rigid-body-platform-constants :drag-factor 2.0 diff --git a/test/decompiler/reference/levels/village1/sage_REF.gc b/test/decompiler/reference/levels/village1/sage_REF.gc index 6873e9d186..f69e4f80d8 100644 --- a/test/decompiler/reference/levels/village1/sage_REF.gc +++ b/test/decompiler/reference/levels/village1/sage_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sage-ag.gc") + ;; definition of type sage (deftype sage (process-taskable) ((reminder-played basic :offset-assert 380) diff --git a/test/decompiler/reference/levels/village1/village-obs_REF.gc b/test/decompiler/reference/levels/village1/village-obs_REF.gc index 8a0117eee4..d1efc68f3a 100644 --- a/test/decompiler/reference/levels/village1/village-obs_REF.gc +++ b/test/decompiler/reference/levels/village1/village-obs_REF.gc @@ -1,6 +1,28 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/windmill-sail-ag.gc") +(import "goal_src/import/medres-beach3-ag.gc") +(import "goal_src/import/mayorgears-ag.gc") +(import "goal_src/import/medres-village11-ag.gc") +(import "goal_src/import/revcycleprop-ag.gc") +(import "goal_src/import/medres-jungle2-ag.gc") +(import "goal_src/import/revcycle-ag.gc") +(import "goal_src/import/medres-misty-ag.gc") +(import "goal_src/import/sagesail-ag.gc") +(import "goal_src/import/windspinner-ag.gc") +(import "goal_src/import/medres-jungle1-ag.gc") +(import "goal_src/import/medres-village12-ag.gc") +(import "goal_src/import/hutlamp-ag.gc") +(import "goal_src/import/medres-jungle-ag.gc") +(import "goal_src/import/medres-village13-ag.gc") +(import "goal_src/import/medres-beach2-ag.gc") +(import "goal_src/import/villa-starfish-ag.gc") +(import "goal_src/import/medres-training-ag.gc") +(import "goal_src/import/medres-beach-ag.gc") +(import "goal_src/import/reflector-middle-ag.gc") +(import "goal_src/import/medres-beach1-ag.gc") + ;; failed to figure out what this is: (defskelgroup *med-res-jungle-sg* medres-jungle medres-jungle-lod0-jg medres-jungle-idle-ja ((medres-jungle-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/village1/yakow_REF.gc b/test/decompiler/reference/levels/village1/yakow_REF.gc index 8a40a27acc..90a4ca7e5b 100644 --- a/test/decompiler/reference/levels/village1/yakow_REF.gc +++ b/test/decompiler/reference/levels/village1/yakow_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/village1cam-ag.gc") +(import "goal_src/import/yakow-ag.gc") + ;; failed to figure out what this is: (defskelgroup *village1cam-sg* village1cam village1cam-lod0-jg village1cam-anim-ja ((village1cam-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/village2/assistant-village2_REF.gc b/test/decompiler/reference/levels/village2/assistant-village2_REF.gc index 61db9bb828..ad9295f569 100644 --- a/test/decompiler/reference/levels/village2/assistant-village2_REF.gc +++ b/test/decompiler/reference/levels/village2/assistant-village2_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/jaws-ag.gc") +(import "goal_src/import/assistant-village2-ag.gc") + ;; definition of type assistant-levitator (deftype assistant-levitator (process-taskable) ((boulder entity-actor :offset-assert 380) diff --git a/test/decompiler/reference/levels/village2/flutflut-bluehut_REF.gc b/test/decompiler/reference/levels/village2/flutflut-bluehut_REF.gc index 74617b320e..8449bb6846 100644 --- a/test/decompiler/reference/levels/village2/flutflut-bluehut_REF.gc +++ b/test/decompiler/reference/levels/village2/flutflut-bluehut_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/flutflut-bluehut-ag.gc") + ;; definition of type flutflut-bluehut (deftype flutflut-bluehut (process-taskable) () diff --git a/test/decompiler/reference/levels/village2/gambler_REF.gc b/test/decompiler/reference/levels/village2/gambler_REF.gc index 8a2877a6b6..6f639ac4d0 100644 --- a/test/decompiler/reference/levels/village2/gambler_REF.gc +++ b/test/decompiler/reference/levels/village2/gambler_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/gambler-ag.gc") + ;; definition of type gambler (deftype gambler (process-taskable) () diff --git a/test/decompiler/reference/levels/village2/geologist_REF.gc b/test/decompiler/reference/levels/village2/geologist_REF.gc index 69a135fe51..986fcc6031 100644 --- a/test/decompiler/reference/levels/village2/geologist_REF.gc +++ b/test/decompiler/reference/levels/village2/geologist_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/geologist-ag.gc") + ;; definition of type geologist (deftype geologist (process-taskable) () diff --git a/test/decompiler/reference/levels/village2/sage-bluehut_REF.gc b/test/decompiler/reference/levels/village2/sage-bluehut_REF.gc index cc36171ceb..5cb2aeb490 100644 --- a/test/decompiler/reference/levels/village2/sage-bluehut_REF.gc +++ b/test/decompiler/reference/levels/village2/sage-bluehut_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sage-bluehut-ag.gc") + ;; definition of type assistant-bluehut (deftype assistant-bluehut (process-taskable) ((sound-id sound-id :offset-assert 380) diff --git a/test/decompiler/reference/levels/village2/sunken-elevator_REF.gc b/test/decompiler/reference/levels/village2/sunken-elevator_REF.gc index 969ede7062..eb2eb096a4 100644 --- a/test/decompiler/reference/levels/village2/sunken-elevator_REF.gc +++ b/test/decompiler/reference/levels/village2/sunken-elevator_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/sunken-elevator-ag.gc") + ;; definition of type sunken-elevator (deftype sunken-elevator (plat-button) ((play-at-top-going-up-camera? symbol :offset-assert 240) diff --git a/test/decompiler/reference/levels/village2/swamp-blimp_REF.gc b/test/decompiler/reference/levels/village2/swamp-blimp_REF.gc index b2816ac8a9..fca18c9bca 100644 --- a/test/decompiler/reference/levels/village2/swamp-blimp_REF.gc +++ b/test/decompiler/reference/levels/village2/swamp-blimp_REF.gc @@ -1,6 +1,12 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/swamp-tetherrock-ag.gc") +(import "goal_src/import/swamp-rope-ag.gc") +(import "goal_src/import/swamp-tetherrock-explode-ag.gc") +(import "goal_src/import/precursor-arm-ag.gc") +(import "goal_src/import/swamp-blimp-ag.gc") + ;; failed to figure out what this is: (defskelgroup *swamp-tetherrock-sg* swamp-tetherrock swamp-tetherrock-lod0-jg swamp-tetherrock-idle-ja ((swamp-tetherrock-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/village2/village2-obs_REF.gc b/test/decompiler/reference/levels/village2/village2-obs_REF.gc index 1b132cd85d..f7e17bda53 100644 --- a/test/decompiler/reference/levels/village2/village2-obs_REF.gc +++ b/test/decompiler/reference/levels/village2/village2-obs_REF.gc @@ -1,6 +1,18 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/pontoonfive-ag.gc") +(import "goal_src/import/allpontoons-ag.gc") +(import "goal_src/import/medres-village2-ag.gc") +(import "goal_src/import/exit-chamber-dummy-ag.gc") +(import "goal_src/import/village2cam-ag.gc") +(import "goal_src/import/fireboulder-ag.gc") +(import "goal_src/import/ogreboss-village2-ag.gc") +(import "goal_src/import/ceilingflag-ag.gc") +(import "goal_src/import/medres-rolling1-ag.gc") +(import "goal_src/import/medres-rolling-ag.gc") +(import "goal_src/import/pontoonten-ag.gc") + ;; definition of type village2cam (deftype village2cam (pov-camera) ((seq uint64 :offset-assert 224) diff --git a/test/decompiler/reference/levels/village2/warrior_REF.gc b/test/decompiler/reference/levels/village2/warrior_REF.gc index cc37f75bb4..821f35b34a 100644 --- a/test/decompiler/reference/levels/village2/warrior_REF.gc +++ b/test/decompiler/reference/levels/village2/warrior_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/warrior-ag.gc") + ;; definition of type warrior (deftype warrior (process-taskable) () diff --git a/test/decompiler/reference/levels/village3/assistant-village3_REF.gc b/test/decompiler/reference/levels/village3/assistant-village3_REF.gc index cc1e4580cd..7657696ea4 100644 --- a/test/decompiler/reference/levels/village3/assistant-village3_REF.gc +++ b/test/decompiler/reference/levels/village3/assistant-village3_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/assistant-village3-ag.gc") + ;; definition of type assistant-villagec (deftype assistant-villagec (process-taskable) () diff --git a/test/decompiler/reference/levels/village3/minecart_REF.gc b/test/decompiler/reference/levels/village3/minecart_REF.gc index 8c0e9c65e9..17460bc836 100644 --- a/test/decompiler/reference/levels/village3/minecart_REF.gc +++ b/test/decompiler/reference/levels/village3/minecart_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/minecartsteel-ag.gc") + ;; failed to figure out what this is: (defskelgroup *minecartsteel-sg* minecartsteel minecartsteel-lod0-jg minecartsteel-idle-ja ((minecartsteel-lod0-mg (meters 20)) diff --git a/test/decompiler/reference/levels/village3/miners_REF.gc b/test/decompiler/reference/levels/village3/miners_REF.gc index 75a28a0f98..bb578312f0 100644 --- a/test/decompiler/reference/levels/village3/miners_REF.gc +++ b/test/decompiler/reference/levels/village3/miners_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/minershort-ag.gc") +(import "goal_src/import/cavegem-ag.gc") +(import "goal_src/import/minertall-ag.gc") + ;; definition for function miners-anim-loop (defbehavior miners-anim-loop minershort () (when (!= (ja-group) (get-art-elem self)) diff --git a/test/decompiler/reference/levels/village3/sage-village3_REF.gc b/test/decompiler/reference/levels/village3/sage-village3_REF.gc index 6c4266bf1a..61a1d1330b 100644 --- a/test/decompiler/reference/levels/village3/sage-village3_REF.gc +++ b/test/decompiler/reference/levels/village3/sage-village3_REF.gc @@ -1,6 +1,10 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/evilsis-village3-ag.gc") +(import "goal_src/import/sage-village3-ag.gc") +(import "goal_src/import/evilbro-village3-ag.gc") + ;; definition of type sage-villagec (deftype sage-villagec (process-taskable) ((evilbro handle :offset-assert 384) diff --git a/test/decompiler/reference/levels/village3/village3-obs_REF.gc b/test/decompiler/reference/levels/village3/village3-obs_REF.gc index bd31c8f162..a21f9d3bba 100644 --- a/test/decompiler/reference/levels/village3/village3-obs_REF.gc +++ b/test/decompiler/reference/levels/village3/village3-obs_REF.gc @@ -1,6 +1,14 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/medres-ogre-ag.gc") +(import "goal_src/import/medres-finalboss-ag.gc") +(import "goal_src/import/pistons-ag.gc") +(import "goal_src/import/gondola-ag.gc") +(import "goal_src/import/medres-ogre2-ag.gc") +(import "goal_src/import/medres-ogre3-ag.gc") +(import "goal_src/import/gondolacables-ag.gc") + ;; failed to figure out what this is: (defskelgroup *med-res-ogre-sg* medres-ogre medres-ogre-lod0-jg medres-ogre-idle-ja ((medres-ogre-lod0-mg (meters 999999))) diff --git a/test/decompiler/reference/levels/village_common/oracle_REF.gc b/test/decompiler/reference/levels/village_common/oracle_REF.gc index e44d2b4310..f217df6da8 100644 --- a/test/decompiler/reference/levels/village_common/oracle_REF.gc +++ b/test/decompiler/reference/levels/village_common/oracle_REF.gc @@ -1,6 +1,8 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/oracle-ag.gc") + ;; definition of type oracle (deftype oracle (process-taskable) ((first-task uint8 :offset-assert 380) diff --git a/test/decompiler/reference/levels/village_common/villagep-obs_REF.gc b/test/decompiler/reference/levels/village_common/villagep-obs_REF.gc index ea38e64f22..538dd07c4f 100644 --- a/test/decompiler/reference/levels/village_common/villagep-obs_REF.gc +++ b/test/decompiler/reference/levels/village_common/villagep-obs_REF.gc @@ -1,6 +1,9 @@ ;;-*-Lisp-*- (in-package goal) +(import "goal_src/import/warp-gate-switch-ag.gc") +(import "goal_src/import/village-cam-ag.gc") + ;; definition of type warpgate (deftype warpgate (process-hidden) ()