コンテンツにスキップ

モジュール:プレイヤー

目次

機能

機能

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 への呼び出しは拒否されます。

Wortal.player.flushDataAsync()
 .then(() => console.log("Data flushed."));

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はネイティブゲームでも表示されます。

Wortal.player.getASIDAsync()
.then(asid => console.log("Player ASID: " + asid));

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を取得します。

Wortal.player.getID(); // 'Player123ABC'

Returns

string | null

プレイヤーID。


getName

getName(): string | null

プラットフォーム上のプレイヤー名を取得します。

Example

Wortal.player.getName(); // 'Ragnar Lothbrok'

Returns

string | null

プレーヤー名。


getPhoto

getPhoto(): string | null

プラットフォームからプレイヤーの写真を取得します。

Wortal.player.getPhoto();

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文字まで保存が可能。

Wortal.player.setDataAsync({
    items: {
        coins: 100,
        boosters: 2
    },
    lives: 3,
});

パラメーター

名前 タイプ 内容説明
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は拒否します。

Wortal.player.subscribeBotAsync()
.then(() => console.log("Player subscribed to bot"));

Returns

Promise<void>

プレイヤーがゲームのボット(Bot)のサブスクリプションに成功した場合に解決され、失敗した場合やプレイヤーがサブスクリプションを拒否した場合は拒否されます。

Throws

  • NOT_SUPPORTED
  • INVALID_PARAM
  • PENDING_REQUEST
  • CLIENT_REQUIRES_UPDATE