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

◆ GetMaterialForDamageState()

string Chemlight_ColorBase::GetMaterialForDamageState ( bool glowing,
int healthLevel = -1 )
inlineprivate

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

166 {
167 int currentHealthLevel;
168 int suffixIndex;
169 string base;
170
171 if (healthLevel == -1)
172 currentHealthLevel = GetHealthLevel();
173 else
174 currentHealthLevel = healthLevel;
175
176 if (glowing)
177 base = m_GlowMaterial;
178 else
179 base = m_DefaultMaterial;
180
181 suffixIndex = base.IndexOf(".rvmat");
182 if (suffixIndex == -1)
183 {
184 Error("Error - no valid rvmat found for chemlight");
185 return "";
186 }
187 base = base.Substring(0,suffixIndex);
188
189 if (currentHealthLevel == GameConstants.STATE_BADLY_DAMAGED || currentHealthLevel == GameConstants.STATE_DAMAGED)
190 {
191 base = base + "_damage";
192 }
193 else if (currentHealthLevel == GameConstants.STATE_RUINED)
194 {
195 base = base + "_destruct";
196 }
197
198 return base + ".rvmat";
199 }
string m_DefaultMaterial
Определения ChemLight.c:3
string m_GlowMaterial
Определения ChemLight.c:4
void Error(string err)
Messagebox with error message.
Определения EnDebug.c:90
proto string Substring(int start, int len)
Substring of 'str' from 'start' position 'len' number of characters.
proto native int IndexOf(string sample)
Finds 'sample' in 'str'. Returns -1 when not found.

Перекрестные ссылки Error(), string::IndexOf(), m_DefaultMaterial, m_GlowMaterial, GameConstants::STATE_BADLY_DAMAGED, GameConstants::STATE_DAMAGED, GameConstants::STATE_RUINED и string::Substring().

Используется в CreateLight(), EEHealthLevelChanged() и OnWorkStop().