2017-09-28 1 views
0

Ich verwende Steamworks.net derzeit mit Unity3d und C#. Was ich tun möchte, ist Steam Benutzer ID zu bekommen, in diesem Fall meine eigene und dann eine Funktion auszuführen. DieseKann Typ `Steamworks.CSteamID 'nicht implizit in' float 'konvertieren

ist das, was ich bisher:

private static float berdyevID = 76561198040013516; 
private static float steamID; 


void Start() { 

    if(SteamManager.Initialized) { 

     string name = SteamFriends.GetPersonaName(); 

     // get steam user id 
     steamID = Steamworks.SteamUser.GetSteamID(); 

     // see if it matches 
     if (berdyevID == steamID) { 

      Debug.Log ("Steam ID did match"); 
     } else { 

      Debug.Log ("Steam ID did not match"); 
     } 


    } 

} 

ich einen Fehler von Unity bin immer in dem es heißt:

kann nicht implizit Typ Steamworks.CSteamID' to float‘konvertieren. Eine explizite Konvertierung existiert (fehlt Ihnen ein Cast?)

Das verwirrt mich. Ich habe versucht, meine Forschung auf Google zu tun, um eine mögliche Lösung zu finden, konnte aber nichts finden. Kann jemand helfen?

EDIT:

ich das versucht, aber es hat nicht funktioniert:

private static ulong berdyevID = 76561198040013516; 
private static ulong steamID; 

void Start() { 

    if(SteamManager.Initialized) { 

     string name = SteamFriends.GetPersonaName(); 

     // get steam user id 
     steamID = Steamworks.SteamUser.GetSteamID(); 

     // see if it matches 
     if (berdyevID == steamID) { 

      Debug.Log ("Steam ID did match"); 
     } else { 

      Debug.Log ("Steam ID did not match"); 
     } 
    } 
} 

Antwort

4

Ihre GetSteamID() Rückkehr ein Objekt vom Typ Steamworks.CSteamID die float nicht übertragbar auf die Variable steamID vom Typ ist.

Es gibt eine ulong Variable namens m_SteamID Variable in der CSteamID Struktur. Dort befindet sich die ID.

private static ulong berdyevID = 76561198040013516; 
private static ulong steamID; 


void Start() { 

    if(SteamManager.Initialized) { 

     string name = SteamFriends.GetPersonaName(); 

     // get steam user id 
     steamID = Steamworks.SteamUser.GetSteamID().m_SteamID; 

     // see if it matches 
     if (berdyevID == steamID) { 

      Debug.Log ("Steam ID did match"); 
     } else { 

      Debug.Log ("Steam ID did not match"); 
     } 
    } 
} 
+0

Okay .. Was würde ich dann tun? – papi

+0

Schauen Sie auf die API und sehen, wie es die ID aus dieser Klasse zurückgibt –

+0

@berdyev Überprüfen Sie die aktualisierte Antwort – Programmer

Verwandte Themen