Unity游戏建议对话功能 Fungus插件。
Fungus對(duì)話插件。
*Fungus*是一款檢視面板自定義工具,主要幫助標(biāo)志不同角色對(duì)話在檢視面板上顯示的顏色,以更好更清晰地實(shí)現(xiàn)游戲角色之間的對(duì)話邏輯。該插件需要*Unity* 5.0及以上版本,無(wú)需編寫代碼。*Fungus*能以標(biāo)簽來(lái)觸發(fā)對(duì)話過(guò)程中的事件以及各種條件與邏輯處理,并且支持本地化,對(duì)相機(jī)、Sprite及音樂(lè)音效的控制。提供了一個(gè)交互式的界面,能夠快速構(gòu)建一個(gè)對(duì)話系統(tǒng)。
一句話,它是一個(gè)免費(fèi)的交互式的對(duì)話系統(tǒng)。(單靠這個(gè)可以做一個(gè)文字解密游戲。)
使用過(guò)程:
需要在Asset Store中,搜索Fungus。
下載并導(dǎo)入。
unity界面中出現(xiàn)tool才算成功,
建議使用2018.3.4即以上。(我之前用的2018.1.8f,沒(méi)有tool)
插件版本是符合2017的,但是建議使用推薦的版本。
如果版本符合,但是沒(méi)有出現(xiàn)tool,就不算導(dǎo)入成功,遇到這種情況,重啟unity,創(chuàng)建新項(xiàng)目,再導(dǎo)入插件試試看。還是不行的話,換個(gè)版本號(hào)或者重啟電腦,或者換一個(gè)賬號(hào)重新下載插件。你問(wèn)我為什么這么做,因?yàn)槲以诰W(wǎng)上沒(méi)找不到解決辦法,并且通過(guò)很長(zhǎng)時(shí)間實(shí)踐出來(lái)的。
有個(gè)視頻是直接講fungus怎么用的。
https://www.bilibili.com/video/BV1xt411q7NC
很簡(jiǎn)單明了。
這里我直接講一下我們使用到的功能的制作步驟:
點(diǎn)擊tool-->fungus-->creat-->flowchart
出現(xiàn)小蘑菇就是成功的第二步了,第一步是導(dǎo)入。
點(diǎn)擊創(chuàng)建好的flowchart
在右邊試圖中點(diǎn)擊 打開(kāi)flowchart 窗口,
可以拖動(dòng)到Project旁邊,便于使用。
在窗口中,鼠標(biāo)右鍵創(chuàng)建block,
Execute On Event 是對(duì)話條件。
選擇none,表示要使用腳本進(jìn)行觸發(fā)。
圖中的+號(hào)是用來(lái)添加對(duì)話的。
點(diǎn)+號(hào),輸入say,選中第一個(gè)
雙擊對(duì)話框,
story text里添加文字。
character是選擇npc名字
其他屬性不管。
下圖是復(fù)制功能,可以將你選中的commands 里的一句say 復(fù)制。
character屬性的使用:
點(diǎn)擊tool--->fungus--->creat-->character
第一個(gè)箭頭:修改標(biāo)簽名稱
第二個(gè)箭頭:修改名稱
第三個(gè)箭頭:增加NPC肖像
效果如下:(這里先只放沒(méi)加肖像的樣子)
3.事件觸發(fā)腳本:
using System.Collections;using System.Collections.Generic;using UnityEngine;using Fungus;public class NpcControl : MonoBehaviour{public string ChatName; //定義選擇哪個(gè)對(duì)話block//當(dāng)前是否可以對(duì)話private bool canChat =false;void Start(){? }//人物處于觸發(fā)器范圍中,鼠標(biāo)點(diǎn)擊可進(jìn)行對(duì)話private void OnMouseDown(){? Say();} //OnTriggerEnter可以不管,用不到,public void OnTriggerEnter(Collider other){? canChat=true;}public void OnTriggerExit(Collider other){? canChat=false;}void Update(){//按鍵Q可以進(jìn)行對(duì)話 ? if(Input.GetKeyDown(KeyCode.Q)){? Say();? }}? void Say(){? if(canChat){? //對(duì)話? Flowchart flowChart =GameObject.Find("Flowchart").GetComponent<Flowchart>();? //對(duì)話是否存在? if(flowChart.HasBlock(ChatName)){? //執(zhí)行對(duì)話? flowChart.ExecuteBlock(ChatName);? }? }}}將腳本添加到npc上,再將對(duì)話block的名字輸入chat name上。
Gamestarted效果:
進(jìn)入場(chǎng)景中就有的對(duì)話是設(shè)置game started
總結(jié)
以上是生活随笔為你收集整理的Unity游戏建议对话功能 Fungus插件。的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 阿里云SLS日志服务
- 下一篇: 【Unity3D插件】PUN 2插件分享