| 47 | constexpr std::string_view MAGIC = "PKSMSCRIPT"; |
| 48 | |
| 49 | std::string getScriptDir(pksm::GameVersion version) |
| 50 | { |
| 51 | switch (version) |
| 52 | { |
| 53 | case pksm::GameVersion::RD: |
| 54 | case pksm::GameVersion::GN: |
| 55 | case pksm::GameVersion::BU: |
| 56 | case pksm::GameVersion::YW: |
| 57 | return "/scripts/rgby"; |
| 58 | // i am sorry in advance to anyone who makes Gen II scripts for having to write any |
| 59 | // directly save-interacting code one, three, or five times |
| 60 | case pksm::GameVersion::GD: |
| 61 | case pksm::GameVersion::SV: |
| 62 | return "/scripts/gs"; |
| 63 | case pksm::GameVersion::C: |
| 64 | return "/scripts/c"; |
| 65 | case pksm::GameVersion::R: |
| 66 | case pksm::GameVersion::S: |
| 67 | return "/scripts/rs"; |
| 68 | case pksm::GameVersion::E: |
| 69 | return "/scripts/e"; |
| 70 | case pksm::GameVersion::FR: |
| 71 | case pksm::GameVersion::LG: |
| 72 | return "/scripts/frlg"; |
| 73 | case pksm::GameVersion::HG: |
| 74 | case pksm::GameVersion::SS: |
| 75 | return "/scripts/hgss"; |
| 76 | case pksm::GameVersion::D: |
| 77 | case pksm::GameVersion::P: |
| 78 | return "/scripts/dp"; |
| 79 | case pksm::GameVersion::Pt: |
| 80 | return "/scripts/pt"; |
| 81 | case pksm::GameVersion::B: |
| 82 | case pksm::GameVersion::W: |
| 83 | return "/scripts/bw"; |
| 84 | case pksm::GameVersion::B2: |
| 85 | case pksm::GameVersion::W2: |
| 86 | return "/scripts/b2w2"; |
| 87 | case pksm::GameVersion::X: |
| 88 | case pksm::GameVersion::Y: |
| 89 | return "/scripts/xy"; |
| 90 | case pksm::GameVersion::OR: |
| 91 | case pksm::GameVersion::AS: |
| 92 | return "/scripts/oras"; |
| 93 | case pksm::GameVersion::SN: |
| 94 | case pksm::GameVersion::MN: |
| 95 | return "/scripts/sm"; |
| 96 | case pksm::GameVersion::US: |
| 97 | case pksm::GameVersion::UM: |
| 98 | return "/scripts/usum"; |
| 99 | case pksm::GameVersion::GP: |
| 100 | case pksm::GameVersion::GE: |
| 101 | return "/scripts/lgpe"; |
| 102 | case pksm::GameVersion::SW: |
| 103 | case pksm::GameVersion::SH: |
| 104 | return "/scripts/swsh"; |
| 105 | default: |
| 106 | return "/scripts/" + std::to_string((int)version); |
no test coverage detected