传送门的一对多点传送程序

来源:互联网 发布:睡女神什么体验 知乎 编辑:程序博客网 时间:2024/06/11 19:53

先在NPC中添加传送门图片,动作中设定为Y+对应场景顺序编号

pub_showTalkInfo:function(ob){

        this.talkPanel.getChildByName('nameLabel').getComponent(cc.Label).string = ob.name
        var arr = ob.msg.split("|")

        this.talkPanel.getChildByName('talkLabel').getComponent(cc.Label).string = arr[ob.num]
        var arr = ob.action.split("")

        if (arr[0] == "Y"){
            cc.log("Y",arr[1])
            var that = this
            cc.loader.loadRes("csv/map",function(err,mapCsv){
                var mapArr = mapCsv.split("\n")
                cc.log(mapArr)
                for (var i = 1 ; i < mapArr.length ; i ++ ){
                    var arr = mapArr[i].split(',')
                    if (arr.length > 3){
                        var deliveryArr = arr[7].split("")
                        if (deliveryArr[0] == "Y"){
                        cc.log("GameData.map",arr[3],deliveryArr[0])
                        that._deliveryWithOb(arr,deliveryArr[1])
                    }
                }
             }
          })
       }

 }

_deliveryWithOb:function(ob,tp){
        var that = this
        cc.loader.loadRes("prefab/delivery", function (err, prefab) {
            var newNode = cc.instantiate(prefab);
            that._ARMS = newNode
            newNode.getChildByName('pic').getComponent(cc.Label).string = ob[7]
            newNode.getChildByName('name').getComponent(cc.Label).string = ob[3]
            newNode.active = true
            that.armsScrollView.active = true
            that._Arr.push(newNode)
            that.armsScrollView.getComponent(cc.ScrollView).content.addChild(newNode)
            that._delivery(newNode,tp)
        });  
    },
    _delivery : function(newNode,ob){
         var that = this
        newNode.getChildByName('deliveryButton').on(cc.Node.EventType.TOUCH_START,function(event){
            cc.log("传送到"+ob)
            cc.find("Script").getComponent("showMap").pub_beginShow(ob)
        })
       
    },

0 0
原创粉丝点击