⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cl.java

📁 Jake2是一个Java 3D游戏引擎.
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
                    //char fn[MAX_OSPATH];                    fn = "textures/" + CM.map_surfaces[CL.precache_tex++].rname                            + ".wal";                    if (!CL_parse.CheckOrDownloadFile(fn))                        return; // started a download                }            }            CL.precache_check = TEXTURE_CNT + 999;        }        //	  ZOID        CL_parse.RegisterSounds();        CL_view.PrepRefresh();        MSG.WriteByte(Globals.cls.netchan.message, Defines.clc_stringcmd);        MSG.WriteString(Globals.cls.netchan.message, "begin "                + CL.precache_spawncount + "\n");    }    /**     * InitLocal     */    public static void InitLocal() {        Globals.cls.state = Defines.ca_disconnected;        Globals.cls.realtime = Timer.Milliseconds();        CL_input.InitInput();        Cvar.Get("adr0", "", Defines.CVAR_ARCHIVE);        Cvar.Get("adr1", "", Defines.CVAR_ARCHIVE);        Cvar.Get("adr2", "", Defines.CVAR_ARCHIVE);        Cvar.Get("adr3", "", Defines.CVAR_ARCHIVE);        Cvar.Get("adr4", "", Defines.CVAR_ARCHIVE);        Cvar.Get("adr5", "", Defines.CVAR_ARCHIVE);        Cvar.Get("adr6", "", Defines.CVAR_ARCHIVE);        Cvar.Get("adr7", "", Defines.CVAR_ARCHIVE);        Cvar.Get("adr8", "", Defines.CVAR_ARCHIVE);        //        // register our variables        //        Globals.cl_stereo_separation = Cvar.Get("cl_stereo_separation", "0.4",                Defines.CVAR_ARCHIVE);        Globals.cl_stereo = Cvar.Get("cl_stereo", "0", 0);        Globals.cl_add_blend = Cvar.Get("cl_blend", "1", 0);        Globals.cl_add_lights = Cvar.Get("cl_lights", "1", 0);        Globals.cl_add_particles = Cvar.Get("cl_particles", "1", 0);        Globals.cl_add_entities = Cvar.Get("cl_entities", "1", 0);        Globals.cl_gun = Cvar.Get("cl_gun", "1", 0);        Globals.cl_footsteps = Cvar.Get("cl_footsteps", "1", 0);        Globals.cl_noskins = Cvar.Get("cl_noskins", "0", 0);        Globals.cl_autoskins = Cvar.Get("cl_autoskins", "0", 0);        Globals.cl_predict = Cvar.Get("cl_predict", "1", 0);        Globals.cl_maxfps = Cvar.Get("cl_maxfps", "90", 0);        Globals.cl_upspeed = Cvar.Get("cl_upspeed", "200", 0);        Globals.cl_forwardspeed = Cvar.Get("cl_forwardspeed", "200", 0);        Globals.cl_sidespeed = Cvar.Get("cl_sidespeed", "200", 0);        Globals.cl_yawspeed = Cvar.Get("cl_yawspeed", "140", 0);        Globals.cl_pitchspeed = Cvar.Get("cl_pitchspeed", "150", 0);        Globals.cl_anglespeedkey = Cvar.Get("cl_anglespeedkey", "1.5", 0);        Globals.cl_run = Cvar.Get("cl_run", "0", Defines.CVAR_ARCHIVE);        Globals.lookspring = Cvar.Get("lookspring", "0", Defines.CVAR_ARCHIVE);        Globals.lookstrafe = Cvar.Get("lookstrafe", "0", Defines.CVAR_ARCHIVE);        Globals.sensitivity = Cvar                .Get("sensitivity", "3", Defines.CVAR_ARCHIVE);        Globals.m_pitch = Cvar.Get("m_pitch", "0.022", Defines.CVAR_ARCHIVE);        Globals.m_yaw = Cvar.Get("m_yaw", "0.022", 0);        Globals.m_forward = Cvar.Get("m_forward", "1", 0);        Globals.m_side = Cvar.Get("m_side", "1", 0);        Globals.cl_shownet = Cvar.Get("cl_shownet", "0", 0);        Globals.cl_showmiss = Cvar.Get("cl_showmiss", "0", 0);        Globals.cl_showclamp = Cvar.Get("showclamp", "0", 0);        Globals.cl_timeout = Cvar.Get("cl_timeout", "120", 0);        Globals.cl_paused = Cvar.Get("paused", "0", 0);        Globals.cl_timedemo = Cvar.Get("timedemo", "0", 0);        Globals.rcon_client_password = Cvar.Get("rcon_password", "", 0);        Globals.rcon_address = Cvar.Get("rcon_address", "", 0);        Globals.cl_lightlevel = Cvar.Get("r_lightlevel", "0", 0);        //        // userinfo        //        Globals.info_password = Cvar.Get("password", "", Defines.CVAR_USERINFO);        Globals.info_spectator = Cvar.Get("spectator", "0",                Defines.CVAR_USERINFO);        Globals.name = Cvar.Get("name", "unnamed", Defines.CVAR_USERINFO                | Defines.CVAR_ARCHIVE);        Globals.skin = Cvar.Get("skin", "male/grunt", Defines.CVAR_USERINFO                | Defines.CVAR_ARCHIVE);        Globals.rate = Cvar.Get("rate", "25000", Defines.CVAR_USERINFO                | Defines.CVAR_ARCHIVE); // FIXME        Globals.msg = Cvar.Get("msg", "1", Defines.CVAR_USERINFO                | Defines.CVAR_ARCHIVE);        Globals.hand = Cvar.Get("hand", "0", Defines.CVAR_USERINFO                | Defines.CVAR_ARCHIVE);        Globals.fov = Cvar.Get("fov", "90", Defines.CVAR_USERINFO                | Defines.CVAR_ARCHIVE);        Globals.gender = Cvar.Get("gender", "male", Defines.CVAR_USERINFO                | Defines.CVAR_ARCHIVE);        Globals.gender_auto = Cvar                .Get("gender_auto", "1", Defines.CVAR_ARCHIVE);        Globals.gender.modified = false; // clear this so we know when user sets                                         // it manually        Globals.cl_vwep = Cvar.Get("cl_vwep", "1", Defines.CVAR_ARCHIVE);        //        // register our commands        //        Cmd.AddCommand("cmd", ForwardToServer_f);        Cmd.AddCommand("pause", Pause_f);        Cmd.AddCommand("pingservers", PingServers_f);        Cmd.AddCommand("skins", Skins_f);        Cmd.AddCommand("userinfo", Userinfo_f);        Cmd.AddCommand("snd_restart", Snd_Restart_f);        Cmd.AddCommand("changing", Changing_f);        Cmd.AddCommand("disconnect", Disconnect_f);        Cmd.AddCommand("record", Record_f);        Cmd.AddCommand("stop", Stop_f);        Cmd.AddCommand("quit", Quit_f);        Cmd.AddCommand("connect", Connect_f);        Cmd.AddCommand("reconnect", Reconnect_f);        Cmd.AddCommand("rcon", Rcon_f);        Cmd.AddCommand("precache", Precache_f);        Cmd.AddCommand("download", CL_parse.Download_f);        //        // forward to server commands        //        // the only thing this does is allow command completion        // to work -- all unknown commands are automatically        // forwarded to the server        Cmd.AddCommand("wave", null);        Cmd.AddCommand("inven", null);        Cmd.AddCommand("kill", null);        Cmd.AddCommand("use", null);        Cmd.AddCommand("drop", null);        Cmd.AddCommand("say", null);        Cmd.AddCommand("say_team", null);        Cmd.AddCommand("info", null);        Cmd.AddCommand("prog", null);        Cmd.AddCommand("give", null);        Cmd.AddCommand("god", null);        Cmd.AddCommand("notarget", null);        Cmd.AddCommand("noclip", null);        Cmd.AddCommand("invuse", null);        Cmd.AddCommand("invprev", null);        Cmd.AddCommand("invnext", null);        Cmd.AddCommand("invdrop", null);        Cmd.AddCommand("weapnext", null);        Cmd.AddCommand("weapprev", null);    }    /**     * WriteConfiguration     *      * Writes key bindings and archived cvars to config.cfg.     */    public static void WriteConfiguration() {        RandomAccessFile f;        String path;//        if (Globals.cls.state == Defines.ca_uninitialized)//            return;        path = FS.Gamedir() + "/config.cfg";        f = Lib.fopen(path, "rw");        if (f == null) {            Com.Printf("Couldn't write config.cfg.\n");            return;        }        try {            f.seek(0);            f.setLength(0);        } catch (IOException e1) {        }        try {            f.writeBytes("// generated by quake, do not modify\n");        } catch (IOException e) {        }        Key.WriteBindings(f);        Lib.fclose(f);        Cvar.WriteVariables(path);    }    /**     * FixCvarCheats     */    public static void FixCvarCheats() {        int i;        CL.cheatvar_t var;        if ("1".equals(Globals.cl.configstrings[Defines.CS_MAXCLIENTS])                || 0 == Globals.cl.configstrings[Defines.CS_MAXCLIENTS]                        .length())            return; // single player can cheat        // find all the cvars if we haven't done it yet        if (0 == CL.numcheatvars) {            while (CL.cheatvars[CL.numcheatvars].name != null) {                CL.cheatvars[CL.numcheatvars].var = Cvar.Get(                        CL.cheatvars[CL.numcheatvars].name,                        CL.cheatvars[CL.numcheatvars].value, 0);                CL.numcheatvars++;            }        }        // make sure they are all set to the proper values        for (i = 0; i < CL.numcheatvars; i++) {            var = CL.cheatvars[i];            if (!var.var.string.equals(var.value)) {                Cvar.Set(var.name, var.value);            }        }    }    //	  =============================================================    /**     * SendCommand     */    public static void SendCommand() {        // get new key events        Sys.SendKeyEvents();        // allow mice or other external controllers to add commands        IN.Commands();        // process console commands        Cbuf.Execute();        // fix any cheating cvars        FixCvarCheats();        // send intentions now        CL_input.SendCmd();        // resend a connection request if necessary        CheckForResend();    }    //	private static int lasttimecalled;    /**     * Frame     */    public static void Frame(int msec) {                if (Globals.dedicated.value != 0)            return;        extratime += msec;        if (Globals.cl_timedemo.value == 0.0f) {            if (Globals.cls.state == Defines.ca_connected && extratime < 100) {                return; // don't flood packets out while connecting            }            if (extratime < 1000 / Globals.cl_maxfps.value) {                return; // framerate is too high            }        }        // let the mouse activate or deactivate        IN.Frame();        // decide the simulation time        Globals.cls.frametime = extratime / 1000.0f;        Globals.cl.time += extratime;        Globals.cls.realtime = Globals.curtime;        extratime = 0;        if (Globals.cls.frametime > (1.0f / 5))            Globals.cls.frametime = (1.0f / 5);        // if in the debugger last frame, don't timeout        if (msec > 5000)            Globals.cls.netchan.last_received = Timer.Milliseconds();        // fetch results from server        ReadPackets();        // send a new command message to the server        SendCommand();        // predict all unacknowledged movements        CL_pred.PredictMovement();        // allow rendering DLL change        VID.CheckChanges();        if (!Globals.cl.refresh_prepped                && Globals.cls.state == Defines.ca_active) {            CL_view.PrepRefresh();            // force GC after level loading            // but not on playing a cinematic            if (Globals.cl.cinematictime == 0) System.gc();        }        SCR.UpdateScreen();        // update audio        S.Update(Globals.cl.refdef.vieworg, Globals.cl.v_forward,                Globals.cl.v_right, Globals.cl.v_up);        // advance local effects for next frame        CL_fx.RunDLights();        CL_fx.RunLightStyles();        SCR.RunCinematic();        SCR.RunConsole();        Globals.cls.framecount++;        if (Globals.cls.state != Defines.ca_active                || Globals.cls.key_dest != Defines.key_game) {            try {                Thread.sleep(20);            } catch (InterruptedException e) {            }        }    }    /**     * Shutdown     */    public static void Shutdown() {        if (isdown) {            System.out.print("recursive shutdown\n");            return;        }        isdown = true;        WriteConfiguration();        S.Shutdown();        IN.Shutdown();        VID.Shutdown();    }    /**     * Initialize client subsystem.     */    public static void Init() {        if (Globals.dedicated.value != 0.0f)            return; // nothing running on the client        // all archived variables will now be loaded        Console.Init(); //ok        S.Init(); //empty        VID.Init();        V.Init();        Globals.net_message.data = Globals.net_message_buffer;        Globals.net_message.maxsize = Globals.net_message_buffer.length;        Menu.Init();        SCR.Init();        //Globals.cls.disable_screen = 1.0f; // don't draw yet        InitLocal();        IN.Init();        FS.ExecAutoexec();        Cbuf.Execute();    }    /**     * Called after an ERR_DROP was thrown.     */    public static void Drop() {        if (Globals.cls.state == Defines.ca_uninitialized)            return;        if (Globals.cls.state == Defines.ca_disconnected)            return;        Disconnect();        // drop loading plaque unless this is the initial game start        if (Globals.cls.disable_servercount != -1)            SCR.EndLoadingPlaque(); // get rid of loading plaque    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -