java 翻牌_CocosCreator之翻牌动画
在游戏中,有时候为了通过一种有意思的途径,让用户在一些物品中随机获取某种物品,除了前面我们提到的使用大转盘抽奖获得,还有一种可以实现类似功能的是抽取卡片。
1.描述
抽卡界面打开时,向用户展示所有卡片的背面,待用户随机点一张卡片后,该卡片会播放一个翻开的动画,然后显示卡片的相关描述等信息。
2.UI搭建
(1)新建一个Button组件,图片设置为牌的背面图
(2)复制5份,排列好,并依次名命如下;
效果图如下:
3.代码
(1)声明一个存放卡片的数组
this.cards = [];//卡片数组
(2)存储卡片置数组中
for (let i = 0; i < 6; i++)
{
self.cards[i] = cc.find("card" + i, obj4);
}
(3)为卡片添加监听事件
findBtn("card" + i, obj4, function ()
{
self.turnCard(i);
})
(4)翻牌操作(翻牌动画)
///翻牌操作
turnCard(idx) {
var self = this;
var scale1 = cc.scaleTo(0.1, 0, 1);
var call1 = app.callFunc(function (adt) {
self.flipCard(idx);
}, [self.cards[idx]]);
var scale2 = cc.scaleTo(0.1, 1, 1)
self.cards[idx].stopAllActions();
self.cards[idx].runAction(cc.sequence(scale1, call1, scale2));
},
(5)翻牌后显示牌正面:这里为了替换牌正面纹理的方便,我们将它保存在Resources/image/card/目录下,并依次命名为1,2,3,4,5,将背面纹理图片命名为0.
//翻开某一张牌后显示牌正面相关信息
flipCardShow(idx) {
//--测试,根据需要赋值
let cardIdx=3;
self.updateCardTexture(this.cards[idx], cardIdx);//更换牌的纹理
//显示牌正面的其他信息
//TODO
},
修改纹理图片方法:
updateCardTexture(img, textureName) {
cc.loader.loadRes("image/card/" + textureName, cc.SpriteFrame, function (err, spriteFrame) {
if (!err) { img.getComponent(cc.Sprite).spriteFrame = spriteFrame; }
});
},
6.当关闭该翻牌面板时,需要将翻牌结果重置未未翻牌状态
//初始化牌
initCard() {
for (let i = 0; i < 6; i++) {
gm.GameData.updateCardTexture(this.cards[i], "0");
}
},
至此,翻牌功能就实现了,写这篇文章的主要目的是分享一个翻牌的动画,即步骤(4)。
标题:CocosCreator之翻牌动画
作者:shirln
地址:https://www.mmzsblog.cn/articles/2019/08/09/1565360665278.html
-----------------------------
如未加特殊说明,此网站文章均为原创。
网站转载须在文章起始位置标注作者及原文连接,否则保留追究法律责任的权利。
公众号转载请联系网站首页的微信号申请白名单!
个人微信公众号 ↓↓↓
java 翻牌_CocosCreator之翻牌动画相关推荐
- Android-通过Java代码来实现属性动画
Android-通过Java代码来实现属性动画 除了能够使用定义xml文件来设置动画之外.还能够使用java代码来进行控制动画. 示比例如以下: 布局文件: <RelativeLayout xm ...
- html文字翻牌效果,css3翻牌效果
原理:通过css3属性-webkit-transform: rotate(0deg)与-webkit-transform: rotate(180deg)对2个元素设置正反面 然后通过有过渡(trans ...
- Java如何隐藏控制按键动画_Java动画短片当不移动鼠标光标时
我有一个非常简单的动画,一个大字体的文字不断(逐个像素)移动到左边.首先将文本转换为图像,然后启动定时器任务,重复(每10-20 ms)将图像的x坐标递减1,并进行重绘(). 这个程序在某些系统上显示 ...
- 歌词查询java_实验10—— java读取歌词文件内容动画输出
1.Read.java packagecn.tedu.demo;importjava.io.BufferedReader;importjava.io.File;importjava.io.FileRe ...
- java基础05 GUI简单动画
制作简单的动画,就是在绘图的基础上用上循环,实现图片的不断重绘,同时用白色消除上一次遍历绘画出来的痕迹 代码实现如下: package GuiTest;import javax.swing.*; im ...
- 点画法和像素处理,使用 Java 2D API 制作艺术动画
本文说明如何通过实现 BufferedImageOp 接口来编写自定义 Java 2D 图像处理类.它使用一个 2D 细胞自动机(CA),即循环空间,来构造图像处理应用程序.CA 会 "操作 ...
- php 翻牌,PHP+jQuery翻牌抽奖
翻板抽奖的实现流程:页面提供6个方块,当抽奖者点击某一块时,方块翻转到背面,显示中奖信息. 下载资源 下载积分: 20 积分 HTML 首先我们在页面上放置6个奖项: 1 2 3 4 5 6 jQue ...
- constrain用法java_Android动画五:ConstraintLayout 通过XML和Java两种方式实现动画
ConstraintLayout 动画的实现有两种方式实现,一种是 XML 方式实现,另外一种是Java,两者各有优点,下面就分别介绍两种实现方式,只要会 ConstraintLayout ,实现都非 ...
- java 绘制动态小球_JavaScript动画实例:动感小球
已知圆的坐标方程为: X=R*SIN(θ) Y=R*COS(θ) (0≤θ≤2π) 将0~2π区间等分48段,即设定间隔dig的值为π/24.θ初始值从0开始,按曲线方程求得坐标值(x,y), ...
最新文章
- 正定小主人机器人_石家庄正定县2015中小学生机器人运动大赛隆重开幕
- Spring 4 使用Freemarker模板发送邮件添加附件
- 用Java创建JMeter变量 - 终极指南
- 双任务延时原理与空闲任务
- 【Python】电商用户复购数据实战:图解Pandas的移动函数shift
- Python面向对象编程基础
- rr计算机专业英语,《计算机专业英语》电子教本8.pdf
- Win7电脑设置定时关机的操作方法
- 在线考试 ajax,关于在线考试使用ajax一问?
- 张大奕网店关联公司被行政处罚:因以不合格产品冒充合格产品
- MongoDB数据库(二):增删查改
- mysql 中文脱敏_怎样选择数据库脱敏系统?
- 主分区、扩展分区、逻辑分区、活动分区
- android触摸 apk,超级触控(流畅触屏)apk
- 支付宝小程序设置服务器维护,支付宝小程序配置
- Unity - Timeline 之 Timeline Playback Controls(Timeline播放控制栏)
- 别让职场形象毁了你的职场前程
- 如何禁用笔记本触摸板
- win10系统重装之u盘装系统,u盘安装win10系统
- Qt实现mqtt客户端和mqtt服务器搭建
热门文章
- plot函数matlab360百科,matlab plot函数用法
- fastjson依赖
- 关于H.264 x264 h264 AVC1之间的那些事
- Windows11初体验——感觉图标变圆润、界面更清爽了
- 51单片机(STC89C52RC) lcd1602 4线接法+经典IO扩展综合实验
- 河南省对口升学计算机专业试卷,河南省2017年普通高等学校对口升学计算机类专业课试题卷...
- JAVA开发面试题_网络_操作系统_JAVA基础_JVM虚拟机
- 提高模型的训练性能(一)
- Flash被全世界抛弃,到底经历了什么
- leetcode每日一题(11.12)----多米诺和托米诺平铺