コード例 #1
0
    /// <summary>
    /// login to account
    /// </summary>
    /// <param name="_name">username</param>
    /// <param name="_password">password</param>
    /// <param name="_autologin">autologin</param>
    /// <param name="_callback">on login callback</param>
    /// <returns></returns>
    public static bool login(string _name, string _password, bool _autologin, Action _callback)
    {
        if (MemoryDatabase.exist() && MemoryDatabase.database.CheckTableExistence("users"))
        {
            if (_autologin)
            {
                MainConfig.GetGroup("account").GetEntry("autologin").SetValue("1");
                MainConfig.GetGroup("account").GetEntry("name").SetValue(_name);
                MainConfig.GetGroup("account").GetEntry("password").SetValue(_password);
                MainConfig.Save();
            }

            string   compactData = MemoryDatabase.database.GetDataFromTableFilter("users", "name='" + _name + "' && password='******'");
            string[] data        = compactData.Split(',');

            id    = int.Parse(data[0]);
            name  = Regex.Replace(data[1], @"\s+", "");
            score = new Score()
            {
                wins = int.Parse(data[3]), losses = int.Parse(data[4])
            };

            isActivate = true;
            _callback?.Invoke();
            return(true);
        }

        return(false);
    }