栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

第十课 动作系统与计时器

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

第十课 动作系统与计时器

一.按钮回调事件 1.通过GUI添加事件 2.通过脚本添加事件

将beginBtn按钮组件拖动到canvas下的脚本组件loadingTS的begin Btn内

const { ccclass, property } = cc._decorator;

@ccclass
export default class NewClass extends cc.Component {
    @property(cc.Node)
    beginBtn: cc.Node = null;

    onLoad() {
        //内部函数:参数1:事件类型 参数2:回调函数
        this.beginBtn.on(cc.Node.EventType.TOUCH_START, function (event) {
            console.log(event);
            console.log("通过内部回调函数点击了开始按钮");
        })
        //外部函数
        this.beginBtn.on(cc.Node.EventType.TOUCH_START, this.btnClick)
    }
    btnClick() {
        console.log("通过btnClick函数点击了开始按钮")
    }
}
二.预制体prefab

重复使用的资源可以做成预制体,通过动态加载预制体prefab文件夹必须在resources文件夹下.

三.动作 1.ruanAction
const { ccclass, property } = cc._decorator;

@ccclass
export default class NewClass extends cc.Component {
    @property(cc.Node)
    beginBtn: cc.Node = null;
    onLoad() {
        // this.beginBtn.runAction(cc.moveBy(2, cc.v2(0, 300)));
        //执行组合动作
        this.beginBtn.runAction(cc.sequence(
            cc.moveBy(3,cc.v2(0, 300)),//3秒内向上移动300
            cc.scaleBy(2, 3),//2秒内放大3倍
            cc.callFunc(//动作的回调函数
                function () {
                    console.log("动作执行完毕!")
                })
        ))
    }
}
const { ccclass, property } = cc._decorator;

@ccclass
export default class NewClass extends cc.Component {
    @property(cc.Node)
    beginBtn: cc.Node = null;
    onLoad() {
        //.easing进行动作修饰
        //caseIN从第2秒开始由慢变快
        let act1 = cc.moveBy(5, cc.v2(200, 200)).easing(cc.easeIn(2));
        this.beginBtn.runAction(act1);
    }
}
2.cc.tween
const { ccclass, property } = cc._decorator;
@ccclass
export default class NewClass extends cc.Component {
    @property(cc.Node)
    beginBtn: cc.Node = null;
    onLoad() {
        cc.tween(this.beginBtn)
            .to(2, { position: cc.v3(200, 200) })
            .to(2, { position: cc.v3(100, 100) })
            .union()//将前面的动作合成一个动作
            .repeat(3)//将合成后的动作重复3次
            .start()//开始执行动作
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/902564.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号