12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- import { _decorator, Component, EventTouch, Label, Node, UITransform, Vec3 } from 'cc';
- import { att_text_sound_data, bag_item_data } from '../../../data/data';
- import { sound_item } from '../sound_item';
- import { config } from '../../config';
- import { control } from '../control';
- import { ClientEvent } from '../../clientEvent';
- import { Attributes } from '../Attributes';
- const { ccclass, property } = _decorator;
- @ccclass('Text_Sound')
- export class Text_Sound extends Component {
- @property(sound_item) m_sound_item:sound_item = null;
- @property(Node) lab_text:Node = null;
- @property(Node) item_node:Node = null;
- private m_data:att_text_sound_data = null;
- public initView(data:att_text_sound_data){
- this.m_data = data;
- this.m_sound_item.init(false)
- if(this.m_data.sound_data===null){
- this.m_data.sound_data = new bag_item_data
- this.m_data.pos_y = this.item_node.position.y;
- }
- this.updateView(this.m_data)
- this.item_node.on(Node.EventType.TOUCH_MOVE,(et:EventTouch)=>{
- let p = new Vec3(et.getUILocation().x,et.getUILocation().y)
- let n_p = this.node.parent.getComponent(UITransform).convertToNodeSpaceAR(p)
- this.node.position = new Vec3(0,n_p.y);
- this.m_data.pos_y = n_p.y
- Attributes.Singleton.getTextSoundCom().update_att(this.m_data)
- })
- }
- public updateView(data:att_text_sound_data){
- // console.log("Text_Sound",data)
- this.m_data = data;
- if(this.m_data.text.length<=0){
- }else{
- this.lab_text.getComponent(Label).string = this.m_data.text;
- }
- if(this.m_data.pos_y!=0){
- this.item_node.position = new Vec3(this.item_node.position.x,this.m_data.pos_y)
- }
- if(this.m_data.sound_data.url.length>0){
- this.m_sound_item.changeAudio(this.m_data.sound_data,control.mp3_cache.get(this.m_data.sound_data.name))
- }
- }
- }
|