点击空白处退出提示
作品详情
为配合《奔跑吧生态篇》开播,Z视介策划了“奔跑吧生态合伙人”运营活动。利用 Vue Lottie 插件
开发了一款交互性小游戏,玩家可以通过投掷骰子、控制船只前进的方式搜集碎片,合成之后进行抽奖。
项目中的贡献:
1. 通过在Vue组件中集成Lottie动画库,实现了在应用中展示复杂的动画效果,使用Lottie提供的API,控制动画
的播放、暂停和事件触发,与用户的交互行为实现无缝衔接。通过对动画的状态管理和性能优化,保证了动
画的流畅性和高效性。
需求及问题:
当玩家掷骰子产生1-3的随机数,河岸小船动画移动相应的步数,现在需要设置特定的打卡点,
当小船到达这些打卡点时,可以提升玩家中碎片的概率。然而,当连续抛出重复的点数后,出现了骰子动画没
有重新播放的情况
解决办法:
根据视频总帧数、每个打卡点帧数位置和骰子每一步的步长帧数,判断是否到达打卡点,传给后
端,并且使用playSegmentsLottie设定动画开始到结束的帧数来控制动画。bug的解决是通过在骰子动画页面
通过vue-lottie中的addEventListener('complete', ...)添加了一个事件监听器,监听动画播放完成的事件,设置
定时器执行this.anim.destroy()来销毁Lottie动画实例。
2. 抽取弹框共性封装成组件,克服了动态变化的UI需求。根据碎片收集情况实时判断并更新按钮、背景和提示
文字等UI元素,同时能够满足碎片场景中的复杂数据处理和判断逻辑。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论