]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - client.h
client: Implement CL_Frame. Move client cvars out of host to cl_main
[xonotic/darkplaces.git] / client.h
index c154d991549294e47eb67063d979d3135a41320a..159d3233a39be822aa6ab3a6414bcff4995ad07e 100644 (file)
--- a/client.h
+++ b/client.h
@@ -234,7 +234,7 @@ typedef struct effect_s
        vec3_t origin;
        double starttime;
        float framerate;
-       int modelindex;
+       dp_model_t *model;
        int startframe;
        int endframe;
        // these are for interpolation
@@ -1158,7 +1158,6 @@ typedef struct client_state_s
        float sensitivityscale;
        csqc_vidvars_t csqc_vidvars;    //[515]: these parms must be set to true by default
        qboolean csqc_wantsmousemove;
-       qboolean csqc_paused; // vortex: int because could be flags
        struct model_s *csqc_model_precache[MAX_MODELS];
 
        // local amount for smoothing stepups
@@ -1534,6 +1533,8 @@ void CL_Locs_FindLocationName(char *buffer, size_t buffersize, vec3_t point);
 // cl_main
 //
 
+double CL_Frame(double time);
+
 void CL_Shutdown (void);
 void CL_Init (void);
 
@@ -1575,7 +1576,7 @@ void CL_ClientMovement_Replay(void);
 void CL_ClearTempEntities (void);
 entity_render_t *CL_NewTempEntity (double shadertime);
 
-void CL_Effect(vec3_t org, int modelindex, int startframe, int framecount, float framerate);
+void CL_Effect(vec3_t org, dp_model_t *model, int startframe, int framecount, float framerate);
 
 void CL_ClearState (void);
 void CL_ExpandEntities(int num);
@@ -1593,6 +1594,20 @@ float CL_KeyState (kbutton_t *key);
 const char *Key_KeynumToString (int keynum, char *buf, size_t buflength);
 int Key_StringToKeynum (const char *str);
 
+//
+// cl_cmd.c
+//
+/// adds the string as a clc_stringcmd to the client message.
+/// (used when there is no reason to generate a local command to do it)
+void CL_ForwardToServer (const char *s);
+
+/// adds the current command line as a clc_stringcmd to the client message.
+/// things like godmode, noclip, etc, are commands directed to the server,
+/// so when they are typed in at the console, they will need to be forwarded.
+void CL_ForwardToServer_f (cmd_state_t *cmd);
+void CL_InitCommands(void);
+
+
 //
 // cl_demo.c
 //