mirror of
https://github.com/open-goal/jak-project.git
synced 2024-11-23 06:09:57 +00:00
finish out english subtitles (#1586)
* put some duplicated code in a func * make jak 2 text "work" * group up all subtitles c++ code into one folder * compact single-line subtitles * fix a couple compiler crashes * Update game_subtitle_en.gd * `rolling` and `sunken` * `swamp` * `ogre` * `village3` * `maincave` * `snow` * `lavatube` * `citadel` * Update .gitignore * clang * fix encoding and decoding for quote * properly fix quotes * subtitle deserialize: sort by kind, ID and name * sub editor: fix line speaker not being converted * cleanup game text ids 1 * update text ids 2 * update source * update refs
This commit is contained in:
parent
34d93e59ed
commit
9676100039
1
.gitignore
vendored
1
.gitignore
vendored
@ -12,7 +12,6 @@ logs/*
|
||||
# wsl apparently builds to here?
|
||||
linux-default/
|
||||
|
||||
|
||||
# for Nix
|
||||
/result*
|
||||
|
||||
|
@ -68,14 +68,14 @@
|
||||
"project" : "CMakeLists.txt",
|
||||
"projectTarget" : "goalc.exe (bin\\goalc.exe)",
|
||||
"name" : "Run - REPL",
|
||||
"args" : []
|
||||
"args" : [ "--user-auto" ]
|
||||
},
|
||||
{
|
||||
"type" : "default",
|
||||
"project" : "CMakeLists.txt",
|
||||
"projectTarget" : "goalc.exe (bin\\goalc.exe)",
|
||||
"name" : "Run - REPL - Auto Listen",
|
||||
"args" : [ "--auto-lt" ]
|
||||
"args" : [ "--user-auto", "--auto-lt" ]
|
||||
},
|
||||
{
|
||||
"type" : "default",
|
||||
|
@ -6,7 +6,6 @@ add_library(common
|
||||
cross_sockets/XSocketClient.cpp
|
||||
custom_data/pack_helpers.cpp
|
||||
custom_data/TFrag3Data.cpp
|
||||
deserialization/subtitles/subtitles.cpp
|
||||
dma/dma.cpp
|
||||
dma/dma_copy.cpp
|
||||
dma/gs.cpp
|
||||
@ -24,7 +23,6 @@ add_library(common
|
||||
math/geometry.cpp
|
||||
nrepl/ReplClient.cpp
|
||||
nrepl/ReplServer.cpp
|
||||
serialization/subtitles/subtitles.cpp
|
||||
type_system/defenum.cpp
|
||||
type_system/deftype.cpp
|
||||
type_system/state.cpp
|
||||
@ -32,6 +30,8 @@ add_library(common
|
||||
type_system/TypeFieldLookup.cpp
|
||||
type_system/TypeSpec.cpp
|
||||
type_system/TypeSystem.cpp
|
||||
serialization/subtitles/subtitles_ser.cpp
|
||||
serialization/subtitles/subtitles_deser.cpp
|
||||
util/Assert.cpp
|
||||
util/BitUtils.cpp
|
||||
util/compress.cpp
|
||||
|
@ -1,87 +0,0 @@
|
||||
#include "subtitles.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <regex>
|
||||
|
||||
#include "common/serialization/subtitles/subtitles.h"
|
||||
#include "common/util/FileUtil.h"
|
||||
|
||||
#include "third-party/fmt/core.h"
|
||||
#include "third-party/fmt/ranges.h"
|
||||
#include "third-party/json.hpp"
|
||||
|
||||
bool write_subtitle_db_to_files(const GameSubtitleDB& db) {
|
||||
// Write the subtitles out
|
||||
std::vector<int> completed_banks = {};
|
||||
for (const auto& [id, bank] : db.m_banks) {
|
||||
// If we've done the bank before, skip it
|
||||
auto it = find(completed_banks.begin(), completed_banks.end(), bank->m_lang_id);
|
||||
if (it != completed_banks.end()) {
|
||||
continue;
|
||||
}
|
||||
// Check to see if this bank is shared by any other, if so do it at the same time
|
||||
// and skip it
|
||||
// This is basically just to deal with US/UK english in a not so hacky way
|
||||
std::vector<int> banks = {};
|
||||
for (const auto& [_id, _bank] : db.m_banks) {
|
||||
if (_bank->file_path == bank->file_path) {
|
||||
banks.push_back(_bank->m_lang_id);
|
||||
completed_banks.push_back(_bank->m_lang_id);
|
||||
}
|
||||
}
|
||||
|
||||
std::string file_contents = "";
|
||||
file_contents += fmt::format("(language-id {})\n", fmt::join(banks, " "));
|
||||
auto file_ver = parse_text_only_version(bank->file_path);
|
||||
auto font = get_font_bank(file_ver);
|
||||
file_contents += fmt::format("(text-version {})\n", get_text_version_name(file_ver));
|
||||
|
||||
for (const auto& group_name : db.m_subtitle_groups->m_group_order) {
|
||||
file_contents +=
|
||||
fmt::format("\n;; -----------------\n;; {}\n;; -----------------\n", group_name);
|
||||
for (const auto& [scene_name, scene_info] : bank->m_scenes) {
|
||||
if (scene_info.m_sorting_group != group_name) {
|
||||
continue;
|
||||
}
|
||||
file_contents += fmt::format("\n(\"{}\"", scene_name);
|
||||
if (scene_info.m_kind == SubtitleSceneKind::Hint) {
|
||||
file_contents += " :hint #x0";
|
||||
} else if (scene_info.m_kind == SubtitleSceneKind::HintNamed) {
|
||||
file_contents += fmt::format(" :hint #x{0:x}", scene_info.m_id);
|
||||
}
|
||||
file_contents += "\n";
|
||||
for (auto& line : scene_info.lines()) {
|
||||
// Clear screen entries
|
||||
if (line.line.empty()) {
|
||||
file_contents += fmt::format(" ({})\n", line.frame);
|
||||
} else {
|
||||
file_contents += fmt::format(" ({}", line.frame);
|
||||
if (line.offscreen && scene_info.m_kind == SubtitleSceneKind::Movie) {
|
||||
file_contents += " :offscreen";
|
||||
}
|
||||
file_contents +=
|
||||
fmt::format(" \"{}\"", font->convert_game_to_utf8(line.speaker.c_str()));
|
||||
file_contents +=
|
||||
fmt::format(" \"{}\")\n", font->convert_game_to_utf8(line.line.c_str()));
|
||||
}
|
||||
}
|
||||
file_contents += " )\n";
|
||||
}
|
||||
}
|
||||
|
||||
// Commit it to the file
|
||||
std::string full_path =
|
||||
(file_util::get_jak_project_dir() / std::filesystem::path(bank->file_path)).string();
|
||||
file_util::write_text_file(full_path, file_contents);
|
||||
}
|
||||
|
||||
// Write the subtitle group info out
|
||||
nlohmann::json json(db.m_subtitle_groups->m_groups);
|
||||
json[db.m_subtitle_groups->group_order_key] = nlohmann::json(db.m_subtitle_groups->m_group_order);
|
||||
std::string file_path = (file_util::get_jak_project_dir() / "game" / "assets" / "jak1" /
|
||||
"subtitle" / "subtitle-groups.json")
|
||||
.string();
|
||||
file_util::write_text_file(file_path, json.dump(2));
|
||||
|
||||
return true;
|
||||
}
|
134
common/serialization/subtitles/subtitles_deser.cpp
Normal file
134
common/serialization/subtitles/subtitles_deser.cpp
Normal file
@ -0,0 +1,134 @@
|
||||
#include "subtitles_deser.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <regex>
|
||||
#include <vector>
|
||||
|
||||
#include "common/util/FileUtil.h"
|
||||
|
||||
#include "third-party/fmt/core.h"
|
||||
#include "third-party/fmt/ranges.h"
|
||||
#include "third-party/json.hpp"
|
||||
|
||||
bool write_subtitle_db_to_files(const GameSubtitleDB& db) {
|
||||
// Write the subtitles out
|
||||
std::vector<int> completed_banks = {};
|
||||
for (const auto& [id, bank] : db.m_banks) {
|
||||
// If we've done the bank before, skip it
|
||||
auto it = find(completed_banks.begin(), completed_banks.end(), bank->m_lang_id);
|
||||
if (it != completed_banks.end()) {
|
||||
continue;
|
||||
}
|
||||
// Check to see if this bank is shared by any other, if so do it at the same time
|
||||
// and skip it
|
||||
// This is basically just to deal with US/UK english in a not so hacky way
|
||||
std::vector<int> banks = {};
|
||||
for (const auto& [_id, _bank] : db.m_banks) {
|
||||
if (_bank->file_path == bank->file_path) {
|
||||
banks.push_back(_bank->m_lang_id);
|
||||
completed_banks.push_back(_bank->m_lang_id);
|
||||
}
|
||||
}
|
||||
|
||||
std::string file_contents = "";
|
||||
file_contents += fmt::format("(language-id {})\n", fmt::join(banks, " "));
|
||||
auto file_ver = parse_text_only_version(bank->file_path);
|
||||
auto font = get_font_bank(file_ver);
|
||||
file_contents += fmt::format("(text-version {})\n", get_text_version_name(file_ver));
|
||||
|
||||
for (const auto& group_name : db.m_subtitle_groups->m_group_order) {
|
||||
bool last_was_single = false;
|
||||
file_contents +=
|
||||
fmt::format("\n;; -----------------\n;; {}\n;; -----------------\n", group_name);
|
||||
std::vector<GameSubtitleSceneInfo> all_scenes;
|
||||
for (const auto& [scene_name, scene] : bank->scenes()) {
|
||||
all_scenes.push_back(scene);
|
||||
}
|
||||
std::sort(all_scenes.begin(), all_scenes.end(),
|
||||
[](const GameSubtitleSceneInfo& a, const GameSubtitleSceneInfo& b) {
|
||||
if (a.kind() != b.kind()) {
|
||||
return a.kind() < b.kind();
|
||||
}
|
||||
if (a.kind() == SubtitleSceneKind::Movie) {
|
||||
return a.name() < b.name();
|
||||
} else if (a.kind() == SubtitleSceneKind::HintNamed) {
|
||||
if (a.id() == b.id()) {
|
||||
return a.name() < b.name();
|
||||
} else {
|
||||
return a.id() < b.id();
|
||||
}
|
||||
} else if (a.kind() == SubtitleSceneKind::Hint) {
|
||||
return a.id() < b.id();
|
||||
}
|
||||
return false;
|
||||
});
|
||||
for (const auto& scene : all_scenes) {
|
||||
if (scene.m_sorting_group != group_name) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (last_was_single && scene.lines().size() == 1) {
|
||||
file_contents += fmt::format("(\"{}\"", scene.name());
|
||||
} else {
|
||||
file_contents += fmt::format("\n(\"{}\"", scene.name());
|
||||
}
|
||||
if (scene.kind() == SubtitleSceneKind::Hint) {
|
||||
file_contents += " :hint #x0";
|
||||
} else if (scene.kind() == SubtitleSceneKind::HintNamed) {
|
||||
file_contents += fmt::format(" :hint #x{0:x}", scene.id());
|
||||
}
|
||||
// more compact formatting for single-line entries
|
||||
if (scene.lines().size() == 1) {
|
||||
const auto& line = scene.lines().at(0);
|
||||
if (line.line.empty()) {
|
||||
file_contents += fmt::format(" ({})", line.frame);
|
||||
} else {
|
||||
file_contents += fmt::format(" ({}", line.frame);
|
||||
if (line.offscreen && scene.kind() == SubtitleSceneKind::Movie) {
|
||||
file_contents += " :offscreen";
|
||||
}
|
||||
file_contents +=
|
||||
fmt::format(" \"{}\"", font->convert_game_to_utf8(line.speaker.c_str()));
|
||||
file_contents += fmt::format(" \"{}\")", font->convert_game_to_utf8(line.line.c_str()));
|
||||
}
|
||||
file_contents += ")\n";
|
||||
last_was_single = true;
|
||||
} else {
|
||||
file_contents += "\n";
|
||||
for (auto& line : scene.lines()) {
|
||||
// Clear screen entries
|
||||
if (line.line.empty()) {
|
||||
file_contents += fmt::format(" ({})\n", line.frame);
|
||||
} else {
|
||||
file_contents += fmt::format(" ({}", line.frame);
|
||||
if (line.offscreen && scene.kind() == SubtitleSceneKind::Movie) {
|
||||
file_contents += " :offscreen";
|
||||
}
|
||||
file_contents +=
|
||||
fmt::format(" \"{}\"", font->convert_game_to_utf8(line.speaker.c_str()));
|
||||
file_contents +=
|
||||
fmt::format(" \"{}\")\n", font->convert_game_to_utf8(line.line.c_str()));
|
||||
}
|
||||
}
|
||||
file_contents += " )\n";
|
||||
last_was_single = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Commit it to the file
|
||||
std::string full_path =
|
||||
(file_util::get_jak_project_dir() / std::filesystem::path(bank->file_path)).string();
|
||||
file_util::write_text_file(full_path, file_contents);
|
||||
}
|
||||
|
||||
// Write the subtitle group info out
|
||||
nlohmann::json json(db.m_subtitle_groups->m_groups);
|
||||
json[db.m_subtitle_groups->group_order_key] = nlohmann::json(db.m_subtitle_groups->m_group_order);
|
||||
std::string file_path = (file_util::get_jak_project_dir() / "game" / "assets" / "jak1" /
|
||||
"subtitle" / "subtitle-groups.json")
|
||||
.string();
|
||||
file_util::write_text_file(file_path, json.dump(2));
|
||||
|
||||
return true;
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#include "common/serialization/subtitles/subtitles.h"
|
||||
#include "common/serialization/subtitles/subtitles_ser.h"
|
||||
|
||||
bool write_subtitle_db_to_files(const GameSubtitleDB& db);
|
@ -1,4 +1,4 @@
|
||||
#include "subtitles.h"
|
||||
#include "subtitles_ser.h"
|
||||
|
||||
#include "common/goos/ParseHelpers.h"
|
||||
#include "common/goos/Reader.h"
|
||||
@ -149,13 +149,7 @@ void parse_text(const goos::Object& data, GameTextDB& db) {
|
||||
throw std::runtime_error("invalid text version entry");
|
||||
}
|
||||
|
||||
if (auto it = sTextVerEnumMap.find(ver_name.as_symbol()->name);
|
||||
it == sTextVerEnumMap.end()) {
|
||||
throw std::runtime_error(
|
||||
fmt::format("unknown text version {}", ver_name.as_symbol()->name));
|
||||
} else {
|
||||
font = get_font_bank(it->second);
|
||||
}
|
||||
font = get_font_bank(ver_name.as_symbol()->name);
|
||||
}
|
||||
|
||||
else if (head.is_int()) {
|
||||
@ -240,13 +234,7 @@ void parse_subtitle(const goos::Object& data, GameSubtitleDB& db, const std::str
|
||||
throw std::runtime_error("invalid text version entry");
|
||||
}
|
||||
|
||||
if (auto it = sTextVerEnumMap.find(ver_name.as_symbol()->name);
|
||||
it == sTextVerEnumMap.end()) {
|
||||
throw std::runtime_error(
|
||||
fmt::format("unknown text version {}", ver_name.as_symbol()->name));
|
||||
} else {
|
||||
font = get_font_bank(it->second);
|
||||
}
|
||||
font = get_font_bank(ver_name.as_symbol()->name);
|
||||
}
|
||||
|
||||
else if (head.is_string() || head.is_int()) {
|
||||
@ -374,13 +362,7 @@ GameTextVersion parse_text_only_version(const goos::Object& data) {
|
||||
throw std::runtime_error("invalid text version entry");
|
||||
}
|
||||
|
||||
if (auto it = sTextVerEnumMap.find(ver_name.as_symbol()->name);
|
||||
it == sTextVerEnumMap.end()) {
|
||||
throw std::runtime_error(
|
||||
fmt::format("unknown text version {}", ver_name.as_symbol()->name));
|
||||
} else {
|
||||
font = get_font_bank(it->second);
|
||||
}
|
||||
font = get_font_bank(ver_name.as_symbol()->name);
|
||||
}
|
||||
}
|
||||
});
|
@ -166,7 +166,10 @@ std::string GameTextFontBank::convert_utf8_to_game_with_escape(const std::string
|
||||
|
||||
for (int i = 0; i < str.size(); ++i) {
|
||||
auto c = str.at(i);
|
||||
if (c == '\\') {
|
||||
if (c == '"') {
|
||||
newstr.push_back('"');
|
||||
i += 1;
|
||||
} else if (c == '\\') {
|
||||
if (i + 1 >= str.size()) {
|
||||
throw std::runtime_error("incomplete string escape code");
|
||||
}
|
||||
@ -226,6 +229,8 @@ std::string GameTextFontBank::convert_game_to_utf8(const char* in) const {
|
||||
result += "\\t";
|
||||
} else if (*in == '\\') {
|
||||
result += "\\\\";
|
||||
} else if (*in == '"') {
|
||||
result += "\\\"";
|
||||
} else {
|
||||
result += fmt::format("\\c{:02x}", uint8_t(*in));
|
||||
}
|
||||
@ -234,6 +239,9 @@ std::string GameTextFontBank::convert_game_to_utf8(const char* in) const {
|
||||
return replace_to_utf8(result);
|
||||
}
|
||||
|
||||
static std::vector<EncodeInfo> s_encode_info_null = {};
|
||||
static std::vector<ReplaceInfo> s_replace_info_null = {};
|
||||
|
||||
/*!
|
||||
* ===========================
|
||||
* GAME TEXT FONT BANK - JAK 1
|
||||
@ -242,10 +250,11 @@ std::string GameTextFontBank::convert_game_to_utf8(const char* in) const {
|
||||
* - Jak & Daxter: The Precursor Legacy (Black Label)
|
||||
*/
|
||||
|
||||
static std::unordered_set<char> passthrus = {'~', ' ', ',', '.', '-', '+', '(', ')', '!', ':', '?',
|
||||
'=', '%', '*', '/', '#', ';', '<', '>', '@', '[', '_'};
|
||||
static std::unordered_set<char> s_passthrus = {'~', ' ', ',', '.', '-', '+', '(', ')',
|
||||
'!', ':', '?', '=', '%', '*', '/', '#',
|
||||
';', '<', '>', '@', '[', '_'};
|
||||
|
||||
static std::vector<EncodeInfo> g_encode_info_jak1 = {
|
||||
static std::vector<EncodeInfo> s_encode_info_jak1 = {
|
||||
// random
|
||||
{"ˇ", {0x10}}, // caron
|
||||
{"`", {0x11}}, // grave accent
|
||||
@ -264,8 +273,6 @@ static std::vector<EncodeInfo> g_encode_info_jak1 = {
|
||||
{"学", {0x1e}}, // gaku
|
||||
{"ß", {0x1f}}, // eszett
|
||||
|
||||
{"\"", {0x22}}, // double-quotes
|
||||
|
||||
{"ワ", {0x24}}, // wa
|
||||
|
||||
{"ヲ", {0x26}}, // wo
|
||||
@ -463,10 +470,7 @@ static std::vector<EncodeInfo> g_encode_info_jak1 = {
|
||||
{"™", {1, 0xb1}}, // trademark
|
||||
};
|
||||
|
||||
static std::vector<ReplaceInfo> g_replace_info_jak1 = {
|
||||
// \" -> " (yeah it looks confusing)
|
||||
{"\"", "\\\""},
|
||||
|
||||
static std::vector<ReplaceInfo> s_replace_info_jak1 = {
|
||||
// other
|
||||
{"A~Y~-21H~-5Vº~Z", "Å"},
|
||||
{"N~Y~-6Hº~Z~+10H", "Nº"},
|
||||
@ -575,9 +579,9 @@ static std::vector<ReplaceInfo> g_replace_info_jak1 = {
|
||||
};
|
||||
|
||||
GameTextFontBank g_font_bank_jak1(GameTextVersion::JAK1_V1,
|
||||
&g_encode_info_jak1,
|
||||
&g_replace_info_jak1,
|
||||
&passthrus);
|
||||
&s_encode_info_jak1,
|
||||
&s_replace_info_jak1,
|
||||
&s_passthrus);
|
||||
|
||||
/*!
|
||||
* ================================
|
||||
@ -585,11 +589,13 @@ GameTextFontBank g_font_bank_jak1(GameTextVersion::JAK1_V1,
|
||||
* ================================
|
||||
* This font is used in:
|
||||
* - Jak & Daxter: The Precursor Legacy (PAL)
|
||||
* - ジャックXダクスター ~ 旧世界の遺産
|
||||
* - Jak & Daxter: The Precursor Legacy (NTSC-U v2)
|
||||
*
|
||||
* It is the same as v1, but _ has been fixed and no longer overlaps 掘
|
||||
*/
|
||||
|
||||
static std::vector<EncodeInfo> g_encode_info_jak1_v2 = {
|
||||
static std::vector<EncodeInfo> s_encode_info_jak1_v2 = {
|
||||
// random
|
||||
{"_", {0x03}}, // large space
|
||||
{"ˇ", {0x10}}, // caron
|
||||
@ -609,8 +615,6 @@ static std::vector<EncodeInfo> g_encode_info_jak1_v2 = {
|
||||
{"学", {0x1e}}, // gaku
|
||||
{"ß", {0x1f}}, // eszett
|
||||
|
||||
{"\"", {0x22}}, // double-quotes
|
||||
|
||||
{"ワ", {0x24}}, // wa
|
||||
|
||||
{"ヲ", {0x26}}, // wo
|
||||
@ -809,9 +813,14 @@ static std::vector<EncodeInfo> g_encode_info_jak1_v2 = {
|
||||
};
|
||||
|
||||
GameTextFontBank g_font_bank_jak1_v2(GameTextVersion::JAK1_V2,
|
||||
&g_encode_info_jak1_v2,
|
||||
&g_replace_info_jak1,
|
||||
&passthrus);
|
||||
&s_encode_info_jak1_v2,
|
||||
&s_replace_info_jak1,
|
||||
&s_passthrus);
|
||||
|
||||
GameTextFontBank g_font_bank_jak2(GameTextVersion::JAK2,
|
||||
&s_encode_info_null,
|
||||
&s_replace_info_null,
|
||||
&s_passthrus);
|
||||
|
||||
/*!
|
||||
* ========================
|
||||
@ -822,12 +831,21 @@ GameTextFontBank g_font_bank_jak1_v2(GameTextVersion::JAK1_V2,
|
||||
|
||||
std::map<GameTextVersion, GameTextFontBank*> g_font_banks = {
|
||||
{GameTextVersion::JAK1_V1, &g_font_bank_jak1},
|
||||
{GameTextVersion::JAK1_V2, &g_font_bank_jak1_v2}};
|
||||
{GameTextVersion::JAK1_V2, &g_font_bank_jak1_v2},
|
||||
{GameTextVersion::JAK2, &g_font_bank_jak2}};
|
||||
|
||||
const GameTextFontBank* get_font_bank(GameTextVersion version) {
|
||||
return g_font_banks.at(version);
|
||||
}
|
||||
|
||||
const GameTextFontBank* get_font_bank(const std::string& name) {
|
||||
if (auto it = sTextVerEnumMap.find(name); it == sTextVerEnumMap.end()) {
|
||||
throw std::runtime_error(fmt::format("unknown text version {}", name));
|
||||
} else {
|
||||
return get_font_bank(it->second);
|
||||
}
|
||||
}
|
||||
|
||||
bool font_bank_exists(GameTextVersion version) {
|
||||
return g_font_banks.find(version) != g_font_banks.cend();
|
||||
}
|
||||
|
@ -83,4 +83,5 @@ class GameTextFontBank {
|
||||
extern std::map<GameTextVersion, GameTextFontBank*> g_font_banks;
|
||||
|
||||
const GameTextFontBank* get_font_bank(GameTextVersion version);
|
||||
const GameTextFontBank* get_font_bank(const std::string& name);
|
||||
bool font_bank_exists(GameTextVersion version);
|
||||
|
@ -909,13 +909,13 @@
|
||||
(hidden-power-cell #x12f) ;; why is this here??
|
||||
(memcard-no-space #x130)
|
||||
(memcard-not-inserted #x131)
|
||||
(card-not-formatted-title #x132)
|
||||
(memcard-not-formatted-title #x132)
|
||||
(memcard-space-requirement1 #x133)
|
||||
(memcard-space-requirement2 #x134)
|
||||
(card-not-formatted-msg #x135)
|
||||
(memcard-not-formatted-msg #x135)
|
||||
(saving-data #x136)
|
||||
(loading-data #x137)
|
||||
(do-not-remove-mem-card #x138)
|
||||
(memcard-do-not-remove #x138)
|
||||
(overwrite? #x139)
|
||||
(format? #x13a)
|
||||
|
||||
@ -968,7 +968,7 @@
|
||||
(total-collected #x171)
|
||||
|
||||
(village1-mayor-money #x200)
|
||||
(vollage1-uncle-money #x201)
|
||||
(village1-uncle-money #x201)
|
||||
(village1-yakow-herd #x202)
|
||||
(village1-yakow-return #x203)
|
||||
(village1-oracle #x204)
|
||||
@ -988,36 +988,60 @@
|
||||
(misty-muse-return #x212)
|
||||
(misty-boat #x213)
|
||||
(misty-cannon #x214)
|
||||
(misty-return-to-pool #x215) ;; task name??
|
||||
(misty-find-transpad #x216) ;; task name?
|
||||
(misty-return-to-pool #x215)
|
||||
(misty-find-transpad #x216)
|
||||
(misty-balloon-lurkers #x217)
|
||||
|
||||
(village1-poi-farmer #x218)
|
||||
(village1-poi-mayor #x219)
|
||||
(village1-poi-bird-lady #x21a)
|
||||
(village1-poi-sculptor #x21b)
|
||||
(village1-poi-explorer #x21c)
|
||||
(village1-poi-fisherman #x21d)
|
||||
(village1-poi-sage-hut #x21e)
|
||||
(village1-poi-assistant #x21f)
|
||||
(village1-level-name #x220)
|
||||
(beach-level-name #x221)
|
||||
(jungle-level-name #x222)
|
||||
(misty-level-name #x223)
|
||||
|
||||
(village1-poi-firecanyon #x224)
|
||||
(jungleb-level-name #x225)
|
||||
|
||||
(generic-yes #x226)
|
||||
(generic-no #x227)
|
||||
(flutflut #x228)
|
||||
(oracle #x229)
|
||||
(trans-pad #x22a)
|
||||
(green-eco-harvester #x22b)
|
||||
(money #x22c)
|
||||
(fuel-cell #x22d)
|
||||
(beach-seagull-get #x22e)
|
||||
|
||||
(jungle-lurkerm-unblock #x22f)
|
||||
(jungle-lurkerm-return #x230)
|
||||
(sidekick-reminder-fishermans-boat #x231)
|
||||
(sidekick-hint-fishermans-boat #x232)
|
||||
(sidekick-reminder-money #x233)
|
||||
(sidekick-reminder-oracle #x234)
|
||||
(sidekick-hint-oracle #x235)
|
||||
(sidekick-hint-seagulls #x236)
|
||||
(sidekick-hint-pelican #x237)
|
||||
|
||||
(MISSING-orb-hint #x233)
|
||||
(sidekick-hint-ecorocks #x239)
|
||||
(sidekick-hint-mistycannon #x23a)
|
||||
(sidekick-hint-dive #x23b)
|
||||
(sidekick-hint-rounddoor #x23c)
|
||||
(sidekick-hint-lurkerm #x23d)
|
||||
(sidekick-hint-tower #x23e)
|
||||
|
||||
(sidekick-reminder-fish #x240)
|
||||
|
||||
(beach-eco-rock-increment #x239)
|
||||
|
||||
(jungle-maindoor-hint #x23c)
|
||||
|
||||
(firecanyon-not-enough-cells #x24f)
|
||||
(firecanyon-need-cells #x24f)
|
||||
|
||||
(sidekick-hint-orb-cache-top #x251)
|
||||
|
||||
(jungle-precursorbridge-hint #x25b)
|
||||
(daxter-launcher-no-eco #x25c)
|
||||
(sidekick-hint-precurbridge #x25b)
|
||||
(sidekick-hint-launcher #x25c)
|
||||
|
||||
(jungle-mirrors-completion-talk-to-mayor #x25e)
|
||||
(jungle-lurkerm-resolution #x25e)
|
||||
(jungle-lurkerm-hint #x25f)
|
||||
|
||||
(beach-gimmie #x262)
|
||||
(beach-sentinel #x263)
|
||||
@ -1025,12 +1049,14 @@
|
||||
(jungle-temple-door #x265)
|
||||
(misty-bike-jump #x266)
|
||||
(misty-eco-challenge #x267)
|
||||
(beach-seagull-chased-one #x268)
|
||||
(beach-seagull-chased-two #x26a)
|
||||
(beach-seagull-chased-three #x26b)
|
||||
(beach-seagull-chased-four #x26c)
|
||||
(sidekick-seagulls1 #x268)
|
||||
(sidekick-hint-seagulls2 #x269)
|
||||
(sidekick-seagulls2 #x26a)
|
||||
(sidekick-seagulls3 #x26b)
|
||||
(sidekick-seagulls4 #x26c)
|
||||
|
||||
(misty-daxter-scared #x26f)
|
||||
(sidekick-warehouse #x26e)
|
||||
(sidekick-misty #x26f)
|
||||
|
||||
(beach-seagulls-avalanche #x273)
|
||||
|
||||
@ -1039,49 +1065,52 @@
|
||||
(beach-flutflutegg-hint #x275)
|
||||
|
||||
(sidekick-hint-fish-powerup #x278)
|
||||
(misty-racer-hit-the-ballon-lurkers #x27e)
|
||||
(misty-daxter-hit-lurkers-not-mines #x27f)
|
||||
(misty-bike-hint #x27e)
|
||||
(misty-bike-mines-hint #x27f)
|
||||
(sidekick-hint-trans-pad #x280)
|
||||
(sidekick-hint-crate-darkeco1 #x281)
|
||||
(sidekick-hint-buzzer #x282)
|
||||
(sidekick-hint-crate-steel-break1 #x283)
|
||||
(sidekick-hint-crate-iron #x284)
|
||||
(sidekick-hint-crate-steel #x285)
|
||||
(sidekick-hint-fuel-cell #x286)
|
||||
(sidekick-hint-money #x287)
|
||||
(beach-ecorocks-resolution #x288)
|
||||
(jungle-eggtop-resolution #x289)
|
||||
(misty-cannon-resolution #x28a)
|
||||
(misty-bike-resolution #x28b)
|
||||
|
||||
(sidekick-speech-hint-crate-darkeco1 #x281)
|
||||
(sidekick-hint-crate-steel-break2 #x28e)
|
||||
(sidekick-hint-crate-darkeco2 #x28f)
|
||||
(sidekick-launcher1 #x290)
|
||||
(sidekick-launcher2 #x291)
|
||||
(sidekick-mistycannon #x292)
|
||||
(sidekick-unknown1 #x293)
|
||||
(sidekick-hint-buzzer2 #x294)
|
||||
(sidekick-hint-buzzer3 #x295)
|
||||
(sidekick-buzzer-resolution #x296)
|
||||
(village1-yakow-resolution #x297)
|
||||
|
||||
(sidekick-speech-crate-steel-break1 #x283)
|
||||
(sidekick-speech-hint-crate-iron #x284)
|
||||
(sidekick-speech-hint-crate-steel #x285)
|
||||
(sidekick-hint-periscope #x29c)
|
||||
(sidekick-hint-reflector-mirror #x29d)
|
||||
(sidekick-hint-aphid #x29e)
|
||||
(sidekick-hint-periscope2 #x29f)
|
||||
(sidekick-hint-periscope3 #x2a0)
|
||||
(sidekick-hint-eco-door #x2a1)
|
||||
|
||||
(beach-collectors-unblocked #x288)
|
||||
(jungleb-eco-vents-opened #x289)
|
||||
(misty-stopped-lurkers-at-silo #x28a)
|
||||
(misty-stopped-balloon-lurkers #x28b)
|
||||
|
||||
(sidekick-speech-crate-steel-break2 #x28e)
|
||||
(sidekick-speech-hint-crate-darkeco2 #x28f)
|
||||
|
||||
(daxter-screaming-jump #x290)
|
||||
(daxter-wahoo-jump #x291)
|
||||
(daxter-get-some #x292)
|
||||
|
||||
(collectables-scout-flies-red-boxes #x295)
|
||||
(found-all-scout-flies #x296)
|
||||
(yakow-owed-powercell #x297)
|
||||
|
||||
(jungle-mirrors-tutorial #x29c)
|
||||
(jungle-mirrors-break-the-mirror-jak #x29d)
|
||||
(jungle-mirrors-go-to-the-next-tower #x29f)
|
||||
(jungle-mirrors-follow-the-beam #x2a0)
|
||||
|
||||
(misty-teetertotter-bonk-dax-tutorial #x2a4)
|
||||
(sidekick-hint-misty-get-red-eco #x2a5)
|
||||
(red-eco-tutorial #x2a6)
|
||||
(daxter-blue-eco-plat-tutorial #x2a7)
|
||||
(misty-teetertotter #x2a4)
|
||||
(misty-eco-red-hint #x2a5)
|
||||
(misty-eco-red-first-use #x2a6)
|
||||
(misty-eco-plat #x2a7)
|
||||
|
||||
(fish? #x2a9)
|
||||
(misty-bone-bridge-hint #x2aa)
|
||||
|
||||
(beach-grottopole-increment #x2af)
|
||||
|
||||
(firecanyon-collect-cells-collected #x2b1)
|
||||
(firecanyon-collect-cells-collected-reminder #x2b2)
|
||||
(firecanyon-collect-cells-text #x2b3)
|
||||
(village1cam-enough-cells #x2b1)
|
||||
(village1cam-enough-cells2 #x2b2)
|
||||
(firecanyon-need-cells-text #x2b3)
|
||||
(caught #x2b4)
|
||||
(missed #x2b5)
|
||||
(lose! #x2b6)
|
||||
@ -1091,18 +1120,17 @@
|
||||
(village2-warrior-money #x302)
|
||||
(village2-oracle-money #x303)
|
||||
(swamp-tether #x304)
|
||||
|
||||
(swamp-arm #x305)
|
||||
(swamp-poles #x306)
|
||||
(swamp-flutflut #x307)
|
||||
|
||||
(swamp-tetherrocks #x308)
|
||||
(swamp-billy #x309)
|
||||
|
||||
(sunken-elevator-raise #x30a)
|
||||
(sunken-elevator-get-to-roof #x30b)
|
||||
(sunken-pipe #x30c)
|
||||
(sunken-climb-tube #x30d) ;; task name?
|
||||
(sunken-pool #x30e) ;; task name?
|
||||
(sunken-climb-tube #x30d)
|
||||
(sunken-pool #x30e)
|
||||
(sunken-platforms #x30f)
|
||||
|
||||
(rolling-moles #x310)
|
||||
(rolling-moles-return #x311)
|
||||
(rolling-robbers #x312)
|
||||
@ -1110,75 +1138,92 @@
|
||||
(rolling-race-return #x314)
|
||||
(rolling-lake #x315)
|
||||
(rolling-plants #x316)
|
||||
|
||||
(unknown-buzzers #x317)
|
||||
|
||||
(generic-buzzer #x317)
|
||||
(poi-bluesage-hut #x318)
|
||||
(village2-level-name #x319)
|
||||
|
||||
(poi-levitator #x31a)
|
||||
(rolling-level-name #x31b)
|
||||
(swamp-level-name #x31c)
|
||||
(sunken-level-name #x31d)
|
||||
(ogre-level-name #x31e)
|
||||
|
||||
(levitator-yes #x31f)
|
||||
(levitator-no #x320)
|
||||
(swamp-battle #x321)
|
||||
(sunken-bottom #x322) ;; task name?
|
||||
(reach-center #x323) ;; task name?
|
||||
(sunken-slide #x322)
|
||||
(sunken-spinning-room #x323)
|
||||
(rolling-ring-chase-1 #x324)
|
||||
(rolling-ring-chase-2 #x325)
|
||||
(sunken-kiera-you-raised-a-piece-of-lpc #x326)
|
||||
(rolling-beat-lurkers #x327)
|
||||
(swamp-finished-with-flutflut #x328)
|
||||
(rolling-race-beat-record #x335)
|
||||
(sidekick-speech-hint-rolling-crate-darkeco #x336)
|
||||
(rolling-lightning-moles-completion #x338)
|
||||
(rolling-dark-plants-location-hint #x339)
|
||||
(rolling-dark-plants-hint #x33a)
|
||||
(rolling-flying-lurker-intro #x33c)
|
||||
(rolling-ring-hint-one-ring-down #x33f)
|
||||
(rolling-ring-hint-be-quick-to-next #x340)
|
||||
(rolling-ring-hint-be-quick-all #x341)
|
||||
(sunken-room-resolution #x326)
|
||||
(rolling-robbers-resolution #x327)
|
||||
(swamp-flutflut-resolution #x328)
|
||||
|
||||
(sunken-pipegame-follow-it #x343)
|
||||
(sunken-helix-daxter-bad-feeling #x344)
|
||||
(rolling-race-beat-record #x335)
|
||||
(sidekick-hint-crate-darkeco-rolling #x336)
|
||||
(rolling-moles-hint #x337)
|
||||
(rolling-moles-resolution #x338)
|
||||
(rolling-plants-hint #x339)
|
||||
(rolling-plants-hint-eco-green #x33a)
|
||||
(rolling-plants-hint-eco-green2 #x33b)
|
||||
(rolling-robbers-hint #x33c)
|
||||
(rolling-moles-hint-hole #x33d)
|
||||
(rolling-plants-hint-eco-green3 #x33e)
|
||||
(rolling-ring-chase-1-hint #x33f)
|
||||
(rolling-ring-chase-2-hint #x340)
|
||||
(rolling-ring-chase-fail #x341)
|
||||
(rolling-ring-grass #x342)
|
||||
(sunken-pipegame-hint #x343)
|
||||
(sunken-helix-hint #x344)
|
||||
(sunken-blue-eco-charger-hint #x345)
|
||||
(sunken-room-hint #x346)
|
||||
(sunken-double-lurker-hint #x347)
|
||||
(sunken-helix-daxter-eco-rising #x348)
|
||||
(sunken-helix-darkeco-hint #x348)
|
||||
(sunken-helix-darkeco-close #x349)
|
||||
(sunken-qbert-plat-hint #x34a)
|
||||
(sunken-bully-dive-hint #x34b)
|
||||
(sunken-take-it-easy-hot-pipes #x34e)
|
||||
|
||||
(sunken-tube-hint #x34c)
|
||||
(sunken-blue-eco-charger-all-hint #x34d)
|
||||
(sunken-hotpipes #x34e)
|
||||
(sunken-water1 #x34f)
|
||||
(sunken-water2 #x350)
|
||||
(swamp-tetherrocks-hint #x351)
|
||||
(swamp-tetherrock-eco-yellow-hint #x352)
|
||||
(swamp-billy-reminder #x353)
|
||||
(swamp-flutflut-doublejump #x354)
|
||||
(swamp-tar #x355)
|
||||
(swamp-water #x356)
|
||||
(swamp-kermit-tongue-hint #x357)
|
||||
(swamp-rat-nest-hint #x358)
|
||||
(swamp-eco-yellow-first-use #x359)
|
||||
(swamp-eco-yellow-hint #x35a)
|
||||
(swamp-swingpole #x35b)
|
||||
(swamp-bramble #x35c)
|
||||
(swamp-tether-hint #x35d)
|
||||
(swamp-kermit-charge-hint #x35e)
|
||||
(swamp-kermit-flee #x35f)
|
||||
(swamp-battle-hint #x360)
|
||||
(swamp-arm-hint #x361)
|
||||
(swamp-tar-hint #x362)
|
||||
(swamp-bat-eco-yellow-hint #x363)
|
||||
(swamp-bat-duck-hint #x364)
|
||||
(swamp-tetherrocks-3-left #x365)
|
||||
(swamp-tetherrocks-2-left #x366)
|
||||
(swamp-tetherrocks-1-left #x367)
|
||||
(swamp-flutflut-hint #x368)
|
||||
(swamp-rats-hurt #x369)
|
||||
(rolling-plants-resolution #x36a)
|
||||
(swamp-arm-resolution #x36b)
|
||||
(village2-levitator-need-cells #x36c)
|
||||
(village2-levitator-find-cells #x36d)
|
||||
|
||||
(swamp-tethers-advice-hint #x352)
|
||||
|
||||
(kermit-break-tongue #x357)
|
||||
(swamp-rats-nest-hint #x358)
|
||||
(daxter-you-can-shoot-with-yellow-eco #x359)
|
||||
|
||||
(kermit-run-away-jak #x35f)
|
||||
|
||||
(swamp-bats-hint #x364) ;; maybe we can duck the bats
|
||||
(swamp-tethers-three-to-go #x365)
|
||||
(swamp-tethers-two-to-go #x366)
|
||||
(swamp-tethers-lefts-find-the-last #x367)
|
||||
(flutflut-reminder #x368)
|
||||
|
||||
(sage-golfclap-i-have-low-expectations #x36a) ;; where was this said?
|
||||
|
||||
(swamp-tethers-completion-sage-precursor-arm #x36b)
|
||||
|
||||
(village2-warp-gate-reminder #x36f)
|
||||
(village2-warp-gate-reminder-annoyed #x370)
|
||||
(village2-warp-gate-reminder-very-annoyed #x371)
|
||||
|
||||
(village2-not-enough-cells-levitator #x36c)
|
||||
(villlage2-levitator-cell-req-text #x372)
|
||||
|
||||
(rolling-race-time-string-prefix #x373)
|
||||
(rolling-race-record-string-prefix #x374)
|
||||
(rolling-race-new-record-string-prefix #x375)
|
||||
(rolling-race-try-again-string #x376)
|
||||
(rolling-race-start-race-aborted #x377) ;; double check this
|
||||
(village2-button-reminder #x36f)
|
||||
(village2-button-reminder2 #x370)
|
||||
(village2-button-reminder3 #x371)
|
||||
(village2-levitator-need-cells-text #x372)
|
||||
(time #x373)
|
||||
(record #x374)
|
||||
(new-record #x375)
|
||||
(try-again #x376)
|
||||
(race-aborted #x377)
|
||||
|
||||
(village3-miner-money #x400)
|
||||
(village3-oracle-money #x401)
|
||||
@ -1187,85 +1232,155 @@
|
||||
(snow-ram-1-left #x404)
|
||||
(snow-fort #x405)
|
||||
(snow-bunnies #x406)
|
||||
(snow-open-door #x408) ;; task name?
|
||||
|
||||
(red-eggtop #x407)
|
||||
(snow-ball #x408)
|
||||
(cave-gem #x409)
|
||||
(cave-drilling-lurkers #x40a)
|
||||
(snow-top #x40b)
|
||||
(snow-troops #x40c)
|
||||
(snow-troops2 #x40d)
|
||||
(cave-robot-climb #x40e)
|
||||
(cave-dark-climb #x40f) ;; destroy crystals
|
||||
|
||||
(cave-dark-climb #x40f)
|
||||
(cave-gnawers #x410)
|
||||
(cave-dark-crystals #x411)
|
||||
|
||||
(cave-bats #x412)
|
||||
(village3-buzzer #x413)
|
||||
|
||||
(village3-poi-redsage-hut #x414)
|
||||
(village3-level-name #x415)
|
||||
|
||||
(snowy-level-name #x417)
|
||||
|
||||
(village3-poi-gondola #x416)
|
||||
(snow-level-name #x417)
|
||||
(village3-poi-yosemite #x418)
|
||||
(cave-level-name #x419)
|
||||
|
||||
(village3-poi-ogre #x41a)
|
||||
(lavatube-level-name #x41b)
|
||||
|
||||
(gondola-ride? #x41c)
|
||||
(gondola-yes #x41d)
|
||||
(gondola-no #x41e)
|
||||
(snow-ram-boss #x41f)
|
||||
(snow-lake #x420)
|
||||
(snow-eggtop #x421)
|
||||
|
||||
(snow-birds #x422)
|
||||
(cave-spider-tunnel #x423)
|
||||
(cave-platforms #x424)
|
||||
|
||||
(cave-swing-poles #x426)
|
||||
|
||||
(assistant-lavatube-powercell-hint #x428)
|
||||
(village3-gondola-malfunctioning #x429)
|
||||
(village3-gondola-reactivated #x42a)
|
||||
|
||||
(snow-frozen-crate #x42b) ;; task name?
|
||||
(assistant-lavatube-hint #x427)
|
||||
(assistant-lavatube-need-cells #x428)
|
||||
(gondola-need-cells #x429)
|
||||
(gondola-enough-cells #x42a)
|
||||
(snow-cage #x42b)
|
||||
(snow-bumpers #x42c)
|
||||
|
||||
(dark-crystal-last-one #x432)
|
||||
(daxter-maybe-you-can-shoot-better-goggles #x433)
|
||||
|
||||
(darkcave-light-crystal-low-light-hint #x437)
|
||||
(darkcave-light-crystal-hint #x438)
|
||||
(dark-crystal-run-away #x439)
|
||||
(cave-dark-crystals-resolution #x432)
|
||||
(cave-gnawers-look-around #x433)
|
||||
(cave-darkeco #x434)
|
||||
(cave-dark-crystals-reminder #x435)
|
||||
(cave-gnawers-reminder #x436)
|
||||
(darkcave-light-end #x437)
|
||||
(darkcave-light-hint #x438)
|
||||
(cave-dark-crystals-flee #x439)
|
||||
(robocave-introduction #x43a)
|
||||
(cave-spider-egg-hint #x43b)
|
||||
(darkcave-introduction #x43c)
|
||||
(cave-spiderweb-hint #x43d)
|
||||
(cave-spider-hurt #x43e)
|
||||
(cave-baby-spider-hint #x43f)
|
||||
(cave-trap-nest-hint #x440)
|
||||
(snow-fort-reminder #x443)
|
||||
(ram-boss-red-eco-hint #x444)
|
||||
(cave-spider-egg-spawn #x441)
|
||||
(cave-spider-nest-flee #x442)
|
||||
(snow-fort-hint #x443)
|
||||
(snow-ram-boss-red-eco-hint #x444)
|
||||
(snow-platform-hint #x445)
|
||||
(snow-vent-hint #x446)
|
||||
(snow-eggtop-hint #x447)
|
||||
(snow-ice-cube-hint #x448)
|
||||
(snow-button-hint #x449)
|
||||
(snow-plat-hint #x44a)
|
||||
(snow-red-eco-hint #x44b)
|
||||
(snow-eggtop-resolution #x44c)
|
||||
(snow-cage-resolution #x44d)
|
||||
(snow-ball-hint #x44e)
|
||||
(assistant-lavatube-enough-cells #x44f)
|
||||
(assistant-lavatube-enough-cells2 #x450)
|
||||
(assistant-lavatube-reminder #x451)
|
||||
(village3-button-reminder #x452)
|
||||
(village3-button-reminder2 #x453)
|
||||
(village3-button-reminder3 #x454)
|
||||
(assistant-lavatube-need-cells-text #x455)
|
||||
|
||||
(ice-cube-hint #x448)
|
||||
|
||||
(snowy-turned-on-yellow-vents #x44c)
|
||||
|
||||
(village3-warp-gate-reminder #x452)
|
||||
(village3-warp-gate-reminder=annoyed #x453)
|
||||
(village3-warp-gate-reminder-very-annoyed #x454)
|
||||
(lavatube-powercell-req-text #x455)
|
||||
|
||||
(fire-canyon-end #x500)
|
||||
(fire-canyon-buzzer #x501)
|
||||
|
||||
(daxter-maybe-i-should-drive #x506)
|
||||
(daxter-you-are-trying-to-avoid-dark-eco #x507)
|
||||
|
||||
(fire-canyon-level-name #x50c)
|
||||
|
||||
(fire-canyon-we-made-it #x515)
|
||||
|
||||
(collectables-theres-scout-flys-here-too #x516)
|
||||
(firecanyon-end #x500)
|
||||
(firecanyon-buzzer #x501)
|
||||
(firecanyon-balloon-hint #x502)
|
||||
(firecanyon-ramp-hint #x503)
|
||||
(firecanyon-heat-warning1 #x504)
|
||||
(firecanyon-steer-hint #x505)
|
||||
(firecanyon-crate-darkeco1 #x506)
|
||||
(firecanyon-crate-darkeco2 #x507)
|
||||
(firecanyon-babak-hint #x508)
|
||||
(firecanyon-heat-warning2 #x509)
|
||||
(firecanyon-heat-warning3 #x50a)
|
||||
(firecanyon-heat-warning4 #x50b)
|
||||
(firecanyon-level-name #x50c)
|
||||
(firecanyon-balloon-reminder #x50d)
|
||||
(firecanyon-balloon-reminder2 #x50e)
|
||||
(firecanyon-heat-warning5 #x50f)
|
||||
(firecanyon-balloon-missed #x510)
|
||||
(firecanyon-heat-warning6 #x511)
|
||||
(firecanyon-heat-warning7 #x512)
|
||||
(firecanyon-heat-warning8 #x513)
|
||||
(firecanyon-heat-warning9 #x514)
|
||||
(firecanyon-end-resolution #x515)
|
||||
(firecanyon-buzzer-hint #x516)
|
||||
|
||||
(ogre-end #x600)
|
||||
(ogre-buzzer #x601)
|
||||
(ogre-poi-ogre #x602)
|
||||
(ogre-boss #x603)
|
||||
(ogre-boss-killed #x604)
|
||||
(ogre-boss-resolution #x604)
|
||||
(ogre-race-hint #x605)
|
||||
|
||||
(assistant-voicebox-intro-ogre-race #x605)
|
||||
|
||||
(sidekick-speech-hint-ogre-race #x61c)
|
||||
(assistant-finished-mountain-pass-race #x61d)
|
||||
(ogre-race-introduction #x607)
|
||||
(ogre-tnt-hint #x608)
|
||||
(ogre-race-ahead-hint #x609)
|
||||
(ogre-eco-blue-hint #x60a)
|
||||
(ogre-tree-hint #x60b)
|
||||
(ogre-eco-blue-reminder #x60c)
|
||||
(ogre-tnt-reminder #x60d)
|
||||
(ogre-hole-hint #x60e)
|
||||
(ogre-bonk-hint #x60f)
|
||||
(ogre-flying-lurker-hint #x610)
|
||||
(ogre-flying-lurker-reminder #x611)
|
||||
(ogre-flying-lurker-pass #x612)
|
||||
(ogre-flying-lurker-passed #x613)
|
||||
(ogre-race-losing #x614)
|
||||
(ogre-race-winning #x615)
|
||||
(ogre-race-reminder #x616)
|
||||
(ogre-jump-hint #x617)
|
||||
(ogre-race-end-almost #x618)
|
||||
(ogre-race-end-almost2 #x619)
|
||||
(ogre-race-end-almost3 #x61a)
|
||||
(ogre-race-end-almost-losing #x61b)
|
||||
(ogre-plunger-lurker-resolution #x61c)
|
||||
(ogre-race-resolution #x61d)
|
||||
|
||||
(lavatube-end #x700)
|
||||
(lavatube-buzzer #x701)
|
||||
|
||||
(lavatube-shoot-the-spheres #x70d)
|
||||
|
||||
(lavatube-spheres-door-open #x710)
|
||||
(lavatube-hurry #x702)
|
||||
(lavatube-hurry-path #x703)
|
||||
(lavatube-chainmine #x704)
|
||||
(lavatube-darkecobarrel #x705)
|
||||
(lavatube-balloon #x706)
|
||||
(lavatube-heat1 #x707)
|
||||
(lavatube-heat2 #x708)
|
||||
(lavatube-eco-blue #x709)
|
||||
(lavatube-eco-yellow #x70a)
|
||||
(lavatube-tunnel1 #x70b)
|
||||
(lavatube-tunnel2 #x70c)
|
||||
(lavatube-balls #x70d)
|
||||
(lavatube-balls-almost-dead #x70e)
|
||||
(lavatube-balls-resolution #x710)
|
||||
(lavatube-tunnel3 #x711)
|
||||
(lavatube-end-resolution #x712)
|
||||
|
||||
(citadel-buzzer #x800)
|
||||
(citadel-level-name #x801)
|
||||
@ -1273,32 +1388,48 @@
|
||||
(citadel-sage-red #x803)
|
||||
(citadel-sage-yellow #x804)
|
||||
(citadel-sage-green #x805)
|
||||
(citadel-break-generator-hint #x806)
|
||||
(citadel-lurker-bunny-alert #x808)
|
||||
(citadel-break-generators-reminder #x809)
|
||||
(citadel-climb-plat-hint #x80c)
|
||||
(citadel-generator #x806)
|
||||
(citadel-edge #x807)
|
||||
(citadel-battle #x808)
|
||||
(citadel-generator-no-mushroom #x809)
|
||||
(citadel-button #x80a)
|
||||
(citadel-robotboss #x80b)
|
||||
(citadel-plat #x80c)
|
||||
(citadel-launcher #x80d)
|
||||
(citadel-battle2 #x80e)
|
||||
(citadel-sagecage #x80f)
|
||||
(citadel-hub1 #x810)
|
||||
(citadel-hub2 #x811)
|
||||
(citadel-launcher2 #x812)
|
||||
(citadel-battle-end #x813)
|
||||
|
||||
(daxter-dont-miss-the-next-launcher #x80d)
|
||||
|
||||
(daxter-land-on-the-next-launcher #x812)
|
||||
(misty-battle-finished #x813)
|
||||
|
||||
(training-precursor-orbs #x901)
|
||||
(training-power-cells #x902)
|
||||
(training-assistant-found-scout-fly #x903)
|
||||
(training-assistant-found-scout-fly-cell #x904)
|
||||
(training-voicebox #x900)
|
||||
(training-money #x901)
|
||||
(training-fuel-cell #x902)
|
||||
(training-buzzer-hint #x903)
|
||||
(training-buzzer-resolution #x904)
|
||||
(training-sharkey #x905)
|
||||
(training-fuel-cell-reminder #x906)
|
||||
(training-blue-eco-vent #x907)
|
||||
(training-eco-green #x908)
|
||||
(training-eco-blue #x909)
|
||||
(training-more-eco-more-time #x90a)
|
||||
(training-eco-reminder #x90a)
|
||||
(training-precursor-door #x90b)
|
||||
(training-eco-opened-door #x90c)
|
||||
(training-progress #x90d)
|
||||
(training-double-jump #x90e)
|
||||
|
||||
(sage-voicebox-hint-crate-iron #x917)
|
||||
(training-spin #x90f)
|
||||
(training-spin-bad1 #x910)
|
||||
(training-spin-bad2 #x911)
|
||||
(training-spin-success #x912)
|
||||
(training-punch #x914)
|
||||
(training-punch-bad1 #x914)
|
||||
(training-punch-bad2 #x915)
|
||||
(training-punch-success #x916)
|
||||
(training-ironcrate #x917)
|
||||
(training-combo #x918)
|
||||
(training-warp-gate-blocked #x919)
|
||||
(training-warp-gate-reminder #x91a)
|
||||
|
||||
(training-gimmie-task-name #x91b)
|
||||
(training-buzzer-task-name #x91c)
|
||||
(training-door-task-name #x91d)
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -66,6 +66,7 @@
|
||||
"sksp0027",
|
||||
"sksp0029",
|
||||
"sksp0030",
|
||||
"sksp0031",
|
||||
"sksp0034",
|
||||
"sksp0443",
|
||||
"sagevb01",
|
||||
@ -155,7 +156,6 @@
|
||||
"green-sagecage-outro-big-finish"
|
||||
],
|
||||
"firecanyon": [
|
||||
"asstvb09",
|
||||
"sksp0076",
|
||||
"sksp0077",
|
||||
"sksp0078",
|
||||
@ -213,6 +213,7 @@
|
||||
"FIS-TA2A",
|
||||
"asstvb02",
|
||||
"sksp0011",
|
||||
"sksp0035",
|
||||
"sksp0018",
|
||||
"sksp0037",
|
||||
"sksp0038",
|
||||
@ -233,15 +234,29 @@
|
||||
"fisher-resolution"
|
||||
],
|
||||
"lavatube": [
|
||||
"asstva74",
|
||||
"assistant-lavatube-start-resolution",
|
||||
"assistant-lavatube-end-resolution",
|
||||
"sksp0375"
|
||||
"sksp0364",
|
||||
"sksp0365",
|
||||
"sksp0366",
|
||||
"sksp0367",
|
||||
"sksp0368",
|
||||
"sksp0369",
|
||||
"sksp0370",
|
||||
"sksp0371",
|
||||
"sksp0372",
|
||||
"sksp0373",
|
||||
"sksp0374",
|
||||
"sksp0375",
|
||||
"sksp0375",
|
||||
"sksp0376",
|
||||
"sksp0378",
|
||||
"sksp0379",
|
||||
"sksp0380"
|
||||
],
|
||||
"misty": [
|
||||
"asstvb03",
|
||||
"sagevb02",
|
||||
"sksp0031",
|
||||
"sksp0056",
|
||||
"sksp0059",
|
||||
"sksp0060",
|
||||
@ -251,13 +266,35 @@
|
||||
"sksp0067",
|
||||
"sksp0069",
|
||||
"sksp0070",
|
||||
"sksp0071",
|
||||
"sksp0072",
|
||||
"sksp0073",
|
||||
"sksp0435"
|
||||
],
|
||||
"ogre": [
|
||||
"gamcam23",
|
||||
"asstvb23",
|
||||
"flying-lurker-intro",
|
||||
"asstvb24",
|
||||
"sksp0300",
|
||||
"sksp0301",
|
||||
"sksp0302",
|
||||
"sksp0303",
|
||||
"sksp0304",
|
||||
"sksp0305",
|
||||
"sksp0306",
|
||||
"sksp0307",
|
||||
"sksp0308",
|
||||
"sksp0309",
|
||||
"sksp0310",
|
||||
"sksp0311",
|
||||
"sksp0312",
|
||||
"sksp0313",
|
||||
"sksp0314",
|
||||
"sksp0315",
|
||||
"sksp0316",
|
||||
"sksp0317",
|
||||
"sksp0318",
|
||||
"sksp0319",
|
||||
"sksp0320",
|
||||
"sksp0321",
|
||||
"asstvb25"
|
||||
],
|
||||
@ -272,19 +309,24 @@
|
||||
"oracle-left-eye-3",
|
||||
"oracle-intro-2",
|
||||
"oracle-reminder-2",
|
||||
"oracle-intro-3"
|
||||
"oracle-intro-3",
|
||||
"oracle-reminder-3"
|
||||
],
|
||||
"rolling": [
|
||||
"asstvb20",
|
||||
"sagevb03",
|
||||
"sksp0109",
|
||||
"sksp0110",
|
||||
"sksp0111",
|
||||
"sksp0112",
|
||||
"sksp0113",
|
||||
"sksp0114",
|
||||
"sksp0115",
|
||||
"sksp0116",
|
||||
"sksp0117",
|
||||
"sksp0118",
|
||||
"sksp0119",
|
||||
"sksp0120",
|
||||
"sksp0121"
|
||||
"sksp0121",
|
||||
"sksp0122"
|
||||
],
|
||||
"sidekick": [
|
||||
"death-0181",
|
||||
@ -308,10 +350,6 @@
|
||||
"sksp0008",
|
||||
"sksp0009",
|
||||
"sksp0014",
|
||||
"sksp0035",
|
||||
"sksp0071",
|
||||
"sksp0072",
|
||||
"sksp0073",
|
||||
"sksp009a",
|
||||
"sksp009b",
|
||||
"sksp009c",
|
||||
@ -321,35 +359,56 @@
|
||||
"sksp009g",
|
||||
"sksp009i",
|
||||
"sksp009j",
|
||||
"sksp009k",
|
||||
"sksp0110",
|
||||
"sksp0145",
|
||||
"sksp0328"
|
||||
"sksp009k"
|
||||
],
|
||||
"snowy": [
|
||||
"sksp0345",
|
||||
"sksp0346",
|
||||
"sksp0347",
|
||||
"sksp0348",
|
||||
"sksp0349",
|
||||
"sksp0350",
|
||||
"sksp0351",
|
||||
"sksp0352",
|
||||
"sksp0359",
|
||||
"sksp0360",
|
||||
"sksp0345"
|
||||
"sksp0362",
|
||||
"sksp0363"
|
||||
],
|
||||
"spidercave": [
|
||||
"sksp0327",
|
||||
"sksp0328",
|
||||
"sksp0329",
|
||||
"sksp0330",
|
||||
"sksp0331",
|
||||
"sksp0332",
|
||||
"sksp0333",
|
||||
"sksp0327",
|
||||
"sksp0334",
|
||||
"sksp0341"
|
||||
"sksp0335",
|
||||
"sksp0336",
|
||||
"sksp0337",
|
||||
"sksp0338",
|
||||
"sksp0339",
|
||||
"sksp0340",
|
||||
"sksp0341",
|
||||
"sksp0342",
|
||||
"sksp0343"
|
||||
],
|
||||
"sunken": [
|
||||
"sksp0123",
|
||||
"sksp0124",
|
||||
"sksp0125",
|
||||
"sksp0126",
|
||||
"sksp0127",
|
||||
"sksp0128",
|
||||
"sksp0129",
|
||||
"sksp0130",
|
||||
"sksp0131",
|
||||
"sksp0132",
|
||||
"sksp0133",
|
||||
"sksp0134",
|
||||
"asstvb22",
|
||||
"sksp0131",
|
||||
"sksp0127",
|
||||
"sksp0130",
|
||||
"sksp0125"
|
||||
"sksp0135",
|
||||
"sksp0136"
|
||||
],
|
||||
"swamp": [
|
||||
"billy-introduction",
|
||||
@ -379,6 +438,8 @@
|
||||
"BIL-TA03",
|
||||
"BIL-TA04",
|
||||
"BIL-TA05",
|
||||
"BIL-TA06",
|
||||
"BIL-TA07",
|
||||
"BIL-TA08",
|
||||
"BIL-TA09",
|
||||
"BIL-TA1A",
|
||||
@ -388,18 +449,31 @@
|
||||
"BIL-TA4B",
|
||||
"BIL-TA5A",
|
||||
"SKSP009F",
|
||||
"asstvb21",
|
||||
"sagevb04",
|
||||
"sksp0137",
|
||||
"sksp0138",
|
||||
"sksp0139",
|
||||
"sksp0140",
|
||||
"sksp0141",
|
||||
"sksp0142",
|
||||
"sksp0143",
|
||||
"sksp0144",
|
||||
"sksp0145",
|
||||
"sksp0146",
|
||||
"sksp0147",
|
||||
"sksp0148",
|
||||
"sksp0149",
|
||||
"sksp0150",
|
||||
"sksp0151",
|
||||
"sksp0152",
|
||||
"sksp0153",
|
||||
"sksp0154",
|
||||
"sksp0155",
|
||||
"sksp0156",
|
||||
"sksp0157",
|
||||
"sksp0158",
|
||||
"sksp0159",
|
||||
"sksp0160"
|
||||
"sksp0160",
|
||||
"sksp0161"
|
||||
],
|
||||
"training": [
|
||||
"asstvb40",
|
||||
@ -455,6 +529,7 @@
|
||||
"SAGELP11",
|
||||
"asstvb04",
|
||||
"asstvb08",
|
||||
"asstvb09",
|
||||
"sksp0010",
|
||||
"sksp0013",
|
||||
"sksp0015",
|
||||
@ -482,6 +557,8 @@
|
||||
"EXP-LO1A"
|
||||
],
|
||||
"village2": [
|
||||
"sagevb03",
|
||||
"sagevb04",
|
||||
"asstvb28",
|
||||
"asstvb29",
|
||||
"asstvb30",
|
||||
@ -492,6 +569,9 @@
|
||||
"SAGELP22",
|
||||
"SAGELP23",
|
||||
"SAGELP24",
|
||||
"asstvb20",
|
||||
"asstvb21",
|
||||
"asstvb22",
|
||||
"asstvb72",
|
||||
"assistant-village2-introduction",
|
||||
"sage-bluehut-introduction-crop-dusting",
|
||||
@ -547,11 +627,16 @@
|
||||
"warrior-resolution"
|
||||
],
|
||||
"village3": [
|
||||
"asstv100",
|
||||
"asstv101",
|
||||
"asstv102",
|
||||
"asstv103",
|
||||
"asstva73",
|
||||
"asstva74",
|
||||
"asstvb75",
|
||||
"asstvb76",
|
||||
"sage-village3-introduction",
|
||||
"ASSTLP30",
|
||||
"ASSTLP31",
|
||||
"ASSTLP32",
|
||||
"ASSTLP33",
|
||||
@ -581,6 +666,8 @@
|
||||
"minershort-resolution-2-orbs",
|
||||
"minershort-introduction-gnawers",
|
||||
"minershort-reminder-1-gnawers",
|
||||
"minershort-introduction-switch",
|
||||
"minershort-reminder-1-switch",
|
||||
"MIN-LO01",
|
||||
"MIN-LO03",
|
||||
"MIN-LO04",
|
||||
|
@ -3,7 +3,7 @@
|
||||
#include <regex>
|
||||
#include <string_view>
|
||||
|
||||
#include "common/deserialization/subtitles/subtitles.h"
|
||||
#include "common/serialization/subtitles/subtitles_deser.h"
|
||||
#include "common/util/FileUtil.h"
|
||||
#include "common/util/json_util.h"
|
||||
|
||||
@ -25,8 +25,8 @@ void SubtitleEditor::repl_set_continue_point(const std::string_view& continue_po
|
||||
|
||||
void SubtitleEditor::repl_move_jak(const double x, const double y, const double z) {
|
||||
m_repl.eval(
|
||||
fmt::format("(move-to-point! (-> *target* control) (new 'static 'vector :x (meters {:.1f}) "
|
||||
":y (meters {:.1f}) :z (meters {:.1f})))",
|
||||
fmt::format("(move-to-point! (-> *target* control) (new 'static 'vector :x (meters {:.3f}) "
|
||||
":y (meters {:.3f}) :z (meters {:.3f})))",
|
||||
x, y, z));
|
||||
m_repl.eval("(send-event *camera* 'teleport)");
|
||||
}
|
||||
@ -608,15 +608,15 @@ void SubtitleEditor::draw_subtitle_options(GameSubtitleSceneInfo& scene, bool cu
|
||||
for (size_t i = 0; i < scene.m_lines.size(); i++) {
|
||||
auto& subtitleLine = scene.m_lines.at(i);
|
||||
auto linetext = font->convert_game_to_utf8(subtitleLine.line.c_str());
|
||||
auto linespkr = font->convert_game_to_utf8(subtitleLine.speaker.c_str());
|
||||
std::string summary;
|
||||
if (linetext.empty()) {
|
||||
summary = fmt::format("[{}] Clear Screen", subtitleLine.frame);
|
||||
} else if (linetext.length() >= 30) {
|
||||
summary = fmt::format("[{}] {} - '{}...'", subtitleLine.frame, subtitleLine.speaker,
|
||||
linetext.substr(0, 30));
|
||||
summary =
|
||||
fmt::format("[{}] {} - '{}...'", subtitleLine.frame, linespkr, linetext.substr(0, 30));
|
||||
} else {
|
||||
summary = fmt::format("[{}] {} - '{}'", subtitleLine.frame, subtitleLine.speaker,
|
||||
linetext.substr(0, 30));
|
||||
summary = fmt::format("[{}] {} - '{}'", subtitleLine.frame, linespkr, linetext.substr(0, 30));
|
||||
}
|
||||
if (linetext.empty()) {
|
||||
ImGui::PushStyleColor(ImGuiCol_Text, m_disabled_text_color);
|
||||
@ -629,7 +629,7 @@ void SubtitleEditor::draw_subtitle_options(GameSubtitleSceneInfo& scene, bool cu
|
||||
}
|
||||
ImGui::InputInt("Starting Frame", &subtitleLine.frame,
|
||||
ImGuiInputTextFlags_::ImGuiInputTextFlags_CharsDecimal);
|
||||
ImGui::InputText("Speaker", &subtitleLine.speaker);
|
||||
ImGui::InputText("Speaker", &linespkr);
|
||||
ImGui::InputText("Text", &linetext);
|
||||
ImGui::Checkbox("Offscreen?", &subtitleLine.offscreen);
|
||||
// TODO - deleting while iterating is a bad pattern, especially with imgui's declarative
|
||||
@ -647,7 +647,9 @@ void SubtitleEditor::draw_subtitle_options(GameSubtitleSceneInfo& scene, bool cu
|
||||
ImGui::PopStyleColor();
|
||||
}
|
||||
auto newtext = font->convert_utf8_to_game_with_escape(linetext);
|
||||
auto newspkr = font->convert_utf8_to_game_with_escape(linespkr);
|
||||
subtitleLine.line = newtext;
|
||||
subtitleLine.speaker = newspkr;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include <string_view>
|
||||
|
||||
#include "common/nrepl/ReplClient.h"
|
||||
#include "common/serialization/subtitles/subtitles.h"
|
||||
#include "common/serialization/subtitles/subtitles_ser.h"
|
||||
|
||||
#include "third-party/imgui/imgui.h"
|
||||
|
||||
|
@ -773,7 +773,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('training)
|
||||
(level-hint-spawn
|
||||
(game-text-id training-more-eco-more-time)
|
||||
(game-text-id training-eco-reminder)
|
||||
"sagevb23"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1695,7 +1695,7 @@
|
||||
(cond
|
||||
((= arg0 (game-task training-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id training-assistant-found-scout-fly-cell)
|
||||
(game-text-id training-buzzer-resolution)
|
||||
"asstvb45"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1713,7 +1713,7 @@
|
||||
)
|
||||
((= arg0 (game-task beach-ecorocks))
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-collectors-unblocked)
|
||||
(game-text-id beach-ecorocks-resolution)
|
||||
"sagevb01"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1722,7 +1722,7 @@
|
||||
)
|
||||
((= arg0 (game-task misty-cannon))
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-stopped-lurkers-at-silo)
|
||||
(game-text-id misty-cannon-resolution)
|
||||
"sagevb02"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1731,7 +1731,7 @@
|
||||
)
|
||||
((= arg0 (game-task misty-bike))
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-stopped-balloon-lurkers)
|
||||
(game-text-id misty-bike-resolution)
|
||||
"asstvb03"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1740,7 +1740,7 @@
|
||||
)
|
||||
((= arg0 (game-task firecanyon-end))
|
||||
(level-hint-spawn
|
||||
(game-text-id fire-canyon-we-made-it)
|
||||
(game-text-id firecanyon-end-resolution)
|
||||
"sksp0095"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1749,7 +1749,7 @@
|
||||
)
|
||||
((= arg0 (game-task rolling-robbers))
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-beat-lurkers)
|
||||
(game-text-id rolling-robbers-resolution)
|
||||
"asstvb20"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1758,7 +1758,7 @@
|
||||
)
|
||||
((= arg0 (game-task rolling-plants))
|
||||
(level-hint-spawn
|
||||
(game-text-id sage-golfclap-i-have-low-expectations)
|
||||
(game-text-id rolling-plants-resolution)
|
||||
"sagevb03"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1767,7 +1767,7 @@
|
||||
)
|
||||
((= arg0 (game-task swamp-flutflut))
|
||||
(level-hint-spawn
|
||||
(game-text-id swamp-finished-with-flutflut)
|
||||
(game-text-id swamp-flutflut-resolution)
|
||||
"asstvb21"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1776,7 +1776,7 @@
|
||||
)
|
||||
((= arg0 (game-task ogre-boss))
|
||||
(level-hint-spawn
|
||||
(game-text-id ogre-boss-killed)
|
||||
(game-text-id ogre-boss-resolution)
|
||||
"asstvb23"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1785,7 +1785,7 @@
|
||||
)
|
||||
((= arg0 (game-task ogre-end))
|
||||
(level-hint-spawn
|
||||
(game-text-id assistant-finished-mountain-pass-race)
|
||||
(game-text-id ogre-race-resolution)
|
||||
"asstvb25"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1794,7 +1794,7 @@
|
||||
)
|
||||
((= arg0 (game-task beach-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1803,7 +1803,7 @@
|
||||
)
|
||||
((= arg0 (game-task jungle-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1812,7 +1812,7 @@
|
||||
)
|
||||
((= arg0 (game-task misty-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1821,7 +1821,7 @@
|
||||
)
|
||||
((= arg0 (game-task firecanyon-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1830,7 +1830,7 @@
|
||||
)
|
||||
((= arg0 (game-task rolling-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1839,7 +1839,7 @@
|
||||
)
|
||||
((= arg0 (game-task sunken-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1848,7 +1848,7 @@
|
||||
)
|
||||
((= arg0 (game-task swamp-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1857,7 +1857,7 @@
|
||||
)
|
||||
((= arg0 (game-task ogre-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1866,7 +1866,7 @@
|
||||
)
|
||||
((= arg0 (game-task cave-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1875,7 +1875,7 @@
|
||||
)
|
||||
((= arg0 (game-task snow-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1884,7 +1884,7 @@
|
||||
)
|
||||
((= arg0 (game-task lavatube-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1893,7 +1893,7 @@
|
||||
)
|
||||
((= arg0 (game-task citadel-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1902,7 +1902,7 @@
|
||||
)
|
||||
((= arg0 (game-task village1-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1911,7 +1911,7 @@
|
||||
)
|
||||
((= arg0 (game-task village2-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1920,7 +1920,7 @@
|
||||
)
|
||||
((= arg0 (game-task village3-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2194,7 +2194,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('training)
|
||||
(level-hint-spawn
|
||||
(game-text-id training-assistant-found-scout-fly)
|
||||
(game-text-id training-buzzer-hint)
|
||||
"asstvb44"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2203,7 +2203,7 @@
|
||||
)
|
||||
(('firecanyon)
|
||||
(level-hint-spawn
|
||||
(game-text-id collectables-theres-scout-flys-here-too)
|
||||
(game-text-id firecanyon-buzzer-hint)
|
||||
"sksp0096"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2212,7 +2212,7 @@
|
||||
)
|
||||
(else
|
||||
(level-hint-spawn
|
||||
(game-text-id collectables-scout-flies-red-boxes)
|
||||
(game-text-id sidekick-hint-buzzer3)
|
||||
"sksp009j"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2501,7 +2501,7 @@
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-hint-misty-get-red-eco)
|
||||
(game-text-id misty-eco-red-hint)
|
||||
"sksp0071"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -496,8 +496,8 @@
|
||||
)
|
||||
(return #f)
|
||||
)
|
||||
(increment-success-for-hint (game-text-id sidekick-speech-hint-crate-iron))
|
||||
(increment-success-for-hint (game-text-id sage-voicebox-hint-crate-iron))
|
||||
(increment-success-for-hint (game-text-id sidekick-hint-crate-iron))
|
||||
(increment-success-for-hint (game-text-id training-ironcrate))
|
||||
(send-event arg0 'get-attack-count 1)
|
||||
(go-virtual die #f (the-as int s5-0))
|
||||
)
|
||||
@ -506,7 +506,7 @@
|
||||
(if (not (and (!= *kernel-boot-message* 'play) (= (-> *setting-control* current language) (language-enum japanese)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sage-voicebox-hint-crate-iron)
|
||||
(game-text-id training-ironcrate)
|
||||
"sagevb36"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -516,12 +516,12 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('training)
|
||||
(if (and (can-hint-be-played? (game-text-id zero) (the-as entity #f) (the-as string #f)) (rand-vu-percent? 0.2))
|
||||
(clear-text-seen! *game-info* (game-text-id sidekick-speech-hint-crate-iron))
|
||||
(clear-text-seen! *game-info* (game-text-id sidekick-hint-crate-iron))
|
||||
)
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-crate-iron)
|
||||
(game-text-id sidekick-hint-crate-iron)
|
||||
"sksp0005"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -543,16 +543,16 @@
|
||||
(('explode 'darkeco 'eco-yellow 'bonk 'tube 'flut-bonk 'flut-attack 'racer)
|
||||
(send-event arg0 'get-attack-count 1)
|
||||
(when (logtest? (-> self draw status) (draw-status was-drawn))
|
||||
(increment-success-for-hint (game-text-id sidekick-speech-hint-crate-steel))
|
||||
(increment-success-for-hint (game-text-id sidekick-hint-crate-steel))
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-crate-steel-break1)
|
||||
(game-text-id sidekick-hint-crate-steel-break1)
|
||||
"sksp0004"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-crate-steel-break2)
|
||||
(game-text-id sidekick-hint-crate-steel-break2)
|
||||
"sksp009b"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -564,7 +564,7 @@
|
||||
(else
|
||||
(when (and (!= s4-0 (-> self incomming-attack-id)) (= (-> self root-override trans y) (-> self base y)))
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-crate-steel)
|
||||
(game-text-id sidekick-hint-crate-steel)
|
||||
"sksp0006"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -585,14 +585,14 @@
|
||||
(send-event arg0 'attack (-> arg3 param 0) (static-attack-info ((mode 'darkeco))))
|
||||
(when (= (-> arg0 type) target)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-crate-darkeco2)
|
||||
(game-text-id sidekick-hint-crate-darkeco2)
|
||||
"sksp009c"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-crate-darkeco1)
|
||||
(game-text-id sidekick-hint-crate-darkeco1)
|
||||
"sksp0002"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -601,7 +601,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('rolling)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-rolling-crate-darkeco)
|
||||
(game-text-id sidekick-hint-crate-darkeco-rolling)
|
||||
"sksp0110"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -610,14 +610,14 @@
|
||||
)
|
||||
(('firecanyon)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-you-are-trying-to-avoid-dark-eco)
|
||||
(game-text-id firecanyon-crate-darkeco2)
|
||||
"sksp0082"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-maybe-i-should-drive)
|
||||
(game-text-id firecanyon-crate-darkeco1)
|
||||
"sksp0081"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -342,7 +342,7 @@
|
||||
(if (and (< 0.0 amount) (= (+ (-> obj money) amount) (-> *GAME-bank* money-task-inc)))
|
||||
;; got enough orbs to trade, display a hint
|
||||
(level-hint-spawn
|
||||
(game-text-id MISSING-orb-hint)
|
||||
(game-text-id sidekick-reminder-money)
|
||||
"sksp0014"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -1222,7 +1222,7 @@
|
||||
(let ((s5-2 print-game-text))
|
||||
((the-as (function object string object none) format)
|
||||
(clear *temp-string*)
|
||||
(lookup-text! *common-text* (game-text-id do-not-remove-mem-card) #f)
|
||||
(lookup-text! *common-text* (game-text-id memcard-do-not-remove) #f)
|
||||
1
|
||||
)
|
||||
(s5-2 *temp-string* gp-1 #f 128 22)
|
||||
|
@ -1899,7 +1899,7 @@
|
||||
(not (send-event *target* 'query 'powerup (pickup-type eco-blue)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-launcher-no-eco)
|
||||
(game-text-id sidekick-hint-launcher)
|
||||
"sksp0035"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -9,22 +9,22 @@
|
||||
|
||||
(set! (-> *game-info* hint-control) (new 'static 'boxed-array :type level-hint-control
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id sage-voicebox-hint-crate-iron)
|
||||
:id (game-text-id training-ironcrate)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 3
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id training-more-eco-more-time)
|
||||
:id (game-text-id training-eco-reminder)
|
||||
:num-attempts-before-playing 3
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id sidekick-speech-hint-crate-iron)
|
||||
:id (game-text-id sidekick-hint-crate-iron)
|
||||
:num-attempts-before-playing 3
|
||||
:num-success-before-killing 3
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id sidekick-speech-hint-crate-steel)
|
||||
:id (game-text-id sidekick-hint-crate-steel)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
@ -40,24 +40,24 @@
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 3)
|
||||
:id (game-text-id beach-eco-rock-increment)
|
||||
:id (game-text-id sidekick-hint-ecorocks)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 5)
|
||||
:id (game-text-id jungle-mirrors-break-the-mirror-jak)
|
||||
:id (game-text-id sidekick-hint-reflector-mirror)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 3)
|
||||
:id (game-text-id jungle-precursorbridge-hint)
|
||||
:id (game-text-id sidekick-hint-precurbridge)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id misty-teetertotter-bonk-dax-tutorial)
|
||||
:id (game-text-id misty-teetertotter)
|
||||
:num-attempts-before-playing 3
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
@ -69,7 +69,7 @@
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 5)
|
||||
:id (game-text-id rolling-dark-plants-hint)
|
||||
:id (game-text-id rolling-plants-hint-eco-green)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
@ -96,7 +96,7 @@
|
||||
:num-success-before-killing 2
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id swamp-tethers-advice-hint)
|
||||
:id (game-text-id swamp-tetherrock-eco-yellow-hint)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
@ -107,40 +107,40 @@
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id sunken-take-it-easy-hot-pipes)
|
||||
:id (game-text-id sunken-hotpipes)
|
||||
:num-attempts-before-playing 3
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id ram-boss-red-eco-hint)
|
||||
:id (game-text-id snow-ram-boss-red-eco-hint)
|
||||
:num-attempts-before-playing 5
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 3)
|
||||
:id (game-text-id darkcave-light-crystal-hint)
|
||||
:id (game-text-id darkcave-light-hint)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id daxter-maybe-you-can-shoot-better-goggles)
|
||||
:id (game-text-id cave-gnawers-look-around)
|
||||
:num-attempts-before-playing 4
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id lavatube-shoot-the-spheres)
|
||||
:id (game-text-id lavatube-balls)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 2
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 5)
|
||||
:id (game-text-id citadel-break-generator-hint)
|
||||
:id (game-text-id citadel-generator)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 5)
|
||||
:id (game-text-id citadel-break-generators-reminder)
|
||||
:id (game-text-id citadel-generator-no-mushroom)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
|
@ -1387,14 +1387,14 @@
|
||||
:enter (behavior ((arg0 float) (arg1 float) (arg2 surface))
|
||||
(when (= (-> self control unknown-symbol40) 'launch)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-screaming-jump)
|
||||
(game-text-id sidekick-launcher1)
|
||||
"sksp009d"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-wahoo-jump)
|
||||
(game-text-id sidekick-launcher2)
|
||||
"sksp009e"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1403,14 +1403,14 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('citadel)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-land-on-the-next-launcher)
|
||||
(game-text-id citadel-launcher2)
|
||||
"sksp0393"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-dont-miss-the-next-launcher)
|
||||
(game-text-id citadel-launcher)
|
||||
"sksp0388"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2039,7 +2039,7 @@
|
||||
(dummy-10 (-> self skel effect) 'group-red-eco-spinkick (ja-frame-num 0) 74)
|
||||
(cpad-set-buzz! (-> *cpad-list* cpads 0) 1 153 (seconds 0.1))
|
||||
(level-hint-spawn
|
||||
(game-text-id red-eco-tutorial)
|
||||
(game-text-id misty-eco-red-first-use)
|
||||
"sksp0072"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2235,7 +2235,7 @@
|
||||
(dummy-10 (-> self skel effect) 'group-red-eco-spinkick (ja-frame-num 0) 23)
|
||||
(cpad-set-buzz! (-> *cpad-list* cpads 0) 1 153 (seconds 0.1))
|
||||
(level-hint-spawn
|
||||
(game-text-id red-eco-tutorial)
|
||||
(game-text-id misty-eco-red-first-use)
|
||||
"sksp0072"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2467,7 +2467,7 @@
|
||||
(dummy-10 (-> self skel effect) 'group-red-eco-spinkick (ja-frame-num 0) 70)
|
||||
(cpad-set-buzz! (-> *cpad-list* cpads 0) 1 153 (seconds 0.1))
|
||||
(level-hint-spawn
|
||||
(game-text-id red-eco-tutorial)
|
||||
(game-text-id misty-eco-red-first-use)
|
||||
"sksp0072"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -1365,7 +1365,7 @@
|
||||
(let ((gp-0 (the-as handle #f)))
|
||||
(ja-channel-push! 1 (seconds 0.075))
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-you-can-shoot-with-yellow-eco)
|
||||
(game-text-id swamp-eco-yellow-first-use)
|
||||
"sksp0145"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1374,7 +1374,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('maincave)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-maybe-you-can-shoot-better-goggles)
|
||||
(game-text-id cave-gnawers-look-around)
|
||||
"sksp0328"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -362,7 +362,7 @@
|
||||
(set! (-> v1-2 height) (the float 55))
|
||||
)
|
||||
(set! (-> arg0 flags) (font-flags shadow kerning middle left large))
|
||||
(let ((s4-0 (game-text-id card-not-formatted-title)))
|
||||
(let ((s4-0 (game-text-id memcard-not-formatted-title)))
|
||||
(case (-> obj display-state)
|
||||
(((progress-screen memcard-no-space))
|
||||
(set! s4-0 (game-text-id memcard-no-space))
|
||||
@ -432,7 +432,7 @@
|
||||
)
|
||||
(set! (-> arg0 flags) (font-flags shadow kerning middle left large))
|
||||
(let ((s4-0 print-game-text-scaled))
|
||||
(format (clear *temp-string*) (lookup-text! *common-text* (game-text-id card-not-formatted-title) #f) 1)
|
||||
(format (clear *temp-string*) (lookup-text! *common-text* (game-text-id memcard-not-formatted-title) #f) 1)
|
||||
(s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128)
|
||||
)
|
||||
(set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
|
||||
@ -444,7 +444,7 @@
|
||||
(set! (-> v1-8 height) (the float 40))
|
||||
)
|
||||
(print-game-text-scaled
|
||||
(lookup-text! *common-text* (game-text-id card-not-formatted-msg) #f)
|
||||
(lookup-text! *common-text* (game-text-id memcard-not-formatted-msg) #f)
|
||||
(-> obj transition-percentage-invert)
|
||||
arg0
|
||||
128
|
||||
@ -578,7 +578,7 @@
|
||||
(set! (-> v1-23 height) (the float 75))
|
||||
)
|
||||
(let ((s4-1 print-game-text-scaled))
|
||||
(format (clear *temp-string*) (lookup-text! *common-text* (game-text-id do-not-remove-mem-card) #f) 1)
|
||||
(format (clear *temp-string*) (lookup-text! *common-text* (game-text-id memcard-do-not-remove) #f) 1)
|
||||
(s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128)
|
||||
)
|
||||
0
|
||||
|
@ -268,9 +268,9 @@
|
||||
:task-id (game-task village1-uncle-money)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id vollage1-uncle-money)
|
||||
(game-text-id vollage1-uncle-money)
|
||||
(game-text-id vollage1-uncle-money)
|
||||
(game-text-id village1-uncle-money)
|
||||
(game-text-id village1-uncle-money)
|
||||
(game-text-id village1-uncle-money)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -586,7 +586,7 @@
|
||||
)
|
||||
)
|
||||
(new 'static 'level-tasks-info
|
||||
:level-name-id (game-text-id fire-canyon-level-name)
|
||||
:level-name-id (game-text-id firecanyon-level-name)
|
||||
:text-group-index 5
|
||||
:nb-of-tasks 2
|
||||
:buzzer-task-index 1
|
||||
@ -596,9 +596,9 @@
|
||||
:task-id (game-task firecanyon-end)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id fire-canyon-end)
|
||||
(game-text-id fire-canyon-end)
|
||||
(game-text-id fire-canyon-end)
|
||||
(game-text-id firecanyon-end)
|
||||
(game-text-id firecanyon-end)
|
||||
(game-text-id firecanyon-end)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -606,9 +606,9 @@
|
||||
:task-id (game-task firecanyon-buzzer)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id fire-canyon-buzzer)
|
||||
(game-text-id fire-canyon-buzzer)
|
||||
(game-text-id fire-canyon-buzzer)
|
||||
(game-text-id firecanyon-buzzer)
|
||||
(game-text-id firecanyon-buzzer)
|
||||
(game-text-id firecanyon-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -675,9 +675,9 @@
|
||||
:task-id (game-task village2-buzzer)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -714,9 +714,9 @@
|
||||
:task-id (game-task sunken-slide)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id sunken-bottom)
|
||||
(game-text-id sunken-bottom)
|
||||
(game-text-id sunken-bottom)
|
||||
(game-text-id sunken-slide)
|
||||
(game-text-id sunken-slide)
|
||||
(game-text-id sunken-slide)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -754,9 +754,9 @@
|
||||
:task-id (game-task sunken-spinning-room)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id reach-center)
|
||||
(game-text-id reach-center)
|
||||
(game-text-id reach-center)
|
||||
(game-text-id sunken-spinning-room)
|
||||
(game-text-id sunken-spinning-room)
|
||||
(game-text-id sunken-spinning-room)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -764,9 +764,9 @@
|
||||
:task-id (game-task sunken-buzzer)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -853,9 +853,9 @@
|
||||
:task-id (game-task swamp-buzzer)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -942,9 +942,9 @@
|
||||
:task-id (game-task rolling-buzzer)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -1089,7 +1089,7 @@
|
||||
)
|
||||
)
|
||||
(new 'static 'level-tasks-info
|
||||
:level-name-id (game-text-id snowy-level-name)
|
||||
:level-name-id (game-text-id snow-level-name)
|
||||
:text-group-index 3
|
||||
:nb-of-tasks 8
|
||||
:buzzer-task-index 7
|
||||
@ -1129,9 +1129,9 @@
|
||||
:task-id (game-task snow-cage)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id snow-frozen-crate)
|
||||
(game-text-id snow-frozen-crate)
|
||||
(game-text-id snow-frozen-crate)
|
||||
(game-text-id snow-cage)
|
||||
(game-text-id snow-cage)
|
||||
(game-text-id snow-cage)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -1149,9 +1149,9 @@
|
||||
:task-id (game-task snow-ball)
|
||||
:task-name
|
||||
(new 'static 'array game-text-id 4
|
||||
(game-text-id snow-open-door)
|
||||
(game-text-id snow-open-door)
|
||||
(game-text-id snow-open-door)
|
||||
(game-text-id snow-ball)
|
||||
(game-text-id snow-ball)
|
||||
(game-text-id snow-ball)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
|
@ -59,13 +59,13 @@
|
||||
(hidden-power-cell #x12f) ;; why is this here??
|
||||
(memcard-no-space #x130)
|
||||
(memcard-not-inserted #x131)
|
||||
(card-not-formatted-title #x132)
|
||||
(memcard-not-formatted-title #x132)
|
||||
(memcard-space-requirement1 #x133)
|
||||
(memcard-space-requirement2 #x134)
|
||||
(card-not-formatted-msg #x135)
|
||||
(memcard-not-formatted-msg #x135)
|
||||
(saving-data #x136)
|
||||
(loading-data #x137)
|
||||
(do-not-remove-mem-card #x138)
|
||||
(memcard-do-not-remove #x138)
|
||||
(overwrite? #x139)
|
||||
(format? #x13a)
|
||||
|
||||
@ -118,7 +118,7 @@
|
||||
(total-collected #x171)
|
||||
|
||||
(village1-mayor-money #x200)
|
||||
(vollage1-uncle-money #x201)
|
||||
(village1-uncle-money #x201)
|
||||
(village1-yakow-herd #x202)
|
||||
(village1-yakow-return #x203)
|
||||
(village1-oracle #x204)
|
||||
@ -138,36 +138,60 @@
|
||||
(misty-muse-return #x212)
|
||||
(misty-boat #x213)
|
||||
(misty-cannon #x214)
|
||||
(misty-return-to-pool #x215) ;; task name??
|
||||
(misty-find-transpad #x216) ;; task name?
|
||||
(misty-return-to-pool #x215)
|
||||
(misty-find-transpad #x216)
|
||||
(misty-balloon-lurkers #x217)
|
||||
|
||||
(village1-poi-farmer #x218)
|
||||
(village1-poi-mayor #x219)
|
||||
(village1-poi-bird-lady #x21a)
|
||||
(village1-poi-sculptor #x21b)
|
||||
(village1-poi-explorer #x21c)
|
||||
(village1-poi-fisherman #x21d)
|
||||
(village1-poi-sage-hut #x21e)
|
||||
(village1-poi-assistant #x21f)
|
||||
(village1-level-name #x220)
|
||||
(beach-level-name #x221)
|
||||
(jungle-level-name #x222)
|
||||
(misty-level-name #x223)
|
||||
|
||||
(village1-poi-firecanyon #x224)
|
||||
(jungleb-level-name #x225)
|
||||
|
||||
(generic-yes #x226)
|
||||
(generic-no #x227)
|
||||
(flutflut #x228)
|
||||
(oracle #x229)
|
||||
(trans-pad #x22a)
|
||||
(green-eco-harvester #x22b)
|
||||
(money #x22c)
|
||||
(fuel-cell #x22d)
|
||||
(beach-seagull-get #x22e)
|
||||
|
||||
(jungle-lurkerm-unblock #x22f)
|
||||
(jungle-lurkerm-return #x230)
|
||||
(sidekick-reminder-fishermans-boat #x231)
|
||||
(sidekick-hint-fishermans-boat #x232)
|
||||
(sidekick-reminder-money #x233)
|
||||
(sidekick-reminder-oracle #x234)
|
||||
(sidekick-hint-oracle #x235)
|
||||
(sidekick-hint-seagulls #x236)
|
||||
(sidekick-hint-pelican #x237)
|
||||
|
||||
(MISSING-orb-hint #x233)
|
||||
(sidekick-hint-ecorocks #x239)
|
||||
(sidekick-hint-mistycannon #x23a)
|
||||
(sidekick-hint-dive #x23b)
|
||||
(sidekick-hint-rounddoor #x23c)
|
||||
(sidekick-hint-lurkerm #x23d)
|
||||
(sidekick-hint-tower #x23e)
|
||||
|
||||
(sidekick-reminder-fish #x240)
|
||||
|
||||
(beach-eco-rock-increment #x239)
|
||||
|
||||
(jungle-maindoor-hint #x23c)
|
||||
|
||||
(firecanyon-not-enough-cells #x24f)
|
||||
(firecanyon-need-cells #x24f)
|
||||
|
||||
(sidekick-hint-orb-cache-top #x251)
|
||||
|
||||
(jungle-precursorbridge-hint #x25b)
|
||||
(daxter-launcher-no-eco #x25c)
|
||||
(sidekick-hint-precurbridge #x25b)
|
||||
(sidekick-hint-launcher #x25c)
|
||||
|
||||
(jungle-mirrors-completion-talk-to-mayor #x25e)
|
||||
(jungle-lurkerm-resolution #x25e)
|
||||
(jungle-lurkerm-hint #x25f)
|
||||
|
||||
(beach-gimmie #x262)
|
||||
(beach-sentinel #x263)
|
||||
@ -175,12 +199,14 @@
|
||||
(jungle-temple-door #x265)
|
||||
(misty-bike-jump #x266)
|
||||
(misty-eco-challenge #x267)
|
||||
(beach-seagull-chased-one #x268)
|
||||
(beach-seagull-chased-two #x26a)
|
||||
(beach-seagull-chased-three #x26b)
|
||||
(beach-seagull-chased-four #x26c)
|
||||
(sidekick-seagulls1 #x268)
|
||||
(sidekick-hint-seagulls2 #x269)
|
||||
(sidekick-seagulls2 #x26a)
|
||||
(sidekick-seagulls3 #x26b)
|
||||
(sidekick-seagulls4 #x26c)
|
||||
|
||||
(misty-daxter-scared #x26f)
|
||||
(sidekick-warehouse #x26e)
|
||||
(sidekick-misty #x26f)
|
||||
|
||||
(beach-seagulls-avalanche #x273)
|
||||
|
||||
@ -189,49 +215,52 @@
|
||||
(beach-flutflutegg-hint #x275)
|
||||
|
||||
(sidekick-hint-fish-powerup #x278)
|
||||
(misty-racer-hit-the-ballon-lurkers #x27e)
|
||||
(misty-daxter-hit-lurkers-not-mines #x27f)
|
||||
(misty-bike-hint #x27e)
|
||||
(misty-bike-mines-hint #x27f)
|
||||
(sidekick-hint-trans-pad #x280)
|
||||
(sidekick-hint-crate-darkeco1 #x281)
|
||||
(sidekick-hint-buzzer #x282)
|
||||
(sidekick-hint-crate-steel-break1 #x283)
|
||||
(sidekick-hint-crate-iron #x284)
|
||||
(sidekick-hint-crate-steel #x285)
|
||||
(sidekick-hint-fuel-cell #x286)
|
||||
(sidekick-hint-money #x287)
|
||||
(beach-ecorocks-resolution #x288)
|
||||
(jungle-eggtop-resolution #x289)
|
||||
(misty-cannon-resolution #x28a)
|
||||
(misty-bike-resolution #x28b)
|
||||
|
||||
(sidekick-speech-hint-crate-darkeco1 #x281)
|
||||
(sidekick-hint-crate-steel-break2 #x28e)
|
||||
(sidekick-hint-crate-darkeco2 #x28f)
|
||||
(sidekick-launcher1 #x290)
|
||||
(sidekick-launcher2 #x291)
|
||||
(sidekick-mistycannon #x292)
|
||||
(sidekick-unknown1 #x293)
|
||||
(sidekick-hint-buzzer2 #x294)
|
||||
(sidekick-hint-buzzer3 #x295)
|
||||
(sidekick-buzzer-resolution #x296)
|
||||
(village1-yakow-resolution #x297)
|
||||
|
||||
(sidekick-speech-crate-steel-break1 #x283)
|
||||
(sidekick-speech-hint-crate-iron #x284)
|
||||
(sidekick-speech-hint-crate-steel #x285)
|
||||
(sidekick-hint-periscope #x29c)
|
||||
(sidekick-hint-reflector-mirror #x29d)
|
||||
(sidekick-hint-aphid #x29e)
|
||||
(sidekick-hint-periscope2 #x29f)
|
||||
(sidekick-hint-periscope3 #x2a0)
|
||||
(sidekick-hint-eco-door #x2a1)
|
||||
|
||||
(beach-collectors-unblocked #x288)
|
||||
(jungleb-eco-vents-opened #x289)
|
||||
(misty-stopped-lurkers-at-silo #x28a)
|
||||
(misty-stopped-balloon-lurkers #x28b)
|
||||
|
||||
(sidekick-speech-crate-steel-break2 #x28e)
|
||||
(sidekick-speech-hint-crate-darkeco2 #x28f)
|
||||
|
||||
(daxter-screaming-jump #x290)
|
||||
(daxter-wahoo-jump #x291)
|
||||
(daxter-get-some #x292)
|
||||
|
||||
(collectables-scout-flies-red-boxes #x295)
|
||||
(found-all-scout-flies #x296)
|
||||
(yakow-owed-powercell #x297)
|
||||
|
||||
(jungle-mirrors-tutorial #x29c)
|
||||
(jungle-mirrors-break-the-mirror-jak #x29d)
|
||||
(jungle-mirrors-go-to-the-next-tower #x29f)
|
||||
(jungle-mirrors-follow-the-beam #x2a0)
|
||||
|
||||
(misty-teetertotter-bonk-dax-tutorial #x2a4)
|
||||
(sidekick-hint-misty-get-red-eco #x2a5)
|
||||
(red-eco-tutorial #x2a6)
|
||||
(daxter-blue-eco-plat-tutorial #x2a7)
|
||||
(misty-teetertotter #x2a4)
|
||||
(misty-eco-red-hint #x2a5)
|
||||
(misty-eco-red-first-use #x2a6)
|
||||
(misty-eco-plat #x2a7)
|
||||
|
||||
(fish? #x2a9)
|
||||
(misty-bone-bridge-hint #x2aa)
|
||||
|
||||
(beach-grottopole-increment #x2af)
|
||||
|
||||
(firecanyon-collect-cells-collected #x2b1)
|
||||
(firecanyon-collect-cells-collected-reminder #x2b2)
|
||||
(firecanyon-collect-cells-text #x2b3)
|
||||
(village1cam-enough-cells #x2b1)
|
||||
(village1cam-enough-cells2 #x2b2)
|
||||
(firecanyon-need-cells-text #x2b3)
|
||||
(caught #x2b4)
|
||||
(missed #x2b5)
|
||||
(lose! #x2b6)
|
||||
@ -241,18 +270,17 @@
|
||||
(village2-warrior-money #x302)
|
||||
(village2-oracle-money #x303)
|
||||
(swamp-tether #x304)
|
||||
|
||||
(swamp-arm #x305)
|
||||
(swamp-poles #x306)
|
||||
(swamp-flutflut #x307)
|
||||
|
||||
(swamp-tetherrocks #x308)
|
||||
(swamp-billy #x309)
|
||||
|
||||
(sunken-elevator-raise #x30a)
|
||||
(sunken-elevator-get-to-roof #x30b)
|
||||
(sunken-pipe #x30c)
|
||||
(sunken-climb-tube #x30d) ;; task name?
|
||||
(sunken-pool #x30e) ;; task name?
|
||||
(sunken-climb-tube #x30d)
|
||||
(sunken-pool #x30e)
|
||||
(sunken-platforms #x30f)
|
||||
|
||||
(rolling-moles #x310)
|
||||
(rolling-moles-return #x311)
|
||||
(rolling-robbers #x312)
|
||||
@ -260,75 +288,92 @@
|
||||
(rolling-race-return #x314)
|
||||
(rolling-lake #x315)
|
||||
(rolling-plants #x316)
|
||||
|
||||
(unknown-buzzers #x317)
|
||||
|
||||
(generic-buzzer #x317)
|
||||
(poi-bluesage-hut #x318)
|
||||
(village2-level-name #x319)
|
||||
|
||||
(poi-levitator #x31a)
|
||||
(rolling-level-name #x31b)
|
||||
(swamp-level-name #x31c)
|
||||
(sunken-level-name #x31d)
|
||||
(ogre-level-name #x31e)
|
||||
|
||||
(levitator-yes #x31f)
|
||||
(levitator-no #x320)
|
||||
(swamp-battle #x321)
|
||||
(sunken-bottom #x322) ;; task name?
|
||||
(reach-center #x323) ;; task name?
|
||||
(sunken-slide #x322)
|
||||
(sunken-spinning-room #x323)
|
||||
(rolling-ring-chase-1 #x324)
|
||||
(rolling-ring-chase-2 #x325)
|
||||
(sunken-kiera-you-raised-a-piece-of-lpc #x326)
|
||||
(rolling-beat-lurkers #x327)
|
||||
(swamp-finished-with-flutflut #x328)
|
||||
(rolling-race-beat-record #x335)
|
||||
(sidekick-speech-hint-rolling-crate-darkeco #x336)
|
||||
(rolling-lightning-moles-completion #x338)
|
||||
(rolling-dark-plants-location-hint #x339)
|
||||
(rolling-dark-plants-hint #x33a)
|
||||
(rolling-flying-lurker-intro #x33c)
|
||||
(rolling-ring-hint-one-ring-down #x33f)
|
||||
(rolling-ring-hint-be-quick-to-next #x340)
|
||||
(rolling-ring-hint-be-quick-all #x341)
|
||||
(sunken-room-resolution #x326)
|
||||
(rolling-robbers-resolution #x327)
|
||||
(swamp-flutflut-resolution #x328)
|
||||
|
||||
(sunken-pipegame-follow-it #x343)
|
||||
(sunken-helix-daxter-bad-feeling #x344)
|
||||
(rolling-race-beat-record #x335)
|
||||
(sidekick-hint-crate-darkeco-rolling #x336)
|
||||
(rolling-moles-hint #x337)
|
||||
(rolling-moles-resolution #x338)
|
||||
(rolling-plants-hint #x339)
|
||||
(rolling-plants-hint-eco-green #x33a)
|
||||
(rolling-plants-hint-eco-green2 #x33b)
|
||||
(rolling-robbers-hint #x33c)
|
||||
(rolling-moles-hint-hole #x33d)
|
||||
(rolling-plants-hint-eco-green3 #x33e)
|
||||
(rolling-ring-chase-1-hint #x33f)
|
||||
(rolling-ring-chase-2-hint #x340)
|
||||
(rolling-ring-chase-fail #x341)
|
||||
(rolling-ring-grass #x342)
|
||||
(sunken-pipegame-hint #x343)
|
||||
(sunken-helix-hint #x344)
|
||||
(sunken-blue-eco-charger-hint #x345)
|
||||
(sunken-room-hint #x346)
|
||||
(sunken-double-lurker-hint #x347)
|
||||
(sunken-helix-daxter-eco-rising #x348)
|
||||
(sunken-helix-darkeco-hint #x348)
|
||||
(sunken-helix-darkeco-close #x349)
|
||||
(sunken-qbert-plat-hint #x34a)
|
||||
(sunken-bully-dive-hint #x34b)
|
||||
(sunken-take-it-easy-hot-pipes #x34e)
|
||||
|
||||
(sunken-tube-hint #x34c)
|
||||
(sunken-blue-eco-charger-all-hint #x34d)
|
||||
(sunken-hotpipes #x34e)
|
||||
(sunken-water1 #x34f)
|
||||
(sunken-water2 #x350)
|
||||
(swamp-tetherrocks-hint #x351)
|
||||
(swamp-tetherrock-eco-yellow-hint #x352)
|
||||
(swamp-billy-reminder #x353)
|
||||
(swamp-flutflut-doublejump #x354)
|
||||
(swamp-tar #x355)
|
||||
(swamp-water #x356)
|
||||
(swamp-kermit-tongue-hint #x357)
|
||||
(swamp-rat-nest-hint #x358)
|
||||
(swamp-eco-yellow-first-use #x359)
|
||||
(swamp-eco-yellow-hint #x35a)
|
||||
(swamp-swingpole #x35b)
|
||||
(swamp-bramble #x35c)
|
||||
(swamp-tether-hint #x35d)
|
||||
(swamp-kermit-charge-hint #x35e)
|
||||
(swamp-kermit-flee #x35f)
|
||||
(swamp-battle-hint #x360)
|
||||
(swamp-arm-hint #x361)
|
||||
(swamp-tar-hint #x362)
|
||||
(swamp-bat-eco-yellow-hint #x363)
|
||||
(swamp-bat-duck-hint #x364)
|
||||
(swamp-tetherrocks-3-left #x365)
|
||||
(swamp-tetherrocks-2-left #x366)
|
||||
(swamp-tetherrocks-1-left #x367)
|
||||
(swamp-flutflut-hint #x368)
|
||||
(swamp-rats-hurt #x369)
|
||||
(rolling-plants-resolution #x36a)
|
||||
(swamp-arm-resolution #x36b)
|
||||
(village2-levitator-need-cells #x36c)
|
||||
(village2-levitator-find-cells #x36d)
|
||||
|
||||
(swamp-tethers-advice-hint #x352)
|
||||
|
||||
(kermit-break-tongue #x357)
|
||||
(swamp-rats-nest-hint #x358)
|
||||
(daxter-you-can-shoot-with-yellow-eco #x359)
|
||||
|
||||
(kermit-run-away-jak #x35f)
|
||||
|
||||
(swamp-bats-hint #x364) ;; maybe we can duck the bats
|
||||
(swamp-tethers-three-to-go #x365)
|
||||
(swamp-tethers-two-to-go #x366)
|
||||
(swamp-tethers-lefts-find-the-last #x367)
|
||||
(flutflut-reminder #x368)
|
||||
|
||||
(sage-golfclap-i-have-low-expectations #x36a) ;; where was this said?
|
||||
|
||||
(swamp-tethers-completion-sage-precursor-arm #x36b)
|
||||
|
||||
(village2-warp-gate-reminder #x36f)
|
||||
(village2-warp-gate-reminder-annoyed #x370)
|
||||
(village2-warp-gate-reminder-very-annoyed #x371)
|
||||
|
||||
(village2-not-enough-cells-levitator #x36c)
|
||||
(villlage2-levitator-cell-req-text #x372)
|
||||
|
||||
(rolling-race-time-string-prefix #x373)
|
||||
(rolling-race-record-string-prefix #x374)
|
||||
(rolling-race-new-record-string-prefix #x375)
|
||||
(rolling-race-try-again-string #x376)
|
||||
(rolling-race-start-race-aborted #x377) ;; double check this
|
||||
(village2-button-reminder #x36f)
|
||||
(village2-button-reminder2 #x370)
|
||||
(village2-button-reminder3 #x371)
|
||||
(village2-levitator-need-cells-text #x372)
|
||||
(time #x373)
|
||||
(record #x374)
|
||||
(new-record #x375)
|
||||
(try-again #x376)
|
||||
(race-aborted #x377)
|
||||
|
||||
(village3-miner-money #x400)
|
||||
(village3-oracle-money #x401)
|
||||
@ -337,85 +382,155 @@
|
||||
(snow-ram-1-left #x404)
|
||||
(snow-fort #x405)
|
||||
(snow-bunnies #x406)
|
||||
(snow-open-door #x408) ;; task name?
|
||||
|
||||
(red-eggtop #x407)
|
||||
(snow-ball #x408)
|
||||
(cave-gem #x409)
|
||||
(cave-drilling-lurkers #x40a)
|
||||
(snow-top #x40b)
|
||||
(snow-troops #x40c)
|
||||
(snow-troops2 #x40d)
|
||||
(cave-robot-climb #x40e)
|
||||
(cave-dark-climb #x40f) ;; destroy crystals
|
||||
|
||||
(cave-dark-climb #x40f)
|
||||
(cave-gnawers #x410)
|
||||
(cave-dark-crystals #x411)
|
||||
|
||||
(cave-bats #x412)
|
||||
(village3-buzzer #x413)
|
||||
|
||||
(village3-poi-redsage-hut #x414)
|
||||
(village3-level-name #x415)
|
||||
|
||||
(snowy-level-name #x417)
|
||||
|
||||
(village3-poi-gondola #x416)
|
||||
(snow-level-name #x417)
|
||||
(village3-poi-yosemite #x418)
|
||||
(cave-level-name #x419)
|
||||
|
||||
(village3-poi-ogre #x41a)
|
||||
(lavatube-level-name #x41b)
|
||||
|
||||
(gondola-ride? #x41c)
|
||||
(gondola-yes #x41d)
|
||||
(gondola-no #x41e)
|
||||
(snow-ram-boss #x41f)
|
||||
(snow-lake #x420)
|
||||
(snow-eggtop #x421)
|
||||
|
||||
(snow-birds #x422)
|
||||
(cave-spider-tunnel #x423)
|
||||
(cave-platforms #x424)
|
||||
|
||||
(cave-swing-poles #x426)
|
||||
|
||||
(assistant-lavatube-powercell-hint #x428)
|
||||
(village3-gondola-malfunctioning #x429)
|
||||
(village3-gondola-reactivated #x42a)
|
||||
|
||||
(snow-frozen-crate #x42b) ;; task name?
|
||||
(assistant-lavatube-hint #x427)
|
||||
(assistant-lavatube-need-cells #x428)
|
||||
(gondola-need-cells #x429)
|
||||
(gondola-enough-cells #x42a)
|
||||
(snow-cage #x42b)
|
||||
(snow-bumpers #x42c)
|
||||
|
||||
(dark-crystal-last-one #x432)
|
||||
(daxter-maybe-you-can-shoot-better-goggles #x433)
|
||||
|
||||
(darkcave-light-crystal-low-light-hint #x437)
|
||||
(darkcave-light-crystal-hint #x438)
|
||||
(dark-crystal-run-away #x439)
|
||||
(cave-dark-crystals-resolution #x432)
|
||||
(cave-gnawers-look-around #x433)
|
||||
(cave-darkeco #x434)
|
||||
(cave-dark-crystals-reminder #x435)
|
||||
(cave-gnawers-reminder #x436)
|
||||
(darkcave-light-end #x437)
|
||||
(darkcave-light-hint #x438)
|
||||
(cave-dark-crystals-flee #x439)
|
||||
(robocave-introduction #x43a)
|
||||
(cave-spider-egg-hint #x43b)
|
||||
(darkcave-introduction #x43c)
|
||||
(cave-spiderweb-hint #x43d)
|
||||
(cave-spider-hurt #x43e)
|
||||
(cave-baby-spider-hint #x43f)
|
||||
(cave-trap-nest-hint #x440)
|
||||
(snow-fort-reminder #x443)
|
||||
(ram-boss-red-eco-hint #x444)
|
||||
(cave-spider-egg-spawn #x441)
|
||||
(cave-spider-nest-flee #x442)
|
||||
(snow-fort-hint #x443)
|
||||
(snow-ram-boss-red-eco-hint #x444)
|
||||
(snow-platform-hint #x445)
|
||||
(snow-vent-hint #x446)
|
||||
(snow-eggtop-hint #x447)
|
||||
(snow-ice-cube-hint #x448)
|
||||
(snow-button-hint #x449)
|
||||
(snow-plat-hint #x44a)
|
||||
(snow-red-eco-hint #x44b)
|
||||
(snow-eggtop-resolution #x44c)
|
||||
(snow-cage-resolution #x44d)
|
||||
(snow-ball-hint #x44e)
|
||||
(assistant-lavatube-enough-cells #x44f)
|
||||
(assistant-lavatube-enough-cells2 #x450)
|
||||
(assistant-lavatube-reminder #x451)
|
||||
(village3-button-reminder #x452)
|
||||
(village3-button-reminder2 #x453)
|
||||
(village3-button-reminder3 #x454)
|
||||
(assistant-lavatube-need-cells-text #x455)
|
||||
|
||||
(ice-cube-hint #x448)
|
||||
|
||||
(snowy-turned-on-yellow-vents #x44c)
|
||||
|
||||
(village3-warp-gate-reminder #x452)
|
||||
(village3-warp-gate-reminder=annoyed #x453)
|
||||
(village3-warp-gate-reminder-very-annoyed #x454)
|
||||
(lavatube-powercell-req-text #x455)
|
||||
|
||||
(fire-canyon-end #x500)
|
||||
(fire-canyon-buzzer #x501)
|
||||
|
||||
(daxter-maybe-i-should-drive #x506)
|
||||
(daxter-you-are-trying-to-avoid-dark-eco #x507)
|
||||
|
||||
(fire-canyon-level-name #x50c)
|
||||
|
||||
(fire-canyon-we-made-it #x515)
|
||||
|
||||
(collectables-theres-scout-flys-here-too #x516)
|
||||
(firecanyon-end #x500)
|
||||
(firecanyon-buzzer #x501)
|
||||
(firecanyon-balloon-hint #x502)
|
||||
(firecanyon-ramp-hint #x503)
|
||||
(firecanyon-heat-warning1 #x504)
|
||||
(firecanyon-steer-hint #x505)
|
||||
(firecanyon-crate-darkeco1 #x506)
|
||||
(firecanyon-crate-darkeco2 #x507)
|
||||
(firecanyon-babak-hint #x508)
|
||||
(firecanyon-heat-warning2 #x509)
|
||||
(firecanyon-heat-warning3 #x50a)
|
||||
(firecanyon-heat-warning4 #x50b)
|
||||
(firecanyon-level-name #x50c)
|
||||
(firecanyon-balloon-reminder #x50d)
|
||||
(firecanyon-balloon-reminder2 #x50e)
|
||||
(firecanyon-heat-warning5 #x50f)
|
||||
(firecanyon-balloon-missed #x510)
|
||||
(firecanyon-heat-warning6 #x511)
|
||||
(firecanyon-heat-warning7 #x512)
|
||||
(firecanyon-heat-warning8 #x513)
|
||||
(firecanyon-heat-warning9 #x514)
|
||||
(firecanyon-end-resolution #x515)
|
||||
(firecanyon-buzzer-hint #x516)
|
||||
|
||||
(ogre-end #x600)
|
||||
(ogre-buzzer #x601)
|
||||
(ogre-poi-ogre #x602)
|
||||
(ogre-boss #x603)
|
||||
(ogre-boss-killed #x604)
|
||||
(ogre-boss-resolution #x604)
|
||||
(ogre-race-hint #x605)
|
||||
|
||||
(assistant-voicebox-intro-ogre-race #x605)
|
||||
|
||||
(sidekick-speech-hint-ogre-race #x61c)
|
||||
(assistant-finished-mountain-pass-race #x61d)
|
||||
(ogre-race-introduction #x607)
|
||||
(ogre-tnt-hint #x608)
|
||||
(ogre-race-ahead-hint #x609)
|
||||
(ogre-eco-blue-hint #x60a)
|
||||
(ogre-tree-hint #x60b)
|
||||
(ogre-eco-blue-reminder #x60c)
|
||||
(ogre-tnt-reminder #x60d)
|
||||
(ogre-hole-hint #x60e)
|
||||
(ogre-bonk-hint #x60f)
|
||||
(ogre-flying-lurker-hint #x610)
|
||||
(ogre-flying-lurker-reminder #x611)
|
||||
(ogre-flying-lurker-pass #x612)
|
||||
(ogre-flying-lurker-passed #x613)
|
||||
(ogre-race-losing #x614)
|
||||
(ogre-race-winning #x615)
|
||||
(ogre-race-reminder #x616)
|
||||
(ogre-jump-hint #x617)
|
||||
(ogre-race-end-almost #x618)
|
||||
(ogre-race-end-almost2 #x619)
|
||||
(ogre-race-end-almost3 #x61a)
|
||||
(ogre-race-end-almost-losing #x61b)
|
||||
(ogre-plunger-lurker-resolution #x61c)
|
||||
(ogre-race-resolution #x61d)
|
||||
|
||||
(lavatube-end #x700)
|
||||
(lavatube-buzzer #x701)
|
||||
|
||||
(lavatube-shoot-the-spheres #x70d)
|
||||
|
||||
(lavatube-spheres-door-open #x710)
|
||||
(lavatube-hurry #x702)
|
||||
(lavatube-hurry-path #x703)
|
||||
(lavatube-chainmine #x704)
|
||||
(lavatube-darkecobarrel #x705)
|
||||
(lavatube-balloon #x706)
|
||||
(lavatube-heat1 #x707)
|
||||
(lavatube-heat2 #x708)
|
||||
(lavatube-eco-blue #x709)
|
||||
(lavatube-eco-yellow #x70a)
|
||||
(lavatube-tunnel1 #x70b)
|
||||
(lavatube-tunnel2 #x70c)
|
||||
(lavatube-balls #x70d)
|
||||
(lavatube-balls-almost-dead #x70e)
|
||||
(lavatube-balls-resolution #x710)
|
||||
(lavatube-tunnel3 #x711)
|
||||
(lavatube-end-resolution #x712)
|
||||
|
||||
(citadel-buzzer #x800)
|
||||
(citadel-level-name #x801)
|
||||
@ -423,32 +538,48 @@
|
||||
(citadel-sage-red #x803)
|
||||
(citadel-sage-yellow #x804)
|
||||
(citadel-sage-green #x805)
|
||||
(citadel-break-generator-hint #x806)
|
||||
(citadel-lurker-bunny-alert #x808)
|
||||
(citadel-break-generators-reminder #x809)
|
||||
(citadel-climb-plat-hint #x80c)
|
||||
(citadel-generator #x806)
|
||||
(citadel-edge #x807)
|
||||
(citadel-battle #x808)
|
||||
(citadel-generator-no-mushroom #x809)
|
||||
(citadel-button #x80a)
|
||||
(citadel-robotboss #x80b)
|
||||
(citadel-plat #x80c)
|
||||
(citadel-launcher #x80d)
|
||||
(citadel-battle2 #x80e)
|
||||
(citadel-sagecage #x80f)
|
||||
(citadel-hub1 #x810)
|
||||
(citadel-hub2 #x811)
|
||||
(citadel-launcher2 #x812)
|
||||
(citadel-battle-end #x813)
|
||||
|
||||
(daxter-dont-miss-the-next-launcher #x80d)
|
||||
|
||||
(daxter-land-on-the-next-launcher #x812)
|
||||
(misty-battle-finished #x813)
|
||||
|
||||
(training-precursor-orbs #x901)
|
||||
(training-power-cells #x902)
|
||||
(training-assistant-found-scout-fly #x903)
|
||||
(training-assistant-found-scout-fly-cell #x904)
|
||||
(training-voicebox #x900)
|
||||
(training-money #x901)
|
||||
(training-fuel-cell #x902)
|
||||
(training-buzzer-hint #x903)
|
||||
(training-buzzer-resolution #x904)
|
||||
(training-sharkey #x905)
|
||||
(training-fuel-cell-reminder #x906)
|
||||
(training-blue-eco-vent #x907)
|
||||
(training-eco-green #x908)
|
||||
(training-eco-blue #x909)
|
||||
(training-more-eco-more-time #x90a)
|
||||
(training-eco-reminder #x90a)
|
||||
(training-precursor-door #x90b)
|
||||
(training-eco-opened-door #x90c)
|
||||
(training-progress #x90d)
|
||||
(training-double-jump #x90e)
|
||||
|
||||
(sage-voicebox-hint-crate-iron #x917)
|
||||
(training-spin #x90f)
|
||||
(training-spin-bad1 #x910)
|
||||
(training-spin-bad2 #x911)
|
||||
(training-spin-success #x912)
|
||||
(training-punch #x914)
|
||||
(training-punch-bad1 #x914)
|
||||
(training-punch-bad2 #x915)
|
||||
(training-punch-success #x916)
|
||||
(training-ironcrate #x917)
|
||||
(training-combo #x918)
|
||||
(training-warp-gate-blocked #x919)
|
||||
(training-warp-gate-reminder #x91a)
|
||||
|
||||
(training-gimmie-task-name #x91b)
|
||||
(training-buzzer-task-name #x91c)
|
||||
(training-door-task-name #x91d)
|
||||
|
@ -549,7 +549,7 @@
|
||||
(case arg2
|
||||
(('attack)
|
||||
(sound-play "cannon-shot")
|
||||
(increment-success-for-hint (game-text-id beach-eco-rock-increment))
|
||||
(increment-success-for-hint (game-text-id sidekick-hint-ecorocks))
|
||||
(go ecoventrock-break #f)
|
||||
)
|
||||
)
|
||||
|
@ -1209,7 +1209,7 @@
|
||||
(case (-> obj targetnum)
|
||||
((1)
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-seagull-chased-one)
|
||||
(game-text-id sidekick-seagulls1)
|
||||
"sksp0020"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1218,7 +1218,7 @@
|
||||
)
|
||||
((2)
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-seagull-chased-two)
|
||||
(game-text-id sidekick-seagulls2)
|
||||
"sksp0022"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1227,7 +1227,7 @@
|
||||
)
|
||||
((3)
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-seagull-chased-three)
|
||||
(game-text-id sidekick-seagulls3)
|
||||
"sksp0023"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1236,7 +1236,7 @@
|
||||
)
|
||||
((4)
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-seagull-chased-four)
|
||||
(game-text-id sidekick-seagulls4)
|
||||
"sksp0024"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -1229,8 +1229,8 @@
|
||||
(case arg2
|
||||
(('attack)
|
||||
(if (-> self mushroom)
|
||||
(increment-success-for-hint (game-text-id citadel-break-generator-hint))
|
||||
(increment-success-for-hint (game-text-id citadel-break-generators-reminder))
|
||||
(increment-success-for-hint (game-text-id citadel-generator))
|
||||
(increment-success-for-hint (game-text-id citadel-generator-no-mushroom))
|
||||
)
|
||||
(go citb-generator-break)
|
||||
)
|
||||
@ -1258,14 +1258,14 @@
|
||||
(when (and *target* (>= 32768.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(if (-> self mushroom)
|
||||
(level-hint-spawn
|
||||
(game-text-id citadel-break-generator-hint)
|
||||
(game-text-id citadel-generator)
|
||||
"sksp0381"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id citadel-break-generators-reminder)
|
||||
(game-text-id citadel-generator-no-mushroom)
|
||||
"sksp0384"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1526,7 +1526,7 @@
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id citadel-climb-plat-hint)
|
||||
(game-text-id citadel-plat)
|
||||
"sksp0387"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1558,7 +1558,7 @@
|
||||
:virtual #t
|
||||
:code (behavior ()
|
||||
(level-hint-spawn
|
||||
(game-text-id citadel-lurker-bunny-alert)
|
||||
(game-text-id citadel-battle)
|
||||
"sksp0383"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -376,7 +376,7 @@ battlecontroller-default-event-handler
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('citadel)
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-battle-finished)
|
||||
(game-text-id citadel-battle-end)
|
||||
"sksp0378"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -73,7 +73,7 @@
|
||||
(>= (-> self notice-dist) (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-blue-eco-plat-tutorial)
|
||||
(game-text-id misty-eco-plat)
|
||||
"sksp0073"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -103,7 +103,7 @@
|
||||
:trans (behavior ()
|
||||
(if (and *target* (>= 40960.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(level-hint-spawn
|
||||
(game-text-id darkcave-light-crystal-hint)
|
||||
(game-text-id darkcave-light-hint)
|
||||
"sksp0333"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -181,7 +181,7 @@
|
||||
(update-connected-crystals! self)
|
||||
(when (>= 0.0 f30-0)
|
||||
(level-hint-spawn
|
||||
(game-text-id darkcave-light-crystal-low-light-hint)
|
||||
(game-text-id darkcave-light-end)
|
||||
"sksp0332"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -93,7 +93,7 @@
|
||||
)
|
||||
(hide-hud)
|
||||
(kill-current-level-hint '() '(sidekick voicebox) 'exit)
|
||||
(when (and (seen-text? *game-info* (game-text-id firecanyon-not-enough-cells))
|
||||
(when (and (seen-text? *game-info* (game-text-id firecanyon-need-cells))
|
||||
(hud-hidden?)
|
||||
(can-grab-display? self)
|
||||
(not (-> *setting-control* current hint))
|
||||
@ -112,11 +112,11 @@
|
||||
(set! (-> v1-28 scale) 0.8)
|
||||
)
|
||||
(set! (-> gp-0 flags) (font-flags shadow kerning middle large))
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id firecanyon-collect-cells-text) #f) gp-0 #f 128 22)
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id firecanyon-need-cells-text) #f) gp-0 #f 128 22)
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id firecanyon-not-enough-cells)
|
||||
(game-text-id firecanyon-need-cells)
|
||||
"asstvb09"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -195,7 +195,7 @@
|
||||
(when (logtest? (-> self draw status) (draw-status was-drawn))
|
||||
(if (and *target* (>= 40960.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(level-hint-spawn
|
||||
(game-text-id flutflut-reminder)
|
||||
(game-text-id swamp-flutflut-hint)
|
||||
"sksp0160"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -1282,7 +1282,7 @@
|
||||
)
|
||||
(('change-mode)
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-tutorial)
|
||||
(game-text-id sidekick-hint-periscope)
|
||||
"sksp0049"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1560,7 +1560,7 @@
|
||||
(cond
|
||||
((name= arg0 "periscope-11")
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-follow-the-beam)
|
||||
(game-text-id sidekick-hint-periscope3)
|
||||
"sksp0053"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1569,7 +1569,7 @@
|
||||
)
|
||||
((name= arg0 "periscope-12")
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-go-to-the-next-tower)
|
||||
(game-text-id sidekick-hint-periscope2)
|
||||
"sksp0052"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1578,7 +1578,7 @@
|
||||
)
|
||||
((name= arg0 "periscope-15")
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-completion-talk-to-mayor)
|
||||
(game-text-id jungle-lurkerm-resolution)
|
||||
"sksp0018"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1823,9 +1823,9 @@
|
||||
(when (logtest? (-> self draw status) (draw-status was-drawn))
|
||||
(launch-particles (-> *part-id-table* 825) (-> self beam-end))
|
||||
(when (and *target* (>= 24576.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(start-hint-timer (game-text-id jungle-mirrors-break-the-mirror-jak))
|
||||
(start-hint-timer (game-text-id sidekick-hint-reflector-mirror))
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-break-the-mirror-jak)
|
||||
(game-text-id sidekick-hint-reflector-mirror)
|
||||
"sksp0050"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -665,7 +665,7 @@
|
||||
)
|
||||
(else
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-precursorbridge-hint)
|
||||
(game-text-id sidekick-hint-precurbridge)
|
||||
"sksp0039"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -989,7 +989,7 @@
|
||||
(>= (-> self thresh w) (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-maindoor-hint)
|
||||
(game-text-id sidekick-hint-rounddoor)
|
||||
"sksp0038"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -264,7 +264,7 @@
|
||||
)
|
||||
(send-event *camera* 'blend-from-as-fixed)
|
||||
(level-hint-spawn
|
||||
(game-text-id jungleb-eco-vents-opened)
|
||||
(game-text-id jungle-eggtop-resolution)
|
||||
"asstvb02"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -77,7 +77,7 @@
|
||||
)
|
||||
(hide-hud)
|
||||
(kill-current-level-hint '() '(sidekick voicebox) 'exit)
|
||||
(when (and (seen-text? *game-info* (game-text-id assistant-lavatube-powercell-hint))
|
||||
(when (and (seen-text? *game-info* (game-text-id assistant-lavatube-need-cells))
|
||||
(hud-hidden?)
|
||||
(can-grab-display? self)
|
||||
(not (-> *setting-control* current hint))
|
||||
@ -96,11 +96,11 @@
|
||||
(set! (-> v1-28 scale) 0.8)
|
||||
)
|
||||
(set! (-> gp-0 flags) (font-flags shadow kerning middle large))
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id lavatube-powercell-req-text) #f) gp-0 #f 128 22)
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id assistant-lavatube-need-cells-text) #f) gp-0 #f 128 22)
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id assistant-lavatube-powercell-hint)
|
||||
(game-text-id assistant-lavatube-need-cells)
|
||||
"asstva74"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -673,7 +673,7 @@
|
||||
(loop
|
||||
(if (and *target* (>= 307200.0 (vector-vector-distance (-> self root trans) (-> *target* control trans))))
|
||||
(level-hint-spawn
|
||||
(game-text-id lavatube-shoot-the-spheres)
|
||||
(game-text-id lavatube-balls)
|
||||
"sksp0375"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -777,7 +777,7 @@
|
||||
(let ((v1-0 arg2))
|
||||
(the-as object (when (= v1-0 'attack)
|
||||
(when (and (>= arg1 2) (= (-> arg3 param 1) 'eco-yellow))
|
||||
(increment-success-for-hint (game-text-id lavatube-shoot-the-spheres))
|
||||
(increment-success-for-hint (game-text-id lavatube-balls))
|
||||
(sound-play "dcrate-break")
|
||||
(process-spawn
|
||||
part-tracker
|
||||
@ -1292,7 +1292,7 @@
|
||||
)
|
||||
(close-specific-task! (game-task lavatube-balls) (task-status need-resolution))
|
||||
(level-hint-spawn
|
||||
(game-text-id lavatube-spheres-door-open)
|
||||
(game-text-id lavatube-balls-resolution)
|
||||
"sksp0378"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -423,7 +423,7 @@
|
||||
(('touch 'attack)
|
||||
(if (= (-> arg0 type) target)
|
||||
(level-hint-spawn
|
||||
(game-text-id dark-crystal-run-away)
|
||||
(game-text-id cave-dark-crystals-flee)
|
||||
"sksp0334"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -535,7 +535,7 @@
|
||||
(logclear! (-> self mask) (process-mask actor-pause))
|
||||
(clear-collide-with-as (-> self root-override))
|
||||
(level-hint-spawn
|
||||
(game-text-id dark-crystal-last-one)
|
||||
(game-text-id cave-dark-crystals-resolution)
|
||||
"sksp0327"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -448,7 +448,7 @@
|
||||
(set! (-> self explosion-force-position quad) (-> a0-10 prim-core world-sphere quad))
|
||||
(if (send-event arg0 'attack (-> arg3 param 0) (static-attack-info ((mode 'balloonlurker))))
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-daxter-hit-lurkers-not-mines)
|
||||
(game-text-id misty-bike-mines-hint)
|
||||
"sksp0063"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -49,7 +49,7 @@
|
||||
(('flop)
|
||||
(when (target-on-end-of-teetertotter? self)
|
||||
(set! (-> self in-launch-window) #f)
|
||||
(increment-success-for-hint (game-text-id misty-teetertotter-bonk-dax-tutorial))
|
||||
(increment-success-for-hint (game-text-id misty-teetertotter))
|
||||
(go teetertotter-launch)
|
||||
)
|
||||
)
|
||||
@ -58,7 +58,7 @@
|
||||
(('bonk)
|
||||
(when (target-on-end-of-teetertotter? self)
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-teetertotter-bonk-dax-tutorial)
|
||||
(game-text-id misty-teetertotter)
|
||||
"sksp0070"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -1623,7 +1623,7 @@
|
||||
(and (zero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons x))) (nonzero? gp-0))
|
||||
)
|
||||
(let ((gp-1 (+ 50 (the int (* 0.16666667 (the float gp-0))))))
|
||||
(level-hint-spawn (game-text-id daxter-get-some) "sksp009f" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(level-hint-spawn (game-text-id sidekick-mistycannon) "sksp009f" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(dummy-22 self (* 4096.0 (the float gp-1)) 2.0 40960.0)
|
||||
)
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
|
@ -180,7 +180,7 @@
|
||||
(close-specific-task! (game-task plunger-lurker-hit) (task-status need-hint))
|
||||
(process-entity-status! self (entity-perm-status complete) #t)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-ogre-race)
|
||||
(game-text-id ogre-plunger-lurker-resolution)
|
||||
"sksp0321"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -931,7 +931,7 @@
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id assistant-voicebox-intro-ogre-race)
|
||||
(game-text-id ogre-race-hint)
|
||||
"asstvb24"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -316,7 +316,7 @@
|
||||
(('misty)
|
||||
(close-specific-task! (game-task misty-bike) (task-status need-reminder-a))
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-racer-hit-the-ballon-lurkers)
|
||||
(game-text-id misty-bike-hint)
|
||||
"sksp0062"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -557,7 +557,7 @@
|
||||
(suspend)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-lightning-moles-completion)
|
||||
(game-text-id rolling-moles-resolution)
|
||||
"sksp0112"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -349,7 +349,7 @@
|
||||
)
|
||||
(when (task-closed? (game-task rolling-plants) (task-status need-hint))
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-dark-plants-location-hint)
|
||||
(game-text-id rolling-plants-hint)
|
||||
"sksp0113"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -357,7 +357,7 @@
|
||||
)
|
||||
(if (not (send-event *target* 'query 'powerup (pickup-type eco-green)))
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-dark-plants-hint)
|
||||
(game-text-id rolling-plants-hint-eco-green)
|
||||
"sksp0114"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1069,7 +1069,7 @@
|
||||
(set! (-> gp-0 origin y) (the float (- 10 (-> self timer-pos-offset))))
|
||||
(set! (-> gp-0 flags) (font-flags shadow kerning right large))
|
||||
(print-game-text
|
||||
(lookup-text! *common-text* (game-text-id rolling-race-time-string-prefix) #f)
|
||||
(lookup-text! *common-text* (game-text-id time) #f)
|
||||
gp-0
|
||||
#f
|
||||
128
|
||||
@ -1082,7 +1082,7 @@
|
||||
(set! (-> gp-0 origin y) (+ 15.0 (-> gp-0 origin y)))
|
||||
(set! (-> gp-0 flags) (font-flags shadow kerning right large))
|
||||
(print-game-text
|
||||
(lookup-text! *common-text* (game-text-id rolling-race-record-string-prefix) #f)
|
||||
(lookup-text! *common-text* (game-text-id record) #f)
|
||||
gp-0
|
||||
#f
|
||||
128
|
||||
@ -1106,7 +1106,7 @@
|
||||
(set! (-> a0-15 color) (font-color orange-red))
|
||||
)
|
||||
(print-game-text
|
||||
(lookup-text! *common-text* (game-text-id rolling-race-new-record-string-prefix) #f)
|
||||
(lookup-text! *common-text* (game-text-id new-record) #f)
|
||||
gp-0
|
||||
#f
|
||||
128
|
||||
@ -1139,7 +1139,7 @@
|
||||
(let ((a0-23 gp-0))
|
||||
(set! (-> a0-23 color) (font-color orange-red))
|
||||
)
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id rolling-race-try-again-string) #f) gp-0 #f 128 22)
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id try-again) #f) gp-0 #f 128 22)
|
||||
)
|
||||
)
|
||||
)
|
||||
@ -1223,7 +1223,7 @@
|
||||
)
|
||||
(set! (-> gp-0 flags) (font-flags shadow kerning middle left large))
|
||||
(print-game-text
|
||||
(lookup-text! *common-text* (game-text-id rolling-race-start-race-aborted) #f)
|
||||
(lookup-text! *common-text* (game-text-id race-aborted) #f)
|
||||
gp-0
|
||||
#f
|
||||
128
|
||||
|
@ -764,7 +764,7 @@
|
||||
)
|
||||
((>= (- (-> *display* game-frame-counter) (-> self state-time)) (-> self timeout))
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-ring-hint-be-quick-all)
|
||||
(game-text-id rolling-ring-chase-fail)
|
||||
"sksp0121"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -796,7 +796,7 @@
|
||||
(vector-! gp-0 gp-0 (-> self old-hips))
|
||||
(when (>= (ray-flat-cyl-intersect (-> self cyl) (-> self old-hips) gp-0) 0.0)
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-ring-hint-one-ring-down)
|
||||
(game-text-id rolling-ring-chase-1-hint)
|
||||
"sksp0119"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -804,7 +804,7 @@
|
||||
)
|
||||
(if (= (-> self entity extra perm task) (game-task rolling-ring-chase-2))
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-ring-hint-be-quick-to-next)
|
||||
(game-text-id rolling-ring-chase-2-hint)
|
||||
"sksp0120"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -605,7 +605,7 @@
|
||||
(>= 163840.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-flying-lurker-intro)
|
||||
(game-text-id rolling-robbers-hint)
|
||||
"sksp0116"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -405,7 +405,7 @@
|
||||
)
|
||||
(set-collide-offense (-> self collide-info) 2 (collide-offense no-offense))
|
||||
(logior! (-> self nav-enemy-flags) (nav-enemy-flags navenmf8))
|
||||
(level-hint-spawn (game-text-id ice-cube-hint) "sksp0350" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(level-hint-spawn (game-text-id snow-ice-cube-hint) "sksp0350" (the-as entity #f) *entity-pool* (game-task none))
|
||||
)
|
||||
)
|
||||
(else
|
||||
|
@ -397,7 +397,7 @@
|
||||
(ja :num! (seek!))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id snowy-turned-on-yellow-vents)
|
||||
(game-text-id snow-eggtop-resolution)
|
||||
"sksp0360"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -927,7 +927,7 @@
|
||||
:trans (behavior ()
|
||||
(when (and *target* (>= 61440.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(level-hint-spawn
|
||||
(game-text-id snow-fort-reminder)
|
||||
(game-text-id snow-fort-hint)
|
||||
"sksp0345"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -878,7 +878,7 @@
|
||||
(do-push-aways! (-> self collide-info))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id ram-boss-red-eco-hint)
|
||||
(game-text-id snow-ram-boss-red-eco-hint)
|
||||
"sksp0346"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -337,7 +337,7 @@
|
||||
(suspend)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sunken-helix-daxter-bad-feeling)
|
||||
(game-text-id sunken-helix-hint)
|
||||
"sksp0124"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -411,7 +411,7 @@
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sunken-helix-daxter-eco-rising)
|
||||
(game-text-id sunken-helix-darkeco-hint)
|
||||
"sksp0128"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -45,7 +45,7 @@
|
||||
(let ((s4-0 (new 'stack 'attack-info)))
|
||||
(dummy-41 (-> self root-override) s4-0 (-> self shove-up))
|
||||
(level-hint-spawn
|
||||
(game-text-id sunken-take-it-easy-hot-pipes)
|
||||
(game-text-id sunken-hotpipes)
|
||||
"sksp0134"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -937,7 +937,7 @@
|
||||
(when (and (-> self play-assistant-message?) (>= f30-0 57344.0))
|
||||
(set! (-> self play-assistant-message?) #f)
|
||||
(level-hint-spawn
|
||||
(game-text-id sunken-kiera-you-raised-a-piece-of-lpc)
|
||||
(game-text-id sunken-room-resolution)
|
||||
"asstvb22"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -688,7 +688,7 @@
|
||||
(suspend)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sunken-pipegame-follow-it)
|
||||
(game-text-id sunken-pipegame-hint)
|
||||
"sksp0123"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -1177,14 +1177,14 @@ nav-enemy-default-event-handler
|
||||
(cond
|
||||
(gp-0
|
||||
(level-hint-spawn
|
||||
(game-text-id kermit-break-tongue)
|
||||
(game-text-id swamp-kermit-tongue-hint)
|
||||
"sksp0143"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id kermit-run-away-jak)
|
||||
(game-text-id swamp-kermit-flee)
|
||||
"sksp0151"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -109,7 +109,7 @@
|
||||
(go swamp-bat-slave-die (process->handle arg0))
|
||||
)
|
||||
(('touch)
|
||||
(level-hint-spawn (game-text-id swamp-bats-hint) "sksp0156" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(level-hint-spawn (game-text-id swamp-bat-duck-hint) "sksp0156" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(send-event arg0 'attack (-> arg3 param 0) (new 'static 'attack-info))
|
||||
)
|
||||
(('launch)
|
||||
|
@ -699,7 +699,7 @@
|
||||
)
|
||||
(else
|
||||
(level-hint-spawn
|
||||
(game-text-id swamp-rats-nest-hint)
|
||||
(game-text-id swamp-rat-nest-hint)
|
||||
"sksp0144"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -141,7 +141,7 @@
|
||||
(cond
|
||||
((zero? v1-61)
|
||||
(level-hint-spawn
|
||||
(game-text-id training-precursor-orbs)
|
||||
(game-text-id training-money)
|
||||
"asstvb41"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -151,7 +151,7 @@
|
||||
)
|
||||
((= v1-61 1)
|
||||
(level-hint-spawn
|
||||
(game-text-id training-power-cells)
|
||||
(game-text-id training-fuel-cell)
|
||||
"asstvb42"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -1123,7 +1123,7 @@
|
||||
(when (fishermans-boat-enter-dock?)
|
||||
(set! (-> self waiting-for-player) #f)
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-daxter-scared)
|
||||
(game-text-id sidekick-misty)
|
||||
"sksp0060"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1496,7 +1496,7 @@
|
||||
)
|
||||
(suspend)
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-daxter-scared)
|
||||
(game-text-id sidekick-misty)
|
||||
"sksp0060"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -216,7 +216,7 @@ yakow-default-event-handler
|
||||
(suspend)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id yakow-owed-powercell)
|
||||
(game-text-id village1-yakow-resolution)
|
||||
"sksp018a"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -1332,7 +1332,7 @@
|
||||
)
|
||||
(hide-hud)
|
||||
(kill-current-level-hint '() '(sidekick voicebox) 'exit)
|
||||
(when (and (seen-text? *game-info* (game-text-id village2-not-enough-cells-levitator))
|
||||
(when (and (seen-text? *game-info* (game-text-id village2-levitator-need-cells))
|
||||
(hud-hidden?)
|
||||
(can-grab-display? self)
|
||||
(not (-> *setting-control* current hint))
|
||||
@ -1352,7 +1352,7 @@
|
||||
)
|
||||
(set! (-> gp-0 flags) (font-flags shadow kerning middle large))
|
||||
(print-game-text
|
||||
(lookup-text! *common-text* (game-text-id villlage2-levitator-cell-req-text) #f)
|
||||
(lookup-text! *common-text* (game-text-id village2-levitator-need-cells-text) #f)
|
||||
gp-0
|
||||
#f
|
||||
128
|
||||
@ -1361,7 +1361,7 @@
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id village2-not-enough-cells-levitator)
|
||||
(game-text-id village2-levitator-need-cells)
|
||||
"asstvb71"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -767,7 +767,7 @@
|
||||
(cond
|
||||
((= arg0 3)
|
||||
(level-hint-spawn
|
||||
(game-text-id swamp-tethers-three-to-go)
|
||||
(game-text-id swamp-tetherrocks-3-left)
|
||||
"sksp0157"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -776,7 +776,7 @@
|
||||
)
|
||||
((= arg0 2)
|
||||
(level-hint-spawn
|
||||
(game-text-id swamp-tethers-two-to-go)
|
||||
(game-text-id swamp-tetherrocks-2-left)
|
||||
"sksp0158"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -785,7 +785,7 @@
|
||||
)
|
||||
((= arg0 1)
|
||||
(level-hint-spawn
|
||||
(game-text-id swamp-tethers-lefts-find-the-last)
|
||||
(game-text-id swamp-tetherrocks-1-left)
|
||||
"sksp0159"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -794,7 +794,7 @@
|
||||
)
|
||||
((zero? arg0)
|
||||
(level-hint-spawn
|
||||
(game-text-id swamp-tethers-completion-sage-precursor-arm)
|
||||
(game-text-id swamp-arm-resolution)
|
||||
"sagevb04"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -873,7 +873,7 @@
|
||||
)
|
||||
(if (and *target* (>= 49152.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(level-hint-spawn
|
||||
(game-text-id swamp-tethers-advice-hint)
|
||||
(game-text-id swamp-tetherrock-eco-yellow-hint)
|
||||
"sksp0138"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1555,7 +1555,7 @@
|
||||
:event (behavior ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block))
|
||||
(let ((v1-0 arg2))
|
||||
(the-as object (when (= v1-0 'tetherrock-break-evt)
|
||||
(increment-success-for-hint (game-text-id swamp-tethers-advice-hint))
|
||||
(increment-success-for-hint (game-text-id swamp-tetherrock-eco-yellow-hint))
|
||||
(swamp-blimp-setup)
|
||||
)
|
||||
)
|
||||
|
@ -164,7 +164,7 @@
|
||||
)
|
||||
((and (< (the int (-> *game-info* fuel)) (+ s3-0 2)) (< (the int (-> *game-info* fuel)) 71) (not s4-1))
|
||||
(level-hint-spawn
|
||||
(game-text-id village3-gondola-malfunctioning)
|
||||
(game-text-id gondola-need-cells)
|
||||
"asstvb75"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -173,7 +173,7 @@
|
||||
)
|
||||
(else
|
||||
(level-hint-spawn
|
||||
(game-text-id village3-gondola-reactivated)
|
||||
(game-text-id gondola-enough-cells)
|
||||
"asstvb76"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -696,21 +696,21 @@
|
||||
)
|
||||
(((game-task village2-levitator))
|
||||
(level-hint-spawn
|
||||
(game-text-id village2-warp-gate-reminder)
|
||||
(game-text-id village2-button-reminder)
|
||||
"asstvb28"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id village2-warp-gate-reminder-annoyed)
|
||||
(game-text-id village2-button-reminder2)
|
||||
"asstvb29"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id village2-warp-gate-reminder-very-annoyed)
|
||||
(game-text-id village2-button-reminder3)
|
||||
"asstvb30"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -719,21 +719,21 @@
|
||||
)
|
||||
(((game-task village3-button))
|
||||
(level-hint-spawn
|
||||
(game-text-id village3-warp-gate-reminder)
|
||||
(game-text-id village3-button-reminder)
|
||||
"asstv103"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id village3-warp-gate-reminder=annoyed)
|
||||
(game-text-id village3-button-reminder2)
|
||||
"asstv104"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id village3-warp-gate-reminder-very-annoyed)
|
||||
(game-text-id village3-button-reminder3)
|
||||
"asstv105"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1010,7 +1010,7 @@
|
||||
(cond
|
||||
((zero? v1-84)
|
||||
(level-hint-spawn
|
||||
(game-text-id firecanyon-collect-cells-collected)
|
||||
(game-text-id village1cam-enough-cells)
|
||||
"asstvb04"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1039,7 +1039,7 @@
|
||||
)
|
||||
((= v1-84 1)
|
||||
(level-hint-spawn
|
||||
(game-text-id firecanyon-collect-cells-collected-reminder)
|
||||
(game-text-id village1cam-enough-cells2)
|
||||
"asstvb08"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1076,7 +1076,7 @@
|
||||
((= v1-79 2)
|
||||
(when (not (task-closed? (game-task village2-levitator) (task-status need-hint)))
|
||||
(level-hint-spawn
|
||||
(game-text-id village2-warp-gate-reminder-annoyed)
|
||||
(game-text-id village2-button-reminder2)
|
||||
"asstvb29"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1088,7 +1088,7 @@
|
||||
((= v1-79 3)
|
||||
(when (not (task-closed? (game-task village3-button) (task-status need-hint)))
|
||||
(level-hint-spawn
|
||||
(game-text-id village2-warp-gate-reminder-very-annoyed)
|
||||
(game-text-id village2-button-reminder3)
|
||||
"asstvb30"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
@ -210,7 +210,7 @@
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id fishgame) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id jungleb-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id misty-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id fire-canyon-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id firecanyon-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id village2-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id rolling-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id swamp-level-name) :scale #t)
|
||||
@ -218,7 +218,7 @@
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id ogre-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id ogreboss) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id village3-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id snowy-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id snow-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id cave-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id lavatube-level-name) :scale #t)
|
||||
(new 'static 'game-option :option-type (game-option-type button-music) :name (game-text-id citadel-level-name) :scale #t)
|
||||
@ -253,7 +253,7 @@
|
||||
(static-text-list-array fishgame)
|
||||
(static-text-list-array jungleb-level-name flava-jub-eggtop flava-jub-plant-boss)
|
||||
(static-text-list-array misty-level-name flava-mis-battle flava-mis-boat flava-racer flava-mis-unused0)
|
||||
(static-text-list-array fire-canyon-level-name flava-racer flava-fic-unused0)
|
||||
(static-text-list-array firecanyon-level-name flava-racer flava-fic-unused0)
|
||||
(static-text-list-array village2-level-name flava-sage flava-assistant flava-warrior flava-geologist flava-gambler flava-levitator)
|
||||
(static-text-list-array rolling-level-name flava-rol-gorge)
|
||||
(static-text-list-array swamp-level-name flava-swa-game flava-swa-launcher flava-swa-battle flava-flutflut)
|
||||
@ -261,7 +261,7 @@
|
||||
(static-text-list-array ogre-level-name flava-ogr-middle flava-ogr-end)
|
||||
(static-text-list-array ogreboss)
|
||||
(static-text-list-array village3-level-name flava-vi3-miners flava-sage flava-assistant flava-vi3-mai flava-vi3-sno)
|
||||
(static-text-list-array snowy-level-name flava-sno-battle flava-flutflut flava-sno-cave flava-sno-fort flava-sno-balls)
|
||||
(static-text-list-array snow-level-name flava-sno-battle flava-flutflut flava-sno-cave flava-sno-fort flava-sno-balls)
|
||||
(static-text-list-array cave-level-name flava-mai-rob flava-mai-rob-top flava-mai-mai flava-mai-dar)
|
||||
(static-text-list-array zero lavatube-level-name flava-lav-middle flava-lav-end)
|
||||
(static-text-list-array citadel-level-name flava-sage flava-assistant flava-cit-yellowsage flava-cit-redsage flava-cit-bluesage flava-cit-hub)
|
||||
|
@ -37,7 +37,9 @@ Compiler::Compiler(const std::string& user_profile, std::unique_ptr<ReplWrapper>
|
||||
compile_object_file("goal-lib", library_code, false);
|
||||
|
||||
// user profile stuff
|
||||
if (user_profile != "#f") {
|
||||
if (user_profile != "#f" &&
|
||||
std::filesystem::exists(file_util::get_jak_project_dir() / "goal_src" / "user" /
|
||||
user_profile / "user.gc")) {
|
||||
try {
|
||||
Object user_code =
|
||||
m_goos.reader.read_from_file({"goal_src", "user", user_profile, "user.gc"});
|
||||
|
@ -102,6 +102,8 @@ Val* Compiler::compile_asm_text_file(const goos::Object& form, const goos::Objec
|
||||
// compile files.
|
||||
if (kind == "subtitle") {
|
||||
GameSubtitleDB db;
|
||||
db.m_subtitle_groups = std::make_unique<GameSubtitleGroups>();
|
||||
db.m_subtitle_groups->hydrate_from_asset_file();
|
||||
compile_game_subtitle(inputs, db, m_make.compiler_output_prefix());
|
||||
} else if (kind == "text") {
|
||||
GameTextDB db;
|
||||
|
@ -20,7 +20,6 @@
|
||||
|
||||
#include "common/goos/ParseHelpers.h"
|
||||
#include "common/goos/Reader.h"
|
||||
#include "common/serialization/subtitles/subtitles.h"
|
||||
#include "common/util/FileUtil.h"
|
||||
#include "common/util/FontUtils.h"
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
#include <unordered_map>
|
||||
#include <unordered_set>
|
||||
|
||||
#include "common/serialization/subtitles/subtitles.h"
|
||||
#include "common/serialization/subtitles/subtitles_ser.h"
|
||||
#include "common/util/Assert.h"
|
||||
#include "common/util/FontUtils.h"
|
||||
|
||||
|
60
test/decompiler/reference/engine/game/collectables_REF.gc
generated
vendored
60
test/decompiler/reference/engine/game/collectables_REF.gc
generated
vendored
@ -817,7 +817,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('training)
|
||||
(level-hint-spawn
|
||||
(game-text-id training-more-eco-more-time)
|
||||
(game-text-id training-eco-reminder)
|
||||
"sagevb23"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1835,7 +1835,7 @@
|
||||
(cond
|
||||
((= arg0 (game-task training-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id training-assistant-found-scout-fly-cell)
|
||||
(game-text-id training-buzzer-resolution)
|
||||
"asstvb45"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1853,7 +1853,7 @@
|
||||
)
|
||||
((= arg0 (game-task beach-ecorocks))
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-collectors-unblocked)
|
||||
(game-text-id beach-ecorocks-resolution)
|
||||
"sagevb01"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1862,7 +1862,7 @@
|
||||
)
|
||||
((= arg0 (game-task misty-cannon))
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-stopped-lurkers-at-silo)
|
||||
(game-text-id misty-cannon-resolution)
|
||||
"sagevb02"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1871,7 +1871,7 @@
|
||||
)
|
||||
((= arg0 (game-task misty-bike))
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-stopped-balloon-lurkers)
|
||||
(game-text-id misty-bike-resolution)
|
||||
"asstvb03"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1880,7 +1880,7 @@
|
||||
)
|
||||
((= arg0 (game-task firecanyon-end))
|
||||
(level-hint-spawn
|
||||
(game-text-id fire-canyon-we-made-it)
|
||||
(game-text-id firecanyon-end-resolution)
|
||||
"sksp0095"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1889,7 +1889,7 @@
|
||||
)
|
||||
((= arg0 (game-task rolling-robbers))
|
||||
(level-hint-spawn
|
||||
(game-text-id rolling-beat-lurkers)
|
||||
(game-text-id rolling-robbers-resolution)
|
||||
"asstvb20"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1898,7 +1898,7 @@
|
||||
)
|
||||
((= arg0 (game-task rolling-plants))
|
||||
(level-hint-spawn
|
||||
(game-text-id sage-golfclap-i-have-low-expectations)
|
||||
(game-text-id rolling-plants-resolution)
|
||||
"sagevb03"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1907,7 +1907,7 @@
|
||||
)
|
||||
((= arg0 (game-task swamp-flutflut))
|
||||
(level-hint-spawn
|
||||
(game-text-id swamp-finished-with-flutflut)
|
||||
(game-text-id swamp-flutflut-resolution)
|
||||
"asstvb21"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1916,7 +1916,7 @@
|
||||
)
|
||||
((= arg0 (game-task ogre-boss))
|
||||
(level-hint-spawn
|
||||
(game-text-id ogre-boss-killed)
|
||||
(game-text-id ogre-boss-resolution)
|
||||
"asstvb23"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1925,7 +1925,7 @@
|
||||
)
|
||||
((= arg0 (game-task ogre-end))
|
||||
(level-hint-spawn
|
||||
(game-text-id assistant-finished-mountain-pass-race)
|
||||
(game-text-id ogre-race-resolution)
|
||||
"asstvb25"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1934,7 +1934,7 @@
|
||||
)
|
||||
((= arg0 (game-task beach-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1943,7 +1943,7 @@
|
||||
)
|
||||
((= arg0 (game-task jungle-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1952,7 +1952,7 @@
|
||||
)
|
||||
((= arg0 (game-task misty-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1961,7 +1961,7 @@
|
||||
)
|
||||
((= arg0 (game-task firecanyon-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1970,7 +1970,7 @@
|
||||
)
|
||||
((= arg0 (game-task rolling-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1979,7 +1979,7 @@
|
||||
)
|
||||
((= arg0 (game-task sunken-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1988,7 +1988,7 @@
|
||||
)
|
||||
((= arg0 (game-task swamp-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1997,7 +1997,7 @@
|
||||
)
|
||||
((= arg0 (game-task ogre-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2006,7 +2006,7 @@
|
||||
)
|
||||
((= arg0 (game-task cave-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2015,7 +2015,7 @@
|
||||
)
|
||||
((= arg0 (game-task snow-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2024,7 +2024,7 @@
|
||||
)
|
||||
((= arg0 (game-task lavatube-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2033,7 +2033,7 @@
|
||||
)
|
||||
((= arg0 (game-task citadel-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2042,7 +2042,7 @@
|
||||
)
|
||||
((= arg0 (game-task village1-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2051,7 +2051,7 @@
|
||||
)
|
||||
((= arg0 (game-task village2-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2060,7 +2060,7 @@
|
||||
)
|
||||
((= arg0 (game-task village3-buzzer))
|
||||
(level-hint-spawn
|
||||
(game-text-id found-all-scout-flies)
|
||||
(game-text-id sidekick-buzzer-resolution)
|
||||
"sksp009k"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2358,7 +2358,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('training)
|
||||
(level-hint-spawn
|
||||
(game-text-id training-assistant-found-scout-fly)
|
||||
(game-text-id training-buzzer-hint)
|
||||
"asstvb44"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2367,7 +2367,7 @@
|
||||
)
|
||||
(('firecanyon)
|
||||
(level-hint-spawn
|
||||
(game-text-id collectables-theres-scout-flys-here-too)
|
||||
(game-text-id firecanyon-buzzer-hint)
|
||||
"sksp0096"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2376,7 +2376,7 @@
|
||||
)
|
||||
(else
|
||||
(level-hint-spawn
|
||||
(game-text-id collectables-scout-flies-red-boxes)
|
||||
(game-text-id sidekick-hint-buzzer3)
|
||||
"sksp009j"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2674,7 +2674,7 @@
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-hint-misty-get-red-eco)
|
||||
(game-text-id misty-eco-red-hint)
|
||||
"sksp0071"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
28
test/decompiler/reference/engine/game/crates_REF.gc
generated
vendored
28
test/decompiler/reference/engine/game/crates_REF.gc
generated
vendored
@ -543,8 +543,8 @@
|
||||
)
|
||||
(return #f)
|
||||
)
|
||||
(increment-success-for-hint (game-text-id sidekick-speech-hint-crate-iron))
|
||||
(increment-success-for-hint (game-text-id sage-voicebox-hint-crate-iron))
|
||||
(increment-success-for-hint (game-text-id sidekick-hint-crate-iron))
|
||||
(increment-success-for-hint (game-text-id training-ironcrate))
|
||||
(send-event arg0 'get-attack-count 1)
|
||||
(go-virtual die #f (the-as int s5-0))
|
||||
)
|
||||
@ -553,7 +553,7 @@
|
||||
(if (not (and (!= *kernel-boot-message* 'play) (= (-> *setting-control* current language) (language-enum japanese)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sage-voicebox-hint-crate-iron)
|
||||
(game-text-id training-ironcrate)
|
||||
"sagevb36"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -563,12 +563,12 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('training)
|
||||
(if (and (can-hint-be-played? (game-text-id zero) (the-as entity #f) (the-as string #f)) (rand-vu-percent? 0.2))
|
||||
(clear-text-seen! *game-info* (game-text-id sidekick-speech-hint-crate-iron))
|
||||
(clear-text-seen! *game-info* (game-text-id sidekick-hint-crate-iron))
|
||||
)
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-crate-iron)
|
||||
(game-text-id sidekick-hint-crate-iron)
|
||||
"sksp0005"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -590,16 +590,16 @@
|
||||
(('explode 'darkeco 'eco-yellow 'bonk 'tube 'flut-bonk 'flut-attack 'racer)
|
||||
(send-event arg0 'get-attack-count 1)
|
||||
(when (logtest? (-> self draw status) (draw-status was-drawn))
|
||||
(increment-success-for-hint (game-text-id sidekick-speech-hint-crate-steel))
|
||||
(increment-success-for-hint (game-text-id sidekick-hint-crate-steel))
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-crate-steel-break1)
|
||||
(game-text-id sidekick-hint-crate-steel-break1)
|
||||
"sksp0004"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-crate-steel-break2)
|
||||
(game-text-id sidekick-hint-crate-steel-break2)
|
||||
"sksp009b"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -611,7 +611,7 @@
|
||||
(else
|
||||
(when (and (!= s4-0 (-> self incomming-attack-id)) (= (-> self root-override trans y) (-> self base y)))
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-crate-steel)
|
||||
(game-text-id sidekick-hint-crate-steel)
|
||||
"sksp0006"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -632,14 +632,14 @@
|
||||
(send-event arg0 'attack (-> arg3 param 0) (static-attack-info ((mode 'darkeco))))
|
||||
(when (= (-> arg0 type) target)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-crate-darkeco2)
|
||||
(game-text-id sidekick-hint-crate-darkeco2)
|
||||
"sksp009c"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-crate-darkeco1)
|
||||
(game-text-id sidekick-hint-crate-darkeco1)
|
||||
"sksp0002"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -648,7 +648,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('rolling)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-rolling-crate-darkeco)
|
||||
(game-text-id sidekick-hint-crate-darkeco-rolling)
|
||||
"sksp0110"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -657,14 +657,14 @@
|
||||
)
|
||||
(('firecanyon)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-you-are-trying-to-avoid-dark-eco)
|
||||
(game-text-id firecanyon-crate-darkeco2)
|
||||
"sksp0082"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-maybe-i-should-drive)
|
||||
(game-text-id firecanyon-crate-darkeco1)
|
||||
"sksp0081"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
2
test/decompiler/reference/engine/game/game-info_REF.gc
generated
vendored
2
test/decompiler/reference/engine/game/game-info_REF.gc
generated
vendored
@ -302,7 +302,7 @@
|
||||
(('money)
|
||||
(if (and (< 0.0 amount) (= (+ (-> obj money) amount) (-> *GAME-bank* money-task-inc)))
|
||||
(level-hint-spawn
|
||||
(game-text-id MISSING-orb-hint)
|
||||
(game-text-id sidekick-reminder-money)
|
||||
"sksp0014"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
2
test/decompiler/reference/engine/game/game-save_REF.gc
generated
vendored
2
test/decompiler/reference/engine/game/game-save_REF.gc
generated
vendored
@ -1300,7 +1300,7 @@
|
||||
(let ((s5-2 print-game-text))
|
||||
((the-as (function object string object none) format)
|
||||
(clear *temp-string*)
|
||||
(lookup-text! *common-text* (game-text-id do-not-remove-mem-card) #f)
|
||||
(lookup-text! *common-text* (game-text-id memcard-do-not-remove) #f)
|
||||
1
|
||||
)
|
||||
(s5-2 *temp-string* gp-1 #f 128 22)
|
||||
|
2
test/decompiler/reference/engine/game/generic-obs_REF.gc
generated
vendored
2
test/decompiler/reference/engine/game/generic-obs_REF.gc
generated
vendored
@ -2029,7 +2029,7 @@
|
||||
(not (send-event *target* 'query 'powerup (pickup-type eco-blue)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-launcher-no-eco)
|
||||
(game-text-id sidekick-hint-launcher)
|
||||
"sksp0035"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
34
test/decompiler/reference/engine/game/task/hint-control_REF.gc
generated
vendored
34
test/decompiler/reference/engine/game/task/hint-control_REF.gc
generated
vendored
@ -4,22 +4,22 @@
|
||||
;; failed to figure out what this is:
|
||||
(set! (-> *game-info* hint-control) (new 'static 'boxed-array :type level-hint-control
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id sage-voicebox-hint-crate-iron)
|
||||
:id (game-text-id training-ironcrate)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 3
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id training-more-eco-more-time)
|
||||
:id (game-text-id training-eco-reminder)
|
||||
:num-attempts-before-playing 3
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id sidekick-speech-hint-crate-iron)
|
||||
:id (game-text-id sidekick-hint-crate-iron)
|
||||
:num-attempts-before-playing 3
|
||||
:num-success-before-killing 3
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id sidekick-speech-hint-crate-steel)
|
||||
:id (game-text-id sidekick-hint-crate-steel)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
@ -35,24 +35,24 @@
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 3)
|
||||
:id (game-text-id beach-eco-rock-increment)
|
||||
:id (game-text-id sidekick-hint-ecorocks)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 5)
|
||||
:id (game-text-id jungle-mirrors-break-the-mirror-jak)
|
||||
:id (game-text-id sidekick-hint-reflector-mirror)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 3)
|
||||
:id (game-text-id jungle-precursorbridge-hint)
|
||||
:id (game-text-id sidekick-hint-precurbridge)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id misty-teetertotter-bonk-dax-tutorial)
|
||||
:id (game-text-id misty-teetertotter)
|
||||
:num-attempts-before-playing 3
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
@ -64,7 +64,7 @@
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 5)
|
||||
:id (game-text-id rolling-dark-plants-hint)
|
||||
:id (game-text-id rolling-plants-hint-eco-green)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
@ -91,7 +91,7 @@
|
||||
:num-success-before-killing 2
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id swamp-tethers-advice-hint)
|
||||
:id (game-text-id swamp-tetherrock-eco-yellow-hint)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
@ -102,40 +102,40 @@
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id sunken-take-it-easy-hot-pipes)
|
||||
:id (game-text-id sunken-hotpipes)
|
||||
:num-attempts-before-playing 3
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id ram-boss-red-eco-hint)
|
||||
:id (game-text-id snow-ram-boss-red-eco-hint)
|
||||
:num-attempts-before-playing 5
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 3)
|
||||
:id (game-text-id darkcave-light-crystal-hint)
|
||||
:id (game-text-id darkcave-light-hint)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id daxter-maybe-you-can-shoot-better-goggles)
|
||||
:id (game-text-id cave-gnawers-look-around)
|
||||
:num-attempts-before-playing 4
|
||||
:num-success-before-killing -1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:id (game-text-id lavatube-shoot-the-spheres)
|
||||
:id (game-text-id lavatube-balls)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 2
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 5)
|
||||
:id (game-text-id citadel-break-generator-hint)
|
||||
:id (game-text-id citadel-generator)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
(new 'static 'level-hint-control
|
||||
:delay-before-playing (seconds 5)
|
||||
:id (game-text-id citadel-break-generators-reminder)
|
||||
:id (game-text-id citadel-generator-no-mushroom)
|
||||
:num-attempts-before-playing 1
|
||||
:num-success-before-killing 1
|
||||
)
|
||||
|
4
test/decompiler/reference/engine/target/target2_REF.gc
generated
vendored
4
test/decompiler/reference/engine/target/target2_REF.gc
generated
vendored
@ -1404,7 +1404,7 @@
|
||||
(let ((gp-0 (the-as handle #f)))
|
||||
(ja-channel-push! 1 (seconds 0.075))
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-you-can-shoot-with-yellow-eco)
|
||||
(game-text-id swamp-eco-yellow-first-use)
|
||||
"sksp0145"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1413,7 +1413,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('maincave)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-maybe-you-can-shoot-better-goggles)
|
||||
(game-text-id cave-gnawers-look-around)
|
||||
"sksp0328"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
14
test/decompiler/reference/engine/target/target_REF.gc
generated
vendored
14
test/decompiler/reference/engine/target/target_REF.gc
generated
vendored
@ -1380,14 +1380,14 @@
|
||||
:enter (behavior ((arg0 float) (arg1 float) (arg2 surface))
|
||||
(when (= (-> self control unknown-symbol40) 'launch)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-screaming-jump)
|
||||
(game-text-id sidekick-launcher1)
|
||||
"sksp009d"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-wahoo-jump)
|
||||
(game-text-id sidekick-launcher2)
|
||||
"sksp009e"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1396,14 +1396,14 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('citadel)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-land-on-the-next-launcher)
|
||||
(game-text-id citadel-launcher2)
|
||||
"sksp0393"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-dont-miss-the-next-launcher)
|
||||
(game-text-id citadel-launcher)
|
||||
"sksp0388"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1996,7 +1996,7 @@
|
||||
(dummy-10 (-> self skel effect) 'group-red-eco-spinkick (ja-frame-num 0) 74)
|
||||
(cpad-set-buzz! (-> *cpad-list* cpads 0) 1 153 (seconds 0.1))
|
||||
(level-hint-spawn
|
||||
(game-text-id red-eco-tutorial)
|
||||
(game-text-id misty-eco-red-first-use)
|
||||
"sksp0072"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2193,7 +2193,7 @@
|
||||
(dummy-10 (-> self skel effect) 'group-red-eco-spinkick (ja-frame-num 0) 23)
|
||||
(cpad-set-buzz! (-> *cpad-list* cpads 0) 1 153 (seconds 0.1))
|
||||
(level-hint-spawn
|
||||
(game-text-id red-eco-tutorial)
|
||||
(game-text-id misty-eco-red-first-use)
|
||||
"sksp0072"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -2420,7 +2420,7 @@
|
||||
(dummy-10 (-> self skel effect) 'group-red-eco-spinkick (ja-frame-num 0) 70)
|
||||
(cpad-set-buzz! (-> *cpad-list* cpads 0) 1 153 (seconds 0.1))
|
||||
(level-hint-spawn
|
||||
(game-text-id red-eco-tutorial)
|
||||
(game-text-id misty-eco-red-first-use)
|
||||
"sksp0072"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
8
test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc
generated
vendored
8
test/decompiler/reference/engine/ui/progress/progress-draw_REF.gc
generated
vendored
@ -366,7 +366,7 @@
|
||||
(set! (-> v1-2 height) (the float 55))
|
||||
)
|
||||
(set! (-> arg0 flags) (font-flags shadow kerning middle left large))
|
||||
(let ((s4-0 (game-text-id card-not-formatted-title)))
|
||||
(let ((s4-0 (game-text-id memcard-not-formatted-title)))
|
||||
(case (-> obj display-state)
|
||||
(((progress-screen memcard-no-space))
|
||||
(set! s4-0 (game-text-id memcard-no-space))
|
||||
@ -438,7 +438,7 @@
|
||||
)
|
||||
(set! (-> arg0 flags) (font-flags shadow kerning middle left large))
|
||||
(let ((s4-0 print-game-text-scaled))
|
||||
(format (clear *temp-string*) (lookup-text! *common-text* (game-text-id card-not-formatted-title) #f) 1)
|
||||
(format (clear *temp-string*) (lookup-text! *common-text* (game-text-id memcard-not-formatted-title) #f) 1)
|
||||
(s4-0 *temp-string* (-> obj transition-percentage-invert) arg0 128)
|
||||
)
|
||||
(set! (-> arg0 origin x) (the float (- 20 (-> obj left-x-offset))))
|
||||
@ -450,7 +450,7 @@
|
||||
(set! (-> v1-8 height) (the float 40))
|
||||
)
|
||||
(print-game-text-scaled
|
||||
(lookup-text! *common-text* (game-text-id card-not-formatted-msg) #f)
|
||||
(lookup-text! *common-text* (game-text-id memcard-not-formatted-msg) #f)
|
||||
(-> obj transition-percentage-invert)
|
||||
arg0
|
||||
128
|
||||
@ -590,7 +590,7 @@
|
||||
(set! (-> v1-23 height) (the float 75))
|
||||
)
|
||||
(let ((s4-1 print-game-text-scaled))
|
||||
(format (clear *temp-string*) (lookup-text! *common-text* (game-text-id do-not-remove-mem-card) #f) 1)
|
||||
(format (clear *temp-string*) (lookup-text! *common-text* (game-text-id memcard-do-not-remove) #f) 1)
|
||||
(s4-1 *temp-string* (-> obj transition-percentage-invert) arg0 128)
|
||||
)
|
||||
0
|
||||
|
70
test/decompiler/reference/engine/ui/progress/progress-static_REF.gc
generated
vendored
70
test/decompiler/reference/engine/ui/progress/progress-static_REF.gc
generated
vendored
@ -356,9 +356,9 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task village1-uncle-money)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id vollage1-uncle-money)
|
||||
(game-text-id vollage1-uncle-money)
|
||||
(game-text-id vollage1-uncle-money)
|
||||
(game-text-id village1-uncle-money)
|
||||
(game-text-id village1-uncle-money)
|
||||
(game-text-id village1-uncle-money)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -643,7 +643,7 @@
|
||||
)
|
||||
)
|
||||
(new 'static 'level-tasks-info
|
||||
:level-name-id (game-text-id fire-canyon-level-name)
|
||||
:level-name-id (game-text-id firecanyon-level-name)
|
||||
:text-group-index 5
|
||||
:nb-of-tasks 2
|
||||
:buzzer-task-index 1
|
||||
@ -651,18 +651,18 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task firecanyon-end)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id fire-canyon-end)
|
||||
(game-text-id fire-canyon-end)
|
||||
(game-text-id fire-canyon-end)
|
||||
(game-text-id firecanyon-end)
|
||||
(game-text-id firecanyon-end)
|
||||
(game-text-id firecanyon-end)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task firecanyon-buzzer)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id fire-canyon-buzzer)
|
||||
(game-text-id fire-canyon-buzzer)
|
||||
(game-text-id fire-canyon-buzzer)
|
||||
(game-text-id firecanyon-buzzer)
|
||||
(game-text-id firecanyon-buzzer)
|
||||
(game-text-id firecanyon-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -722,9 +722,9 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task village2-buzzer)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -757,9 +757,9 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task sunken-slide)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id sunken-bottom)
|
||||
(game-text-id sunken-bottom)
|
||||
(game-text-id sunken-bottom)
|
||||
(game-text-id sunken-slide)
|
||||
(game-text-id sunken-slide)
|
||||
(game-text-id sunken-slide)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -793,18 +793,18 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task sunken-spinning-room)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id reach-center)
|
||||
(game-text-id reach-center)
|
||||
(game-text-id reach-center)
|
||||
(game-text-id sunken-spinning-room)
|
||||
(game-text-id sunken-spinning-room)
|
||||
(game-text-id sunken-spinning-room)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task sunken-buzzer)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -882,9 +882,9 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task swamp-buzzer)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -962,9 +962,9 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task rolling-buzzer)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id unknown-buzzers)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id generic-buzzer)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -1095,7 +1095,7 @@
|
||||
)
|
||||
)
|
||||
(new 'static 'level-tasks-info
|
||||
:level-name-id (game-text-id snowy-level-name)
|
||||
:level-name-id (game-text-id snow-level-name)
|
||||
:text-group-index 3
|
||||
:nb-of-tasks 8
|
||||
:buzzer-task-index 7
|
||||
@ -1130,9 +1130,9 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task snow-cage)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id snow-frozen-crate)
|
||||
(game-text-id snow-frozen-crate)
|
||||
(game-text-id snow-frozen-crate)
|
||||
(game-text-id snow-cage)
|
||||
(game-text-id snow-cage)
|
||||
(game-text-id snow-cage)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
@ -1148,9 +1148,9 @@
|
||||
(new 'static 'task-info-data
|
||||
:task-id (game-task snow-ball)
|
||||
:task-name (new 'static 'array game-text-id 4
|
||||
(game-text-id snow-open-door)
|
||||
(game-text-id snow-open-door)
|
||||
(game-text-id snow-open-door)
|
||||
(game-text-id snow-ball)
|
||||
(game-text-id snow-ball)
|
||||
(game-text-id snow-ball)
|
||||
(game-text-id zero)
|
||||
)
|
||||
)
|
||||
|
2
test/decompiler/reference/levels/beach/beach-obs_REF.gc
generated
vendored
2
test/decompiler/reference/levels/beach/beach-obs_REF.gc
generated
vendored
@ -602,7 +602,7 @@
|
||||
(case arg2
|
||||
(('attack)
|
||||
(sound-play "cannon-shot")
|
||||
(increment-success-for-hint (game-text-id beach-eco-rock-increment))
|
||||
(increment-success-for-hint (game-text-id sidekick-hint-ecorocks))
|
||||
(go ecoventrock-break #f)
|
||||
)
|
||||
)
|
||||
|
8
test/decompiler/reference/levels/beach/seagull_REF.gc
generated
vendored
8
test/decompiler/reference/levels/beach/seagull_REF.gc
generated
vendored
@ -1280,7 +1280,7 @@
|
||||
(case (-> obj targetnum)
|
||||
((1)
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-seagull-chased-one)
|
||||
(game-text-id sidekick-seagulls1)
|
||||
"sksp0020"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1289,7 +1289,7 @@
|
||||
)
|
||||
((2)
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-seagull-chased-two)
|
||||
(game-text-id sidekick-seagulls2)
|
||||
"sksp0022"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1298,7 +1298,7 @@
|
||||
)
|
||||
((3)
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-seagull-chased-three)
|
||||
(game-text-id sidekick-seagulls3)
|
||||
"sksp0023"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1307,7 +1307,7 @@
|
||||
)
|
||||
((4)
|
||||
(level-hint-spawn
|
||||
(game-text-id beach-seagull-chased-four)
|
||||
(game-text-id sidekick-seagulls4)
|
||||
"sksp0024"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
24
test/decompiler/reference/levels/citadel/citadel-obs_REF.gc
generated
vendored
24
test/decompiler/reference/levels/citadel/citadel-obs_REF.gc
generated
vendored
@ -1543,8 +1543,8 @@
|
||||
(case arg2
|
||||
(('attack)
|
||||
(if (-> self mushroom)
|
||||
(increment-success-for-hint (game-text-id citadel-break-generator-hint))
|
||||
(increment-success-for-hint (game-text-id citadel-break-generators-reminder))
|
||||
(increment-success-for-hint (game-text-id citadel-generator))
|
||||
(increment-success-for-hint (game-text-id citadel-generator-no-mushroom))
|
||||
)
|
||||
(go citb-generator-break)
|
||||
)
|
||||
@ -1572,14 +1572,14 @@
|
||||
(when (and *target* (>= 32768.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(if (-> self mushroom)
|
||||
(level-hint-spawn
|
||||
(game-text-id citadel-break-generator-hint)
|
||||
(game-text-id citadel-generator)
|
||||
"sksp0381"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id citadel-break-generators-reminder)
|
||||
(game-text-id citadel-generator-no-mushroom)
|
||||
"sksp0384"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1855,13 +1855,7 @@
|
||||
(suspend)
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id citadel-climb-plat-hint)
|
||||
"sksp0387"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn (game-text-id citadel-plat) "sksp0387" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(go citadelcam-idle)
|
||||
(none)
|
||||
)
|
||||
@ -1898,13 +1892,7 @@
|
||||
(defstate battlecontroller-play-intro-camera (citb-battlecontroller)
|
||||
:virtual #t
|
||||
:code (behavior ()
|
||||
(level-hint-spawn
|
||||
(game-text-id citadel-lurker-bunny-alert)
|
||||
"sksp0383"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn (game-text-id citadel-battle) "sksp0383" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(suspend)
|
||||
(let ((gp-1 (ppointer->handle (process-spawn
|
||||
pov-camera
|
||||
|
2
test/decompiler/reference/levels/common/battlecontroller_REF.gc
generated
vendored
2
test/decompiler/reference/levels/common/battlecontroller_REF.gc
generated
vendored
@ -447,7 +447,7 @@ battlecontroller-default-event-handler
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('citadel)
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-battle-finished)
|
||||
(game-text-id citadel-battle-end)
|
||||
"sksp0378"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
8
test/decompiler/reference/levels/common/plat-eco_REF.gc
generated
vendored
8
test/decompiler/reference/levels/common/plat-eco_REF.gc
generated
vendored
@ -84,13 +84,7 @@
|
||||
(if (and *target*
|
||||
(>= (-> self notice-dist) (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id daxter-blue-eco-plat-tutorial)
|
||||
"sksp0073"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn (game-text-id misty-eco-plat) "sksp0073" (the-as entity #f) *entity-pool* (game-task none))
|
||||
)
|
||||
(none)
|
||||
)
|
||||
|
4
test/decompiler/reference/levels/darkcave/darkcave-obs_REF.gc
generated
vendored
4
test/decompiler/reference/levels/darkcave/darkcave-obs_REF.gc
generated
vendored
@ -125,7 +125,7 @@
|
||||
:trans (behavior ()
|
||||
(if (and *target* (>= 40960.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(level-hint-spawn
|
||||
(game-text-id darkcave-light-crystal-hint)
|
||||
(game-text-id darkcave-light-hint)
|
||||
"sksp0333"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -204,7 +204,7 @@
|
||||
(update-connected-crystals! self)
|
||||
(when (>= 0.0 f30-0)
|
||||
(level-hint-spawn
|
||||
(game-text-id darkcave-light-crystal-low-light-hint)
|
||||
(game-text-id darkcave-light-end)
|
||||
"sksp0332"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
6
test/decompiler/reference/levels/firecanyon/assistant-firecanyon_REF.gc
generated
vendored
6
test/decompiler/reference/levels/firecanyon/assistant-firecanyon_REF.gc
generated
vendored
@ -99,7 +99,7 @@
|
||||
)
|
||||
(hide-hud)
|
||||
(kill-current-level-hint '() '(sidekick voicebox) 'exit)
|
||||
(when (and (seen-text? *game-info* (game-text-id firecanyon-not-enough-cells))
|
||||
(when (and (seen-text? *game-info* (game-text-id firecanyon-need-cells))
|
||||
(hud-hidden?)
|
||||
(can-grab-display? self)
|
||||
(not (-> *setting-control* current hint))
|
||||
@ -118,11 +118,11 @@
|
||||
(set! (-> v1-28 scale) 0.8)
|
||||
)
|
||||
(set! (-> gp-0 flags) (font-flags shadow kerning middle large))
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id firecanyon-collect-cells-text) #f) gp-0 #f 128 22)
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id firecanyon-need-cells-text) #f) gp-0 #f 128 22)
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id firecanyon-not-enough-cells)
|
||||
(game-text-id firecanyon-need-cells)
|
||||
"asstvb09"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
2
test/decompiler/reference/levels/flut_common/flutflut_REF.gc
generated
vendored
2
test/decompiler/reference/levels/flut_common/flutflut_REF.gc
generated
vendored
@ -214,7 +214,7 @@
|
||||
(when (logtest? (-> self draw status) (draw-status was-drawn))
|
||||
(if (and *target* (>= 40960.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(level-hint-spawn
|
||||
(game-text-id flutflut-reminder)
|
||||
(game-text-id swamp-flutflut-hint)
|
||||
"sksp0160"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
12
test/decompiler/reference/levels/jungle/jungle-mirrors_REF.gc
generated
vendored
12
test/decompiler/reference/levels/jungle/jungle-mirrors_REF.gc
generated
vendored
@ -1414,7 +1414,7 @@
|
||||
)
|
||||
(('change-mode)
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-tutorial)
|
||||
(game-text-id sidekick-hint-periscope)
|
||||
"sksp0049"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1693,7 +1693,7 @@
|
||||
(cond
|
||||
((name= arg0 "periscope-11")
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-follow-the-beam)
|
||||
(game-text-id sidekick-hint-periscope3)
|
||||
"sksp0053"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1702,7 +1702,7 @@
|
||||
)
|
||||
((name= arg0 "periscope-12")
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-go-to-the-next-tower)
|
||||
(game-text-id sidekick-hint-periscope2)
|
||||
"sksp0052"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1711,7 +1711,7 @@
|
||||
)
|
||||
((name= arg0 "periscope-15")
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-completion-talk-to-mayor)
|
||||
(game-text-id jungle-lurkerm-resolution)
|
||||
"sksp0018"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1975,9 +1975,9 @@
|
||||
1.0
|
||||
)
|
||||
(when (and *target* (>= 24576.0 (vector-vector-distance (-> self root-override trans) (-> *target* control trans))))
|
||||
(start-hint-timer (game-text-id jungle-mirrors-break-the-mirror-jak))
|
||||
(start-hint-timer (game-text-id sidekick-hint-reflector-mirror))
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-mirrors-break-the-mirror-jak)
|
||||
(game-text-id sidekick-hint-reflector-mirror)
|
||||
"sksp0050"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
4
test/decompiler/reference/levels/jungle/jungle-obs_REF.gc
generated
vendored
4
test/decompiler/reference/levels/jungle/jungle-obs_REF.gc
generated
vendored
@ -807,7 +807,7 @@
|
||||
)
|
||||
(else
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-precursorbridge-hint)
|
||||
(game-text-id sidekick-hint-precurbridge)
|
||||
"sksp0039"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -1147,7 +1147,7 @@
|
||||
(>= (-> self thresh w) (vector-vector-distance (-> self root-override trans) (-> *target* control trans)))
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id jungle-maindoor-hint)
|
||||
(game-text-id sidekick-hint-rounddoor)
|
||||
"sksp0038"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
2
test/decompiler/reference/levels/jungleb/jungleb-obs_REF.gc
generated
vendored
2
test/decompiler/reference/levels/jungleb/jungleb-obs_REF.gc
generated
vendored
@ -281,7 +281,7 @@
|
||||
)
|
||||
(send-event *camera* 'blend-from-as-fixed)
|
||||
(level-hint-spawn
|
||||
(game-text-id jungleb-eco-vents-opened)
|
||||
(game-text-id jungle-eggtop-resolution)
|
||||
"asstvb02"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
12
test/decompiler/reference/levels/lavatube/assistant-lavatube_REF.gc
generated
vendored
12
test/decompiler/reference/levels/lavatube/assistant-lavatube_REF.gc
generated
vendored
@ -83,7 +83,7 @@
|
||||
)
|
||||
(hide-hud)
|
||||
(kill-current-level-hint '() '(sidekick voicebox) 'exit)
|
||||
(when (and (seen-text? *game-info* (game-text-id assistant-lavatube-powercell-hint))
|
||||
(when (and (seen-text? *game-info* (game-text-id assistant-lavatube-need-cells))
|
||||
(hud-hidden?)
|
||||
(can-grab-display? self)
|
||||
(not (-> *setting-control* current hint))
|
||||
@ -102,11 +102,17 @@
|
||||
(set! (-> v1-28 scale) 0.8)
|
||||
)
|
||||
(set! (-> gp-0 flags) (font-flags shadow kerning middle large))
|
||||
(print-game-text (lookup-text! *common-text* (game-text-id lavatube-powercell-req-text) #f) gp-0 #f 128 22)
|
||||
(print-game-text
|
||||
(lookup-text! *common-text* (game-text-id assistant-lavatube-need-cells-text) #f)
|
||||
gp-0
|
||||
#f
|
||||
128
|
||||
22
|
||||
)
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id assistant-lavatube-powercell-hint)
|
||||
(game-text-id assistant-lavatube-need-cells)
|
||||
"asstva74"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
12
test/decompiler/reference/levels/lavatube/lavatube-energy_REF.gc
generated
vendored
12
test/decompiler/reference/levels/lavatube/lavatube-energy_REF.gc
generated
vendored
@ -720,13 +720,7 @@
|
||||
:code (behavior ()
|
||||
(loop
|
||||
(if (and *target* (>= 307200.0 (vector-vector-distance (-> self root trans) (-> *target* control trans))))
|
||||
(level-hint-spawn
|
||||
(game-text-id lavatube-shoot-the-spheres)
|
||||
"sksp0375"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn (game-text-id lavatube-balls) "sksp0375" (the-as entity #f) *entity-pool* (game-task none))
|
||||
)
|
||||
(ja-no-eval :group! (ja-group) :num! (seek!) :frame-num 0.0)
|
||||
(until (ja-done? 0)
|
||||
@ -871,7 +865,7 @@
|
||||
(let ((v1-0 arg2))
|
||||
(the-as object (when (= v1-0 'attack)
|
||||
(when (and (>= arg1 2) (= (-> arg3 param 1) 'eco-yellow))
|
||||
(increment-success-for-hint (game-text-id lavatube-shoot-the-spheres))
|
||||
(increment-success-for-hint (game-text-id lavatube-balls))
|
||||
(sound-play "dcrate-break")
|
||||
(process-spawn
|
||||
part-tracker
|
||||
@ -1405,7 +1399,7 @@
|
||||
)
|
||||
(close-specific-task! (game-task lavatube-balls) (task-status need-resolution))
|
||||
(level-hint-spawn
|
||||
(game-text-id lavatube-spheres-door-open)
|
||||
(game-text-id lavatube-balls-resolution)
|
||||
"sksp0378"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
4
test/decompiler/reference/levels/maincave/dark-crystal_REF.gc
generated
vendored
4
test/decompiler/reference/levels/maincave/dark-crystal_REF.gc
generated
vendored
@ -451,7 +451,7 @@
|
||||
(('touch 'attack)
|
||||
(if (= (-> arg0 type) target)
|
||||
(level-hint-spawn
|
||||
(game-text-id dark-crystal-run-away)
|
||||
(game-text-id cave-dark-crystals-flee)
|
||||
"sksp0334"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -566,7 +566,7 @@
|
||||
(logclear! (-> self mask) (process-mask actor-pause))
|
||||
(clear-collide-with-as (-> self root-override))
|
||||
(level-hint-spawn
|
||||
(game-text-id dark-crystal-last-one)
|
||||
(game-text-id cave-dark-crystals-resolution)
|
||||
"sksp0327"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
2
test/decompiler/reference/levels/misty/balloonlurker_REF.gc
generated
vendored
2
test/decompiler/reference/levels/misty/balloonlurker_REF.gc
generated
vendored
@ -526,7 +526,7 @@
|
||||
(set! (-> self explosion-force-position quad) (-> a0-10 prim-core world-sphere quad))
|
||||
(if (send-event arg0 'attack (-> arg3 param 0) (static-attack-info ((mode 'balloonlurker))))
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-daxter-hit-lurkers-not-mines)
|
||||
(game-text-id misty-bike-mines-hint)
|
||||
"sksp0063"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
4
test/decompiler/reference/levels/misty/misty-teetertotter_REF.gc
generated
vendored
4
test/decompiler/reference/levels/misty/misty-teetertotter_REF.gc
generated
vendored
@ -56,7 +56,7 @@
|
||||
(('flop)
|
||||
(when (target-on-end-of-teetertotter? self)
|
||||
(set! (-> self in-launch-window) #f)
|
||||
(increment-success-for-hint (game-text-id misty-teetertotter-bonk-dax-tutorial))
|
||||
(increment-success-for-hint (game-text-id misty-teetertotter))
|
||||
(go teetertotter-launch)
|
||||
)
|
||||
)
|
||||
@ -65,7 +65,7 @@
|
||||
(('bonk)
|
||||
(when (target-on-end-of-teetertotter? self)
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-teetertotter-bonk-dax-tutorial)
|
||||
(game-text-id misty-teetertotter)
|
||||
"sksp0070"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
|
8
test/decompiler/reference/levels/misty/mistycannon_REF.gc
generated
vendored
8
test/decompiler/reference/levels/misty/mistycannon_REF.gc
generated
vendored
@ -1775,7 +1775,13 @@
|
||||
(and (zero? (logand (-> *cpad-list* cpads 0 button0-abs 0) (pad-buttons x))) (nonzero? gp-0))
|
||||
)
|
||||
(let ((gp-1 (+ 50 (the int (* 0.16666667 (the float gp-0))))))
|
||||
(level-hint-spawn (game-text-id daxter-get-some) "sksp009f" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-mistycannon)
|
||||
"sksp009f"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(dummy-22 self (* 4096.0 (the float gp-1)) 2.0 40960.0)
|
||||
)
|
||||
(set! (-> self state-time) (-> *display* base-frame-counter))
|
||||
|
10
test/decompiler/reference/levels/ogre/flying-lurker_REF.gc
generated
vendored
10
test/decompiler/reference/levels/ogre/flying-lurker_REF.gc
generated
vendored
@ -188,7 +188,7 @@
|
||||
(close-specific-task! (game-task plunger-lurker-hit) (task-status need-hint))
|
||||
(process-entity-status! self (entity-perm-status complete) #t)
|
||||
(level-hint-spawn
|
||||
(game-text-id sidekick-speech-hint-ogre-race)
|
||||
(game-text-id ogre-plunger-lurker-resolution)
|
||||
"sksp0321"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
@ -984,13 +984,7 @@
|
||||
(suspend)
|
||||
)
|
||||
)
|
||||
(level-hint-spawn
|
||||
(game-text-id assistant-voicebox-intro-ogre-race)
|
||||
"asstvb24"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn (game-text-id ogre-race-hint) "asstvb24" (the-as entity #f) *entity-pool* (game-task none))
|
||||
(none)
|
||||
)
|
||||
:to self
|
||||
|
8
test/decompiler/reference/levels/racer_common/racer_REF.gc
generated
vendored
8
test/decompiler/reference/levels/racer_common/racer_REF.gc
generated
vendored
@ -333,13 +333,7 @@
|
||||
(case (-> (level-get-target-inside *level*) name)
|
||||
(('misty)
|
||||
(close-specific-task! (game-task misty-bike) (task-status need-reminder-a))
|
||||
(level-hint-spawn
|
||||
(game-text-id misty-racer-hit-the-ballon-lurkers)
|
||||
"sksp0062"
|
||||
(the-as entity #f)
|
||||
*entity-pool*
|
||||
(game-task none)
|
||||
)
|
||||
(level-hint-spawn (game-text-id misty-bike-hint) "sksp0062" (the-as entity #f) *entity-pool* (game-task none))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user