123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- import { _decorator, Component, Label, Node, Rect, UITransform, Vec2 } from 'cc';
- import { ClientEvent } from '../../clientEvent';
- import { config } from '../../config';
- import { img_item } from '../img_item';
- import { base_res } from '../base_res';
- import { bag_item_data, ui_att_item } from '../../../data/data';
- import { Attributes } from '../Attributes';
- const { ccclass, property } = _decorator;
- @ccclass('receive_res_item')
- export class receive_res_item extends Component {
- @property(Node) btn_clear_res:Node = null;
- private m_data:ui_att_item = null;
- private widget_type = config.attributes_list_type.top;
- public initView(data:ui_att_item,type=config.attributes_list_type.top){
- this.widget_type = type;
- this.m_data = data;
- if(this.m_data.res_name.length>0){
- this.getLabel().getComponent(Label).string = this.m_data.res_name
- }else{
- this.getLabel().getComponent(Label).string ="无"
- }
- }
- start() {
- ClientEvent.on(config.Event.DragResEndOnCheck,this.DragResEndOnCheck,this)
- this.btn_clear_res.on(Node.EventType.TOUCH_END, ()=>{
- this.m_data.res = '';
- this.m_data.res_name = '';
- let lab = this.getLabel()
- if(lab!=null){
- lab.getComponent(Label).string = "无"
- }
- ClientEvent.dispatchEvent(config.Event.UpdateAttributesToView,Attributes.Singleton.get_cur_att_data(),this.widget_type)
- })
- }
- protected onDestroy(): void {
- ClientEvent.off(config.Event.DragResEndOnCheck,this.DragResEndOnCheck,this)
- this.unscheduleAllCallbacks()
- }
- public getRect(){
- let size = this.node.getComponent(UITransform).contentSize;
- let pos = this.node.parent.getComponent(UITransform).convertToWorldSpaceAR(this.node.position);
- let rect = new Rect(pos.x-size.width/2,pos.y-size.height/2,size.width,size.height)
- return rect;
- }
- getParentIsShow(){
- let parent = this.node.parent;
- let count = 0;
- while(parent!=null){
- if(!parent.active){
- return false;
- }
- parent = parent.parent;
- count ++;
- if(count>=10){
- return true;
- }
- }
- return true;
- }
- DragResEndOnCheck(v2:Vec2,node:Node){
- let is_show = this.getParentIsShow();
- console.log("DragResEndOnCheck",is_show)
- if(this.getRect().contains(v2)&&is_show){
- let type = node.getComponent(base_res).getType()
- if(type===config.select_res_btn_type.SOUND_LIST){
- }else{
-
- let temp_data = node.getComponent(img_item).getData()
- this.m_data.res = temp_data.url;
- this.m_data.res_name = temp_data.name;
- let lab = this.getLabel()
- if(lab!=null){
- lab.getComponent(Label).string = this.m_data.res_name;
- }
- ClientEvent.dispatchEvent(config.Event.UpdateAttributesToView,Attributes.Singleton.get_cur_att_data(),this.widget_type)
- }
- }
- }
- getLabel(){
- return this.node.getChildByPath("Sprite/Label")
- }
- }
|