将必杀技 迁移到 skillconcom ,去除技能释放卡牌

This commit is contained in:
panw
2025-07-14 10:52:43 +08:00
parent 9ebab375a9
commit 377c287eec
8 changed files with 1468 additions and 45 deletions

View File

@@ -0,0 +1,311 @@
# 肉鸽游戏玩家升级强化系统
## 概述
这是一个为肉鸽游戏设计的玩家升级强化选项配置系统。当玩家升级时,系统会提供多个强化选项供玩家选择,每个选项都会永久提升玩家的某项属性。
## 系统特性
### 1. 强化类型
系统支持以下10种强化类型
- **攻击力强化** - 提升基础攻击力
- **生命值强化** - 提升最大生命值
- **攻击速度强化** - 减少攻击冷却时间
- **暴击率强化** - 提升暴击概率
- **暴击伤害强化** - 提升暴击伤害倍率
- **闪避率强化** - 提升闪避概率
- **防御力强化** - 提升伤害减免
- **技能冷却强化** - 减少技能冷却时间
- **技能伤害强化** - 提升技能伤害
- **特殊效果强化** - 提供特殊战斗效果
### 2. 品质系统
每个强化类型都有5个品质等级
- **白色 (Common)** - 40% 出现概率,基础强化
- **绿色 (Uncommon)** - 30% 出现概率,中等强化
- **蓝色 (Rare)** - 20% 出现概率,强力强化
- **紫色 (Epic)** - 8% 出现概率,史诗强化
- **橙色 (Legendary)** - 2% 出现概率,传说强化
### 3. 等级调整
系统会根据玩家等级自动调整强化选项的品质分布:
- 低等级玩家:偏向基础品质
- 高等级玩家20级以上更高概率获得稀有品质
## 文件结构
```
assets/script/game/common/config/
├── LevelUpEnhancement.ts # 核心强化配置
├── LevelUpEnhancementExample.ts # 使用示例
└── README_LevelUpEnhancement.md # 本文档
```
## 使用方法
### 1. 基础使用
```typescript
import {
getRandomEnhancementOptions,
EnhancementType,
Quality
} from "./LevelUpEnhancement"
// 获取3个随机强化选项
const options = getRandomEnhancementOptions(3);
// 获取指定类型和品质的强化选项
const attackOption = getEnhancementOptionByType(EnhancementType.ATTACK, Quality.BLUE);
```
### 2. 等级调整使用
```typescript
import { getLevelAdjustedEnhancementOptions } from "./LevelUpEnhancement"
// 根据玩家等级获取调整后的强化选项
const playerLevel = 25;
const options = getLevelAdjustedEnhancementOptions(playerLevel, 3);
```
### 3. 完整管理器使用
```typescript
import { EnhancementManager, EnhancementUIManager } from "./LevelUpEnhancementExample"
// 创建强化管理器
const enhancementManager = new EnhancementManager(1);
// 创建UI管理器
const uiManager = new EnhancementUIManager(enhancementManager);
// 玩家升级时
enhancementManager.setPlayerLevel(10);
const options = enhancementManager.onPlayerLevelUp();
// 玩家选择强化选项
uiManager.onPlayerSelectOption(0, options);
```
## 强化选项配置
### 攻击力强化示例
```typescript
[EnhancementType.ATTACK]: {
[Quality.WHITE]: {
name: "力量训练",
description: "攻击力 +5",
buffType: BuffAttr.ATK,
value: 5,
icon: "attack_white",
rarity: "common"
},
[Quality.BLUE]: {
name: "战斗大师",
description: "攻击力 +20",
buffType: BuffAttr.ATK,
value: 20,
icon: "attack_blue",
rarity: "rare"
}
// ... 其他品质
}
```
### 攻击速度强化示例
```typescript
[EnhancementType.ATTACK_SPEED]: {
[Quality.GREEN]: {
name: "疾风连击",
description: "攻击速度 +15%",
buffType: BuffAttr.ATK_CD,
value: -15, // 负值表示减少CD
icon: "speed_green",
rarity: "uncommon"
}
}
```
## 强化数值参考
### 攻击力强化
- 白色: +5 攻击力
- 绿色: +12 攻击力
- 蓝色: +20 攻击力
- 紫色: +35 攻击力
- 橙色: +50 攻击力
### 生命值强化
- 白色: +10 生命值
- 绿色: +25 生命值
- 蓝色: +40 生命值
- 紫色: +65 生命值
- 橙色: +100 生命值
### 攻击速度强化
- 白色: +8% 攻击速度
- 绿色: +15% 攻击速度
- 蓝色: +25% 攻击速度
- 紫色: +40% 攻击速度
- 橙色: +60% 攻击速度
## 集成到现有系统
### 1. 与英雄系统集成
```typescript
// 在HeroViewComp.ts的to_update方法中添加
to_update() {
if(!this.is_master) return
// 原有的升级逻辑
oops.message.dispatchEvent(GameEvent.HeroLvUp,{lv:this.lv})
this.lv+=1
this.next_exp=getUpExp(this.lv)
// 新增:触发强化选择
this.triggerEnhancementSelection();
}
private triggerEnhancementSelection() {
const options = getLevelAdjustedEnhancementOptions(this.lv, 3);
// 显示强化选择UI
oops.message.dispatchEvent('ShowEnhancementUI', { options });
}
```
### 2. 与事件系统集成
```typescript
// 监听强化选择事件
this.on('EnhancementSelected', this.onEnhancementSelected, this);
private onEnhancementSelected(option: EnhancementOption) {
// 应用强化效果
this.applyEnhancement(option);
}
private applyEnhancement(option: EnhancementOption) {
switch(option.buffType) {
case BuffAttr.ATK:
this.ap = this.ap * (100 + option.value) / 100;
break;
case BuffAttr.HP:
this.hp_max = this.hp_max * (100 + option.value) / 100;
this.hp = this.hp_max; // 升级时回满血
break;
case BuffAttr.ATK_CD:
this.cd = this.cd * (100 + option.value) / 100;
break;
// ... 其他属性
}
}
```
## 扩展功能
### 1. 添加新的强化类型
```typescript
// 在EnhancementType中添加新类型
export const EnhancementType = {
// ... 现有类型
NEW_TYPE: 11, // 新强化类型
}
// 在EnhancementOptions中添加配置
export const EnhancementOptions = {
// ... 现有配置
[EnhancementType.NEW_TYPE]: {
[Quality.WHITE]: {
name: "新强化",
description: "新效果",
buffType: BuffAttr.NEW_BUFF,
value: 10,
icon: "new_white",
rarity: "common"
}
// ... 其他品质
}
}
```
### 2. 自定义品质权重
```typescript
// 修改品质权重
export const CustomQualityWeight = {
[Quality.WHITE]: 0.5, // 提高白色品质概率
[Quality.GREEN]: 0.25,
[Quality.BLUE]: 0.15,
[Quality.PURPLE]: 0.08,
[Quality.ORANGE]: 0.02,
}
```
### 3. 条件强化
```typescript
// 根据游戏状态调整强化选项
export function getConditionalEnhancementOptions(
playerLevel: number,
gameState: any,
count: number = 3
): EnhancementOption[] {
let options = getLevelAdjustedEnhancementOptions(playerLevel, count);
// 根据游戏状态过滤或调整选项
if (gameState.isBossFight) {
// Boss战中提供更多防御选项
options = options.filter(option =>
option.buffType === BuffAttr.DEF ||
option.buffType === BuffAttr.HP
);
}
return options;
}
```
## 测试和调试
### 1. 运行示例
```typescript
import { runEnhancementExamples } from "./LevelUpEnhancementExample"
// 运行所有示例
runEnhancementExamples();
```
### 2. 预览所有选项
```typescript
import { EnhancementPreviewTool } from "./LevelUpEnhancementExample"
// 预览所有强化选项
EnhancementPreviewTool.previewAllEnhancements();
// 测试随机生成
EnhancementPreviewTool.testRandomGeneration();
// 测试等级调整
EnhancementPreviewTool.testLevelAdjustment();
```
## 注意事项
1. **数值平衡**: 强化数值需要根据游戏整体平衡进行调整
2. **UI集成**: 需要创建相应的UI界面来显示强化选项
3. **数据持久化**: 强化效果需要保存到玩家数据中
4. **兼容性**: 确保与现有的Buff系统兼容
5. **测试**: 充分测试各种强化组合的效果
## 更新日志
- **v1.0.0**: 初始版本,包含基础强化系统
- 支持10种强化类型
- 支持5个品质等级
- 支持等级调整功能
- 提供完整的使用示例和工具