import { _decorator, Color, Component, EventTouch, instantiate, Label, Node, Prefab, UITransform, Vec3 } from 'cc'; import { Attributes } from '../Attributes'; import { event_item, widget_item_data } from '../../../data/data'; import { config } from '../../config'; const { ccclass, property } = _decorator; @ccclass('search_node') export class search_node extends Component { @property(Node) btn_close:Node = null; @property(Node) content:Node = null; @property(Prefab) item_prefab:Prefab = null; @property(Node) scrollView:Node = null; private m_event_item: event_item; private m_id:number = 0; public show(eventItem: event_item){ this.m_event_item = eventItem let search = eventItem.event_id.toString() this.node.active = true; this.btn_close.on(Node.EventType.TOUCH_END,()=>{ this.close() }) this.m_id = parseInt(search) this.content.removeAllChildren() let search_data = this.getCurSearchType() let item = instantiate(this.item_prefab) item.parent = this.content; item.getComponent(Label).color = Color.MAGENTA if(search_data==null){ item.getComponent(Label).string = "当前搜索的id不存在" }else{ if(search_data.type==0){ item.getComponent(Label).string = `您查找的是控件.\n 控件id:${search_data.widget.att.id}.控件名称:${search_data.widget.name}` this.finAboutWidgetList(search_data.widget) }else{ item.getComponent(Label).string = `您查找的是事件.\n 事件id:${search_data.event.event_id}.事件名称:${search_data.event.event_name}` this.finAboutEventList(search_data.event) } } this.scrollView.off(Node.EventType.TOUCH_MOVE) // this.scrollView.on(Node.EventType.TOUCH_MOVE,(et:EventTouch)=>{ // let p = new Vec3(et.getUILocation().x,et.getUILocation().y) // let n_p = this.scrollView.parent.getComponent(UITransform).convertToNodeSpaceAR(p) // this.scrollView.position = n_p; // }) if(search_data!=null) { this.showBinding(search_data) } this.showNextSuccessTrigger() } private showBinding(search_data) { let c_event_item:event_item = search_data.event if(c_event_item==null){ return } let c_text = "" let c_data switch (c_event_item.type) { case config.event_type.play_ani: //0播放动画 c_data = c_event_item.event_item_play_ani_data c_text = `id:${c_data.binding_widget_id} 选中的动画id:${c_data.ani_id}` break; case config.event_type.top_view: //1弹窗 c_text = `${c_event_item.event_item_top_view_data.binding_ui_id}` break; case config.event_type.top_view_hide: //23弹窗隐藏 c_text = `${c_event_item.event_item_top_view_hide_data.binding_ui_id}` break; case config.event_type.text_sound: //2出现文字及语音 c_text = `${c_event_item.event_item_text_sound_data.binding_widget_id}` break; case config.event_type.change_one_item_status: //3改变指定道具资源 c_text = `${c_event_item.event_item_change_one_item_status_data.binding_widget_id}` break; case config.event_type.show_new_item://4出现新道具 c_text = `${c_event_item.event_item_show_new_item_data.binding_widget_id}` break; case config.event_type.show_question_select://5出现问题选择 c_text = `${c_event_item.event_item_show_question_select_data.binding_widget_id}` break; case config.event_type.start_event://6开始事件 c_text = `${c_event_item.event_item_start_event_data.binding_event_id}` break; case config.event_type.collect_event://7收集事件 多组件完成触发 c_data = c_event_item.event_item_collect_event_data for(let index = 0; index0) { for(let index = 0; index