Unity 游戏中设置 AI 参数:前端输入和设定 m_DataList
要将 'm_DataList' 参数放到游戏界面中,并允许前端进行输入和设定,可以采取以下步骤:
- 在游戏界面中创建相应的输入框或控件,用于接收用户输入的数据。
- 在游戏界面中创建按钮或触发事件的方式,用于触发数据的设定和传递。
- 在事件或按钮的回调函数中,获取用户在界面中输入的数据,并将其赋值给对应的变量 ('m_SystemSetting'、'm_userSetting'、'm_assistantSetting' 等)。
- 在 'Start()' 函数中,根据输入的数据来动态地添加 AI 设定到 'm_DataList'。
具体实现的代码示例如下:
using UnityEngine;
using UnityEngine.UI;
public class GameUI : MonoBehaviour
{
public InputField systemSettingInput;
public InputField[] userSettingInputs;
public InputField[] assistantSettingInputs;
public Button applyButton;
public string m_SystemSetting = string.Empty;
public string[] m_userSetting;
public string[] m_assistantSetting;
private void Start()
{
applyButton.onClick.AddListener(ApplySettings);
}
private void ApplySettings()
{
m_SystemSetting = systemSettingInput.text;
m_userSetting = new string[userSettingInputs.Length];
for (int i = 0; i < userSettingInputs.Length; i++)
{
m_userSetting[i] = userSettingInputs[i].text;
}
m_assistantSetting = new string[assistantSettingInputs.Length];
for (int i = 0; i < assistantSettingInputs.Length; i++)
{
m_assistantSetting[i] = assistantSettingInputs[i].text;
}
// 运行时,添加 AI 设定
m_DataList.Add(new SendData('system', m_SystemSetting));
for (int i = 0; i < m_assistantSetting.Length; i++)
{
m_DataList.Add(new SendData('user', m_userSetting[i]));
m_DataList.Add(new SendData('assistant', m_assistantSetting[i]));
}
}
}
在上述代码中,假设已经在场景中创建了相应的 'InputField' 和 'Button',并将其分别赋值给 'systemSettingInput'、'userSettingInputs'、'assistantSettingInputs' 和 'applyButton'。当用户点击应用按钮时,将会调用 'ApplySettings' 函数。在该函数中,获取用户在界面中输入的数据,并将其赋值给对应的变量。之后,根据输入的数据来动态地添加 AI 设定到 'm_DataList'。
原文地址: http://www.cveoy.top/t/topic/cop3 著作权归作者所有。请勿转载和采集!