本文章是我学习Unity官方项目项目所做笔记,作为学习Unity的游戏笔记,在最后一章会发出源码,如果等不及可以直接看源码,里面也有很多注释相关,话不多说,让Ruby动起来!
游戏引擎:Unity2020.3
调整大小
使用玩家发射射线的方式检测是否有NPC,
设置NPC层级,使射线只会跟NPC层级交互
添加UI-Canvas
修改 画布为world Space,并修改对话框大小
选择锚点,按住Alt键,选择右下角的这个,进行画布填充
创建文本
添加outline使文字更加清晰
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
// NPC交互相关脚本
public class NPCmanager : MonoBehaviour
{
public GameObject dialogImage; // 对话
// 对话框显示时间
public float showTime = 4;
public float showTimer;
private void Start()
{
// 初始默认隐藏对话框
dialogImage.SetActive(false);
showTimer = -1;
}
private void Update()
{
showTimer -= Time.deltaTime;
if(showTimer < 0)
{
dialogImage.SetActive(false);
}
}
// 显示对话框
public void ShowDialog()
{
showTimer = showTime;
dialogImage.SetActive(true);
}
}
在NPC脚本中添加
设置文本
将NPC下的TEXT拖入
获得同一个tag下的物品数量
设置robot的tag为Robot
Ruby‘s Adventrue游戏制作笔记(一)Unity创建项目
Ruby‘s Adventrue游戏制作笔记(二)Unity控制ruby移动
Ruby‘s Adventrue游戏制作笔记(三)Unity使用tilemap绘制场景
Ruby‘s Adventrue游戏制作笔记(四)Unity绘制其他元素
Ruby‘s Adventrue游戏制作笔记(五)Unity解决碰撞抖动和旋转问题
Ruby‘s Adventrue游戏制作笔记(六)Unity相机跟随玩家移动
Ruby‘s Adventrue游戏制作笔记(七)Unity采集生命道具
Ruby‘s Adventrue游戏制作笔记(八)Unity伤害陷阱
Ruby‘s Adventrue游戏制作笔记(九)Unity添加敌人
Ruby‘s Adventrue游戏制作笔记(十)Unity添加动画
Ruby‘s Adventrue游戏制作笔记(十一)Unity角色攻击——发射子弹
Ruby‘s Adventrue游戏制作笔记(十二)Unity给角色添加简单的特效
Ruby‘s Adventrue游戏制作笔记(十三)Unity血条UI的显示
Ruby‘s Adventrue游戏制作笔记(十四)Unity播放游戏音效
Ruby‘s Adventrue游戏制作笔记(十五)UnityNPC对话
Ruby‘s Adventrue游戏制作笔记(十六)Unity子弹数量及其UI
Ruby‘s Adventrue游戏制作笔记(十七)Unity添加游戏胜利条件和失败条件和导出游戏