事件
greenworks
是一个事件回调器,负责监听Steam事件。
var greenworks = require('docs/greenworks.json');
// 需要在使用greenworks的API之前进行初始化
greenworks.init();
function log(msg) {
console.log(msg);
}
greenworks.on('game-overlay-activated', function(is_active) {
if (is_active)
log('game overlay is activated');
else
log('game overlay is deactivated');
});
greenworks.on('steam-servers-connected', function() { log('connected')});
greenworks.on('steam-servers-disconnected', function() { log('disconnected')});
greenworks.on('steam-server-connect-failure', function() { log('connected failure')});
greenworks.on('steam-shutdown', function() { log('shutdown')});
1. 游戏遮罩层激活或隐藏
事件: 'game-overlay-activated'
Returns:
-
is_active
Boolean: 表示游戏覆盖层是激活还是隐藏。
当游戏遮罩层激活或隐藏时触发。
8. 收到聊天信息
事件: 'game-connected-friend-chat-message'
Returns:
-
steam_id
String: 一个64位steam ID. -
message_id
Integer
当用户收到聊天消息时触发。
10. 微交易授权响应
事件: 'micro-txn-authorization-response'
Returns:
-
app_id
Integer: 此次微交易的AppID。 -
ord_id
String: 为此次微交易提供的的64位OrderID。 -
authorized
Boolean: 用户是否授权了交易。
当用户响应微交易授权请求后触发。
11. 创建大厅
事件: 'lobby-created'
在尝试创建大厅之后触发。
Returns:
-
m_eResult
Integer: 大厅创建结果。 -
m_ulSteamIDLobby
String: 该大厅的Steam ID。
12. 大厅数据改变
事件: 'lobby-data-update'
大厅数据改变时触发。
Returns:
-
m_ulSteamIDLobby
String: 该大厅的Steam ID。 -
m_ulSteamIDMember
String: 房间成员或房间本身数据改变时的Steam ID. -
m_bSuccess
Boolean: 大厅数据是否成功改变。
13. 进入大厅
事件: 'lobby-enter'
尝试进入大厅时触发。 收到这条消息后就可以使用大厅数据。
Returns:
-
m_ulSteamIDLobby
String: 该大厅的Steam ID。 -
m_rgfChatPermissions
Integer: 未使用 - 使用为0。 -
m_bLocked
Boolean: 如果是true,则只有被邀请的用户才可以加入。 -
m_EChatRoomEnterResponse
Integer: 这实际上是一个 EChatRoomEnterResponse 值。 如果成功加入大厅就是 k_EChatRoomEnterResponseSuccess,否则是 k_EChatRoomEnterResponseError。
14. 收到大厅邀请
事件: 'lobby-invite'
收到邀请时触发。
Returns:
-
m_ulSteamIDUser
String: 发送邀请的人的Steam ID。 -
m_ulSteamIDLobby
String: 邀请我们的Steam ID。 -
m_ulGameID
String: 邀请我们的大厅的Game ID。
15. 加入大厅
事件: 'lobby-join-requested'
当用户从朋友列表或被邀请后尝试加入大厅时触发。 当连接到指定大厅的时候,游戏客户端会收到这条消息。
Returns:
-
m_steamIDLobby
String: 要连接到的大厅的Steam ID。 -
m_steamIDFriend
String: 他们是通过那个朋友加入的。如果不是直接通过朋友加入则会无效。
16. 加入游戏请求
事件: 'rich-presence-join-requested'
当用户尝试从好友列表中加入游戏时触发,其使用的是富消息状态。
Returns:
-
m_steamIdFriend
String: 他们是通过那个朋友加入的。如果不是直接通过朋友加入则会无效。 -
m_rgchConnect
String: 与 "连接" 富消状态息key关联的值。
17. 命令行执行URL
事件: 'new-url-launch-parameters'
在游戏已经运行时,当用户使用命令行执行steam url或查询参数(如 steam://run/<appid>//?param1=value1;param2=value2;param3=value3;
)后触发。 新的参数可以使用 GetLaunchCommandLine 以及 GetLaunchQueryParam 查询。