|
@@ -18,6 +18,7 @@ export class taskServce {
|
|
|
public static guo_ju_qing_binding_event_id:number = -1;
|
|
|
private static isFinishZhaoXiJieTask:boolean = false;
|
|
|
private static finishZhaoXiJieLastEventId:number = -1;
|
|
|
+ private static finishZhaoXiJieLastWidgetId:number = -1;
|
|
|
|
|
|
//子场景
|
|
|
private static mChildSceneData:task_data = null;
|
|
@@ -59,6 +60,7 @@ export class taskServce {
|
|
|
taskServce.guo_ju_qing_binding_event_id = -1;
|
|
|
taskServce.isFinishZhaoXiJieTask = false;
|
|
|
taskServce.finishZhaoXiJieLastEventId = -1;
|
|
|
+ taskServce.finishZhaoXiJieLastWidgetId = -1;
|
|
|
}
|
|
|
|
|
|
public static initZhaoXiJieTask(){
|
|
@@ -406,23 +408,46 @@ export class taskServce {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public static checkFinishZhaoXiJieWidget(widget_id:number) {
|
|
|
+ if(taskServce.mTaskData.type!=config.task_type.zhao_xi_jie) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if(taskServce.isFinishZhaoXiJieTask==false) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if(taskServce.finishZhaoXiJieLastEventId!=-1) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if(widget_id == taskServce.finishZhaoXiJieLastWidgetId) {
|
|
|
+ this.zhaoXiJieDirectFinish(false)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
public static checkFinishZhaoXiJieEventItem(finish_event_item:event_item) {
|
|
|
if(!finish_event_item) { return }
|
|
|
if(taskServce.isFinishZhaoXiJieTask) {
|
|
|
if(finish_event_item.event_id == taskServce.finishZhaoXiJieLastEventId) {
|
|
|
- // console.log('事件完成 事件完成 事件完成 执行')
|
|
|
- gameManager.Singleton.unscheduleAllCallbacks()
|
|
|
- let zhaoxijie_data = taskServce.mTaskData._zhao_xi_jie_data
|
|
|
- ClientEvent.dispatchEvent(config.EventRun.ON_ZHAO_BU_TONG_ALL_FINISH, zhaoxijie_data)
|
|
|
- let id = zhaoxijie_data.finish_event_id
|
|
|
- taskServce.DistributedEvent(taskServce.getEventById(id))
|
|
|
+ this.zhaoXiJieDirectFinish(true)
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public static zhaoXiJieDirectFinish(isDispatchEventTopViewAllHide:boolean) {
|
|
|
+ // console.log('事件完成 事件完成 事件完成 执行')
|
|
|
+ gameManager.Singleton.unscheduleAllCallbacks()
|
|
|
+ let zhaoxijie_data = taskServce.mTaskData._zhao_xi_jie_data
|
|
|
+ ClientEvent.dispatchEvent(config.EventRun.ON_ZHAO_BU_TONG_ALL_FINISH, zhaoxijie_data)
|
|
|
+ if(isDispatchEventTopViewAllHide) {
|
|
|
+ ClientEvent.dispatchEvent(config.EventRun.TOP_VIEW_ALL_HIDE)
|
|
|
+ }
|
|
|
+ let id = zhaoxijie_data.finish_event_id
|
|
|
+ taskServce.DistributedEvent(taskServce.getEventById(id))
|
|
|
+ }
|
|
|
+
|
|
|
public static checkFinishZhaoXiJieTask(widget_id:number){
|
|
|
let isFinish = true;
|
|
|
taskServce.finishZhaoXiJieLastEventId = -1
|
|
|
+ taskServce.finishZhaoXiJieLastWidgetId = -1
|
|
|
for (let index = 0; index < taskServce.mTaskData._zhao_xi_jie_data.widget_id_list.length; index++) {
|
|
|
const element = taskServce.mTaskData._zhao_xi_jie_data.widget_id_list[index];
|
|
|
if(!taskServce.finishZhaoXiJie.get(element.widget_id)){
|
|
@@ -433,6 +458,9 @@ export class taskServce {
|
|
|
if(element.finish_event_id) { // if(element.finish_event_id!=undefined)
|
|
|
taskServce.finishZhaoXiJieLastEventId = element.finish_event_id
|
|
|
}
|
|
|
+ if(element.finish_widget_id) { // if(element.finish_widget_id!=undefined)
|
|
|
+ taskServce.finishZhaoXiJieLastWidgetId = element.finish_widget_id
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -452,9 +480,10 @@ export class taskServce {
|
|
|
if(id==-1){
|
|
|
taskServce.isFinishZhaoXiJieTask = false
|
|
|
taskServce.finishZhaoXiJieLastEventId = -1
|
|
|
+ taskServce.finishZhaoXiJieLastWidgetId = -1
|
|
|
return tools.showToast("未设置全部找完任务的下一个事件!")
|
|
|
}else{
|
|
|
- if(taskServce.finishZhaoXiJieLastEventId==-1) {
|
|
|
+ if(taskServce.finishZhaoXiJieLastEventId==-1&&taskServce.finishZhaoXiJieLastWidgetId==-1) {
|
|
|
// console.log('直接执行了 直接执行了 直接执行了')
|
|
|
taskServce.DistributedEvent(taskServce.getEventById(id))
|
|
|
}
|