モジュール:プレイヤー
目次
機能
- canSubscribeBotAsync
- flushDataAsync
- getASIDAsync
- getConnectedPlayersAsync
- getDataAsync
- getID
- getName
- getPhoto
- getSignedASIDAsync
- getSignedPlayerInfoAsync
- isFirstPlay
- setDataAsync
- subscribeBotAsync
機能
canSubscribeBotAsync
▸ canSubscribeBotAsync(): Promise<boolean>
現在のユーザーがゲームのボット(Bot)をサブスクリプションできるかどうかを確認します。
例
Wortal.player.canSubscribeBotAsync()
.then(canSubscribe => console.log("Can subscribe to bot: " + canSubscribe));
Returns
Promise<boolean>
プレイヤーがゲームのボット(Bot)をサブスクリプションできるかどうかを解決する Promise。開発者は、 player.canSubscribeBotAsync() をチェックした後にのみ player.subscribeBotAsync() を呼び出すことができ、ゲームは一週間に一回、プレイヤーにボット(Bot)のサブスクリプションのダイアログを表示することができます。
Throws
- NOT_SUPPORTED
- RATE_LIMITED
- INVALID_OPERATION
- CLIENT_UNSUPPORTED_OPERATION
flushDataAsync
▸ flushDataAsync(): Promise<void>
保存されていないデータをプラットフォームのストレージにフラッシュする。こちらは高価であるため、重要な変更が即座に、そして永続的に必要な場合、そしてゲームがそれを認識している場合に使用すべきである。重要な変更でない場合、プラットフォームに依存してバックグラウンドで永続化する必要があります。
注:こちらの結果が保留中の間、player.setDataAsync への呼び出しは拒否されます。
例
Returns
Promise<void>
変更が正常に永続化された場合に解決する Promise。それ以外の場合は保存されません。
Throws
- NOT_SUPPORTED
- INVALID_PARAM
- NETWORK_FAILURE
- PENDING_REQUEST
- CLIENT_UNSUPPORTED_OPERATION
getASIDAsync
▸ getASIDAsync(): Promise<string>
プレーヤーの一意の識別子。これは通常のFacebook Application-Scoped IDであり、すべてのグラフ APIの呼び出しに使用されます。ネイティブゲームと同じAppIDを共有している場合、このIDはネイティブゲームでも表示されます。
例
Returns
Promise<string>
プレーヤーの一意の識別子。文字列は null で可能。
Throws
- NOT_SUPPORTED
- RETHROW_FROM_PLATFORM
getConnectedPlayersAsync
▸ getConnectedPlayersAsync(payload?): Promise<ConnectedPlayer[]>
現在のプレーヤーに繋がっているアクティブなプレイヤーたちの情報を含む ConnectedPlayer オブジェクトの配列をフェッチします。
プラットフォーム :Facebookはペイロードパラメータやフィルタをサポートしていません。そのため、常に過去90日間にゲームをプレイしたプレーヤーリストを返します。
例
Wortal.player.getConnectedPlayersAsync({
filter: 'ALL',
size: 20,
hoursSinceInvitation: 4,
}).then(players => console.log(players.length));
パラメーター
| 名前 | タイプ | 内容説明 |
|---|---|---|
payload? |
ConnectedPlayerPayload |
友達が取得できるオプション。 |
Returns
Promise<ConnectedPlayer[]>
繋がっているプレイヤーオブジェクトのリストで解決する Promise。
Throws
- NOT_SUPPORTED
- NETWORK_FAILURE
- CLIENT_UNSUPPORTED_OPERATION
getDataAsync
▸ getDataAsync(keys): Promise<any>
指定されたクラウドストレージから、現在のプレーヤーのデータを取得する。
プラットフォーム:Facebook上で文字列として保存された JSON オブジェクトは、 JSON オブジェクトとして返されます。
例
Wortal.player.getDataAsync(['items', 'lives'])
.then(data => {
console.log(data['items']);
console.log(data['lives']);
});
パラメーター
| 名前 | タイプ | 内容説明 |
|---|---|---|
keys |
string[] |
取得するデータの配列のキー。 |
Returns
Promise<any>
入力配列で指定されたそれぞれのキーに対して、現在のキーと値のペアが存在する場合、それを含むオブジェクトで解決する Promise。
Throws
- NOT_SUPPORTED
- INVALID_PARAM
- NETWORK_FAILURE
- CLIENT_UNSUPPORTED_OPERATION
getID
▸ getID(): string | null
プラットフォームからプレイヤーIDを取得します。
例
Returns
string | null
プレイヤーID。
getName
▸ getName(): string | null
プラットフォーム上のプレイヤー名を取得します。
Example
Returns
string | null
プレーヤー名。
getPhoto
▸ getPhoto(): string | null
プラットフォームからプレイヤーの写真を取得します。
例
Returns
string | null
プレイヤーの写真のbase64画像 URL。
getSignedASIDAsync
▸ getSignedASIDAsync(): Promise<SignedASID>
プレーヤーの一意の識別子。これは通常のFacebook Application-Scoped IDであり、すべてのグラフ APIの呼び出しに使用されます。ネイティブゲームと同じAppIDを共有している場合、このIDはネイティブゲームでも表示されます。
例
Wortal.player.getSignedASIDAsync()
.then(info => {
myServer.validate(
info.asid,
info.signature,
);
});
Returns
Promise<SignedASID>
プレイヤーのASIDとシグネチャを含むオブジェクトを解決する Promise。
Throws
- NOT_SUPPORTED
- RETHROW_FROM_PLATFORM
getSignedPlayerInfoAsync
▸ getSignedPlayerInfoAsync(): Promise<object>
検証のためのプレイヤー ID とシグネチャを含む、署名付きプレイヤー オブジェクトを取得します。これは、ゲームや購入データなど、検証のためのデータをバックエンドサーバーに送信するために使用できます。
例
Wortal.player.getSignedPlayerInfoAsync()
.then(info => {
myServer.validate(
info.id,
info.signature,
gameDataToValidate,
)
});
Returns
Promise<object>
プレイヤー ID とシグネチャを含むオブジェクトで解決する Promise。
Throws
- NOT_SUPPORTED
- INVALID_PARAM
- NETWORK_FAILURE
- CLIENT_UNSUPPORTED_OPERATION
isFirstPlay
▸ isFirstPlay(): boolean
プレイヤーがこのゲームを初めてプレイしたかどうかを確認します。
例
if (Wortal.player.isFirstPlay()) {
// Show tutorial
Wortal.player.setDataAsync({ tutorialShown: true });
}
Returns
boolean
最初のプレイであれば true 。プラットフォームによってはデータの永続性がなく、常に true を返します。
setDataAsync
▸ setDataAsync(data): Promise<void>
現在のプレーヤーの指定したクラウドストレージに保存するデータを設定します。
プラットフォーム1:Facebook / Linkでは、各プレイヤー最大1MBのデータ保存が可能。
プラットフォーム2:Viberでは、文字列に変換することで最大1000文字まで保存が可能。
例
パラメーター
| 名前 | タイプ | 内容説明 |
|---|---|---|
data |
Record<string, unknown> |
クラウドストレージに永続化されるべきキーと値のペアを含むオブジェクト。このオブジェクトには、シリアライズ可能な値だけを含んでください。シリアライズ可能でない値を含むと、修正全体が拒否されます。 |
Returns
Promise<void>
入力値が設定されたときに解決する Promise。
注:解決されることで、入力が必ずしも永続化されたことを意味するわけではありません。
つまり、データが有効であり、保存されるようにスケジュールされたことを意味し、さらに、設定されたすべての値が player.getDataAsync で使用可能になったことを保証します。
Throws
- NOT_SUPPORTED
- INVALID_PARAM
- NETWORK_FAILURE
- PENDING_REQUEST
- CLIENT_UNSUPPORTED_OPERATION
subscribeBotAsync
▸ subscribeBotAsync(): Promise<void>
プレイヤーがゲームのボット(Bot)をサブスクリプションするよう要請します。成功した場合、プレイヤーはボット(Bot)をサブスクリプションし、失敗した場合、APIは拒否します。
例
Returns
Promise<void>
プレイヤーがゲームのボット(Bot)のサブスクリプションに成功した場合に解決され、失敗した場合やプレイヤーがサブスクリプションを拒否した場合は拒否されます。
Throws
- NOT_SUPPORTED
- INVALID_PARAM
- PENDING_REQUEST
- CLIENT_REQUIRES_UPDATE