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

相关推荐
星轨初途8 小时前
C++ string 类详解:概念、常用操作与实践(算法竞赛类)
开发语言·c++·经验分享·笔记·算法
二进制_博客8 小时前
JWT权限认证快速入门
java·开发语言·jwt
程序员佳佳8 小时前
026年AI开发实战:从GPT-5.2到Gemini-3,如何构建下一代企业级Agent架构?
开发语言·python·gpt·重构·api·ai写作·agi
橙露8 小时前
Python 图形任意角度旋转完整解决方案:原理、实现与可视化展示
开发语言·python
csbysj20208 小时前
Perl 数组
开发语言
雾岛听蓝8 小时前
C++ vector:从使用到底层核心剖析
开发语言·c++
bugcome_com9 小时前
深入解析 C# 中 const 与 readonly 的核心区别
c#
唐装鼠9 小时前
C语言syslog()函数(deepseek)
c语言·开发语言·syslog
froginwe119 小时前
SQL MIN() 函数详解
开发语言
青岛少儿编程-王老师9 小时前
CCF编程能力等级认证GESP—C++7级—20251227
开发语言·c++