示例#1
0
        public static void SV_ReadLevelFile( )
        {
            String    name;
            QuakeFile f;

            Com.DPrintf("SV_ReadLevelFile()\\n");
            name = FS.Gamedir() + "/save/current/" + SV_INIT.sv.name + ".sv2";
            try
            {
                f = new QuakeFile(name, FileAccess.Read);
                for (var n = 0; n < Defines.MAX_CONFIGSTRINGS; n++)
                {
                    SV_INIT.sv.configstrings[n] = f.ReadString();
                }
                CM.CM_ReadPortalState(f);
                f.Close();
            }
            catch (IOException e1)
            {
                Com.Printf("Failed to open " + name + "\\n");
                e1.PrintStackTrace();
            }

            name = FS.Gamedir() + "/save/current/" + SV_INIT.sv.name + ".sav";
            GameSave.ReadLevel(name);
        }
示例#2
0
        public static void ReadGame(String filename)
        {
            QuakeFile f = null;

            try
            {
                f = new QuakeFile(filename, FileAccess.Read);
                CreateEdicts();
                GameBase.game.Load(f);
                for (var i = 0; i < GameBase.game.maxclients; i++)
                {
                    GameBase.game.clients[i] = new gclient_t(i);
                    GameBase.game.clients[i].Read(f);
                }

                f.Close();
            }
            catch (Exception e)
            {
                e.PrintStackTrace();
            }
        }
示例#3
0
        public static void SV_ReadServerFile( )
        {
            String filename = "", name = "", string_renamed, mapcmd;

            try
            {
                QuakeFile f;
                mapcmd = "";
                Com.DPrintf("SV_ReadServerFile()\\n");
                filename = FS.Gamedir() + "/save/current/server.ssv";
                f        = new QuakeFile(filename, FileAccess.Read);
                f.ReadString();
                mapcmd = f.ReadString();
                while (true)
                {
                    name = f.ReadString();
                    if (name == null)
                    {
                        break;
                    }
                    string_renamed = f.ReadString();
                    Com.DPrintf("Set " + name + " = " + string_renamed + "\\n");
                    Cvar.ForceSet(name, string_renamed);
                }

                f.Close();
                SV_INIT.SV_InitGame();
                SV_INIT.svs.mapcmd = mapcmd;
                filename           = FS.Gamedir() + "/save/current/game.ssv";
                GameSave.ReadGame(filename);
            }
            catch (Exception e)
            {
                Com.Printf("Couldn't read file " + filename + "\\n");
                e.PrintStackTrace();
            }
        }