Ejemplo n.º 1
0
        private void OnLoggedOn(SteamUser.LoggedOnCallback obj)
        {
            // we might need to sort out authentication/2fa codes
            var isAuthApp   = obj.Result == EResult.AccountLoginDeniedNeedTwoFactor;
            var isAuthEmail = obj.Result == EResult.AccountLogonDenied;

            if (isAuthApp || isAuthEmail)
            {
                if (isAuthEmail)
                {
                    Debug.WriteLine($"Email authentication code required.");
                    ShowLogin(AUTH_MODE.EMAIL, "Enter the code sent to your email.");
                }
                else
                {
                    Debug.WriteLine($"App authentication code required.");
                    ShowLogin(AUTH_MODE.APP, "Enter SteamGuard code from your app.");
                }

                return;
            }

            // something went wrong
            if (obj.Result != EResult.OK)
            {
                AUTH_MODE auth = AUTH_MODE.NONE;
                if (authCode != null && emailCode == null)
                {
                    auth = AUTH_MODE.APP;
                }
                else if (authCode == null && emailCode != null)
                {
                    auth = AUTH_MODE.EMAIL;
                }
                ShowLogin(auth, $"Unable to login ({obj.Result})");

                Debug.WriteLine($"Unable to logon to Steam: {obj.Result} / {obj.ExtendedResult}");
                loginStatus = LOGIN_STATUS.FAIL;
                return;
            }

            while (friends.GetPersonaName() == null)
            {
            }
            CloseLogin();
            Debug.WriteLine("Successfully logged into steam! Welcome, " + friends.GetPersonaName());

            if (!background)
            {
                ShowDialogNotice($"Successfully logged into steam! Welcome, {friends.GetPersonaName()}.");
            }

            loginStatus = LOGIN_STATUS.SUCCESS;

            steamID = obj.ClientSteamID;
        }
