Skip to content

zhang12c/UnityFarm

Repository files navigation

项目介绍

编辑器

Unity2021.3.20f1c1

简要

这是一款类似星露谷物语的2D养成类游戏,项目中有背包系统,种植生长系统,NPC对话系统,多进度存储系统,声音系统,动画系统。

运行方式

切换场景为:PersistentScene,之后就可以正确的运行

详细

项目中包含了很多Unity和C# 的知识点

地图

使用Tilemap 来绘制地图,利用不同的瓦片地图来分层,不同层级有不同的作用,如:Dig 绘制土块 Water 绘制浇水 Collision 地图碰撞层等。 可以使用工具Tile Palette来绘制地图,同时可用RuleTile来快速绘制,在一些拐角多变的地图里,能自动处理拐角,随机生成瓦片。大大提升效率。 项目使用A星寻路。

背包

截屏2023-04-06 13 22 59 截屏2023-04-06 13 21 36

用UGUI来绘制UI,主要有背包和工具栏这个两交互,这里没有做背包类型区分,都是PlayBag。后续应该会添加储物箱等 当然,背包里的道具都是可以通过点击道具图标来拖动,切换道具在背包中的不同的位置,也可以丢弃到场景中。 另外,使用Unity自带的UI ToolKit 工具,做了一个unity的工具。主要功能是对游戏中的道具的新增或删除!目前项目不大,也就不适用传统的Excel了

鼠标

自定义了鼠标的图片,不可交互时鼠标变红。

动画

截屏2023-04-06 13 20 37

玩家有4个方向的朝向,跑步,行走,使用斧头,镰刀,水壶,锄头等工具,都有不同的动画。项目里主要是用Animation + Animator 将这些人物图片整理成一个个Animation,在用Animator统一控制动画的切换。 人物有不通的道具,对应的动画也不同,这里使用Animator Overider Conttoller 能极大的减少重复动画拖拽赋值的工作量

时间系统

项目中有4个季节,春夏秋冬,不同季节可以种植不同的农作物。当然,游戏也有日夜交替。用URP 2D Light 来做日夜交替的效果。这里我还不太熟悉,目前只是显现了功能

种植生长系统

每个植物都有自己的生长周期,每个周期有不同的照片。当然有些作物是可以重复收集。比如葡萄.

NPCSchedule + 对话系统

不同的npc 有不同的对话内容,不同的季节,时间,会呆在不同的地方;

声音

游戏里有背景音,环境音,行为音。这个功能没什么变动,主要是用到了Unity 里的Audio source组件