SpacedArmorScene

This commit is contained in:
tresabhi committed 2026-09-30 17:38:27 -05:00
1 parent 1ee6cdabe5
commit 22aff6188a
3 files changed
+10 -6

No files matched your search

@@ -6,9 +6,9 @@ import { resolveArmor } from "../core/blitzkit/resolveThickness";
import { useArmor } from "../hooks/useArmor";
import { useConsumable } from "../hooks/useConsumable";
import { DuelModule, useDuel } from "../hooks/useDuel";
import { useDuelModel } from "../hooks/useDuelModel";
import { useModel } from "../hooks/useModel";
import { useTankTransform } from "../hooks/useTankTransform";
import { Tankopedia } from "../stores/tankopedia";
import { SpacedArmorSceneComponent } from "./SpacedArmorSceneComponent";
export enum ArmorType {
@@ -32,9 +32,7 @@ export const SpacedArmorScene = memo<SpacedArmorSceneProps>(({ scene }) => {
const { gltf: modelGltf } = useModel(tank.id);
const armorNodes = Object.values(armorGltf.nodes);
const modelNodes = Object.values(modelGltf.nodes);
const tankModelDefinition = Tankopedia.use(
(state) => state.protagonist.model,
);
const tankModelDefinition = useDuelModel("protagonist");
const trackModelDefinition = tankModelDefinition.tracks[track.id];
const turretModelDefinition = tankModelDefinition.turrets[turret.id];
const gunModelDefinition = turretModelDefinition.guns[gun.id];
@@ -0,0 +1,6 @@
import { Tankopedia } from "../stores/tankopedia";
import type { DuelSide } from "./useEquipment";
export function useDuelModel(side: DuelSide) {
return Tankopedia.use((state) => state[side].model);
}
@@ -10,7 +10,7 @@ import {
modelTransformEvent,
type ModelTransformEventData,
} from "../core/blitzkit/modelTransform";
import { useTankModelDefinition } from "./useTankModelDefinition";
import { useDuelModel } from "./useDuelModel";
export function useTankTransform(
track: TrackDefinition,
@@ -18,7 +18,7 @@ export function useTankTransform(
turretContainer: RefObject<Group>,
gunContainer: RefObject<Group>,
) {
const tankModelDefinition = useTankModelDefinition();
const tankModelDefinition = useDuelModel("protagonist");
useEffect(() => {
const trackModelDefinition = tankModelDefinition.tracks[track.id];