40 lines
988 B
C#
40 lines
988 B
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using BITKit;
|
|
using Net.BITKit.Chat;
|
|
using NodeCanvas.Framework;
|
|
using UnityEngine;
|
|
|
|
namespace Net.Project.B.NodeCanvas
|
|
{
|
|
public class WaitPlayerChatTask : ActionTask
|
|
{
|
|
public BBParameter<string> Message;
|
|
|
|
private IChatService _chatService;
|
|
protected override void OnExecute()
|
|
{
|
|
if (BITApp.ServiceProvider.QueryComponents(out _chatService) is false)
|
|
{
|
|
EndAction(false);
|
|
return;
|
|
}
|
|
|
|
_chatService.OnMessageReceived+=OnMessageReceived;
|
|
}
|
|
|
|
protected override void OnStop()
|
|
{
|
|
_chatService.OnMessageReceived-=OnMessageReceived;
|
|
}
|
|
|
|
private void OnMessageReceived(ChatMessage obj)
|
|
{
|
|
if(obj.FromUserId!=Environment.UserName)return;
|
|
Message .SetValue(obj.Content);;
|
|
EndAction(true);
|
|
}
|
|
}
|
|
}
|