Skip to content

Commit 4d62054

Browse files
Merge pull request #6 from OrnitheMC/develop-support-gen2
Add gen2 support to develop page
2 parents a31732d + bfc0d7d commit 4d62054

4 files changed

Lines changed: 57 additions & 21 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ dist/*
66

77
# dependencies
88
node_modules/*
9+
package-lock.json
910

1011
# logs
1112
npm-debug.log*

public/develop.js

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,24 @@ import {
1010
} from "./meta_maven_utils.js";
1111

1212
(async () => {
13-
const minecraftStableVersions = await getMinecraftStableVersions();
14-
const minecraftAllVersions = await getMinecraftVersions();
13+
let minecraftStableVersions = await getMinecraftStableVersions("gen1");
14+
let minecraftAllVersions = await getMinecraftVersions("gen1");
1515

1616
let possibleVersions;
1717

18-
const loaderSelectorRadios = { fabric: document.getElementById("mod-loader-fabric"), quilt: document.getElementById("mod-loader-quilt") }
18+
const loaderSelectorRadios = {
19+
fabric: document.getElementById("mod-loader-fabric"),
20+
quilt: document.getElementById("mod-loader-quilt")
21+
}
22+
const genSelectorRadios = {
23+
gen1: document.getElementById("generation-gen1"),
24+
gen2: document.getElementById("generation-gen2")
25+
}
26+
document.getElementById("calamus-gen-selectors").addEventListener("change", async (e) => {
27+
const gen = Object.entries(genSelectorRadios).find(([_, button]) => button === e.target)[0];
28+
minecraftStableVersions = await getMinecraftStableVersions(gen);
29+
minecraftAllVersions = await getMinecraftVersions(gen);
30+
})
1931
const versionSelectorInput = document.getElementById("mc-version");
2032
const versionListElement = document.getElementById("version-list");
2133
const allowSnapshotsCheck = document.getElementById("allow-snapshots");
@@ -47,6 +59,7 @@ import {
4759
];
4860

4961
const loader = Object.entries(loaderSelectorRadios).find(([_, button]) => button.checked)[0];
62+
const gen = Object.entries(genSelectorRadios).find(([_, button]) => button.checked)[0];
5063

5164
const minecraftVersion = versionSelectorInput.value;
5265
const loaderVersion = await getLatestLoader(loader);
@@ -58,7 +71,7 @@ import {
5871
`osl_version = ${oslVersion}`
5972
);
6073

61-
const featherBuild = await getLatestFeatherBuild(minecraftVersion);
74+
const featherBuild = await getLatestFeatherBuild(gen, minecraftVersion);
6275

6376
if (featherBuild !== null) {
6477
addExtraMsg("Make sure to use the \"merged\" mod template for this Minecraft version!");

public/meta_maven_utils.js

Lines changed: 30 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,32 +16,42 @@ async function getFromMeta(...pathComponents) {
1616
return response.json();
1717
}
1818

19-
async function getMinecraftVersionsMeta() {
20-
return await getFromMeta("versions", "game");
19+
async function getVersionsFromMeta(...pathComponents) {
20+
let response = await getFromMeta("versions", ...pathComponents);
21+
return response;
2122
}
2223

23-
export async function getFeatherVersionMeta(mcVersion) {
24-
return await getFromMeta("versions", "feather", mcVersion);
24+
async function getVersionsWithGenFromMeta(ornitheGen, ...pathComponents) {
25+
let response = await getVersionsFromMeta(ornitheGen, ...pathComponents);
26+
return response;
27+
}
28+
29+
async function getMinecraftVersionsMeta(ornitheGen) {
30+
return await getVersionsWithGenFromMeta(ornitheGen, "game");
31+
}
32+
33+
export async function getFeatherVersionMeta(ornitheGen, mcVersion) {
34+
return await getVersionsWithGenFromMeta(ornitheGen, "feather", mcVersion);
2535
}
2636

2737
async function getRavenVersionMeta(mcVersion) {
28-
return await getFromMeta("versions", "raven", mcVersion);
38+
return await getVersionsFromMeta("raven", mcVersion);
2939
}
3040

3141
async function getSparrowVersionMeta(mcVersion) {
32-
return await getFromMeta("versions", "sparrow", mcVersion);
42+
return await getVersionsFromMeta("sparrow", mcVersion);
3343
}
3444

3545
async function getNestsVersionMeta(mcVersion) {
36-
return await getFromMeta("versions", "nests", mcVersion);
46+
return await getVersionsFromMeta("nests", mcVersion);
3747
}
3848

3949
async function getLoaderVersionsMeta(loader) {
40-
return await getFromMeta("versions", loader + "-loader");
50+
return await getVersionsFromMeta(loader + "-loader");
4151
}
4252

4353
async function getOslVersionsMeta() {
44-
return await getFromMeta("versions", "osl");
54+
return await getVersionsFromMeta("osl");
4555
}
4656

4757
function compareVersion(sv1, sv2) {
@@ -61,21 +71,24 @@ function compareVersion(sv1, sv2) {
6171
return rec(sv1.split("."), sv2.split("."));
6272
}
6373

64-
export async function getMinecraftVersions() {
65-
return await getMinecraftVersionsMeta()
74+
export async function getMinecraftVersions(gen) {
75+
return await getMinecraftVersionsMeta(gen)
6676
.then(l => l.map(v => v.version));
6777
}
6878

69-
export async function getMinecraftStableVersions() {
70-
return await getMinecraftVersionsMeta()
79+
export async function getMinecraftStableVersions(gen) {
80+
return await getMinecraftVersionsMeta(gen)
7181
.then(l => l.filter(v => v.stable))
7282
.then(l => l.map(v => v.version));
7383
}
7484

75-
export async function getLatestFeatherBuild(mcVersion) {
76-
return await getFeatherVersionMeta(mcVersion)
85+
export async function getLatestFeatherBuild(gen, mcVersion) {
86+
return await getFeatherVersionMeta(gen, mcVersion)
7787
.then(l => l.sort((e1, e2) => e2.build - e1.build))
78-
.then(s => { console.log(s); return s; })
88+
.then(s => {
89+
console.log(s);
90+
return s;
91+
})
7992
.then(([head, ..._]) => head)
8093
.then(e => e !== undefined ? e.build : null);
8194
}
@@ -133,4 +146,4 @@ function makeOrnitheMavenUrl(...pathComponents) {
133146
export async function getFeatherBuildMaven(version) {
134147
const url = makeOrnitheMavenUrl("feather", version, "feather-" + version + "-tiny.gz");
135148
return await fetch(url);
136-
}
149+
}

src/pages/develop.astro

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,15 @@ import Layout from "../layouts/Layout.astro";
3232
<label for="mod-loader-quilt">Quilt</label>
3333
</fieldset>
3434

35+
<fieldset id="calamus-gen-selectors">
36+
<legend>Select a Calamus (Intermediary) Generation</legend>
37+
<input type="radio" id="generation-gen1" name="calamus-generation" checked />
38+
<label for="generation-gen1">Gen1</label>
39+
40+
<input type="radio" id="generation-gen2" name="calamus-generation" />
41+
<label for="generation-gen2">Gen2</label>
42+
</fieldset>
43+
3544
<label for="mc-version">Game version</label>
3645
<input type="text" id="mc-version" list="version-list" value="1.7.2" />
3746
<datalist id="version-list">

0 commit comments

Comments
 (0)