コード例 #1
0
        public void LogPlaySessionScore(int appSession, JourneyPosition pos, int score, float playTime)
        {
            if (ApplicationConfig.I.DebugLogEnabled)
            {
                Debug.Log("LogPlaySessionScore " + pos.Id + " / " + score);
            }

            // Log for history
            var data = new LogPlaySessionScoreData(appSession, pos, score, playTime);

            db.Insert(data);

            // Retrieve previous scores
            string query = string.Format("SELECT * FROM " + typeof(JourneyScoreData).Name);
            var    previousScoreDataList = db.Query <JourneyScoreData>(query);

            // Score update
            var scoreData = GetJourneyScoreDataWithMaximum(JourneyDataType.PlaySession, pos.Id, score, previousScoreDataList);

            db.InsertOrReplace(scoreData);
        }
コード例 #2
0
        public void LogPlaySessionScores(int appSession, List <LogPlaySessionScoreParams> logPlaySessionScoreParamsList)
        {
            // Retrieve previous scores
            string query = string.Format("SELECT * FROM " + typeof(JourneyScoreData).Name);
            var    previousScoreDataList = db.Query <JourneyScoreData>(query);

            var logDataList   = new List <LogPlaySessionScoreData>();
            var scoreDataList = new List <JourneyScoreData>();

            foreach (var parameters in logPlaySessionScoreParamsList)
            {
                // Log for history
                var logData = new LogPlaySessionScoreData(appSession, parameters.Pos, parameters.Score, parameters.PlayTime);
                logDataList.Add(logData);

                // Score update
                var scoreData = GetJourneyScoreDataWithMaximum(JourneyDataType.PlaySession, parameters.Pos.Id, parameters.Score, previousScoreDataList);
                scoreDataList.Add(scoreData);
            }

            db.InsertAll(logDataList);
            db.InsertOrReplaceAll(scoreDataList);
        }