game_chat_communication_relationship_adjuster_changed_state_change

特定于状态更改的 game_chat_state_change_type::communication_relationship_adjuster_changed 类型的信息。

语法

typedef struct game_chat_communication_relationship_adjuster_changed_state_change {  
    chat_user* local_user;  
    chat_user* target_user;  
} game_chat_communication_relationship_adjuster_changed_state_change  

成员

local_user  
类型:chat_user*

一个指针,指向表示该关系所基于的本地用户的 chat_user 对象。

chat_user 对象指针在通过 chat_manager::remove_user 方法从本地 chat_manager 实例删除用户前一直有效。

target_user  
类型:chat_user*

指向代表关系中目标用户的 chat_user 对象的指针。 此用户可以是本地用户或远程用户。

备注

此结构为游戏聊天 2 中game_chat_state_change_type::text_chat_received 状态更改提供了附加信息。 与另一个用户相关的本地用户的通信关系调节器已更改。 在以下情况下,可能会发生此状态变化:

  • 第一次设置了特定用户对之间的通信关系;调节器应进入 initializing 状态。
  • 调节器已完成初始化。
  • 由于用户执行了操作,调整程序已更改;例如,隐私关系已更改。

若要确定所应用的有效通信关系和调整程序,请调用 chat_user_local::get_effective_communication_relationship 方法,如以下代码示例所示。

game_chat_communication_relationship_flags effectiveRelationship;
game_chat_communication_relationship_adjuster adjuster; 
local_user->get_effective_communication_relationship(target_user, &effectiveRelationship, &adjuster);

如果发生此状态更改,则当你的应用调用 chat_manager::start_processing_state_changes 时,此结构将作为 game_chat_state_change_array 数组中检索的 game_chat_state_change 元素返回。 通过检查 game_chat_state_change 元素的 state_change_type 成员的值确认状态更改类型后,可将该元素强制转换为此结构。 然后,你可以使用此结构获取有关详细信息,并在将数组从应用传递回游戏聊天 2 之前调用 chat_manager::finish_processing_state_changes 处理状态更改。

有关处理状态更改的详细信息,请参阅使用游戏聊天 2 C++ API

要求

头文件:GameChat2.h

支持平台:Windows、Xbox One 系列主机和 Xbox Series 主机

另请参阅

游戏聊天 2 简介
chat_manager
chat_user_local::set_communication_relationship
game_chat_communication_relationship_adjuster
GameChat2 成员