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就开始移动了。

相关推荐
o0o_-_25 分钟前
【go/gopls/mcp】官方gopls内置mcp server使用
开发语言·后端·golang
Dxy123931021640 分钟前
python把文件从一个文件复制到另一个文件夹
开发语言·python
酷飞飞1 小时前
Qt Designer与事件处理
开发语言·qt·命令模式
天雪浪子2 小时前
Python入门教程之赋值运算符
开发语言·python
Wadli2 小时前
C++语法 | static静态|单例模式
开发语言·c++·单例模式
他们都不看好你,偏偏你最不争气2 小时前
【iOS】AFNetworking
开发语言·macos·ios·objective-c
Bigemap2 小时前
BigemapPro快速添加历史影像(Arcgis卫星地图历史地图)
java·开发语言
进击的_鹏2 小时前
【C++11】initializer_list列表初始化、右值引用和移动语义、可变参数模版等
开发语言·c++
mark-puls3 小时前
C语言打印爱心
c语言·开发语言·算法
西阳未落3 小时前
C语言柔性数组详解与应用
c语言·开发语言·柔性数组