diff --git a/packages/website/src/hooks/useArmor.ts b/packages/website/src/hooks/useArmor.ts index 94656886b..ee522b924 100644 --- a/packages/website/src/hooks/useArmor.ts +++ b/packages/website/src/hooks/useArmor.ts @@ -4,7 +4,7 @@ import { GLTFLoader } from "three-stdlib"; import { useDispose } from "./useDispose"; export function useArmor(id: number) { - const path = alias("api", `/tanks/${id}/collision.glb`); + const path = alias("models_tanks", `/${id}/collision.glb`); const gltf = useLoader(GLTFLoader, path); useDispose(gltf, path); diff --git a/packages/website/src/hooks/useModel.ts b/packages/website/src/hooks/useModel.ts index 96db9fd91..3e1ec5bdc 100644 --- a/packages/website/src/hooks/useModel.ts +++ b/packages/website/src/hooks/useModel.ts @@ -5,7 +5,7 @@ import { GLTFLoader } from "three-stdlib"; import { useDispose } from "./useDispose"; export function useModel(id: number) { - const path = alias("api", `/tanks/${id}/model.glb`); + const path = alias("models_tanks", `/${id}/model.glb`); const gltf = useLoader(GLTFLoader, path); useDispose(gltf, path); diff --git a/packages/website/src/pages/[...chunk_models_legendary]/_index.ts b/packages/website/src/pages/[...chunk_models_legendary]/_index.ts new file mode 100644 index 000000000..58fd25670 --- /dev/null +++ b/packages/website/src/pages/[...chunk_models_legendary]/_index.ts @@ -0,0 +1,3 @@ +import { chunkedStaticPaths } from "../../core/blitzkit/chunkedStaticPaths"; + +export const getStaticPaths = chunkedStaticPaths("models_legendary"); diff --git a/packages/website/src/pages/[...chunk_models_tanks]/[id]/_index.ts b/packages/website/src/pages/[...chunk_models_tanks]/[id]/_index.ts new file mode 100644 index 000000000..15a341f98 --- /dev/null +++ b/packages/website/src/pages/[...chunk_models_tanks]/[id]/_index.ts @@ -0,0 +1,12 @@ +import { api } from "../../../core/blitzkit/api"; +import { mixStaticPaths } from "../../../core/blitzkit/mixStaticPaths"; +import { getStaticPaths as _getStaticPaths } from "../_index"; + +export const getStaticPaths = mixStaticPaths(_getStaticPaths, async () => { + const tanks = await api.tankDefinitions(); + + return Object.values(tanks.tanks).map((tank) => ({ + params: { id: tank.id }, + props: { id: tank.id }, + })); +}); diff --git a/packages/website/src/pages/[...chunk_api]/tanks/[id]/collision.glb.ts b/packages/website/src/pages/[...chunk_models_tanks]/[id]/collision.glb.ts similarity index 99% rename from packages/website/src/pages/[...chunk_api]/tanks/[id]/collision.glb.ts rename to packages/website/src/pages/[...chunk_models_tanks]/[id]/collision.glb.ts index dbfd14255..a6d89abc4 100644 --- a/packages/website/src/pages/[...chunk_api]/tanks/[id]/collision.glb.ts +++ b/packages/website/src/pages/[...chunk_models_tanks]/[id]/collision.glb.ts @@ -10,7 +10,7 @@ import { import type { AbstractVFS } from "@blitzkit/core/src/blitzkit/vfs/abstract"; import { Accessor, Document, Node, NodeIO, Scene } from "@gltf-transform/core"; import type { APIContext } from "astro"; -import { vfs } from "../../../../core/blitzkit/vfs"; +import { vfs } from "../../../core/blitzkit/vfs"; export { getStaticPaths } from "./_index"; diff --git a/packages/website/src/pages/[...chunk_api]/tanks/[id]/model.glb.ts b/packages/website/src/pages/[...chunk_models_tanks]/[id]/model.glb.ts similarity index 99% rename from packages/website/src/pages/[...chunk_api]/tanks/[id]/model.glb.ts rename to packages/website/src/pages/[...chunk_models_tanks]/[id]/model.glb.ts index faf26b002..c4f5a5392 100644 --- a/packages/website/src/pages/[...chunk_api]/tanks/[id]/model.glb.ts +++ b/packages/website/src/pages/[...chunk_models_tanks]/[id]/model.glb.ts @@ -20,7 +20,7 @@ import type { APIContext } from "astro"; import { isEqual, times } from "lodash-es"; import { dirname } from "path"; import sharp from "sharp"; -import { vfs } from "../../../../core/blitzkit/vfs"; +import { vfs } from "../../../core/blitzkit/vfs"; import { vertexAttributeGLTFName, vertexAttributeGltfVectorSizes, diff --git a/packages/website/src/pages/[...chunk_models_tanks]/_index.ts b/packages/website/src/pages/[...chunk_models_tanks]/_index.ts new file mode 100644 index 000000000..7523da3c6 --- /dev/null +++ b/packages/website/src/pages/[...chunk_models_tanks]/_index.ts @@ -0,0 +1,3 @@ +import { chunkedStaticPaths } from "../../core/blitzkit/chunkedStaticPaths"; + +export const getStaticPaths = chunkedStaticPaths("models_tanks");