当前位置: 首页 > news >正文

Unity3D仿星露谷物语开发49之创建云杉树

1、目标

创建一颗既可以生长又可以砍伐的云杉树,这个和之前创建橡树类似。

2、创建云杉树预制体

创建新物体命名为CropTreeBlueSpruce,并且添加Box Collider 2D和Crop组件。

在CropTreeBlueSpruce下创建子物体命名为CropSprite,添加3个组件如下:

在CropSprite下添加子物体命名为Trunk,添加3个组件如下:

在CropSprite下添加子物体命名为Top,添加2个组件如下:

在CropSprite下添加子物体命名为FallingNeedlesSpawnPoint,设置Transform属性:

设置CropTreeBlueSpruce的Crop属性:

将预制体移到Assets -> Prefabs -> Crop下,并且删除Hierarchy下的物体。

3、SO_CropDetailsList添加云杉

修改Crop Details从3到4,配置信息如下:

4、创建云杉树桩预制体

在Assets -> Prefabs -> Crop下,复制CropTreeTrunkCanyonOak预制体后重命名为CropTreeTrunkBlueSpruce。

点击CropTreeTrunkBlueSpruce查看,不需要做任何改变。

点击CropSprite查看,不需要做任何改变。

点击Trunk,修改Sprite信息,其他保持不变。

点击WoodChippingsSpawnPoint查看,保持不变。

5、SO_CropDetailsList添加云杉桩

修改Crop Details从4到5,配置信息如下:

6、创建杉树砍伐落叶特效

在Assets -> Prefabs -> Crop -> Effects下复制DeciduousLeavesFalling重命名为PineConesFalling。只更改如下的值:

7、修改PoolManager对象配置

将Pool个数从3改为4,并且配置Prefab的值。

8、修改VFXManager.cs脚本 

[SerializeField] private GameObject pineConesFallingPrefab = null;

完整的displayHarvestActionEffect函数代码如下:

新增HarvestActionEffect.pipeConesFalling的case。

private void displayHarvestActionEffect(Vector3 effectPosition, HarvestActionEffect harvestActionEffect)
{switch(harvestActionEffect){case HarvestActionEffect.deciduousLeavesFalling:GameObject deciduousLeavesFalling = PoolManager.Instance.ReuseObject(deciduousLeavesFallingPrefab, effectPosition, Quaternion.identity);deciduousLeavesFalling.SetActive(true);StartCoroutine(DisableHarvestActionEffect(deciduousLeavesFalling, twoSeconds));break;case HarvestActionEffect.choppingTreeTrunk:GameObject choppingTreeTrunk = PoolManager.Instance.ReuseObject(choppingTreeTrunkPrefab, effectPosition, Quaternion.identity);choppingTreeTrunk.SetActive(true);StartCoroutine(DisableHarvestActionEffect(choppingTreeTrunk, twoSeconds));break;case HarvestActionEffect.reaping:GameObject reaping = PoolManager.Instance.ReuseObject(reapingPrefab, effectPosition, Quaternion.identity);reaping.SetActive(true); StartCoroutine(DisableHarvestActionEffect(reaping, twoSeconds));break;case HarvestActionEffect.pipeConesFalling:GameObject pineConesFalling = PoolManager.Instance.ReuseObject(pineConesFallingPrefab, effectPosition, Quaternion.identity);pineConesFalling.SetActive(true);StartCoroutine(DisableHarvestActionEffect(pineConesFalling, twoSeconds));break;case HarvestActionEffect.none:break;default:break;}
}

配置VFXManager对象:

运行游戏:

相关文章:

  • 9.4在 VS Code 中配置 Maven
  • Java 连接并操作 Redis 万字详解:从 Jedis 直连到 RedisTemplate 封装,5 种方式全解析
  • Docker 镜像调试最佳实践
  • 【笔记】为 Miniconda 安装图形界面的方法
  • xargs命令——多行变单行的实用命令
  • Neo4j(二) - 使用Cypher操作Neo4j
  • 【Redis】1-高效的数据结构P3-压缩列表与对象
  • [创业之路-377]:企业战略管理案例分析-战略制定/设计-市场洞察“五看”:看宏观之社会发展趋势:数字化、智能化、个性化的趋势对初创公司的战略机会
  • day11制作窗口(鼠标显示、图层和图层控制器、显示窗口、高速计数器、消除闪烁)
  • 软考学习中
  • PHP 实现通用数组字段过滤函数:灵活去除或保留指定 Key
  • 机器学习的一些基本概念
  • Web 安全进阶:前端信封加解密技术详解
  • 77. Combinations
  • 构建Harbor私有镜像库(详细版)
  • 医学影像科研概述与研究伦理
  • 大厂缓存架构方案-Caffeine+Redis双层缓存架构
  • 如何选用正确的html元素
  • Spark集群架构解析:核心组件与Standalone、YARN模式深度对比(AM,Container,Driver,Executor)
  • Vue-创建应用/挂载应用/根组件模版-.vue单文件/应用配置
  • 镇江网站建设找思创/5118站长工具
  • csgo翻硬币网站开发/百度指数搜索指数的数据来源
  • 专门做正品的网站/站长统计ios
  • 嘉兴做网站公司/墨猴seo排名公司
  • 用什么软件快速做网站/网络营销成功的原因
  • 有没有做宠物的网站/兰州网络seo