Steam API (稼働中) を使用して、アプリケーションで現在使用されている (ログインしている) アカウントの Steam ユーザー名を取得するにはどうすればよいですか。
Steam ID は、(たとえば) 次の方法で取得できます。
CSteamID id = SteamUser.GetSteamID();
しかし、ユーザー名を取得する方法が見つかりません。
Steam API (稼働中) を使用して、アプリケーションで現在使用されている (ログインしている) アカウントの Steam ユーザー名を取得するにはどうすればよいですか。
Steam ID は、(たとえば) 次の方法で取得できます。
CSteamID id = SteamUser.GetSteamID();
しかし、ユーザー名を取得する方法が見つかりません。
私の知る限りAPI関数がないため、アカウント名の取得は困難です。
しかし、フォルダには次のようなSteamAppData.vdf
ファイルがあります。<SteamInstallPath>/config
"SteamAppData"
{
"RememberPassword" "<0|1>"
"AutoLoginUser" "<accountName>"
}
SteamAPI_GetSteamInstallPath()
で定義されているコマンドを使用して、Steam のインストール パスを取得できますsteam_api.h
。
次に、ファイルを読み取り、そこからアカウント名を抽出できます。
プレイヤー名を取得するのはとても簡単です:
で、このisteamfriends.h
メソッドを見つける必要があります。
// returns the local players name - guaranteed to not be NULL.
// this is the same name as on the users community profile page
// this is stored in UTF-8 format
// like all the other interface functions that return a char *, it's important that this pointer is not saved
// off; it will eventually be free'd or re-allocated
virtual const char *GetPersonaName() = 0;
だからSteamFriends.GetPersonaName()
あなたにプレイヤー名を与えるべきです。
SteamFriends()->GetPersonaName();