MCPcopy Create free account
hub / github.com/OGSR/OGSR-Engine / LoadFireParams

Method LoadFireParams

ogsr_engine/xrGame/WeaponKnife.cpp:340–376  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

338}
339
340void CWeaponKnife::LoadFireParams(LPCSTR section, LPCSTR prefix)
341{
342 inherited::LoadFireParams(section, prefix);
343
344 string256 full_name;
345 string32 buffer;
346 shared_str s_sHitPower_2;
347 // fHitPower_1 = fHitPower;
348 fvHitPower_1 = fvHitPower;
349 fHitImpulse_1 = fHitImpulse;
350 m_eHitType_1 = ALife::g_tfString2HitType(pSettings->r_string(section, "hit_type"));
351
352 // fHitPower_2 = pSettings->r_float (section,strconcat(full_name, prefix, "hit_power_2"));
353 s_sHitPower_2 = pSettings->r_string_wb(section, strconcat(sizeof(full_name), full_name, prefix, "hit_power_2"));
354 fvHitPower_2[egdMaster] = (float)atof(_GetItem(*s_sHitPower_2, 0, buffer)); //первый параметр - это хит для уровня игры мастер
355
356 fvHitPower_2[egdVeteran] = fvHitPower_2[egdMaster]; //изначально параметры для других уровней
357 fvHitPower_2[egdStalker] = fvHitPower_2[egdMaster]; //сложности
358 fvHitPower_2[egdNovice] = fvHitPower_2[egdMaster]; //такие же
359
360 int num_game_diff_param = _GetItemCount(*s_sHitPower_2); //узнаём колличество параметров для хитов
361 if (num_game_diff_param > 1) //если задан второй параметр хита
362 {
363 fvHitPower_2[egdVeteran] = (float)atof(_GetItem(*s_sHitPower_2, 1, buffer)); //то вычитываем его для уровня ветерана
364 }
365 if (num_game_diff_param > 2) //если задан третий параметр хита
366 {
367 fvHitPower_2[egdStalker] = (float)atof(_GetItem(*s_sHitPower_2, 2, buffer)); //то вычитываем его для уровня сталкера
368 }
369 if (num_game_diff_param > 3) //если задан четвёртый параметр хита
370 {
371 fvHitPower_2[egdNovice] = (float)atof(_GetItem(*s_sHitPower_2, 3, buffer)); //то вычитываем его для уровня новичка
372 }
373
374 fHitImpulse_2 = pSettings->r_float(section, strconcat(sizeof(full_name), full_name, prefix, "hit_impulse_2"));
375 m_eHitType_2 = ALife::g_tfString2HitType(pSettings->r_string(section, "hit_type_2"));
376}
377
378void CWeaponKnife::GetBriefInfo(xr_string& str_name, xr_string& icon_sect_name, xr_string& str_count)
379{

Callers

nothing calls this directly

Calls 6

g_tfString2HitTypeFunction · 0.85
_GetItemFunction · 0.85
_GetItemCountFunction · 0.85
r_string_wbMethod · 0.80
r_stringMethod · 0.45
r_floatMethod · 0.45

Tested by

no test coverage detected