Implement scene-based chapter quest progression
Some checks failed
CI / verify (push) Has been cancelled
Some checks failed
CI / verify (push) Has been cancelled
This commit is contained in:
@@ -11,6 +11,7 @@ import {
|
||||
ItemUseProfile,
|
||||
WorldType,
|
||||
} from '../types';
|
||||
import { resolveCustomWorldCampScene } from './customWorldCamp';
|
||||
import {
|
||||
type CustomWorldThemeMode,
|
||||
detectCustomWorldThemeMode,
|
||||
@@ -49,6 +50,30 @@ type WorldPresentation = {
|
||||
};
|
||||
|
||||
const WORLD_PRESENTATIONS: Record<ThemeMode, WorldPresentation> = {
|
||||
mythic: {
|
||||
mode: 'mythic',
|
||||
attributeLabels: { strength: '体魄', agility: '身法', intelligence: '识见', spirit: '心魂' },
|
||||
hpLabel: '生命',
|
||||
mpLabel: '心流',
|
||||
maxHpLabel: '生命上限',
|
||||
maxMpLabel: '心流上限',
|
||||
damageLabel: '势能',
|
||||
guardLabel: '防护',
|
||||
rangeLabel: '距离',
|
||||
cooldownLabel: '回整',
|
||||
manaCostLabel: '心流消耗',
|
||||
campSuffix: '归舍',
|
||||
itemPrefixes: ['远岸', '回声', '曙迹', '长旅', '微光', '新铭'],
|
||||
itemInfixes: ['印', '纹', '辉', '迹', '息', '铭'],
|
||||
skillPrefixes: ['映', '折', '回', '逐', '临', '流'],
|
||||
skillSuffixByStyle: {
|
||||
burst: ['震', '断', '破', '坠'],
|
||||
steady: ['守', '定', '护', '镇'],
|
||||
mobility: ['跃', '移', '转', '行'],
|
||||
finisher: ['终', '决', '落', '尽'],
|
||||
projectile: ['矢', '刃', '波', '纹'],
|
||||
},
|
||||
},
|
||||
martial: {
|
||||
mode: 'martial',
|
||||
attributeLabels: { strength: '力量', agility: '敏捷', intelligence: '智力', spirit: '精神' },
|
||||
@@ -61,7 +86,7 @@ const WORLD_PRESENTATIONS: Record<ThemeMode, WorldPresentation> = {
|
||||
rangeLabel: '招距',
|
||||
cooldownLabel: '调息',
|
||||
manaCostLabel: '内力消耗',
|
||||
campSuffix: '行侠客栈',
|
||||
campSuffix: '归舍',
|
||||
itemPrefixes: ['风雨', '青锋', '断桥', '冷铁', '旧案', '残影'],
|
||||
itemInfixes: ['刃','锋','魂','诀','式','影'],
|
||||
skillPrefixes: ['破','斩','击','御','飞','隐'],
|
||||
@@ -85,7 +110,7 @@ const WORLD_PRESENTATIONS: Record<ThemeMode, WorldPresentation> = {
|
||||
rangeLabel: '术距',
|
||||
cooldownLabel: '回息',
|
||||
manaCostLabel: '灵韵消耗',
|
||||
campSuffix: '宗门行馆',
|
||||
campSuffix: '栖居',
|
||||
itemPrefixes: ['灵韵', '道纹', '云篆', '星芒', '界辉', '道痕'],
|
||||
itemInfixes: ['灵','道','法','术','诀','印'],
|
||||
skillPrefixes: ['灵','道','法','界','星','印'],
|
||||
@@ -109,7 +134,7 @@ const WORLD_PRESENTATIONS: Record<ThemeMode, WorldPresentation> = {
|
||||
rangeLabel: '射程',
|
||||
cooldownLabel: '充能',
|
||||
manaCostLabel: '能量消耗',
|
||||
campSuffix: '机动前哨',
|
||||
campSuffix: '整备居',
|
||||
itemPrefixes: ['铁脊', '钢律', '脉冲', '核列', '新星', '等离'],
|
||||
itemInfixes: ['芯', '驱', '链', '阵', '节', '机'],
|
||||
skillPrefixes: ['超载', '脉冲', '聚核', '磁轨', '新星', '裂火'],
|
||||
@@ -133,7 +158,7 @@ const WORLD_PRESENTATIONS: Record<ThemeMode, WorldPresentation> = {
|
||||
rangeLabel: '潮距',
|
||||
cooldownLabel: '回潮',
|
||||
manaCostLabel: '潮息消耗',
|
||||
campSuffix: '潮栖营地',
|
||||
campSuffix: '潮居',
|
||||
itemPrefixes: ['潮纹', '海晕', '霜浪', '天澜', '潮歌', '沧流'],
|
||||
itemInfixes: ['潮', '浪', '汐', '海', '涛', '澜'],
|
||||
skillPrefixes: ['潮', '浪', '汐', '海', '澜', '涌'],
|
||||
@@ -157,7 +182,7 @@ const WORLD_PRESENTATIONS: Record<ThemeMode, WorldPresentation> = {
|
||||
rangeLabel: '界距',
|
||||
cooldownLabel: '复界',
|
||||
manaCostLabel: '裂能消耗',
|
||||
campSuffix: '裂界驻营',
|
||||
campSuffix: '界隙居所',
|
||||
itemPrefixes: ['裂界', '断层', '边潮', '灰域', '界桥', '前哨'],
|
||||
itemInfixes: ['锋', '隙', '锚', '印', '界', '核'],
|
||||
skillPrefixes: ['裂', '断', '界', '相', '折', '迁'],
|
||||
@@ -364,8 +389,7 @@ export function getResourceLabelsForWorld(worldType: WorldType | null | undefine
|
||||
|
||||
|
||||
export function buildCustomCampSceneName(profile: CustomWorldProfile) {
|
||||
const presentation = getWorldPresentation(profile);
|
||||
return `${presentation.itemPrefixes[0]}${presentation.campSuffix}`;
|
||||
return resolveCustomWorldCampScene(profile).name;
|
||||
}
|
||||
|
||||
export function buildThemedSkillName(
|
||||
|
||||
Reference in New Issue
Block a user