最近做了个模仿捕鱼里金币掉落,弹两下旋转然后被炮塔吸过去的效果,这个是生成金币的脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class Timer : MonoBehaviour
{GameObject canv;//得分public int score;//生成金币数量int coinNum;void Start(){       canv = GameObject.FindGameObjectWithTag("Canvas");//_coinOfY = _creat.position.y;//_coinOfX = _creat.position.x+100f;oddOffsetX = _creat.position.x;oddOffsetY = _creat.position.y + 100f;coinNum = score / 100;evenOffsetX = _creat.position.x;evenOffsetY = _creat.position.y + 100f;StartCoroutine(StartCon());}/// <summary>/// 生成点(鱼死亡位置)/// </summary>public Transform _creat;/// <summary>/// 金币预制体/// </summary>public GameObject _prefabCoin;//float _coinOfY,_coinOfX;//奇数/偶数偏移量float oddOffsetX, oddOffsetY, evenOffsetX, evenOffsetY;//当前金币int current;IEnumerator StartCon(){while (true){yield return new WaitForSeconds(0.05f);//偶数项        print(coinNum);if (coinNum % 2 == 0){evenOffsetX += 100f;//evenOffsetY += 100f;//上排GameObject obj = Instantiate(_prefabCoin, new Vector2(evenOffsetX, evenOffsetY + 100f), Quaternion.identity) as GameObject;//下排GameObject obj1 = Instantiate(_prefabCoin, new Vector2(evenOffsetX, evenOffsetY), Quaternion.identity) as GameObject;obj.transform.parent = canv.transform;obj1.transform.parent = canv.transform;current += 2;print("生成" + coinNum + "个金币---");}//奇数项if (coinNum % 2 != 0){//if (coinNum > 10)//{//    print("大于10");//}oddOffsetX += 100f;//oddOffsetY += 100f;GameObject obj = Instantiate(_prefabCoin, new Vector2(oddOffsetX, oddOffsetY), Quaternion.identity) as GameObject;obj.transform.parent = canv.transform;current++;print("生成" + coinNum + "个金币+++");}if (current > coinNum - 1){StopAllCoroutines();print("准备退出");break;}}}
}

