]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - svvm_cmds.c
migrated cls.message and client->message buffers into netconn_t struct
[xonotic/darkplaces.git] / svvm_cmds.c
index 94db32b8d974c1d303219422d8467b83405b9795..40d6c1755a5ae3f56ab4f1a08eda1a6499910bef 100644 (file)
@@ -4,7 +4,7 @@
 // Server
 
 #define PF_WARNING(s) do{Con_Printf(s);PRVM_PrintState();return;}while(0)
-cvar_t sv_aim = {CVAR_SAVE, "sv_aim", "2"}; //"0.93"}; // LordHavoc: disabled autoaim by default
+cvar_t sv_aim = {CVAR_SAVE, "sv_aim", "2", "maximum cosine angle for quake's vertical autoaim, a value above 1 completely disables the autoaim, quake used 0.93"}; //"0.93"}; // LordHavoc: disabled autoaim by default
 
 
 char *vm_sv_extensions =
@@ -113,7 +113,7 @@ char *vm_sv_extensions =
 "DP_TE_STANDARDEFFECTBUILTINS "
 "DP_VIEWZOOM "
 "EXT_BITSHIFT "
-"EXT_CSQC "
+//"EXT_CSQC " // not ready yet
 "FRIK_FILE "
 "KRIMZON_SV_PARSECLIENTCOMMAND "
 "NEH_CMD_PLAY2 "
@@ -265,9 +265,12 @@ void PF_sprint (void)
        }
 
        client = svs.clients + entnum-1;
+       if (!client->netconnection)
+               return;
+
        VM_VarString(1, string, sizeof(string));
-       MSG_WriteChar(&client->message,svc_print);
-       MSG_WriteString(&client->message, string);
+       MSG_WriteChar(&client->netconnection->message,svc_print);
+       MSG_WriteString(&client->netconnection->message, string);
 }
 
 
@@ -295,9 +298,12 @@ void PF_centerprint (void)
        }
 
        client = svs.clients + entnum-1;
+       if (!client->netconnection)
+               return;
+
        VM_VarString(1, string, sizeof(string));
-       MSG_WriteChar(&client->message,svc_centerprint);
-       MSG_WriteString(&client->message, string);
+       MSG_WriteChar(&client->netconnection->message,svc_centerprint);
+       MSG_WriteString(&client->netconnection->message, string);
 }
 
 /*
@@ -869,11 +875,11 @@ void PF_lightstyle (void)
 
        for (j = 0, client = svs.clients;j < svs.maxclients;j++, client++)
        {
-               if (client->active)
+               if (client->active && client->netconnection)
                {
-                       MSG_WriteChar (&client->message, svc_lightstyle);
-                       MSG_WriteChar (&client->message,style);
-                       MSG_WriteString (&client->message, val);
+                       MSG_WriteChar (&client->netconnection->message, svc_lightstyle);
+                       MSG_WriteChar (&client->netconnection->message,style);
+                       MSG_WriteString (&client->netconnection->message, val);
                }
        }
 }
@@ -1126,13 +1132,13 @@ sizebuf_t *WriteDest (void)
        case MSG_ONE:
                ent = PRVM_PROG_TO_EDICT(prog->globals.server->msg_entity);
                entnum = PRVM_NUM_FOR_EDICT(ent);
-               if (entnum < 1 || entnum > svs.maxclients || !svs.clients[entnum-1].active)
+               if (entnum < 1 || entnum > svs.maxclients || !svs.clients[entnum-1].active || !svs.clients[entnum-1].netconnection)
                {
                        Con_Printf ("WriteDest: tried to write to non-client\n");
                        return &sv.reliable_datagram;
                }
                else
-                       return &svs.clients[entnum-1].message;
+                       return &svs.clients[entnum-1].netconnection->message;
 
        default:
                Con_Printf ("WriteDest: bad destination\n");