Intermediate Programming: Unity Game Dev Courses(2)- Loot System

 

1.Setting up Our Scriptable Objects

 

主要介绍:

补充全ItemPickUp_SO脚本并判定loot对象

 

具体实现:

使用Beginner Programming: Unity Game Dev Course(5)- Creating a Character Stat System 课程里的脚本ItemPickUp_SO和ItemPickUp以及CharacterInventory。

 

先给ItemPickUp_SO添加一些属性。

 

然后给CharacterInventory脚本添加保存到Inventory的方法,尽管具体实现没有写。

 

然后编辑ItemPickUp,内容是该Item被player捡起了执行穿上或进入背包。

 

2.Setting up Our Interface &Setting up Our Chest with Spawnable Loot

主要介绍:

通过interface来掉落生成装备

 

具体实现:

新建文件夹Interfaces其下新建脚本ISpawn,用于之后宝箱spawn item的固定格式

 

Monobehaviours文件夹下新建脚本SpawnItem,并挂到宝箱prefab上

 

然后在宝箱prefab上挂上SpawnItem脚本,并拖入Sword。Sword是之前在项目里保存的ItemPickUp_SO型数据。

 

sword数据

 

注意宝箱prefab子对象里有PointerClick的EventTrigger(这是一个组件,给object添加各类型事件触发,包括点击等),拖入并设置触发刚才写的方法

 

然后把箱子prefab的layer设置一下

 

在Main场景里新建EventSystem(UI里都自带EventSystem,如果场景里没有EventSystem,则不会触发任何事件)。

 

然后在MainCamera上挂组件Physics Raycaster。这个组件容许3d对象接收Event信息,常用于又有UI又有3D对象,且3D对象需要触发Event时。

 

然后设置BootScene,就是把UIManager不显示。

 

总结:

该章讲了Loot系统,loot要掉物品item,所以有ItemPickUp_SO表示item的信息格式。ItemPickUp表示对Item的操作,比如穿上还是放到背包。

Loot时箱子点击打开,并生成Item,所以有ISpawn来约定每个Spwan脚本里都必须有的内容(spawn出item的信息和材质,以及creatItem方法)。然后写具体要生成Item的脚本SpawnItem并使用ISpawn接口,生成Item主要是在一堆Item信息里选择想要的,然后Instantiate。

最后设置了场景,包括挂入各脚本,场景新建EventSystem来响应Event,Camera上挂Physics Raycaster组件来让3d对象响应Event等。

同样的,该单元依旧展示了标准化流程是如何,每个脚本都各自容纳对应的逻辑,不要到处乱写。

 

完毕。

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值