再次 清理了一些东西

This commit is contained in:
2025-07-14 17:12:50 +08:00
parent 3a53b5e531
commit a1a6756b6c
14 changed files with 0 additions and 438 deletions

View File

@@ -1,232 +0,0 @@
/*
* 强化系统测试脚本
* 用于验证强化系统是否正常工作
*/
import {
getRandomEnhancementOptions,
getLevelAdjustedEnhancementOptions,
getEnhancementOptionByType,
EnhancementType,
EnhancementOptions,
EnhancementQualityWeight
} from "./LevelUpEnhancement"
import { Quality } from "./CardSet"
// 测试函数
export function testEnhancementSystem(): void {
console.log("=== 强化系统测试开始 ===");
// 测试1: 基础随机生成
testBasicRandomGeneration();
// 测试2: 等级调整功能
testLevelAdjustment();
// 测试3: 特定选项获取
testSpecificOptionRetrieval();
// 测试4: 品质权重验证
testQualityWeights();
// 测试5: 配置完整性
testConfigurationIntegrity();
console.log("=== 强化系统测试完成 ===");
}
// 测试基础随机生成
function testBasicRandomGeneration(): void {
console.log("\n--- 测试基础随机生成 ---");
try {
const options = getRandomEnhancementOptions(3);
console.log(`✓ 成功生成 ${options.length} 个强化选项`);
options.forEach((option, index) => {
console.log(` 选项 ${index + 1}: ${option.name} (${option.rarity}) - ${option.description}`);
});
// 验证选项完整性
options.forEach(option => {
if (!option.name || !option.description || !option.buffType || !option.value) {
throw new Error(`选项数据不完整: ${JSON.stringify(option)}`);
}
});
console.log("✓ 所有选项数据完整");
} catch (error) {
console.error("✗ 基础随机生成测试失败:", error);
}
}
// 测试等级调整功能
function testLevelAdjustment(): void {
console.log("\n--- 测试等级调整功能 ---");
try {
const testLevels = [1, 10, 20, 30];
testLevels.forEach(level => {
const options = getLevelAdjustedEnhancementOptions(level, 3);
console.log(`✓ 等级 ${level} 生成 ${options.length} 个选项`);
// 验证高等级是否有更多稀有品质
const rareCount = options.filter(option =>
option.rarity === "rare" ||
option.rarity === "epic" ||
option.rarity === "legendary"
).length;
console.log(` 稀有品质数量: ${rareCount}`);
});
console.log("✓ 等级调整功能正常");
} catch (error) {
console.error("✗ 等级调整功能测试失败:", error);
}
}
// 测试特定选项获取
function testSpecificOptionRetrieval(): void {
console.log("\n--- 测试特定选项获取 ---");
try {
// 测试攻击力强化
const attackWhite = getEnhancementOptionByType(EnhancementType.ATTACK, Quality.WHITE);
const attackBlue = getEnhancementOptionByType(EnhancementType.ATTACK, Quality.BLUE);
if (attackWhite && attackBlue) {
console.log(`✓ 攻击力强化选项获取成功`);
console.log(` 白色: ${attackWhite.name} - ${attackWhite.description}`);
console.log(` 蓝色: ${attackBlue.name} - ${attackBlue.description}`);
} else {
throw new Error("无法获取攻击力强化选项");
}
// 测试生命值强化
const healthPurple = getEnhancementOptionByType(EnhancementType.HEALTH, Quality.PURPLE);
if (healthPurple) {
console.log(`✓ 生命值强化选项获取成功: ${healthPurple.name}`);
}
// 测试攻击速度强化
const speedOrange = getEnhancementOptionByType(EnhancementType.ATTACK_SPEED, Quality.ORANGE);
if (speedOrange) {
console.log(`✓ 攻击速度强化选项获取成功: ${speedOrange.name}`);
}
console.log("✓ 特定选项获取功能正常");
} catch (error) {
console.error("✗ 特定选项获取测试失败:", error);
}
}
// 测试品质权重验证
function testQualityWeights(): void {
console.log("\n--- 测试品质权重验证 ---");
try {
const totalWeight = Object.values(EnhancementQualityWeight).reduce((sum, weight) => sum + weight, 0);
if (Math.abs(totalWeight - 1.0) < 0.001) {
console.log(`✓ 品质权重总和为 1.0 (实际: ${totalWeight.toFixed(3)})`);
} else {
throw new Error(`品质权重总和不为 1.0: ${totalWeight}`);
}
// 验证权重分布
console.log("品质权重分布:");
Object.entries(EnhancementQualityWeight).forEach(([quality, weight]) => {
const qualityName = getQualityName(parseInt(quality));
console.log(` ${qualityName}: ${(weight * 100).toFixed(1)}%`);
});
console.log("✓ 品质权重验证通过");
} catch (error) {
console.error("✗ 品质权重验证失败:", error);
}
}
// 测试配置完整性
function testConfigurationIntegrity(): void {
console.log("\n--- 测试配置完整性 ---");
try {
const enhancementTypes = Object.values(EnhancementType);
const qualities = [Quality.WHITE, Quality.GREEN, Quality.BLUE, Quality.PURPLE, Quality.ORANGE];
let totalOptions = 0;
let missingOptions = 0;
enhancementTypes.forEach(type => {
qualities.forEach(quality => {
totalOptions++;
const option = EnhancementOptions[type]?.[quality];
if (!option) {
missingOptions++;
console.log(` 缺失: 类型${type} 品质${quality}`);
}
});
});
console.log(`✓ 总选项数: ${totalOptions}`);
console.log(`✓ 缺失选项数: ${missingOptions}`);
console.log(`✓ 完整度: ${((totalOptions - missingOptions) / totalOptions * 100).toFixed(1)}%`);
if (missingOptions === 0) {
console.log("✓ 配置完整性验证通过");
} else {
console.log("⚠ 存在缺失配置,但不影响基本功能");
}
} catch (error) {
console.error("✗ 配置完整性测试失败:", error);
}
}
// 辅助函数:获取品质名称
function getQualityName(quality: number): string {
switch (quality) {
case Quality.WHITE: return "白色";
case Quality.GREEN: return "绿色";
case Quality.BLUE: return "蓝色";
case Quality.PURPLE: return "紫色";
case Quality.ORANGE: return "橙色";
default: return "未知";
}
}
// 性能测试
export function testPerformance(): void {
console.log("\n=== 性能测试开始 ===");
const iterations = 1000;
const startTime = Date.now();
for (let i = 0; i < iterations; i++) {
getRandomEnhancementOptions(3);
}
const endTime = Date.now();
const duration = endTime - startTime;
console.log(`生成 ${iterations} 次强化选项耗时: ${duration}ms`);
console.log(`平均每次耗时: ${(duration / iterations).toFixed(2)}ms`);
if (duration < 1000) {
console.log("✓ 性能测试通过");
} else {
console.log("⚠ 性能较慢,建议优化");
}
}
// 导出测试函数
export function runAllTests(): void {
testEnhancementSystem();
testPerformance();
}

View File

@@ -1,9 +0,0 @@
{
"ver": "4.0.23",
"importer": "typescript",
"imported": true,
"uuid": "75f5e9aa-9f71-47b9-b878-545adb08a0c9",
"files": [],
"subMetas": {},
"userData": {}
}