【Unity3D实战】RPG黑暗之光:游戏分解及各系统的实现
【Unity3D实战】RPG黑暗之光:游戏分解及各系统的实现
一、任务系统:
1、添加接任务的老爷爷:
Model中选择并添加老爷爷,调整方向,并添加一个Box collider组件。
2、设计任务UI界面:
UI Root添加一个Sprite(命名为Quest),选择Altas图集里的Quest对话框,添加Tween Position动画效果为从右进入。
3、设计任务内容:
选择Quest,添加一个Lable-->Child,设置字体、字号,字的内容。
添加Accept和Cancel按钮:选择Quest,添加Sprit-->Child,Attach-->Box Collider,Attach-->Button Script,同上面添加Button操作一样。
在点击UI界面时,主角不能移动的处理:在人物移动脚本里面加上一个条件,UICamera.hoveredObject == null,鼠标在UI界面上,这个条件不成立,就不能移动。
添加一个Close按钮:同上。
4、处理任务系统对话框的显示和隐藏:
给老爷爷添加一个脚本,NPCBar.cs
public TweenPosition questTween;//把UI Quest拽给此变量
void OnMouseOver() {//当鼠标位于这个collider之上的时候,会在每一帧调用这个方法
if (Input.GetMouseButtonDown(0)) {//当点击了老爷爷
ShowQuest();
}
}
void ShowQuest() {
questTween.gameObject.SetActive(true);
questTween.PlayForward();
}
void HideQuest() {
questTween.PlayReverse();
}
//任务系统:任务对话框上的按钮点击事件的处理,把这个事件注册到Close按钮上。
public void OnCloseButtonClick() {
HideQuest();
}
注册OnCloseButtonClick事件到Close按钮上:把Bar_NPC拖到Close按钮的On Click-->Notify上,并选择对应Method为OnCloseButtonClick
二、功能面板(右下角):
Bag
Status
Equip
Skill
Setting
三、信息管理系统:
物品信息:即创建一个Text文本文件存放物品即信息。
角色信息:等级、物品、经验值、装备、技能等要存储读取。
四、背包系统:
五、状态系统(主角状态信息):
六、装备系统:
七、技能系统:
八、主角头像和HP/MP显示(左上角):
九、小地图(右上角);
十、药店商人及药品系统:
十一、武器商人及武器系统:
十二、敌人系统:
小狼、中狼、大狼;
敌人自动孵化;
敌人AI以及自动寻路;
战斗时的特效;
敌人动画系统;
杀敌之后物品拾取;
十三、等级系统:
杀敌之后增加经验;
升级之后状态更新;