28 for (
int j = 0; j < m_FileContent.Count(); j++ )
42 m_FileContent.Insert(s);
136 CfgParamArray param_array = CfgParamArray.Cast( param );
141 for (
int i = 0; i < params.Count(); ++i )
157 CfgParamString param_string = CfgParamString.Cast( param );
158 text +=
"\""+param_string.GetValue()+
"\"";
164 CfgParamInt param_int = CfgParamInt.Cast( param );
165 text += param_int.GetValue().
ToString();
171 CfgParamFloat param_float = CfgParamFloat.Cast( param );
172 string s = param_float.GetValue().ToString();
185 CfgParamBool param_bool = CfgParamBool.Cast( param );
187 if ( param_bool.GetValue() )
206 string param_value = text.
Trim();;
213 int pos = param_value.
IndexOf(
"=");
218 int pos_end = param_value.
Length() - pos;
219 param_value = param_value.
Substring(pos + 1, pos_end - 1).
Trim();
233 CfgParamArray param_array =
new CfgParamArray(param_name);
235 param_array.SetParams(array_params);
243 CfgParamString param_string =
new CfgParamString(param_name);
252 CfgParamInt param_int =
new CfgParamInt(param_name);
261 CfgParamFloat param_float =
new CfgParamFloat(param_name);
270 CfgParamBool param_bool =
new CfgParamBool(param_name);
283 int lenght = text.
Length();
287 if ( pos1 == 0 && text.
Substring(lenght - 1, 1) ==
"}" )
295 if ( pos1 == 0 && text.
Substring(lenght - 1, 1) ==
"\"" )
297 string string_text = text.
Substring(1, lenght - 2);
298 if ( string_text.
IndexOf(
"\"") == -1 )
313 if ( lenght == 4 && pos1 > -1 )
320 if ( lenght == 5 && pos1 > -1 )
408 return param_value.
ToInt();
436 while ( pos_a > -1 || pos_b > -1 )
456 for ( pos_a = 0; pos_a < a.Count(); ++pos_a )
458 if ( a.Get(pos_a) > b.Get(pos_b) )
464 value_end = b.Get(pos_b) - value_start + 1;
468 strings.Insert( param_value.
Substring(value_start, value_end) );
470 value_start = b.Get(pos_b) + 1;
476 else if ( a.Get(pos_a) < b.Get(pos_b) )
478 if ( pos_a == a.Count() - 1 && pos_b < b.Count() - 1 )
484 value_end = b.Get(pos_b) - value_start;
488 strings.Insert( param_value.
Substring(value_start + 1, value_end) );
490 value_start = b.Get(pos_b) + 1;
502 value_start = a.Get(pos_a);
510 if ( strings.Count() == 0 )
514 string param_value_content = param_value.
Substring(1, param_value.
Length() - 2);
518 param_value_content.
Split(
",", strings);
521 for (
int i = 0; i < strings.Count(); ++i )
523 string str = strings.Get(i);
529 param_parent.Insert(param);
const int CFG_TYPE_STRING
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
static CfgParam CreateParam(string name, int cfg_type)
void SetName(string param_name)
string ParseParam(CfgParam param)
int GetTextType(string text)
override string GetFileName()
ref array< ref CfgParam > m_CfgParams
bool IsParam(string text)
CfgParam ParseText(string text)
array< ref CfgParam > GetAllParams()
void RenameParam(string name, string new_name)
float ParseToValueFloat(string param_value)
string ParseToValueString(string param_value)
int ParseToValueInt(string param_value)
void RemoveParamByName(string name)
void PluginConfigHandler()
bool ParamExist(string name)
bool IsString(string text)
bool IsFloat(string text)
CfgParam GetParamByName(string name, int cfg_type)
bool IsArray(string text)
array< ref CfgParam > ParseToValueArray(string param_value)
bool ParseToValueBool(string param_value)
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
const string CFG_FILE_USER_PROFILE
array< string > TStringArray
const string STRING_EMPTY
proto native int Length()
Returns length of string.
proto string Trim()
Returns trimmed string with removed leading and trailing whitespaces.
static proto string ToString(void var, bool type=false, bool name=false, bool quotes=true)
Return string representation of variable.
proto native int ToInt()
Converts string to integer.
bool Contains(string sample)
Returns true if sample is substring of string.
proto native float ToFloat()
Converts string to float.
void Split(string sample, out array< string > output)
Splits string into array of strings separated by 'sample'.
proto string Substring(int start, int len)
Substring of 'str' from 'start' position 'len' number of characters.
proto native int IndexOfFrom(int start, string sample)
Finds 'sample' in 'str' from 'start' position. Returns -1 when not found.
proto native int IndexOf(string sample)
Finds 'sample' in 'str'. Returns -1 when not found.