Rework story engine flow and reorganize project docs
Some checks failed
CI / verify (push) Has been cancelled
Some checks failed
CI / verify (push) Has been cancelled
This commit is contained in:
@@ -173,7 +173,6 @@ export function buildHostileNpcEncounter(
|
||||
return {
|
||||
id: `monster:${worldType}:${preset.id}`,
|
||||
kind: 'npc',
|
||||
hostileNpcPresetId: preset.id,
|
||||
monsterPresetId: preset.id,
|
||||
npcName: preset.name,
|
||||
npcDescription: preset.description,
|
||||
@@ -231,8 +230,6 @@ export function createSceneHostileNpc(
|
||||
};
|
||||
}
|
||||
|
||||
export const createSceneMonster = createSceneHostileNpc;
|
||||
|
||||
export function createSceneHostileNpcsFromIds(
|
||||
worldType: WorldType,
|
||||
hostileNpcIds: string[],
|
||||
@@ -260,21 +257,19 @@ export function createSceneHostileNpcsFromIds(
|
||||
.filter(Boolean) as SceneHostileNpc[];
|
||||
}
|
||||
|
||||
export const createSceneMonstersFromIds = createSceneHostileNpcsFromIds;
|
||||
|
||||
export function createSceneHostileNpcsFromEncounters(
|
||||
worldType: WorldType,
|
||||
encounters: Encounter[],
|
||||
playerX = PLAYER_BASE_X_METERS,
|
||||
): SceneHostileNpc[] {
|
||||
const hostileEncounters = encounters.filter(
|
||||
(encounter): encounter is Encounter & { hostileNpcPresetId: string } => Boolean(encounter.hostileNpcPresetId),
|
||||
(encounter): encounter is Encounter & { monsterPresetId: string } => Boolean(encounter.monsterPresetId),
|
||||
);
|
||||
if (hostileEncounters.length === 0) return [];
|
||||
|
||||
const baseMonsters = createSceneHostileNpcsFromIds(
|
||||
worldType,
|
||||
hostileEncounters.map(encounter => encounter.hostileNpcPresetId),
|
||||
hostileEncounters.map(encounter => encounter.monsterPresetId),
|
||||
playerX,
|
||||
);
|
||||
|
||||
@@ -295,8 +290,6 @@ export function createSceneHostileNpcsFromEncounters(
|
||||
});
|
||||
}
|
||||
|
||||
export const createSceneNpcMonstersFromEncounters = createSceneHostileNpcsFromEncounters;
|
||||
|
||||
export function getBaseSceneHostileNpcs(worldType: WorldType, playerX = PLAYER_BASE_X_METERS): SceneHostileNpc[] {
|
||||
const fallbackId = getHostileNpcPresetsByWorld(worldType)[0]?.id;
|
||||
return fallbackId ? createSceneHostileNpcsFromIds(worldType, [fallbackId], playerX) : [];
|
||||
@@ -312,8 +305,6 @@ export function getClosestHostileNpc(playerX: number, monsters: SceneHostileNpc[
|
||||
return [...monsters].sort((a, b) => Math.abs(a.xMeters - playerX) - Math.abs(b.xMeters - playerX))[0];
|
||||
}
|
||||
|
||||
export const getClosestMonster = getClosestHostileNpc;
|
||||
|
||||
export function getHostileNpcDistance(playerX: number, monster: SceneHostileNpc) {
|
||||
return Math.abs(monster.xMeters - playerX);
|
||||
}
|
||||
@@ -371,8 +362,6 @@ export function settleHostileNpcAnimations(monsters: SceneHostileNpc[]) {
|
||||
}));
|
||||
}
|
||||
|
||||
export const settleMonsterAnimations = settleHostileNpcAnimations;
|
||||
|
||||
export function createFallbackOption(
|
||||
functionId: string,
|
||||
text: string,
|
||||
|
||||
Reference in New Issue
Block a user