简单的自制对话系统

本文介绍了作者自制的Unity对话系统,因为无法使用现有插件并遵循教程,所以自行创建了一个基本的系统。核心脚本管理场景对话,包含角色、对话框、选项和场景切换等功能。此外,还涉及到角色脚本、界面交互、设置界面和背景音乐控制。虽然简单,但能实现基本的对话和场景交互需求。
摘要由CSDN通过智能技术生成

以下是这几天自制的对话系统

制作这个对话系统的目的其实比较可笑,因为我不会用unity商店里可以找到的任何一个对话插件,包括但不限于Yarn Spinner,fungus之类的插件,然后跟着教程做我又坚持不下来,所以最后只能行下下策,自己做一个,我本人又是一个菜鸟,制作又不好,只能凑合做一个用用。

脚本核心为这个:

这个脚本负责这个场景内所有对话的管理

character:可以改为数组形式存放更多角色立绘摆放位置(我偷懒只准备了三个),

Conversation:是对话框,

conversationManList:对话列表,顾名思义就是这个场景里对话的顺序,

Choos:如果对话末尾出现选项则勾选,

Show:选项页面,

Where:对话结束后前往的下一个场景下表(如果有选项可以不填),

BackG:对话最后一张需要替换别的背景可以修改这里(我制作的时候就考虑了游戏结束一种情况),

Ima:需要替换的背景,

IsFallDown:这里就是一开始说的需要结尾替换背景的选项勾选这个,

SetIngShow:这个是设置界面,

BGMShow:BGM预制体放这;

一下是实现脚本:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class ConversationManager : MonoBehaviour
{
    public GameObject Charat1;
    public GameObject Charat2;
    public GameObject Charat3;
    public GameObject Conversation;//这里控制对话开启

    public GameObject[] ConversationManList;//对话列表,记录这一幕对话组成,即对话顺序
    private int ConverNumber;//控制对话顺序

    public bool Choos;
    public GameObject Show;//这个是如果对话结束有选择则会显示选择
    public int Where;

    public Image BackG;//背景更换,失败场景
    public Sprite Ima;
    public bool IsFallDown;

    private GameObject BackButton;
    private GameObject SetButton;
    public GameObject SetIngShow;

    public GameObject BGMShow;

    // Start is called before the first frame update
    void Start()
    {
        ConverNumber = 0;
        BackG = GameObject.Find("BackGround").GetComponent<Image>();
        BackButton = GameObject.Find("Back");
        BackButton.GetComponent<Button>().onClick.AddListener(GoBack);
        SetButton = GameObject.Find("Cont");
        SetButton.GetComponent<Button>().onClick.AddListener(Seting);
    }

    // Upd
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值