Fix market death crash & no logic parse, limit archi console lines
This commit is contained in:
@@ -467,6 +467,7 @@ void Context::ParseArchipelagoOptions(const std::map<std::string, int>& slot_dat
|
||||
// load those in instead.
|
||||
|
||||
nlohmann::json slotData = ArchipelagoClient::GetInstance().GetSlotData();
|
||||
mOptions[RSK_LOGIC_RULES].Set(RO_LOGIC_NO_LOGIC);
|
||||
mOptions[RSK_FOREST].Set(RO_CLOSED_FOREST_OFF);
|
||||
mOptions[RSK_KAK_GATE].Set(RO_KAK_GATE_OPEN);
|
||||
mOptions[RSK_DOOR_OF_TIME].Set(RO_DOOROFTIME_OPEN);
|
||||
|
||||
@@ -27,10 +27,16 @@ void ArchipelagoConsole_SendMessage(const char* fmt, ...) {
|
||||
std::vector<ArchipelagoClient::ColoredTextNode> line;
|
||||
line.push_back(node);
|
||||
Items.push_back(line);
|
||||
if (Items.size() > 50) {
|
||||
Items.erase(Items.begin());
|
||||
}
|
||||
}
|
||||
|
||||
void ArchipelagoConsole_PrintJson(const std::vector<ArchipelagoClient::ColoredTextNode> nodes) {
|
||||
Items.push_back(nodes);
|
||||
if (Items.size() > 50) {
|
||||
Items.erase(Items.begin());
|
||||
}
|
||||
}
|
||||
|
||||
void ArchipelagoConsoleWindow::DrawElement() {
|
||||
|
||||
@@ -410,8 +410,7 @@ BgImage* func_80096A74(PolygonType1* polygon1, PlayState* play) {
|
||||
|
||||
camera = GET_ACTIVE_CAM(play);
|
||||
camId = camera->camDataIdx;
|
||||
if (camId == -1 && (CVarGetInteger(CVAR_CHEAT("NoRestrictItems"), 0) ||
|
||||
(CVarGetInteger(CVAR_REMOTE_CROWD_CONTROL("Enabled"), 0)))) {
|
||||
if (camId == -1) {
|
||||
// This prevents a crash when using items that change the
|
||||
// camera (such as din's fire), voiding out or dying on
|
||||
// scenes with prerendered backgrounds.
|
||||
|
||||
Reference in New Issue
Block a user