feat(战斗系统): 实现怪物金币掉落计算和抽卡升级消耗

- 添加calculateMonsterGold函数计算不同怪物类型的金币掉落
- 修改SingletonModuleComp初始化金币为0并添加抽卡和升级消耗
- 在MissionCardComp中添加抽卡和升级的金币检查逻辑
- 清理FightSet中无用配置并添加金币相关常量
- 在MissionComp中实现金币奖励计算和局内数据初始化
This commit is contained in:
walkpan
2026-01-15 23:32:57 +08:00
parent d6ce56e543
commit 90e6bd755a
6 changed files with 3884 additions and 3702 deletions

View File

@@ -4,7 +4,7 @@ import { CCComp } from "../../../../extensions/oops-plugin-framework/assets/modu
import { oops } from "../../../../extensions/oops-plugin-framework/assets/core/Oops";
import { GameEvent } from "../common/config/GameEvent";
import { smc } from "../common/SingletonModuleComp";
import { CardType } from "../common/config/GameSet";
import { CardType, FightSet } from "../common/config/GameSet";
import { getCardOptions, ICardInfo } from "../common/config/CardSet";
const { ccclass, property } = _decorator;
@@ -192,11 +192,26 @@ export class MissionCardComp extends CCComp {
* 显示等级对应的卡牌(正常升级模式)
*/
private showLevelCards(level: number) {
if(smc.vmdata.gold < smc.vmdata.chou_gold){
oops.gui.toast("金币不足")
return
}
smc.vmdata.gold -= smc.vmdata.chou_gold
this.curCardType = null; // 混合模式,无单一类型
this.fetchCards(level);
this.openUI();
}
private do_hero_lv_up(){
if(smc.vmdata.gold < smc.vmdata.lvup_gold){
oops.gui.toast("金币不足")
return
}
smc.vmdata.hero.lv++
smc.vmdata.gold -= smc.vmdata.lvup_gold
smc.vmdata.lvup_gold += FightSet.LVUP_GOLD_UP*smc.vmdata.hero.lv
oops.gui.toast("升级成功")
oops.message.dispatchEvent(GameEvent.HeroLvUp,{lv:smc.vmdata.hero.lv})
}
private openUI() {
this.node.active = true;
this.hasSelected = false;