这个是金币的跳跃和移动

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class CoinMove : MonoBehaviour
{/// <summary>/// 目标位置/// </summary>Transform _target;/// <summary>/// 开始时金币生成的位置/// </summary>Vector3 _startPosition;void Start(){        _startPosition = transform.position;Init();}public void Init(){_target = GameObject.FindWithTag("Player").transform;}void Update(){        ControllerJump();        }bool _isCanJump = true;float _jumpCount = 2;float _jumpCountMax = 2;//高度public float offsetY;void ControllerJump(){        if (_jumpCount > 0){if (_isCanJump){transform.position = Vector3.MoveTowards(transform.position,new Vector3(_startPosition.x, _startPosition.y + offsetY*_jumpCount/_jumpCountMax, _startPosition.z), Time.deltaTime * 800);//print("start Y轴为" + _startPosition.y + offsetY * _jumpCount / _jumpCountMax + "金币Y轴为" + transform.position.y);if (transform.position.y == _startPosition.y + offsetY * _jumpCount / _jumpCountMax){_isCanJump = !_isCanJump;//print("_jumpCount为" + _jumpCount+"开始下落");}}if (!_isCanJump){transform.position = Vector3.MoveTowards(transform.position, _startPosition,  Time.deltaTime * 800);//print("上升start Y轴为" + _startPosition.y + "金币Y轴为" + transform.position.y);if (transform.position.y == _startPosition.y){_isCanJump = !_isCanJump;_jumpCount--;//print("_jumpCount为" + _jumpCount+"开始上升");}}           }if (_jumpCount == 0){StartCoroutine("CoinOfMove");}}//缩小倍率float ScaleNum=0.3f ;IEnumerator CoinOfMove(){yield return new WaitForSeconds(0.8f);transform.position = Vector3.MoveTowards(transform.position, _target.position, Time.deltaTime * 1500);transform.localScale -= new Vector3(ScaleNum * Time.deltaTime, ScaleNum * Time.deltaTime, ScaleNum * Time.deltaTime);}//void OnTriggerEnter2D(Collider2D other)//{//    if (other.tag=="Pleyer")//    {//        print("1");//        Destroy(gameObject);//    }//}}

代码没啥优化只是勉强实现功能,还有没实现的
遇到好多坑,留这以后看一下自己多蠢

捕鱼里金币掉落的效果相关推荐

  1. AE-用particular制作金币掉落或者红包掉落或者樱花飘落的效果

    1.新建纯色固态层,给图层应用particular效果,制作这个效果一般用到一下关键的几项参数,这里以制作金币掉落为参考 在制作的过程中需要注意,选用"盒子发射器"的话,先将发射器 ...

  2. 文字描边_如何在网页里实现文字描边效果

    文字描边 想要在网页里实现文本描边效果,在以前只能使用Photoshop等来实现,但现在只需要一个text-stroke属性,即可轻松做到文本描边,渐变文本描边,甚至图片文本描边. 01 语法 tex ...

  3. 钱币掉落动画android,mpvue实现小程序签到金币掉落动画(api实现)

    这里使用小程序自带的api来实现,用小程序来写动画的恶心点在于,没有帧,只能用setimeout 来作为帧来使用, 下面是实现代码, 下面是简单用div代替了图片,需要什么图片,可以自行替换相应的di ...

  4. html怎么制作图片滚动文字效果,新手请看:网店店铺里的滚动文字效果代码是如何制作的...

    下面第5点是原始内容,我先试验了多行文字滚动,一通则百通,会一个了,那其它的你们可以自己试试. 多行文本向上滚动无限次 <marquee scrollamount="2" d ...

  5. Unity学习笔记之用粒子系统实现类似金币飞入金币条动画效果

    耗时两天半终于完成了这个功能!先来看看最终效果! 其中粒子速度,粒子数量, 扩散效果等参数都可以在粒子系统参数里调整~总之就是都是可控的!美术想要啥效果让他们自己调去! 首先来讲一下用粒子系统来做这个 ...

  6. Fiori里花瓣的动画效果实现原理

    Fiori里的busy dialog有两种表现形式,一种是下图里的flower形状,由5个花瓣组成.另一种是下图的3/4个圆环的效果. 关于前者的效果,可以看这个video.这个video是手动将de ...

  7. 花瓣动画效果html,Fiori里花瓣的动画效果实现原理

    Fiori里的busy dialog有两种表现形式,一种是下图里的花朵形状,由5个不断旋转的花瓣组成.另一种是下图的3/4个圆环不断旋转的效果. 关于前者的效果,可以看我制作的这个视频.这个视频是手动 ...

  8. 智慧城市兴起,让我们看看智慧城市里面的3D可视化效果

    何谓智慧城市,智慧城市概念最早源于20世纪90年代的"新城市主义"和"精明增长"运动,目的为解决城市蔓延带来的诸多问题.2008年智慧城市首次由IBM公司提出. ...

  9. 源码时代 UI干货分享 | 如何用AI制作出迪士尼电影里的毛绒文字效果!!

    AI 制作毛绒文字效果 今天给大家带来用AI制作毛发文字的教程希望对大家有用. 1.首先在AI中绘制出要做的文字路径,关闭填充属性只剩下描边属性,如下图中的路径文字"8" 再画出2 ...

最新文章

  1. C#获取文件的当前路径
  2. Java并发编程--6.Exchanger线程间交换数据
  3. Python-读写文件
  4. 盒子模型+浮动布局+定位布局
  5. C语言实现段树segment tree(附完整源码)
  6. 大学生想依靠c/c++找工作,还需要什么知识?
  7. junetxtdb.class.php,PHP-site
  8. OPENSSL introduce itself from baidu
  9. 蓝桥杯2021年第十二届C++省赛第一题-空间
  10. 复杂网络代码_据报道称“浏览器内核有上千万行代码”,浏览器内核真的很复杂吗?...
  11. 使用swix反编译swf文件修改版权
  12. 膜拜高手!Python竟然开发命令行版网易云音乐!
  13. 内存为程序分配空间的四种分配方式
  14. [JavaScript] 模拟京东快递单号查询案例
  15. Linux MySQL8.0.11版本升级到MySQL8.0.23【数据库备份】
  16. python 捕捉键盘操作
  17. word/excel 里的表格如何到PS里使用
  18. 网易云轻舟设计理念与技术选型
  19. Office快捷键大全之三(Access快捷键上篇)
  20. LLC谐振变换器的寄生参数对谐振过程影响分析

热门文章

  1. 编程的名言名句(幽默版)
  2. Cadence Orcad Capture元件位号自动编号的2种方法图文教程及视频演示
  3. 软件测试高薪“骗局”软件测试入门就月薪过万,还包就业。别再上当受骗了、清醒点吧
  4. Flutter高仿微信-第51篇-群聊-修改群名
  5. 李峋的爱心表白代码来了
  6. Android中相册的实现
  7. 如果你爱或者恨一个人[转]
  8. Failed to introspect Class [com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration]
  9. java实现数组的奇偶数互换
  10. matlab高斯投影坐标,基于matlab的高斯投影正反算与相邻带坐标换算程序设计