您的位置:首页 > 编程语言

战斗场景的大致思路以及部分代码

2016-07-29 23:23 281 查看
 首先加载预制件 

判断并把敌人和自己分别放入两个数组

最后loadend函数

loadend函数

每执行一次loadnum++

如果全部加载完成了

获取到Npclayer上所有的子节点

然后sort把子节点根据Y坐标大小进行层级排布

最后调用beginWar函数

beginwar函数

回合数++

文本框更新显示

如果是奇数回合调用fightIn2person (攻击者,被攻击者)

fightIn2person 函数

var node = 攻击者数组的第一个元素

var fightnode = 随机选取被攻击者数组里的一个元素

var basepos = 初始坐标

var targetpos = 目标点坐标

node.runAction(过去攻击再回来)

function countAttack(){

fightnode.getComponent("脚本名").方法名 (node.getComponent.方法名())
}

 node.runAction(

            cc.sequence(

                cc.moveTo(0.5, targetPos),

                cc.callFunc(countAttack),

                cc.moveTo(0.2, basePos),

                cc.callFunc(attackEnd)

            )

        )

        function countAttack(){

            //cc.log('掉血啊')

            fightNode.getComponent('fighter').pub_beHit(

                node.getComponent('fighter').pub_getArr()

            )

        }

        function attackEnd(){

            if(personArr1.length > 0) {

                that._fightIn2Person(personArr1, personArr2)

            }else{

                that._beginWar()

            }

        }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