热门标签
共 43 篇主题
包含教程的全部代码文件 第一章的基础角色移动,数据存储,状态值。 第二章的背包界面,技能系统 第三章的对话系统 第四章的商店系统
这套教程分为四章,第一部分主要讲诉Unity的基础以及简单RPG开发逻辑,都是比较基础的内容,其实教程整体来看很多地方做的比较粗糙.不过作为入门教程也不能要求太高,总体上很适合刚上手unity新人入门,我后面懒得每P都记录,所以就直接附上第一部分完结的源代码。有需要自己对着参考吧,为了方便有学习的新人理解,用AI写 ...
加载场景时,保存经验值,并让经验值在UI实时更新显示 Experience ExperienceDisplay
制作经验值的获取,经验值的获取和生命值有关,当AI生命值为0,给予玩家一定的经验值,所以需要定义攻击者和被攻击者。 需要在处理伤害逻辑的方法中添加攻击者的输入。 Projectile Fighter Health BaseStats Experience ...
使用UI实时显示生命值 在Health中添加获取百分百的方法。随后编写一个脚本挂着UI上实时调用该方法 敌人生命值的显示也是一样,创建一个新脚本挂在敌人上 HealthDisplay EnemyHealthDisplay
创建角色的状态系统,教程中为了后续分类,将Health的命名空间改为 RPG.Resources,修改完成之后注意修复引入错误 CharacterClass Progression BaseStats
添加火球装备,火球特效,爆炸特效,给远程射出的攻击设定存在时间,一定时间后销毁。 修复武器动画bug,防止武器的攻击动画为空,设定武器动画为空时,使用角色的动画状态机默认攻击动画 Projectile DestoryAfterEffect Weapon: ...
修复拾取武器,保证角色左右手只存在一个武器,拾取新的武器时会进行更换 Weapon:
制作箭矢射出功能 Projectile Weapon Fighter
添加远程攻击装备和动画,制作弓箭追踪敌人 Projectile:
武器脚本数据存储,修改战斗脚本,新建武器拾取脚本 Weapon: Fighter WeaponPickup
创建可序列化的对象,存储玩家位置 SerializableVector3_X SavingSystem_X
编写存档系统,存储角色transform,Vector3和字节之间的转换。 SavingSystem_X
本章开始重头编写并讲解保存系统,讲解关于二进制和电脑数据文本存储,学习读取和写入文件。 SavingSystem_X SavingWrapper_X
介绍了两种方法来存储多个移动的数据,一种是字典,一种是结构体 Mover:
P83 教程部分使用savingSystem.LoadLastScene的方法,教程中是直接将Start作为协程来使用,随后将逻辑调用全都写在了start中,虽然只是一个测试功能, 这里其实不太建议直接写在Start中,最好自己写一个方法用来验证即可。 SavingWrapper: Fader: ...
前面我们在生命值中添加了存档系统的接口和捕获方法,通过存档系统可以报数据存储下来,将玩家的数据ID设为唯一,在Portal门户切换触发后,调用存档方法,异步加载场景之后在加载数据,这样在切换场景后,玩家的生命值也会同步一直更新,无论我们怎么切换场景后,两个场景的角色生命值都会同步,还需要在更新玩家时,先关闭 ...
通过存档系统,保存角色以及敌人的生命值,在Health中添加接口ISaveable Health中添加如下方法:
新建保存类,挂载到角色身上,并在Move类中添加接口ISaveable,添加接口对应的方法,便可以在游戏中测试保存加载玩家的坐标位置 SavingWrapper: Mover:
本章节部分讲述保存系统,需要使用教程提供的代码,关于保存系统代码部分,因为该部分略微复杂,教程并没有讲解过多的原理,我们暂时就当做一个API用来使用。 代码如下: ISaveable: SerializableVector3: SaveableEntity: SavingSystem: ...