修改了挺多, 继续完善 战斗流程设计
This commit is contained in:
@@ -3,7 +3,7 @@ import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ec
|
||||
import { CCComp } from "../../../../extensions/oops-plugin-framework/assets/module/common/CCComp";
|
||||
import { smc } from "../common/SingletonModuleComp";
|
||||
import { oops } from "../../../../extensions/oops-plugin-framework/assets/core/Oops";
|
||||
import { MissionData, Missions, MissionStatus} from "../common/config/Mission";
|
||||
import { FightSet, MissionData, Missions, MissionStatus} from "../common/config/Mission";
|
||||
import { Timer } from "../../../../extensions/oops-plugin-framework/assets/core/common/timer/Timer";
|
||||
import { GameEvent } from "../common/config/GameEvent";
|
||||
import { HeroViewComp } from "../hero/HeroViewComp";
|
||||
@@ -21,21 +21,42 @@ export class MissionComp extends CCComp {
|
||||
reward:number = 0;
|
||||
reward_num:number = 0;
|
||||
GlodAddTimer:Timer = new Timer(1);
|
||||
waveTimer:Timer = new Timer(10);
|
||||
normal_max_wave:number = 10;
|
||||
is_fight:boolean = false;
|
||||
onLoad(){
|
||||
this.on(GameEvent.MissionStart,this.mission_start,this)
|
||||
this.on(GameEvent.FightEnd,this.fight_end,this)
|
||||
this.on(GameEvent.MissionEnd,this.mission_end,this)
|
||||
this.on(GameEvent.CardsClose,this.after_used_skill_card,this)
|
||||
this.on(GameEvent.WaveUpdate,this.on_mon_wave_update,this)
|
||||
}
|
||||
|
||||
protected update(dt: number): void {
|
||||
if(!smc.mission.play||smc.mission.pause){
|
||||
return
|
||||
}
|
||||
if(this.GlodAddTimer.update(dt)){
|
||||
smc.vmdata.mission_data.gold+=smc.vmdata.mission_data.add_gold
|
||||
if(smc.vmdata.mission_data.in_fight){
|
||||
smc.vmdata.mission_data.fight_time+=dt
|
||||
if(this.GlodAddTimer.update(dt)){
|
||||
smc.vmdata.mission_data.gold+=(smc.vmdata.mission_data.add_gold+smc.vmdata.mission_data.buff_add_gold)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
private on_mon_wave_update(){
|
||||
smc.vmdata.mission_data.current_wave++
|
||||
console.log("[任务系统] 当前波次 :",smc.vmdata.mission_data.current_wave)
|
||||
switch(smc.vmdata.mission_data.current_wave){
|
||||
case FightSet.FRIND_WAVE_UP:
|
||||
this.to_hero_select()
|
||||
break
|
||||
case 2:
|
||||
break
|
||||
case 3:
|
||||
}
|
||||
}
|
||||
|
||||
async mission_start(){
|
||||
@@ -60,15 +81,10 @@ export class MissionComp extends CCComp {
|
||||
after_used_skill_card(){
|
||||
switch(smc.mission.status){
|
||||
case MissionStatus.ready_skill_select:
|
||||
console.log("next to_hero_select")
|
||||
console.log("next => to_fight")
|
||||
this.scheduleOnce(()=>{
|
||||
this.to_hero_select()
|
||||
this.to_fight()
|
||||
},0.3)
|
||||
|
||||
break
|
||||
case MissionStatus.ready_hero_select:
|
||||
console.log("netx to_fight")
|
||||
this.to_fight()
|
||||
break
|
||||
case MissionStatus.playing:
|
||||
break
|
||||
@@ -82,6 +98,7 @@ export class MissionComp extends CCComp {
|
||||
|
||||
to_fight(){
|
||||
smc.mission.status=MissionStatus.playing
|
||||
smc.vmdata.mission_data.in_fight=true
|
||||
oops.message.dispatchEvent(GameEvent.FightStart)
|
||||
}
|
||||
|
||||
@@ -99,9 +116,11 @@ export class MissionComp extends CCComp {
|
||||
this.cleanComponents()
|
||||
}, 0.5)
|
||||
}
|
||||
|
||||
mission_end(){
|
||||
this.node.active=false
|
||||
}
|
||||
|
||||
data_init(){
|
||||
//局内数据初始化
|
||||
console.log("局内数据初始化")
|
||||
@@ -121,12 +140,13 @@ export class MissionComp extends CCComp {
|
||||
}
|
||||
|
||||
card_refresh(){
|
||||
if(smc.vmdata.mission_data.gold< smc.vmdata.mission_data.refresh_gold){
|
||||
let mission_data=smc.vmdata.mission_data
|
||||
if(mission_data.gold < (mission_data.refresh_gold+mission_data.buff_refresh_gold)){
|
||||
oops.gui.toast("金币不足", false);
|
||||
return
|
||||
}
|
||||
oops.message.dispatchEvent(GameEvent.CardRefresh)
|
||||
smc.vmdata.mission_data.gold-=smc.vmdata.mission_data.refresh_gold
|
||||
mission_data.gold-=(mission_data.refresh_gold+mission_data.buff_refresh_gold)
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user