コード例 #1
0
        public static Int32 SV_FindIndex(String name, Int32 start, Int32 max, Boolean create)
        {
            Int32 i;

            if (name == null || name.Length == 0)
            {
                return(0);
            }
            for (i = 1; i < max && sv.configstrings[start + i] != null; i++)
            {
                if (0 == Lib.Strcmp(sv.configstrings[start + i], name))
                {
                    return(i);
                }
            }
            if (!create)
            {
                return(0);
            }
            if (i == max)
            {
                Com.Error(Defines.ERR_DROP, "*Index: overflow");
            }
            sv.configstrings[start + i] = name;
            if (sv.state != Defines.ss_loading)
            {
                SZ.Clear(sv.multicast);
                MSG.WriteChar(sv.multicast, Defines.svc_configstring);
                MSG.WriteShort(sv.multicast, start + i);
                MSG.WriteString(sv.multicast, name);
                SV_SEND.SV_Multicast(Globals.vec3_origin, Defines.MULTICAST_ALL_R);
            }

            return(i);
        }
コード例 #2
0
 public static void PF_Configstring(int index, string val)
 {
     if (index < 0 || index >= Defines.MAX_CONFIGSTRINGS)
     {
         Com.Error(Defines.ERR_DROP, "configstring: bad index " + index + "\\n");
     }
     if (val == null)
     {
         val = "";
     }
     SV_INIT.sv.configstrings[index] = val;
     if (SV_INIT.sv.state != Defines.ss_loading)
     {
         SZ.Clear(SV_INIT.sv.multicast);
         MSG.WriteChar(SV_INIT.sv.multicast, Defines.svc_configstring);
         MSG.WriteShort(SV_INIT.sv.multicast, index);
         MSG.WriteString(SV_INIT.sv.multicast, val);
         SV_SEND.SV_Multicast(Globals.vec3_origin, Defines.MULTICAST_ALL_R);
     }
 }