future 1 жил өмнө
parent
commit
a5392be9d4

+ 1 - 0
assets/data/data.ts

@@ -531,6 +531,7 @@ export class event_stop_active_event_item extends base_event_item{ // 不激活
 }
 export class event_collect_event_item extends base_event_item{ // 收集多个事件完成
     public event_id_list:number[] = []
+    public is_alone:boolean = false; //是否单独一个
 }
 export class event_item_countdown_over extends base_event_item{ //倒计时结束
     public binding_widget_id:number = -1; //绑定某一个UI

+ 20 - 20
assets/scene/game.scene

@@ -93,7 +93,7 @@
     "_lpos": {
       "__type__": "cc.Vec3",
       "x": 540,
-      "y": 960,
+      "y": 960.0000000000002,
       "z": 0
     },
     "_lrot": {
@@ -178,7 +178,7 @@
     "_priority": 0,
     "_fov": 45,
     "_fovAxis": 0,
-    "_orthoHeight": 960,
+    "_orthoHeight": 960.0000000000001,
     "_near": 0,
     "_far": 1000,
     "_color": {
@@ -347,7 +347,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -651,7 +651,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -1167,7 +1167,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -2016,7 +2016,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -4211,7 +4211,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -4272,7 +4272,7 @@
     "_lpos": {
       "__type__": "cc.Vec3",
       "x": -540,
-      "y": -960,
+      "y": -960.0000000000001,
       "z": 0
     },
     "_lrot": {
@@ -4311,7 +4311,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -5150,7 +5150,7 @@
     "_lpos": {
       "__type__": "cc.Vec3",
       "x": 0,
-      "y": 860,
+      "y": 860.0000000000001,
       "z": 0
     },
     "_lrot": {
@@ -5532,7 +5532,7 @@
     "_lpos": {
       "__type__": "cc.Vec3",
       "x": -421,
-      "y": 818,
+      "y": 818.0000000000001,
       "z": 0
     },
     "_lrot": {
@@ -9121,7 +9121,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -9327,7 +9327,7 @@
     "_lpos": {
       "__type__": "cc.Vec3",
       "x": -540,
-      "y": -960,
+      "y": -960.0000000000001,
       "z": 0
     },
     "_lrot": {
@@ -9366,7 +9366,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -14900,7 +14900,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -24339,7 +24339,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -24432,7 +24432,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -24601,7 +24601,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -24653,7 +24653,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -24774,7 +24774,7 @@
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1080,
-      "height": 1920
+      "height": 1920.0000000000002
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",

+ 54 - 20
assets/script/run/TaskSchedule/taskServce.ts

@@ -15,6 +15,7 @@ export class taskServce {
     private static finishZhaoXiJie:Map<number,boolean> = new Map;
     private static finishDaGuai:Map<number,boolean> = new Map;
     private static cur_collect_event:event_item = null;
+    private static cur_only_collect_event:event_item = null;
     public static guo_ju_qing_binding_event_id:number = -1;
     private static isFinishZhaoXiJieTask:boolean = false;
     private static finishZhaoXiJieLastEventId:number = -1;
@@ -57,6 +58,7 @@ export class taskServce {
         taskServce.finishDaGuai.clear()
         taskServce.finishZhaoXiJie.clear();
         taskServce.cur_collect_event = null;
+        taskServce.cur_only_collect_event = null;
         taskServce.guo_ju_qing_binding_event_id = -1;
         taskServce.isFinishZhaoXiJieTask = false;
         taskServce.finishZhaoXiJieLastEventId = -1;
@@ -162,14 +164,35 @@ export class taskServce {
                 ClientEvent.dispatchEvent(config.EventRun.NOTICE_EVENT,event.event_item_show_question_select_data.binding_widget_id,event)
             break;
             case config.event_type.collect_event:
-                taskServce.cur_collect_event = new event_item;
-                taskServce.cur_collect_event.event_id = event.event_id;
-                taskServce.cur_collect_event.type = event.type;
-                taskServce.cur_collect_event.event_item_collect_event_data = new event_collect_event_item
-                for (let index = 0; index < event.event_item_collect_event_data.event_id_list.length; index++) {
-                    const element = event.event_item_collect_event_data.event_id_list[index];
-                    taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.push(element)
+                let event_id_list = event.event_item_collect_event_data.event_id_list
+                let is_alone = event.event_item_collect_event_data.is_alone
+                if(is_alone==undefined||is_alone==null) {
+                    is_alone =false
                 }
+                if(is_alone) {
+                    taskServce.cur_only_collect_event = new event_item;
+                    taskServce.cur_only_collect_event.event_id = event.event_id;
+                    taskServce.cur_only_collect_event.type = event.type;
+                    taskServce.cur_only_collect_event.event_item_collect_event_data = new event_collect_event_item
+                    for (let index = 0; index < event_id_list.length; index++) {
+                        const element = event_id_list[index];
+                        taskServce.cur_only_collect_event.event_item_collect_event_data.event_id_list.push(element)
+                    }
+                    // console.log('唯一 收集事件:',taskServce.cur_only_collect_event.event_item_collect_event_data.event_id_list)
+                    
+                } else {
+                    taskServce.cur_collect_event = new event_item;
+                    taskServce.cur_collect_event.event_id = event.event_id;
+                    taskServce.cur_collect_event.type = event.type;
+                    taskServce.cur_collect_event.event_item_collect_event_data = new event_collect_event_item
+                    for (let index = 0; index < event_id_list.length; index++) {
+                        const element = event_id_list[index];
+                        taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.push(element)
+                    }
+                    // console.log('普通 收集事件:',taskServce.cur_collect_event.event_item_collect_event_data.event_id_list
+                }
+                
+                // 之前的
                 // console.log("collect_event--",taskServce.cur_collect_event)
                 // for (let index = 0; index < taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.length; index++) {
                 //     const element = taskServce.cur_collect_event.event_item_collect_event_data.event_id_list[index];
@@ -337,22 +360,33 @@ export class taskServce {
             return
         }
         let event = this.exeWidgeTaskDic.get(widget_id)
-        if(taskServce.cur_collect_event!=null){
-            if(event!=null){
-                let e_index = taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.indexOf(event.event_id)
-                if(e_index!=-1){
-                    taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.splice(e_index,1)
+        if(taskServce.cur_only_collect_event!=null && event!=null ) {
+            let e_index = taskServce.cur_only_collect_event.event_item_collect_event_data.event_id_list.indexOf(event.event_id)
+            if(e_index!=-1){
+                taskServce.cur_only_collect_event.event_item_collect_event_data.event_id_list.splice(e_index,1)
+            }
+            if(taskServce.cur_only_collect_event.event_item_collect_event_data.event_id_list.length<=0){
+                ClientEvent.dispatchEvent(config.EventRun.ON_WIDGET_FINISH_COLLECT_EVENT,taskServce.cur_only_collect_event.event_id)
+                let collect_event = taskServce.getEventById(taskServce.cur_only_collect_event.event_id)
+                if(collect_event.success.trigger_event_id!=-1){
+                    taskServce.exeNextDelayEvent(collect_event)
                 }
-                if(taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.length<=0){
-                    ClientEvent.dispatchEvent(config.EventRun.ON_WIDGET_FINISH_COLLECT_EVENT,taskServce.cur_collect_event.event_id)
-                    let collect_event = taskServce.getEventById(taskServce.cur_collect_event.event_id)
-                    if(collect_event.success.trigger_event_id!=-1){
-                        taskServce.extEventByEventId(collect_event.success.trigger_event_id)
-                    }
-                    console.log("ON_WIDGET_FINISH_COLLECT_EVENT event",collect_event)
+                console.log("唯一 ON_WIDGET_FINISH_COLLECT_EVENT event",collect_event)
+            }
+        }
+        if(taskServce.cur_collect_event!=null && event!=null){
+            let e_index = taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.indexOf(event.event_id)
+            if(e_index!=-1){
+                taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.splice(e_index,1)
+            }
+            if(taskServce.cur_collect_event.event_item_collect_event_data.event_id_list.length<=0){
+                ClientEvent.dispatchEvent(config.EventRun.ON_WIDGET_FINISH_COLLECT_EVENT,taskServce.cur_collect_event.event_id)
+                let collect_event = taskServce.getEventById(taskServce.cur_collect_event.event_id)
+                if(collect_event.success.trigger_event_id!=-1){
+                    taskServce.extEventByEventId(collect_event.success.trigger_event_id)
                 }
+                console.log("普通 ON_WIDGET_FINISH_COLLECT_EVENT event",collect_event)
             }
-            // console.log("event", taskServce.cur_collect_event.event_item_collect_event_data.event_id_list)
         }
 
         let id =  taskServce.exeNextEvent(event)