《Cocos Creator游戏实战》像素换装实现原理

在线体验地址

https://la-vie-est-belle.github.io/DressUp/

Cocos Store 购买地址:
https://store.cocos.com/app/detail/6752

运行效果

在这里插入图片描述


开发环境

编辑器版本:3.8.3
开发语言:TypeScript

实现思路

重点来看下层级管理器中的Player节点。
Player节点

Player及其各个子节点都是Sprite类型的节点,每个节点的Size Mode都是Custom,且大小和图片大小一样。不能设置为TRIMMED,否则各个图片被剪切了的话那换装就会错位了。
在这里插入图片描述

Player节点上的图片是这样的,保持不变。
Player节点上的图片

如果要变换武器的话就先将各个武器图片放在resources文件夹中。
在这里插入图片描述
然后添加按钮,并给每个按钮添加上事件。
武器切换按钮
按钮事件

事件函数编写如下,主要就是根据自定义传入的数据,加载对应的图片。如果是默认按钮,把图片清空就行了。

dress(e: EventTouch, data:string) {
    let part = data.split('-')[0]       // 部位
    let style = data.split('-')[1]      // 样式
    
    // 眼睛默认的话应该是用默认的图片,而不是空
    if (part != 'eye' && style == 'mo_ren') {
        this.player.getChildByName(part).getComponent(Sprite).spriteFrame = null
    }
    
    // 加载对应的图片即可
    else {
        var self = this
        resources.load(`${part}/${style}/spriteFrame`, SpriteFrame, (err, spriteFrame) => { 
            self.player.getChildByName(part).getComponent(Sprite).spriteFrame = spriteFrame
        })
    }

    this.audioSource.playOneShot(this.clickAudio)
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

la_vie_est_belle

谢谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值