Esempio n. 1
0
        public static int qrCountCallback(QueryReportKeyType keyType, IntPtr userData)
        {
            Console.Write("\nIn {0} : ", System.Reflection.MethodBase.GetCurrentMethod().Name);
            Console.Write("Reporting {0}  = ", keyType);

            if (keyType == QueryReportKeyType.key_player)
            {
                Console.WriteLine("{0} players", myGame.numPlayers);
                return(myGame.numPlayers);
            }
            else if (keyType == QueryReportKeyType.key_team)
            {
                Console.WriteLine("{0} teams", myGame.numTeams);
                return(myGame.numTeams);
            }
            else
            {
                return(0);
            }
        }
Esempio n. 2
0
        public static void qrKeyListCallback(QueryReportKeyType keyType, ref gamespyQueryReport.qr2Keybuffer /*qr2_keybuffer_t*/ keyBuffer, IntPtr userData)
        {
            Console.Write("\nIn {0} : ", System.Reflection.MethodBase.GetCurrentMethod().Name);

            Console.WriteLine("Reporting keylist for {0}", keyType);

            //need to add all the keys we support
            switch (keyType)
            {
            case QueryReportKeyType.key_server:
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.HOSTNAME_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.HOSTPORT_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.MAPNAME_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.GAMETYPE_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.NUMPLAYERS_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.NUMTEAMS_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.MAXPLAYERS_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.TEAMPLAY_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.FRAGLIMIT_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.TIMELIMIT_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, GRAVITY_KEY);     //a custom key
                break;

            case QueryReportKeyType.key_player:
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.PLAYER__KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.SCORE__KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.DEATHS__KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.TEAM__KEY);
                break;

            case QueryReportKeyType.key_team:
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.TEAM_T_KEY);
                gamespyQueryReport.qr2_keybuffer_add(ref keyBuffer, (int)qr2DefaultKeys.SCORE_T_KEY);
                break;

            default: break;
            }
        }