本文整理汇总了C#中EventManager.TrackMessage方法的典型用法代码示例。如果您正苦于以下问题:C# EventManager.TrackMessage方法的具体用法?C# EventManager.TrackMessage怎么用?C# EventManager.TrackMessage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EventManager
的用法示例。
在下文中一共展示了EventManager.TrackMessage方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Execute
public void Execute(Room room, ref EventManager evMan, Dictionary<string, object> data)
{
// No point parsing all this data if no one's listening.
if (!evMan.ConnectedListeners.ContainsKey(EventType.MessageStarToggled)) { return; }
if (data.ContainsKey("user_id") && room.IgnoreOwnEvents) { return; }
var id = int.Parse(data["message_id"].ToString());
var starCount = 0;
var pinCount = 0;
if (data.ContainsKey("message_stars") && data["message_stars"] != null)
{
starCount = int.Parse(data["message_stars"].ToString());
}
if (data.ContainsKey("message_owner_stars") && data["message_owner_stars"] != null)
{
pinCount = int.Parse(data["message_owner_stars"].ToString());
}
var message = room[id];
evMan.TrackMessage(message);
evMan.CallListeners(EventType.MessageStarToggled, message, starCount, pinCount);
}
示例2: Execute
public void Execute(Room room, ref EventManager evMan, Dictionary<string, object> data)
{
// No point parsing all this data if no one's listening.
if (!evMan.ConnectedListeners.ContainsKey(EventType.MessageReply)) { return; }
var authorID = int.Parse(data["user_id"].ToString());
if (authorID == room.Me.ID && room.IgnoreOwnEvents) { return; }
var id = int.Parse(data["message_id"].ToString());
var parentID = int.Parse(data["parent_id"].ToString());
var parent = room[parentID];
var message = new Message(room, id, room.GetUser(authorID), parentID);
evMan.TrackMessage(parent);
evMan.TrackMessage(message);
evMan.CallListeners(EventType.MessageReply, parent, message);
}