Action-所有动作类型的基类
Action动作命令说明
1: Action类是动作命令,我们创建Action,然后节点运行action就能够执行Action的动作
2: Action分为两类
(1) 瞬时就完成的ActionInstant, (2) 要一段时间后才能完成ActionIntervial
3: cc.NoderunAction: 节点运行action
4: cc.moveTo, cc.moveBy To: 目标 By: 变化
5:cc.roateBy, cc.rotateTo
6: cc.scaleBy, cc.scaleTo
7: cc.fadeOut(淡出),cc.fadeIn(淡入): cc.fadeTo()
8: cc.callFunc, cc.delayTime
9:cc.sequnce, cc.repeat, cc.repeatForever
10: Action easing(缓动的方式): 加上缓动特效, cc.easeXXXXX查看文档设置自己想要的缓动对象
11: stopAction: 停止运行action
12:stopAllActions: 停止所有的action
Action具体使用代码示例
cc.Class({
extends: cc.Component,
properties: {
},
onl oad() {
let mto = cc.moveTo(2, cc.v2(100, 100)) //经过2s 移动到指定位置 to 是到这个位置
this.node.runAction(mto)
// let mby = cc.moveBy(2, cc.v2(100, 100)) //by 是变化这么多
// this.node.runAction(mby)
// let rto = cc.rotateBy(1,180) //旋转180
// this.node.runAction(rto)
// let rby = cc.rotateTo(1,180) //旋转180 与上无异
// this.node.runAction(rby)
// 默认 this.node.scale = 1
// this.node.scale = 2
// let sTo = cc.scaleTo(1, 1.1) // 到 原来基础的1.1 以sccale = 1为基准
// this.node.runAction(sTo)
// let sby = cc.scaleBy(1, 1.1) // 变化 以现在状态为 基准
// this.node.runAction(sby)
// this.node.opacity = 0
// let oto = cc.fadeIn(1) //显示
// this.node.runAction(oto)
// let oout = cc.fadeOut(1) //隐藏
// this.node.runAction(oout)
// let oto = cc.fadeTo(1) //隐藏
// this.node.runAction(oto)
// let func = cc.callFunc(function () {
// cc.log("callfunc")
// })
// cc.log("111")
// this.node.runAction(func) //这个最后打印 说明执行机制不是这里
// cc.log("222")
// ---动画依次展示---
// let up = cc.moveBy(1, cc.v2(0, 100))
// this.node.opacity = 0
// let in1 = cc.fadeIn(1)
// let out = cc.fadeOut(1)
// let down = cc.moveBy(1, cc.v2(0, -100))
// let act_que = cc.sequence([in1, up, down, out])
// // this.node.runAction(act_que)
// // ---动画重复展示---
// let repeat = cc.repeatForever(act_que)
// this.node.runAction(repeat)
// ---放慢 回弹--- Easing.backOut
// var r = cc.rotateBy(10, 3600).easing(cc.easeCubicActionOut())
// this.node.runAction(r)
// let leftGo = cc.moveTo(1, cc.v2(100, 0)).easing(cc.easeBackOut())
// this.node.runAction(leftGo)
// 停止指定动作 或 所有动作
// this.node.stopAction(r)
// this.node.stopAllActions()
// 移动后删除
// let del = cc.moveTo(2, cc.v2(100, 100)).easing(cc.easeCubicActionOut())
// let del_fun = cc.callFunc(() => {
// this.node.removeFromParent()
// })
// let seq = cc.sequence([del, del_fun])
// 延迟 delay
// let delay = cc.delayTime(3)
// let del_fun = cc.callFunc(() => {
// this.node.removeFromParent()
// })
// let seq = cc.sequence([delay, del_fun])
// this.node.runAction(seq)
},
start() {
},
// update (dt) {},
});