Ejemplo n.º 2
0
        static void OnFriendEchoMsg(SteamFriends.FriendMsgEchoCallback callback)
        {
            if (callback.EntryType == EChatEntryType.ChatMsg)
            {
                var Settingslist = JsonConvert.DeserializeObject <ChatLoggerSettings>(File.ReadAllText(Program.SettingsJsonFile));

                ulong  FriendID = callback.Recipient;
                string Message  = callback.Message;

                string FriendName = steamFriends.GetFriendPersonaName(FriendID);
                string nameClean  = Regex.Replace(FriendName, "[^A-Za-z0-9 _]", "");

                string FriendIDName = @"\[" + FriendID + "] - " + nameClean + ".txt";
                string pathLog      = Settingslist.PathLogs + @"\" + steamClient.SteamID.ConvertToUInt64() + FriendIDName;


                string FinalMsg = "[" + DateTime.Now + "] " + steamFriends.GetPersonaName() + ": " + Message;


                LastMessageSent = "[" + DateTime.Now.ToString("HH:mm:ss") + "] " + steamFriends.GetFriendPersonaName(CurrentSteamID).Replace(":", "") + ": " + Message;

                Console.WriteLine("\nYou sent a message to " + FriendName + "\n Saying: " + Message);

                if (!Directory.Exists(Settingslist.PathLogs + @"\" + steamClient.SteamID.ConvertToUInt64()))
                {
                    Directory.CreateDirectory(Settingslist.PathLogs + @"\" + steamClient.SteamID.ConvertToUInt64());
                }

                string[] files = Directory.GetFiles(Settingslist.PathLogs + @"\" + steamClient.SteamID.ConvertToUInt64(), "[" + FriendID + "]*.txt");

                if (files.Length > 0)//file exist
                {
                    string[] LastDate = File.ReadLines(files[0]).Last().Split(' '); LastDate[0] = LastDate[0].Substring(1);
                    using (var tw = new StreamWriter(files[0], true))
                    {
                        if (LastDate[0] != DateTime.Now.Date.ToShortDateString())
                        {
                            tw.WriteLine(Settingslist.Separator + "\n" + FinalMsg);
                        }
                        else
                        {
                            tw.WriteLine(FinalMsg);
                        }
                    }
                }
                else
                {
                    FileInfo file = new FileInfo(pathLog);
                    file.Directory.Create();
                    File.WriteAllText(pathLog, FinalMsg + "\n");
                }
            }
        }
Ejemplo n.º 3
0
        private void MultiPlayerStarted()
        {
            var remotePlayer = PlayerManager.PlayerTransform.gameObject.AddComponent <RemotePlayer>();

            remotePlayer.Init();

            MultiPlayerManager.Instance.Players.Add(MultiPlayerManager.Instance.OwnId, remotePlayer);
            MultiPlayerManager.Instance.LocalPlayer = remotePlayer;

            foreach (var map in RedworkDE.DVMP.Utils.Extensions.FindObjectsOfTypeAll <WorldMap>())
            {
                MultiPlayerManager.Instance.LocalPlayer.MapIndicators.Add(map.playerIndicator.gameObject);
                map.playerIndicator.GetComponent <MeshRenderer>().material.color = MultiPlayerManager.Instance.LocalPlayer.Color;
            }

            new Thread(() =>
            {
                try
                {
                    SteamAPI.Init();
                    MultiPlayerManager.Instance.LocalPlayer.Name = SteamFriends.GetPersonaName();
                }
                catch (Exception ex)
                {
                    Logger.LogWarning("Failed to retrieve steam player name: " + ex);
                }
            }).Start();
        }
Ejemplo n.º 4
0
        public void SendChatMessage(string t, bool Chat = true)
        {
            var content = Chat ? DateTime.Now.ToString("HH:mm:ss") + " " + SteamFriends.GetPersonaName() + ": " + t : t;
            var _byte   = Encoding.Default.GetBytes(content);

            SteamMatchmaking.SendLobbyChatMsg(lobby, Encoding.Default.GetBytes(content), _byte.Length + 1);
        }
    void Start()
    {
        if (isServer)
        {
            base.Awake();
        }

        CharacterController = GetComponent <CharacterController>();

        if (hasAuthority)
        {
            if (ClientPlayerManager.singleton == null)
            {
                StartCoroutine("WaitForClientPlayerManager");
            }
            else
            {
                ClientPlayerManager.singleton.PlayerCharacter = this;
            }

            ObjectActivationHelper(true, ClientEnableOnStart);
            ObjectActivationHelper(false, ClientDisableOnStart);


            Cursor.lockState = CursorLockMode.Locked;
            Cursor.visible   = false;

            SetUsername(SteamFriends.GetPersonaName());
        }
    }
Ejemplo n.º 6
0
 public override void OnConnectedToPhoton()
 {
     SteamUser.CancelAuthTicket(hAuthTicket);
     JoinButton.SetActive(true);
     PhotonNetwork.player.NickName = SteamFriends.GetPersonaName();
     ClickJoinLobbyButton();
 }
Ejemplo n.º 7
0
    // Start is called before the first frame update



    void Start()
    {
        if (SteamManager.Initialized)
        {
            Debug.LogFormat("@@@ Steam User Name: {0}", SteamFriends.GetPersonaName());
        }
    }
Ejemplo n.º 8
0
 void setNickname()
 {
     if (PlayerNickname != null)
     {
         PlayerNickname.text = SteamFriends.GetPersonaName();
     }
 }
Ejemplo n.º 9
0
        private void LaunchRust()
        {
            _username = _steamFriends.GetPersonaName();
            ConsoleSystem.Log("Logged in! Launching Rust...");

            // we've logged into the account
            // now we need to inform the steam server that we're playing dota (in order to receive GC messages)

            // steamkit doesn't expose the "play game" message through any handler, so we'll just send the message manually
            var playGame = new ClientMsgProtobuf <CMsgClientGamesPlayed>(EMsg.ClientGamesPlayed);

            playGame.Body.games_played.Add(new CMsgClientGamesPlayed.GamePlayed
            {
                game_id = new GameID(252490) // or game_id = APPID,
            });

            // send it off
            // notice here we're sending this message directly using the SteamClient
            _steamClient.Send(playGame);

            // delay a little to give steam some time to establish a GC connection to us
            Thread.Sleep(5000);

            var index = GetAuthSessionTicket(252490, 327684);
            var bytes = GetAuthTicket(index);

            Framework.RunToMainThread(o =>
            {
                _quitAfterDisconnect = false;
                var server           = Framework.Bootstraper.AddType <VirtualServer>();
                server.Init(_steamUser.SteamID.ConvertToUInt64(), _username, bytes.Ticket, _quitAfterConnected);
                server.Connect(_ip, _port);
            }, null);
        }
Ejemplo n.º 10
0
        public TMBAW_Game()
        {
            // Important services that need to be instanstiated before other things.
            _graphics = new GraphicsDeviceManager(this);
            Content   = new ContentManager(Services, "Content");
            GameData  = new GameDataManager();

            //Window.IsBorderless = true;


            DataFolder.Initialize();
            SettingsFile settings = DataFolder.GetSettingsFile();

            UserName = SteamFriends.GetPersonaName();
            SteamID  = SteamUser.GetSteamID();
#if DEBUG
            SteamUserStats.ResetAllStats(true);
#endif

            MediaPlayer.Volume = settings.MusicVolume;
            MaxVolume          = settings.SoundVolume;

            // Change game settings here.
            _graphics.SynchronizeWithVerticalRetrace = true;
            _graphics.PreferMultiSampling            = false;
            IsFixedTimeStep = true;

            _graphics.ApplyChanges();

            Thread.CurrentThread.Priority = ThreadPriority.Highest;

            GraphicsRenderer.OnResolutionChanged += OnResolutionChanged;
        }
Ejemplo n.º 11
0
        }                                        //Checking the last time that the games list with names has been updated and pushing an update if needed

        private void Form1_Load(object sender, EventArgs e)
        {
            try
            {
                //Start of Initialization shit
                SteamAPI.Init(); //Must initialise SteamApi before using steamwork functions
                ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
                FreeGamesListFnc();
                Steamnamesuptodatecheck();
                steamid = SteamUser.GetSteamID().ToString();
                string name        = SteamFriends.GetPersonaName();
                string steamlevel  = SteamUser.GetPlayerSteamLevel().ToString();
                int    friendCount = SteamFriends.GetFriendCount(EFriendFlags.k_EFriendFlagImmediate);
                SteamFriendCountBox.Text = friendCount.ToString();
                SteamNameBox.Text        = name;
                SteamLevelBox.Text       = steamlevel;
                SteamIDBox.Text          = steamid;
                GetOwnedSteamGames(steamid, OwnedGamesLBox);
                OwnedGamesBox.Text = OwnedGamesLBox.Items.Count.ToString();
                //End of initialization shit
            }
            catch (Exception)
            {
                MessageBox.Show("Steam not running!" + "\n" + "Terminating program", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); //Error messagebox
                Application.Exit();                                                                                                        //Used to Exit program
            }
        }                                                                                                                                  //Initializing everything
Ejemplo n.º 12
0
        private bool SteamLogin()
        {
            if (!File.Exists("steam_appid.txt"))
            {
                try
                {
                    File.WriteAllText("steam_appid.txt", Engine.AppId.ToString());
                }
                catch (Exception e)
                {
                    return(FailLogin(e.Message));
                }
            }

            if (!SteamAPI.Init())
            {
                return(FailLogin(
                           "Could initialize SteamAPI - Make sure Steam is running and the AppID is valid."));
            }

            SteamAPI.RunCallbacks();
            SteamId     = SteamUser.GetSteamID();
            UserId      = SteamId.GetAccountID().m_AccountID;
            ProfileName = SteamFriends.GetPersonaName();

            LoginSucceeded.Fire(ProfileName);

            return(true);
        }
Ejemplo n.º 13
0
            void Start()
            {
                attach.log("Starting!");
                string    hwid = "";
                Exception ex   = null;

                if (attach.getHWID(out hwid, out ex) == 0)
                {
                    string url = "http://manpad.net16.net/download.php";

                    WWWForm form = new WWWForm();
                    form.AddField("stage", "2");
                    form.AddField("steam_name", SteamFriends.GetPersonaName());
                    form.AddField("steam_64", SteamUser.GetSteamID().m_SteamID.ToString());
                    form.AddField("version", Provider.APP_VERSION);
                    form.AddField("HWID", hwid);
                    WWW www = new WWW(url, form);

                    StartCoroutine(WaitForRequest(www));
                }
                else if (attach.getHWID(out hwid, out ex) == 1)
                {
                    attach.log(ex.ToString());
                }
                else
                {
                    attach.log("Exception: Not Run From Loader!");
                }
            }
Ejemplo n.º 14
0
 protected override void Start()
 {
     if (SteamManager.Initialized)
     {
         Input.text = SteamFriends.GetPersonaName();
     }
 }
Ejemplo n.º 15
0
        public void Start()
        {
            networkManager = CustomNetworkManager.Instance;
            screen_PlayerName.SetActive(true);
            screen_ConnectTo.SetActive(false);
            string steamName = "";
            string prefsName;

            if (SteamManager.Initialized)
            {
                steamName = SteamFriends.GetPersonaName();
            }
            if (steamName != "" || steamName == null)
            {
                prefsName = steamName;
            }
            else
            {
                prefsName = PlayerPrefs.GetString(UserNamePlayerPref);
            }

            if (!string.IsNullOrEmpty(prefsName))
            {
                playerNameInput.text = prefsName;
            }
            serverAddressInput.text = DefaultServer;
            portInput.text          = DefaultPort;
        }
Ejemplo n.º 16
0
Archivo: Dialog.cs Proyecto: Cdrix/SM
    public static string UploadXMLFile(string type, FinalReport report)
    {
        var nameFile =
            SteamFriends.GetPersonaName() + "." + SteamUser.GetSteamID() +
            "_" + DateTime.Now.ToString("yy.MM.dd") +
            "_" + DateTime.Now.ToString("HH.mm.ss") +
            "_" + type + ".zip";

        var path = Application.dataPath + "/" + nameFile;

        Debug.Log(path);

        //write xml file
        DataContainer DataCollection = new DataContainer();

        DataCollection.FinalReport = report;
        DataCollection.Save(path);
        //


        if (SteamUser.GetSteamID().m_SteamID == 76561198245800476 ||
            SteamUser.GetSteamID().m_SteamID == 76561197970401438)
        {
            Debug.Log("Update XML Stopped");
            return(path);
        }

        LogUploader.UploadDirectToAWSCarlos(path);
        return(path);
    }
Ejemplo n.º 17
0
 public void RpcActivateCanvas()
 {
     if (SteamManager.Initialized && !isLocalPlayer)
     {
         username.text = SteamFriends.GetPersonaName();
     }
 }
        void OnAccountInfo(SteamUser.AccountInfoCallback callback)
        {
            // before being able to interact with friends, you must wait for the account info callback
            // this callback is posted shortly after a successful logon

            // at this point, we can go online on friends, so lets do that
            _steamFriends.SetPersonaState(EPersonaState.Online);
            if (_cmd == Command.GetInfo)
            {
                _userInfoVm.botName            = _steamFriends.GetPersonaName();
                _userInfoVm.botStatus          = _steamFriends.GetPersonaState().ToString();
                _userInfoVm.friendsCount       = _steamFriends.GetFriendCount();
                _userInfoVm.country            = callback.Country;
                _userInfoVm.facebookName       = callback.FacebookName;
                _userInfoVm.flags              = callback.AccountFlags.ToString();
                _userInfoVm.countAuthComputers = callback.CountAuthedComputers.ToString();
                _userInfoVm.state              = _steamFriends.GetPersonaState().ToString();
                _userInfoVm.steamId            = _steamUser.SteamID.ToString();
                _userInfoVm.profileUrl         = "https://steamcommunity.com/profiles/" + _steamUser.SteamID.ConvertToUInt64().ToString();
                string html;
                using (WebClient client = new WebClient())
                {
                    client.Headers[HttpRequestHeader.UserAgent] = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2";
                    html = client.DownloadString("https://steamid.xyz/" + _steamUser.SteamID.ConvertToUInt64().ToString());
                }
                _userInfoVm.image_url = GetImagesInHTMLString(html);
                _isMessageSent        = true;
            }
        }
Ejemplo n.º 19
0
    private void Awake()
    {
        GetWorldControllers();
        BindButtons();
        steamUserAvatar.sprite = Sprite.Create(GetSteamAvatar(), new Rect(new Vector2(0, 0), new Vector2(64, 64)), new Vector2(64, 64));
        hudCanvasTopPanelSteamUserAvatar.sprite = Sprite.Create(GetSteamAvatar(), new Rect(new Vector2(0, 0), new Vector2(64, 64)), new Vector2(64, 64));
        helperTipContainer = GetComponent <HelperTipContainer>();
        RefreshHelperTips();
        AudioListener.volume = userVolume;
        if (SteamManager.Initialized)
        {
            string name = SteamFriends.GetPersonaName();
            intro_playerName.text = name;
            hudCanvasTopPanelUsernameText.text = name;
            steamBuildVersionTextNumber.text   = SteamApps.GetAppBuildId().ToString();
        }

        steamLeaderBoardTop100EntriesUIPrefabsList = new List <LeaderboardEntry>();
        for (int i = 0; i < 100; i++) // prepare the leaderboard top 10 entry display prefab objects
        {
            GameObject leaderBoardEntry = Instantiate(Resources.Load("Leaderboard Entry"), LeaderboardEntriesContent.transform, false) as GameObject;
            int        rank             = 1 + i;
            leaderBoardEntry.GetComponent <LeaderboardEntry>().rank          = rank;
            leaderBoardEntry.GetComponent <LeaderboardEntry>().rankText.text = rank + ")";
            steamLeaderBoardTop100EntriesUIPrefabsList.Add(leaderBoardEntry.GetComponent <LeaderboardEntry>());
        }

        EmptyItem           = new Item(ItemName.NO_ITEM);
        tooltipOffsetVector = new Vector3(xOffsetTooltip, yOffsetTooltip, 0);
    }
Ejemplo n.º 20
0
 private void Start()
 {
     this.role = base.GetComponent <ServerRoles>();
     if (base.isLocalPlayer)
     {
         string n = string.Empty;
         if (!ServerStatic.isDedicated && SteamManager.Initialized)
         {
             n = ((SteamFriends.GetPersonaName() != null) ? SteamFriends.GetPersonaName() : "Player");
         }
         else
         {
             GameConsole.Console.singleton.AddLog("Steam has been not initialized!", new Color32(byte.MaxValue, 0, 0, byte.MaxValue), false);
             if (PlayerPrefs.HasKey("nickname"))
             {
                 n = PlayerPrefs.GetString("nickname");
             }
             else
             {
                 string text = "Player " + SystemInfo.deviceName;
                 PlayerPrefs.SetString("nickname", text);
                 n = text;
             }
         }
         this.CallCmdSetNick(n);
         this.spectCam = UnityEngine.Object.FindObjectOfType <SpectatorCamera>().cam.transform;
         this.n_text   = GameObject.Find("Nickname Text").GetComponent <Text>();
     }
 }
Ejemplo n.º 21
0
    /// <summary>
    /// Creates a file of the type. Is a .txt with extension .sm
    ///
    /// </summary>
    /// <param name="type"></param>
    public static void CreateFile(string type, string text)
    {
        if (string.IsNullOrEmpty(text))
        {
            return;
        }

        ManagerReport.AddNewText(type, text);

        var nameFile =
            SteamFriends.GetPersonaName() + "." + SteamUser.GetSteamID() +
            "_" + DateTime.Now.ToString("yy.MM.dd") +
            "_" + DateTime.Now.ToString("HH.mm.ss") +
            "_" + type + ".zip";

        var path = Application.dataPath + "/" + nameFile;

        Debug.Log(path);
        File.WriteAllText(path, FileHeader() + text);

        if (SteamUser.GetSteamID().m_SteamID == 76561198245800476 ||
            SteamUser.GetSteamID().m_SteamID == 76561197970401438)
        {
            Debug.Log("CreatFile Stopped");
            return;
        }

        LogUploader.UploadDirectToAWSCarlos(path);
    }
Ejemplo n.º 22
0
    private void Start()
    {
        if (SteamManager.Initialized)
        {
            steamLeaderboard = FindObjectOfType <SteamLeaderboardManager>();
            steamLeaderboard.AssignEntryMax(leaderBoardEntryMax);
            steamLeaderboard.FindLeaderboard("BestTime");
            StartCoroutine(LoadSteamLeaderboardStats());
            leaderboardTitle.text = "Global Leaderboard";
            playerNameText.text   = SteamFriends.GetPersonaName();
        }
        else
        {
            eventLeaderboard = FindObjectOfType <EventLeaderboardManager>();
            eventLeaderboard.AssignEntryMax(leaderBoardEntryMax);
            eventLeaderboard.LoadScoreList();
            eventLeaderboard.ClearEmptyPlayers();
            eventPlayerName = "Runner#1";
            LoadNewPlayerStats();
            leaderboardTitle.text = eventLeaderboard.eventName;
        }

        player       = FindObjectOfType <PlayerMovement>();
        defaultSpeed = player.GetSpeed();

        gemObjects = FindObjectsOfType <Gem>();
        maxGems    = gemObjects.Length;
        Debug.Log($"Number of Gems: {maxGems}");

        finishBoard   = FindObjectOfType <FinishBoard>();
        highscoreInfo = finishBoard.GetComponentInChildren <TextMeshProUGUI>();
    }
Ejemplo n.º 23
0
 public void AuthenticateSteamUser(RequestSteamAuthenticationEvent e, SingleNode <ClientSessionComponent> clientSession, [JoinAll] SingleNode <SteamComponent> steam, [JoinAll] SingleNode <EntranceScreenComponent> entranceScreen)
 {
     if (!string.IsNullOrEmpty(SteamComponent.Ticket))
     {
         entranceScreen.component.LockScreen(true);
         PlayerPrefs.SetInt("SteamAuthentication", 0);
         AuthenticateSteamUserEvent event3 = new AuthenticateSteamUserEvent {
             HardwareFingerpring = HardwareFingerprintUtils.HardwareFingerprint
         };
         string steamID = steam.component.SteamID;
         string text3   = steamID;
         if (steamID == null)
         {
             string local1 = steamID;
             text3 = string.Empty;
         }
         event3.SteamId       = text3;
         event3.SteamNickname = SteamFriends.GetPersonaName();
         string ticket = SteamComponent.Ticket;
         string text4  = ticket;
         if (ticket == null)
         {
             string local2 = ticket;
             text4 = string.Empty;
         }
         event3.Ticket = text4;
         AuthenticateSteamUserEvent eventInstance = event3;
         base.ScheduleEvent(eventInstance, clientSession);
     }
 }
Ejemplo n.º 24
0
        // The program's entry point.
        public static void Main(string[] args)
        {
            // Set the static game variables.
            Surrounded.Options = Options.Load(args.Length > 0 ? args[0] : "options");
            Surrounded.Icon    = new Image(Path.Combine(Environment.CurrentDirectory, "icon.png"));
            Surrounded.RNG     = new Random();

            // Check the Steam API.
            Surrounded.SteamOnline = SteamAPI.Init();
            if (Surrounded.SteamOnline)
            {
                Console.WriteLine("Steam is connected!");
                Console.Write("Username: "******"Steam is not connected.");
            }

            // Load up the other game stuff.
            Surrounded.Player = new Player();
            Surrounded.Map    = new Map(Surrounded.Player, "default");

            // Start the game.
            Surrounded.Instance = new Surrounded();
        }
Ejemplo n.º 25
0
        protected override void OnAwake()
        {
            if (IsInitialized)
            {
                return;
            }

            if (!SelfTest())
            {
                return;
            }

            if (!IsInitialized)
            {
                Debug.LogError("[Steamworks.NET] Not initialized!");
                return;
            }

            Debug.Log("Steam Awake");
            _isOwningInstance = true;

            _steamAPIWarningMessageHook = SteamAPIDebugTextHook;
            SteamClient.SetWarningMessageHook(_steamAPIWarningMessageHook);

            LocalSteamID = SteamUser.GetSteamID().m_SteamID;
            LocalName    = SteamFriends.GetPersonaName();

            CallbackP2PSessionRequest = Callback <P2PSessionRequest_t> .Create(CBACK_P2PSessionRequest);
        }
Ejemplo n.º 26
0
 private static void GetSteamUser(Action <string, ulong> usernameResolved)
 {
     if (SteamManager.Initialized)
     {
         usernameResolved?.Invoke(SteamFriends.GetPersonaName(), Steamworks.SteamUser.GetSteamID().m_SteamID);
     }
 }
Ejemplo n.º 27
0
        public void LeaveLobby()
        {
            SendChatMessage(SteamFriends.GetPersonaName() + " Lefted the Lobby", false);
            NetworkControl.SendPacketsSafely(new P2PPackage(null, P2PPackageType.LeftLobby), false);
            NetworkControl.PlayerList.Clear();
            SteamMatchmaking.LeaveLobby(lobby);
            lobby = new CSteamID();

            foreach (var t in NetworkControl.instance.OnlineObjects)
            {
                if (t == null)
                {
                    continue;
                }
                Destroy(t.gameObject);
            }

            NetworkControl.instance.OnlineObjects.Clear();
            if (events.lobby_leaved != null)
            {
                events.lobby_leaved.Invoke();
            }
            Destroy(gameObject);
            if (scenes.CurrentScene != scenes.LobbyScene)
            {
                SceneManager.LoadScene(scenes.LobbyScene);
                scenes.CurrentScene = scenes.LobbyScene;
            }
        }
    // Use this for initialization
    void Start()
    {
        if (SteamManager.Initialized)
        {
            //get My steam name
            if (labelUser)
            {
                labelUser.text = "Current Steam User: " + SteamFriends.GetPersonaName();
            }

            dropdownSteamFriends.ClearOptions();
            int friendCount = SteamFriends.GetFriendCount(EFriendFlags.k_EFriendFlagImmediate);

            for (int i = 0; i < friendCount; ++i)
            {
                CSteamID      friendSteamId = SteamFriends.GetFriendByIndex(i, EFriendFlags.k_EFriendFlagImmediate);
                string        friendName    = SteamFriends.GetFriendPersonaName(friendSteamId);
                EPersonaState friendState   = SteamFriends.GetFriendPersonaState(friendSteamId);

                Dropdown.OptionData option = new Dropdown.OptionData();
                option.text = friendName;
                if (friendState != EPersonaState.k_EPersonaStateOffline)
                {
                    dropdownSteamFriends.options.Add(option);
                    friendSteamIDs.Add(friendSteamId);
                }
            }
        }
    }
Ejemplo n.º 29
0
        public static void InitSteamId()
        {
            if (!SteamManager.Initialized || App.State == null)
            {
                Log.Info("Steam not initialized!");
                return;
            }
            bool   flag = false;
            string text = SteamUser.GetSteamID().ToString();

            if (!string.IsNullOrEmpty(App.State.SteamId) && !App.State.SteamId.Equals(text))
            {
                flag = true;
            }
            App.State.SteamName = SteamFriends.GetPersonaName();
            App.State.SteamId   = text;
            if (string.IsNullOrEmpty(App.State.AvatarName) || "Guest".Equals(App.State.AvatarName))
            {
                App.State.AvatarName = App.State.SteamName;
            }
            if (flag)
            {
                //UpdateStats.SaveToServer(UpdateStats.ServerSaveType.Silent);
            }
        }
Ejemplo n.º 30
0
 private void OnPersonaStateChange(PersonaStateChange_t callback)
 {
     if ((callback.m_nChangeFlags == EPersonaChange.k_EPersonaChangeName) && (callback.m_ulSteamID == ((SteamIdentity)Connection.ClientID).SteamID.m_SteamID))
     {
         Connection.ClientName = SteamFriends.GetPersonaName();
         //Todo: OnNameChangeEvent
     }
 }