Release Healer Man 0.1.21
This commit is contained in:
1 parent
699fc858c9
commit
f6f2375145
210 files changed
+976039
-6247
No files matched your search
+27
-5
@@ -4,6 +4,7 @@ import {
|
||||
useMemo,
|
||||
useRef,
|
||||
useState,
|
||||
useSyncExternalStore,
|
||||
type PointerEvent as ReactPointerEvent,
|
||||
} from "react";
|
||||
import { Canvas } from "@react-three/fiber";
|
||||
@@ -52,6 +53,13 @@ import { numericFrameRateLimit } from "../game/frameRateSettings";
|
||||
import { useDocumentVisibility } from "../platform/useDocumentVisibility";
|
||||
import { CappedFrameLoop } from "./CappedFrameLoop";
|
||||
import { selectDungeonSessionPopulation } from "../game/dungeonSpawnSelection";
|
||||
import { DungeonWorldObjects } from "./DungeonWorldObjects";
|
||||
import {
|
||||
activeDungeonEncounterRevision,
|
||||
activeDungeonEncounterSpawnGroupIds,
|
||||
subscribeDungeonEncounterSnapshots,
|
||||
} from "../game/dungeonEncounterRuntime";
|
||||
import { activeEncounterSpawnGroupSpawns } from "../game/dungeonEncounterSpawns";
|
||||
|
||||
export function GameScene() {
|
||||
const activeDungeonId = useGameStore((state) => state.activeDungeonId);
|
||||
@@ -60,6 +68,11 @@ export function GameScene() {
|
||||
const manastormEncounter = useManastormStore((state) => state.currentEncounter);
|
||||
const manastormPhase = useManastormStore((state) => state.phase);
|
||||
const wailingPhase = useWailingEncounterStore((state) => state.phase);
|
||||
useSyncExternalStore(
|
||||
subscribeDungeonEncounterSnapshots,
|
||||
activeDungeonEncounterRevision,
|
||||
activeDungeonEncounterRevision,
|
||||
);
|
||||
const dungeon = requireDungeonDefinition(activeDungeonId);
|
||||
const cameraFar = Math.max(
|
||||
950,
|
||||
@@ -103,7 +116,17 @@ export function GameScene() {
|
||||
phasedStaticSpawns,
|
||||
difficultyRoamingPacks,
|
||||
);
|
||||
const staticSpawns = sessionPopulation.staticSpawns;
|
||||
const activeSpawnGroupIds = activeDungeonEncounterSpawnGroupIds();
|
||||
const encounterSpawns = activeEncounterSpawnGroupSpawns(
|
||||
dungeon.encounterSpawnGroups ?? [],
|
||||
activeSpawnGroupIds,
|
||||
difficultyMask,
|
||||
sessionPopulation.staticSpawns,
|
||||
);
|
||||
const staticSpawns = [
|
||||
...sessionPopulation.staticSpawns,
|
||||
...encounterSpawns,
|
||||
];
|
||||
const roamingPacks = sessionPopulation.roamingPacks;
|
||||
const paused = useGameStore((state) => state.paused);
|
||||
const mapOpen = useGameStore((state) => state.mapOpen);
|
||||
@@ -180,10 +203,6 @@ export function GameScene() {
|
||||
};
|
||||
}, [canvasRevision]);
|
||||
|
||||
useEffect(() => {
|
||||
useWailingEncounterStore.getState().reset();
|
||||
}, [activeDungeonId, gameMode, sessionRevision]);
|
||||
|
||||
useEffect(() => {
|
||||
setAdaptiveDpr(1.5);
|
||||
}, [activeDungeonId, sessionRevision]);
|
||||
@@ -294,6 +313,9 @@ export function GameScene() {
|
||||
<OnlinePlayerPopulation active={!simulationBlocked} />
|
||||
<PartyPopulation active={!simulationBlocked} simulate={!sharedOnline || onlineAuthority} />
|
||||
<GroundEffectTelegraphs />
|
||||
{gameMode === "dungeon" && (
|
||||
<DungeonWorldObjects definitions={dungeon.serverGameObjects} />
|
||||
)}
|
||||
<MobPopulation
|
||||
active={!simulationBlocked}
|
||||
entities={stagePopulation.entities}
|
||||
|
||||
Reference in new issue
Block a user