about summary refs log tree commit diff stats
path: root/data/maps/the_great/rooms/Question Room When.txtpb
blob: b3ee2dba77b51dcabfea1c72506c86d1e878cdc6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
name: "Question Room When"
panel_display_name: "Question Room"
panels {
  name: "QUESTION"
  path: "Panels/Questions/question_1"
  clue: "question"
  answer: "what"
  symbols: EXAMPLE
  proxies { answer: "when" path: "Panels/Question Proxies/question_1_proxied" }
  proxies { answer: "why" path: "Panels/Question Proxies/question_1_proxied2" }
  proxies { answer: "what" path: "Panels/Question Proxies/question_1_proxied3" }
  proxies { answer: "who" path: "Panels/Question Proxies/question_1_proxied4" }
  proxies { answer: "how" path: "Panels/Question Proxies/question_1_proxied5" }
  proxies { answer: "where" path: "Panels/Question Proxies/question_1_proxied6" }
  display_name: "QUESTION (When)"
}
paintings {
  name: "WHY"
  path: "Components/Paintings/why2"
  orientation: "north"
  gravity: Y_PLUS
}
; namespace verbly { database::database( std::string path) : ppdb_(std::move(path), hatkirby::dbmode::read) { hatkirby::row version = ppdb_.queryFirst("SELECT major, minor FROM version"); major_ = mpark::get<int>(version[0]); minor_ = mpark::get<int>(version[1]); if (major_ != DATABASE_MAJOR_VERSION) { throw database_version_mismatch(DATABASE_MAJOR_VERSION, major_); } } query<notion> database::notions(filter where, order sortOrder, int limit) const { return query<notion>(*this, ppdb_, std::move(where), std::move(sortOrder), limit); } query<word> database::words(filter where, order sortOrder, int limit) const { return query<word>(*this, ppdb_, std::move(where), std::move(sortOrder), limit); } query<frame> database::frames(filter where, order sortOrder, int limit) const { return query<frame>(*this, ppdb_, std::move(where), std::move(sortOrder), limit); } query<part> database::parts(filter where, order sortOrder, int limit) const { return query<part>(*this, ppdb_, std::move(where), std::move(sortOrder), limit); } query<form> database::forms(filter where, order sortOrder, int limit) const { return query<form>(*this, ppdb_, std::move(where), std::move(sortOrder), limit); } query<pronunciation> database::pronunciations(filter where, order sortOrder, int limit) const { return query<pronunciation>(*this, ppdb_, std::move(where), std::move(sortOrder), limit); } std::set<std::string> database::selrestrs(int partId) const { std::vector<hatkirby::row> rows = ppdb_.queryAll( "SELECT selrestr FROM selrestrs WHERE part_id = ?", { partId }); std::set<std::string> result; for (hatkirby::row& r : rows) { result.emplace(std::move(mpark::get<std::string>(r[0]))); } return result; } std::set<std::string> database::synrestrs(int partId) const { std::vector<hatkirby::row> rows = ppdb_.queryAll( "SELECT synrestr FROM synrestrs WHERE part_id = ?", { partId }); std::set<std::string> result; for (hatkirby::row& r : rows) { result.emplace(std::move(mpark::get<std::string>(r[0]))); } return result; } std::string database_version_mismatch::generateMessage(int right, int wrong) { std::ostringstream msgbuilder; msgbuilder << "Incompatible database version: needed "; msgbuilder << right; msgbuilder << ", found "; msgbuilder << wrong; return msgbuilder.str(); } };