about summary refs log tree commit diff stats
path: root/data/maps/the_tenacious/rooms
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2025-08-25 23:03:04 -0400
committerStar Rauchenberger <fefferburbia@gmail.com>2025-08-25 23:03:04 -0400
commit523757481b2306614806a23981721d4a64abb134 (patch)
treeba991fbd9de1fc707477a8c9cf69db6bc2cc8679 /data/maps/the_tenacious/rooms
parent30dcf054a489ec4123e5048579df151bc1e76817 (diff)
downloadlingo2-archipelago-523757481b2306614806a23981721d4a64abb134.tar.gz
lingo2-archipelago-523757481b2306614806a23981721d4a64abb134.tar.bz2
lingo2-archipelago-523757481b2306614806a23981721d4a64abb134.zip
Added the_tenacious
Diffstat (limited to 'data/maps/the_tenacious/rooms')
-rw-r--r--data/maps/the_tenacious/rooms/Color Room.txtpb7
-rw-r--r--data/maps/the_tenacious/rooms/Control Center Entrance.txtpb12
-rw-r--r--data/maps/the_tenacious/rooms/Main Area.txtpb5
-rw-r--r--data/maps/the_tenacious/rooms/Mastery.txtpb5
-rw-r--r--data/maps/the_tenacious/rooms/Paintings Room.txtpb10
-rw-r--r--data/maps/the_tenacious/rooms/Tower Room.txtpb7
-rw-r--r--data/maps/the_tenacious/rooms/Wisdom Room.txtpb7
7 files changed, 53 insertions, 0 deletions
diff --git a/data/maps/the_tenacious/rooms/Color Room.txtpb b/data/maps/the_tenacious/rooms/Color Room.txtpb new file mode 100644 index 0000000..e2a7a31 --- /dev/null +++ b/data/maps/the_tenacious/rooms/Color Room.txtpb
@@ -0,0 +1,7 @@
1name: "Color Room"
2panels {
3 name: "COLOR"
4 path: "Panels/Room_1/panel_1"
5 clue: "color"
6 answer: "color"
7}
diff --git a/data/maps/the_tenacious/rooms/Control Center Entrance.txtpb b/data/maps/the_tenacious/rooms/Control Center Entrance.txtpb new file mode 100644 index 0000000..45a0d12 --- /dev/null +++ b/data/maps/the_tenacious/rooms/Control Center Entrance.txtpb
@@ -0,0 +1,12 @@
1name: "Control Center Entrance"
2panels {
3 name: "ZERO"
4 path: "Panels/Room_1/panel_5"
5 clue: "zero"
6 answer: "hero"
7 symbols: ZERO
8}
9ports {
10 name: "CC"
11 path: "Components/Warps/worldport"
12}
diff --git a/data/maps/the_tenacious/rooms/Main Area.txtpb b/data/maps/the_tenacious/rooms/Main Area.txtpb new file mode 100644 index 0000000..8190827 --- /dev/null +++ b/data/maps/the_tenacious/rooms/Main Area.txtpb
@@ -0,0 +1,5 @@
1name: "Main Area"
2keyholders {
3 name: "K"
4 path: "Components/KeyHolders/keyHolderK"
5}
diff --git a/data/maps/the_tenacious/rooms/Mastery.txtpb b/data/maps/the_tenacious/rooms/Mastery.txtpb new file mode 100644 index 0000000..749837e --- /dev/null +++ b/data/maps/the_tenacious/rooms/Mastery.txtpb
@@ -0,0 +1,5 @@
1name: "Mastery"
2masteries {
3 name: "MASTERY"
4 path: "Components/Collectables/smiley"
5}
diff --git a/data/maps/the_tenacious/rooms/Paintings Room.txtpb b/data/maps/the_tenacious/rooms/Paintings Room.txtpb new file mode 100644 index 0000000..f140ef3 --- /dev/null +++ b/data/maps/the_tenacious/rooms/Paintings Room.txtpb
@@ -0,0 +1,10 @@
1name: "Paintings Room"
2# NOTE: It will be non-trivial to implement the painting pilgrimage in Daedalus,
3# so until then, the door to this room will be an item in door shuffle, and will
4# automatically be open without door shuffle.
5panels {
6 name: "PAINTINGS"
7 path: "Panels/Room_1/panel_3"
8 clue: "paintings"
9 answer: "paintings"
10}
diff --git a/data/maps/the_tenacious/rooms/Tower Room.txtpb b/data/maps/the_tenacious/rooms/Tower Room.txtpb new file mode 100644 index 0000000..d050d80 --- /dev/null +++ b/data/maps/the_tenacious/rooms/Tower Room.txtpb
@@ -0,0 +1,7 @@
1name: "Tower Room"
2panels {
3 name: "TOWER"
4 path: "Panels/Room_1/panel_2"
5 clue: "tower"
6 answer: "tower"
7}
diff --git a/data/maps/the_tenacious/rooms/Wisdom Room.txtpb b/data/maps/the_tenacious/rooms/Wisdom Room.txtpb new file mode 100644 index 0000000..84a1a6d --- /dev/null +++ b/data/maps/the_tenacious/rooms/Wisdom Room.txtpb
@@ -0,0 +1,7 @@
1name: "Wisdom Room"
2panels {
3 name: "WISDOM"
4 path: "Panels/Room_1/panel_4"
5 clue: "wisdom"
6 answer: "wisdom"
7}
class="p">{ GetTrackerConfig().asked_to_check_for_updates = true; if (wxMessageBox( "Check for updates automatically when the tracker is opened?", "Lingo AP Tracker", wxYES_NO) == wxYES) { GetTrackerConfig().should_check_for_updates = true; } else { GetTrackerConfig().should_check_for_updates = false; } GetTrackerConfig().Save(); } if (GetTrackerConfig().should_check_for_updates) { CheckForUpdates(/*manual=*/false); } } void TrackerFrame::SetStatusMessage(std::string message) { wxCommandEvent *event = new wxCommandEvent(STATUS_CHANGED); event->SetString(message.c_str()); QueueEvent(event); } void TrackerFrame::UpdateIndicators() { QueueEvent(new wxCommandEvent(STATE_CHANGED)); } void TrackerFrame::OnAbout(wxCommandEvent &event) { std::ostringstream message_text; message_text << "Lingo Archipelago Tracker " << kTrackerVersion << " by hatkirby"; wxMessageBox(message_text.str(), "About lingo-ap-tracker", wxOK | wxICON_INFORMATION); } void TrackerFrame::OnExit(wxCommandEvent &event) { Close(true); } void TrackerFrame::OnConnect(wxCommandEvent &event) { ConnectionDialog dlg; if (dlg.ShowModal() == wxID_OK) { GetTrackerConfig().connection_details.ap_server = dlg.GetServerValue(); GetTrackerConfig().connection_details.ap_player = dlg.GetPlayerValue(); GetTrackerConfig().connection_details.ap_password = dlg.GetPasswordValue(); std::deque<ConnectionDetails> new_history; new_history.push_back(GetTrackerConfig().connection_details); for (const ConnectionDetails& details : GetTrackerConfig().connection_history) { if (details != GetTrackerConfig().connection_details) { new_history.push_back(details); } } while (new_history.size() > 5) { new_history.pop_back(); } GetTrackerConfig().connection_history = std::move(new_history); GetTrackerConfig().Save(); AP_Connect(dlg.GetServerValue(), dlg.GetPlayerValue(), dlg.GetPasswordValue()); } } void TrackerFrame::OnSettings(wxCommandEvent &event) { SettingsDialog dlg; if (dlg.ShowModal() == wxID_OK) { GetTrackerConfig().should_check_for_updates = dlg.GetShouldCheckForUpdates(); GetTrackerConfig().hybrid_areas = dlg.GetHybridAreas(); GetTrackerConfig().show_hunt_panels = dlg.GetShowHuntPanels(); GetTrackerConfig().Save(); UpdateIndicators(); } } void TrackerFrame::OnCheckForUpdates(wxCommandEvent &event) { CheckForUpdates(/*manual=*/true); } void TrackerFrame::OnStateChanged(wxCommandEvent &event) { tracker_panel_->UpdateIndicators(); achievements_pane_->UpdateIndicators(); Refresh(); } void TrackerFrame::OnStatusChanged(wxCommandEvent &event) { SetStatusText(event.GetString()); } void TrackerFrame::CheckForUpdates(bool manual) { wxWebRequest request = wxWebSession::GetDefault().CreateRequest( this, "https://code.fourisland.com/lingo-ap-tracker/plain/VERSION"); if (!request.IsOk()) { if (manual) { wxMessageBox("Could not check for updates.", "Error", wxOK | wxICON_ERROR); } else { SetStatusText("Could not check for updates."); } return; } Bind(wxEVT_WEBREQUEST_STATE, [this, manual](wxWebRequestEvent &evt) { if (evt.GetState() == wxWebRequest::State_Completed) { std::string response = evt.GetResponse().AsString().ToStdString(); Version latest_version(response); if (kTrackerVersion < latest_version) { std::ostringstream message_text; message_text << "There is a newer version of Lingo AP Tracker " "available. You have " << kTrackerVersion << ", and the latest version is " << latest_version << ". Would you like to update?"; if (wxMessageBox(message_text.str(), "Update available", wxYES_NO) == wxYES) { wxLaunchDefaultBrowser( "https://code.fourisland.com/lingo-ap-tracker/about/" "CHANGELOG.md"); } } else if (manual) { wxMessageBox("Lingo AP Tracker is up to date!", "Lingo AP Tracker", wxOK); } } else if (evt.GetState() == wxWebRequest::State_Failed) { if (manual) { wxMessageBox("Could not check for updates.", "Error", wxOK | wxICON_ERROR); } else { SetStatusText("Could not check for updates."); } } }); request.Start(); }