achievement_login()


ソーシャルゲーミング

achievement_login

選択したプラットフォーム用のリーダーボードページにログインします

構文

achievement_login()

戻り値

N/A
なし

説明

この関数は適切なリーダーボードとアチーブメントサービスにログインします。 もしサービスが利用できない場合、Game Centerやすべてのアチーブメントに記録された"ふり"をして、デバイスに保存されます。実際のサービスが利用可能であれば、記録はアップロードされます。 この関数は非同期イベント変数"async_load"にキー・値のペアを書くのするソーシャル非同期イベントをトリガします(詳細はソーシャル非同期イベントについて?を参照してください)。 このds_mapの"id"キーはコールバックを適切に識別するために使用されます(非同期イベントは同時に複数のトリガが発生する可能性があります)。 コールバックを識別するには"id"キーと定数"achievement_our_info"と一致するかどうかをチェックします。 ds_mapの内容は以下のとおりです。

  • id - この値は定数"achievement_our_info"と一致しなければなりません
  • name - 現在ログインしているユーザの名前
  • playerid - 現在ログインしているユーザのユニークなプレイヤーID

次のコードはおそらくゲームの開始時に呼び出されます。 もしくはルームに配置した特別なボタンオブジェクトから、Googleのゲームサービスや、Apple Game Centerアカウントへのログインを要求します

achievement_login();

これにより現在のプレイヤーの情報を要求を送信し、async_loadのds_mapの非同期コールバックを生成します

// "id"の値をチェック
var ident = ds_map_find_value(async_load, "id");
if ident == achievement_our_info
{
  // ユーザ名を取得
  var name = ds_map_find_value(async_load, "name" );
  // プレイヤーIDを取得
  var playerid = ds_map_find_value(async_load, "playerid" );
  global.OurName = name;
  global.OurId = playerid;
  if os_type == os_android
  {
    // Android環境のリーダーボードを取得
    achievement_load_leaderboard("CgkIs9_51u0PEAIQBw",false,1,100,achievement_filter_friends_only);
  }
  else
  {
    // それ以外の環境のリーダーボードを取得
    achievement_load_leaderboard("leaderboard1id",false,1,100,achievement_filter_friends_only);
  }
  achievement_get_challenges();
  achievement_load_friends();
  achievement_load_progress();
}

上記コードは、ソーシャル非同期イベントにより生成したds_mapの"id"が定数と一致するかチェックして、一致すれば、 その後、リーダーボードを準備するために必要な関数を呼び出す前に、変数内のすべての異なる値になるマップをループ処理し、チャレンジやフレンドリストを取得します

Wiki内検索

#search(): You already view a search box

MENU

ドキュメント

GMLリファレンス

2ch

その他



最新の30件

2024-03-07 2023-08-09 2023-05-21 2023-05-20 2023-05-04 2022-10-13 2022-07-21 2022-07-02 2022-04-06 2021-11-30 2021-11-26 2021-10-03 2021-09-23 2021-08-15 2021-06-02 2021-01-23 2021-01-21 2021-01-19 2021-01-18 2021-01-16 2021-01-15

人気の10件

今日の10件



これまでの訪問者: 799
今日の訪問者: 1
昨日の訪問者: 1
閲覧者: 3