DayZ 1.29
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ LoadFromCfg()

void LoadFromCfg ( )
protected

См. определение в файле PluginLifespan.c строка 56

57 {
60
61 const int LIFESPAN_LENGTH = LIFESPAN_MAX - LIFESPAN_MIN;
62
63 //cfg_name = 'CfgVehicles'
64 // config_name = 'CfgVehicles'
65 //cfg_class_count = 2348
66 // config_count = 2348
67 //cfg_class_name = 'SurvivorMale_Base'
68 // survivor_name = 'SurvivorMale_Base'
69 //cfg_class_fullname = 'CfgVehicles SurvivorMale_Base'
70 // survivor_path = 'CfgVehicles SurvivorMale_Base'
71 //cfg_class_member_count = 10
72 // survivor_lifespan_count = 10
73 //cfg_class_member_name = 'Lifespan'
74 // survivor_lifespan_name = 'Lifespan'
75 //cfg_class_member_fullname = 'CfgVehicles SurvivorMale_Base Lifespan';
76 // survivor_lifespan_path = 'CfgVehicles SurvivorMale_Base Lifespan';
77 //cfg_class_member_member_count = 1
78 // survivor_lifespan_beard_count = 1
79 //cfg_class_member_member_name = 'Beard'
80 // survivor_lifespan_beard_name = 'Beard'
81 //cfg_class_member_member_fullname = 'CfgVehicles SurvivorMale_Base Lifespan Beard'
82 // survivor_lifespan_beard_path = 'CfgVehicles SurvivorMale_Base Lifespan Beard'
83 //cfg_class_member_member_variable_name = 'mat'
84 // survivor_lifespan_beard_material_name = 'mat'
85 //cfg_class_member_member_variable_fullname = 'CfgVehicles SurvivorMale_Base Lifespan Beard mat'
86 // survivor_lifespan_beard_material_path = 'CfgVehicles SurvivorMale_Base Lifespan Beard mat'
87
88 string config_name = "CfgVehicles";
89 int config_count = g_Game.ConfigGetChildrenCount( config_name );
90
91 int i, j, k, l, m;
92
93 //Print( "config_count: " + config_count );
94 for ( i = 0; i < config_count; i++ )
95 {
96 string survivor_name = "";
97 g_Game.ConfigGetChildName( config_name, i, survivor_name );
98
99 if ( survivor_name != "" && survivor_name != "access" )
100 {
101 if ( g_Game.IsKindOf(survivor_name, "SurvivorMale_Base") || g_Game.IsKindOf(survivor_name, "SurvivorFemale_Base") )
102 {
103 string survivor_path = config_name + " " + survivor_name;
104 int survivor_lifespan_count = g_Game.ConfigGetChildrenCount( survivor_path );
105
106 //Print( "survivor_path: " + survivor_path );
107 for ( j = 0; j < survivor_lifespan_count; j++ )
108 {
109 string survivor_lifespan_name = "";
110 g_Game.ConfigGetChildName( survivor_path, j, survivor_lifespan_name );
111
112 string survivor_lifespan_path = survivor_path + " " + survivor_lifespan_name;
113
114 if ( survivor_lifespan_name == "Lifespan" )
115 {
116 int survivor_lifespan_beard_count = g_Game.ConfigGetChildrenCount( survivor_lifespan_path );
117
118 for ( k = 0; k < survivor_lifespan_beard_count; k++ )
119 {
120 string survivor_lifespan_beard_name = "";
121 g_Game.ConfigGetChildName( survivor_lifespan_path, k, survivor_lifespan_beard_name );
122
123 string survivor_lifespan_beard_path = survivor_lifespan_path + " " + survivor_lifespan_beard_name;
124
125 if ( survivor_lifespan_beard_name == "Beard" )
126 {
127 TStringArray materials = new TStringArray;
128 int cfg_class_member_member_variable_count = g_Game.ConfigGetChildrenCount( survivor_lifespan_beard_path );
129
130 for ( l = 0; l < cfg_class_member_member_variable_count; l++ )
131 {
132 string survivor_lifespan_beard_material_name = "";
133 g_Game.ConfigGetChildName( survivor_lifespan_beard_path, l, survivor_lifespan_beard_material_name );
134 string survivor_lifespan_beard_material_path = survivor_lifespan_beard_path + " " + survivor_lifespan_beard_material_name;
135
136 if ( survivor_lifespan_beard_material_name == "mat" )
137 {
138 g_Game.ConfigGetTextArray( survivor_lifespan_beard_material_path, materials );
139
141
142 int level_count = materials.Count() / 2;
143 for ( m = 0; m < level_count; m++ )
144 {
145 int tex = m*2;
146 int mat = ((m*2)+1);
147 if ( mat < materials.Count() )
148 {
149 float threshold = (((float)m / (float)(level_count - 1)) * (float)LIFESPAN_LENGTH) + (float)LIFESPAN_MIN;
150 lifespan_levels.Insert( new LifespanLevel(m, threshold, materials.Get(tex), materials.Get(mat)) );
151 //Print("material a textura a threshold: " + materials.Get(tex) + " " + materials.Get(mat) + " " + threshold );
152 }
153 }
154
155 if ( lifespan_levels.Count() > 0 )
156 {
157 m_LifespanLevels.Set( survivor_name, lifespan_levels );
158 }
159 }
160 }
161 }
162 }
163 }
164 else if ( survivor_lifespan_name == "BloodyHands" )
165 {
166 string bloody_material, normal_material;
167 string path_normal = survivor_lifespan_path + " mat_normal";
168 string path_bloody = survivor_lifespan_path + " mat_blood";
169 g_Game.ConfigGetText(path_normal, normal_material);
170 g_Game.ConfigGetText(path_bloody, bloody_material);
171 m_BloodyHands.Set( survivor_name, new BloodyHands(normal_material, bloody_material) );
172 }
173 }
174 }
175 }
176 }
177
178 /*for ( int cl = 0; cl < m_LifespanLevels.Count(); cl++ )
179 {
180 string class_name = m_LifespanLevels.GetKey( cl );
181 array<ref LifespanLevel> levels = m_LifespanLevels.GetElement( cl );
182
183 Print( class_name );
184
185 for ( int ll = 0; ll < levels.Count(); ll++)
186 {
187 Print( "lvl: " + levels.Get( ll ).GetLevel() );
188 Print( "treshold: " + levels.Get( ll ).GetThreshold() );
189 Print( "texture: " + levels.Get( ll ).GetTextureName() );
190 Print( "material: " + levels.Get( ll ).GetMaterialName() );
191 }
192 }*/
193 }
DayZGame g_Game
Определения DayZGame.c:3942
static const int LIFESPAN_MAX
Определения PluginLifespan.c:29
enum eBloodyHandsTypes LIFESPAN_MIN
ref map< string, ref BloodyHands > m_BloodyHands
Определения PluginLifespan.c:34
ref map< string, ref array< ref LifespanLevel > > m_LifespanLevels
Определения PluginLifespan.c:33
Определения BloodyHands.c:2
Определения LifespanLevel.c:2
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
Определения EnConvert.c:110
Определения CachedEquipmentStorage.c:4
array< string > TStringArray
Определения EnScript.c:712

Перекрестные ссылки g_Game, LIFESPAN_MAX, LIFESPAN_MIN, m_BloodyHands и m_LifespanLevels.