Я хочу получить состояние разговора агентов Microsoft, чтобы узнать, говорит ли текущий агент или нет на С#.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Я хочу получить состояние разговора агентов Microsoft, чтобы узнать, говорит ли текущий агент или нет на С#.

Сообщение Anonymous »


Я хочу, чтобы персонажи говорили последовательно, но я не знаю ничего лучше состояния IsSpeaking. Или что-нибудь еще, так как я могу заставить персонажей говорить последовательно/проверить, говорят ли они?

AxAgentObjects.AxAgent axAgent; общедоступная форма1() { ИнициализироватьКомпонент(); ИнициализироватьАгент(); } частная пустота InitializeAgent() { axAgent = новый AxAgentObjects.AxAgent(); ((System.ComponentModel.ISupportInitialize)(axAgent)).BeginInit(); axAgent.Enabled = правда; axAgent.Location = новый System.Drawing.Point(50, 50); axAgent.Name = "axAgent"; axAgent.OcxState = (System.Windows.Forms.AxHost.State)(новый System.ComponentModel.ComponentResourceManager(typeof(Form1)).GetObject("axAgent.OcxState")); axAgent.Size = новый System.Drawing.Size(200, 200); axAgent.TabIndex = 0; this.Controls.Add(axAgent); ((System.ComponentModel.ISupportInitialize)(axAgent)).EndInit(); List символов = новый List { "Мерлин", "Пиди" }; foreach (строка имя_персонажа в символах) { строка «Путь к символу» = «Путь к символу» (Имя персонажа); axAgent.Characters.Load(имя персонажа, путь к персонажу); axAgent.Characters[имя персонажа].Show(); } строковый диалог = @" 'Мерлин': Эй, Пиди, ты когда-нибудь задумывался, как, черт возьми, кто-то подумал: Настоящий 'Пиди': Бро, я не знаю. Возможно, тогда они просто жаждали и были в отчаянии. Типа, да "; string[]lines = диалог.Split('\n'); foreach (строковая строка в строках) { string[] parts = line.Trim().Split(':'); если (parts.Length >= 2) { строкаcharacterName = parts[0].Trim('\''); строкаcharacterLine = parts[1].Trim(); axAgent.Characters[имя персонажа].Speak(characterLine); } } } частная строка charPath (строка charName) { return Application.StartupPath + $"\\Characters\\{charName}.acs"; } Я только пытался заставить персонажей ждать 170 мс и рассчитать время, необходимое для сценария диалога каждого персонажа, но я не знаю. Это просто не сработало.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»