Unity3D仿星露谷物语开发67之创建新的NPC

1、目标

添加新的NPC到游戏中,同时台南佳NPC时间表来控制NPC移动。

2、配置NPCManager对象

设置defaultMovementPenalty为5.

3、创建新的NPC

将Assets -> Prefabs -> NPC中的NPC拖到Hierarchy -> PersistentScene -> NPCs下,并且重命名为NPC_Cora。

修改Sprite为Cora_0:

配置Animator信息如下:

在Assets -> Scriptable Object Assets -> NPCs下创建新目录命名为Cora,再创建子目录和实例如下:

然后把该实例赋给NPC_Cora对象:

4、编写代码

(1)修改NPCMovement.cs脚本

去掉[HideInInspector]的标记,使得可以显示看到该值。

然后设置NPC_Butch和NPC_Cora的Scene和Facing信息如下(两个一样的设置):

5、配置NPC

加载Scene3_Cabin场景,拖动两个NPC的位置如下,拖动完毕后再卸载Scene3。

6、设置Obstacle和Path

设置Scene3_Cabin的Obstacle:

Scene1_Farm的Obstacle之前已经设置好了,无需再设置。Path优化下如下:

Scene2_Field的Obstacle如下:

Scene2_Field的Path如下:

7、配置Cora的时间表

运行游戏

8点钟一到,Cora就开始移动了。

相关推荐
睿思达DBA_WGX18 分钟前
Python 程序设计讲义(36):字符串的处理方法——去除字符串头尾字符:strip() 方法、lstrip() 方法与rstrip() 方法
开发语言·python
小梦白36 分钟前
RPG增容2.尝试使用MMC根据游戏难度自定义更改怪物属性(三)
游戏
下页、再停留1 小时前
【PHP】CURL请求第三方API接口
开发语言·php
小妖6662 小时前
Next.js 怎么使用 Chakra UI
前端·javascript·ui
我要成为c嘎嘎大王3 小时前
【C++】类和对象(2)
开发语言·c++
EngZegNgi3 小时前
Unity —— Android 应用构建与发布
android·unity·自动化·游戏引擎·构建
慕y2743 小时前
Java学习第九十一部分——OkHttp
java·开发语言·学习
海奥华24 小时前
操作系统到 Go 运行时的内存管理演进与实现
开发语言·后端·golang
C++ 老炮儿的技术栈4 小时前
在vscode 如何运行a.nut 程序(Squirrel语言)
c语言·开发语言·c++·ide·vscode·算法·编辑器