internal void BroadcastCurrentSongData(Room Instance)
 {
     if (this.mSong != null)
     {
         Instance.SendMessage(JukeboxDiscksComposer.ComposePlayingComposer(this.mSong.SongData.Id, this.mSongQueuePosition, 0), null);
     }
     else
     {
         Instance.SendMessage(JukeboxDiscksComposer.ComposePlayingComposer(0, 0, 0), null);
     }
 }
예제 #2
0
        public static void ShowResults(Room Room, int QuestionId, GameClient Session)
        {
            Thread.Sleep(30000);
            string Question;
            DataTable Data = null;
            using (DatabaseClient dbClient = GoldTree.GetDatabase().GetClient())
            {
                Question = dbClient.ReadString("SELECT question FROM infobus_questions WHERE id = '" + QuestionId + "' LIMIT 1");
            }

            using (DatabaseClient dbClient = GoldTree.GetDatabase().GetClient())
            {
                Data = dbClient.ReadDataTable("SELECT * FROM infobus_answers WHERE question_id = '" + QuestionId + "'");

            }

            ServerMessage InfobusQuestion = new ServerMessage(80);
            InfobusQuestion.AppendStringWithBreak(Question);
            InfobusQuestion.AppendInt32(Data.Rows.Count);
            if (Data != null)
            {
                foreach (DataRow Row in Data.Rows)
                {
                    int ResultCount;
                    InfobusQuestion.AppendInt32((int)Row["id"]);
                    InfobusQuestion.AppendStringWithBreak((string)Row["answer_text"]);
                    using (DatabaseClient dbClient = GoldTree.GetDatabase().GetClient())
                    {
                        ResultCount = dbClient.ReadInt32("SELECT COUNT(*) FROM infobus_results WHERE answer_id = '" + (int)Row["id"] + "' AND question_id = '" + QuestionId + "'");
                    }
                    InfobusQuestion.AppendInt32(ResultCount);
                }
            }
            int AnswerUserCount;
            using (DatabaseClient dbClient = GoldTree.GetDatabase().GetClient())
            {
                AnswerUserCount = dbClient.ReadInt32("SELECT COUNT(*) FROM infobus_results WHERE question_id = '" + QuestionId + "'");
            }
            InfobusQuestion.AppendInt32(AnswerUserCount);
            Room.SendMessage(InfobusQuestion, null);

            using (DatabaseClient dbClient = GoldTree.GetDatabase().GetClient())
            {
                dbClient.ExecuteQuery("DELETE FROM infobus_results WHERE question_id = '" + QuestionId + "'");
            }
        }